Continue to content
BuyingVotes
Ask the desk

How a Votifier setup works on a Minecraft server, from JAR to test vote

In short

A Votifier setup needs four things: NuVotifier in the plugins folder, an unused listening port, the public key given to each server list, and a listener. NuVotifier receives the notice a Minecraft server list sends after a vote, a listener processes it, and a plugin such as VotingPlugin configures the rewards. The list's own rules decide which votes count, and no setting changes that.

Published by BuyingVotes editorial desk ยท Current as of

NuVotifier as the receiving end of a vote notice

NuVotifier receives the notice that tells a Minecraft server a vote was cast on a server list. The vote itself is recorded on the list, and the server hears of it through a message sent to the address and port the owner registered. Votifier has the same job: it is a Bukkit plugin whose purpose is to get notified when a vote is made for the server.

After the Votifier plugin download, installation is a file copy. The NuVotifier JAR goes into the plugins folder of the Minecraft server, and the next start makes NuVotifier write its configuration files and first keys. The listening port sits in config.yml and defaults to 8192. Another port works too, provided it lies between 1 and 65535 and no other service uses it (the port of the game server itself included).

Reacting to a notice is a separate job. NuVotifier ships with no vote listeners by default, and its guide leaves that work to other plugins. Left alone, the installation receives each notice and does nothing with it.

The Minecraft server and the list: two machines, one message

Two machines take part in every vote. The server list holds the listing and records the vote; the Minecraft server, through its plugin, receives a notice afterwards. Minecraft-ServerList.com presents the listing step as easy and supplies the tools for server voting, which is the list's half of the arrangement.

The Votifier plugin Minecraft owners install covers the other half. Once a vote is made, the list sends its notice to the Votifier IP and port it was given, so those two values must be an address and a port that accept the list's connection. A wrong value entered on the list's side leaves the notice with nowhere to go.

Each list keeps its own copy of what it was given: two addresses, a port and a key. A change made on the server, a new port for instance, therefore has to be repeated on every list, since the lists work independently and only the plugin on the server is shared by all of them.

Of the values the table names, only the port and the contents of the public key file travel to the lists, along with the two addresses. Everything else stays on the server.

Installing VotingPlugin on top of a compatible listener

VotingPlugin depends on a listener that is already in place. Its setup notes require the listener first: install VotifierPlus or another compatible vote listener before using VotingPlugin. Place VotingPlugin in the server's plugins directory, then configure VoteSites.yml in the VotingPlugin folder.

Rewards and other preferences are configured after VoteSites.yml, and the notes close with a restart and a test vote. Both documents treat the listener as a separate component: NuVotifier's guide says it includes none, and VotingPlugin's notes say one must be installed before the plugin is used.

What VoteSites.yml accepts and which rewards exist are defined in VotingPlugin's own documentation, which is not reproduced here. The instructions fix only the sequence: the file first, rewards and preferences second, then the restart.

Votifier Plus, the fork VotingPlugin's notes name

The Votifier Plus plugin is a fork of Votifier. VotingPlugin's setup notes spell it VotifierPlus and give it as the example of a compatible vote listener to install first.

The requirement is compatibility, and VotifierPlus is one way to meet it. A server that already runs a different compatible listener has no instruction to replace it.

  • Established: VotifierPlus is a fork of Votifier, the original notification plugin.
  • Established: VotingPlugin's setup notes name VotifierPlus as a compatible vote listener to install first.
  • Left open: which other listeners are compatible, a question for each plugin's documentation.
  • Left open: VotifierPlus's own settings, for which the project README is the reference.

Networks with a proxy or a filtering panel in front

A network that puts a proxy in front of several game servers changes where the pieces go. NuVotifier is installed on the proxy and on each server that processes forwarded votes. VotingPlugin's notes add three requirements for such networks: bungeeconfig.yml, BungeeSettings.yml and a shared MySQL database.

Neither of those two file names mentions Velocity, since both begin with 'bungee'. A Votifier plugin Velocity network therefore has to confirm in the plugins' own documentation which files apply.

Infinity-Filter is a filtering panel that sits in front of the game server, and its instructions show how such a layer changes the addresses. They ask the owner to add a backend of type Votifier in the panel's network settings and to enter the NuVotifier IP and port, with 8192 as the default listening port. Each vote-listing site, though, receives the panel's address as the server IP and the Votifier IP, not the backend IP.

Sending the test vote, and the text log of original Votifier

A test vote exercises the whole path once. The list sends a notice to the registered address and port, NuVotifier receives it, the listener processes it, and the reward settings act on the result. NuVotifier's own guide puts the test vote right after the port and public key are supplied to a list.

The test confirms delivery and reward handling on one server. It cannot show whether a particular list will count a later vote, because that decision sits with the list.

Original Votifier keeps a record of its own. For a log of votes, it offers the FlatfileVoteListener, which writes to a text file at plugins/Votifier/votes.log. That file is the owner's evidence of what arrived, and it says nothing about what the list did before sending.

  • The reward arrives in the game: delivery and reward handling both work on that server.
  • With original Votifier, an entry is written to the FlatfileVoteListener's text log: the notice arrived, whatever happens afterwards.
  • Nothing arrives: the details held by the list, the port or the listener need another look.

Where the owner's control stops: the list's own terms

Setup decides whether notices arrive, and nothing more. A server list publishes its own terms, and the installation notes for NuVotifier, VotingPlugin and VotifierPlus cover ports, keys and files; what a list's terms say about fake votes is outside them. Reading those terms is the owner's part, before the server is added.

If a list judges a vote to be fake, the outcome follows from that list's rules, not from anything in the plugin configuration. Any sanction a list applies, from removed votes to a disqualified listing, is a decision the list makes under its own terms. A correct Votifier setup and a passed test vote offer no defence against it.

Paid votes in a server contest or poll meet the same terms as any other vote, and a working listener gives them no exemption. But the plugin reports only that a notice arrived, and it cannot report whether the list will keep that vote.

Files and values in a NuVotifier setup, and where each one is used
ItemWhere it sitsWhat it does
NuVotifier JARplugins folder of the Minecraft serverreceives vote notices and writes the first keys
config.ymlNuVotifier configurationsets the listening port, default 8192
plugins/Votifier/rsa/public.keythe owner's serversupplies the public key entered on each list
VoteSites.ymlVotingPlugin folderconfigured before rewards and preferences
bungeeconfig.yml and BungeeSettings.ymlproxy networksrequired by VotingPlugin with a shared MySQL database
plugins/Votifier/votes.logoriginal Votifiertext record kept by FlatfileVoteListener

What to do

  1. Install NuVotifier and start the server

    Put the NuVotifier JAR file into the plugins folder of the Minecraft server, then start or restart the server. On that start NuVotifier writes its configuration files and its first keys, and every later step depends on them.

  2. Choose a listening port nothing else uses

    Open config.yml and check the listening port, which defaults to 8192. Any other port is allowed if it lies between 1 and 65535 and is not in use by another service, including the game server's own port. Settle this value before any list is told about it, because each list is given a copy of it.

  3. Copy the contents of the key file

    Open plugins/Votifier/rsa/public.key on the server and copy everything in it. That text is the public key each list asks for. The file exists only after the first start, so this step cannot come earlier.

  4. Add the server to every list with port and key

    On each list, enter the server IP, the Votifier IP, the Votifier port and the public key. With Infinity-Filter in front of the server, enter the panel's address in both IP fields instead of the backend address. A list holding a wrong value has nowhere to send its notice.

  5. Put a compatible listener in place before VotingPlugin

    NuVotifier includes no listener by default, which leaves vote processing to a separate plugin. VotingPlugin's notes name VotifierPlus as one compatible listener and say to install it first. Then place VotingPlugin in the server's plugins directory.

  6. Configure VoteSites.yml, then rewards and preferences

    Edit VoteSites.yml in the VotingPlugin folder first. Rewards and other preferences come second, following VotingPlugin's own documentation, which defines what each file accepts.

  7. Restart the server and send a test vote

    Restart once more so the settings load, then send a test vote from a list. A reward arriving in the game confirms delivery and handling on that server. It confirms nothing about how the list will count later votes.

Frequently asked

How to setup Votifier?

Set up Votifier in a fixed order: install NuVotifier, start the server once, set the port, copy the key, register with each list, add a listener and send a test vote. The key file exists only after the first start, and a list needs the port and the key before it sends a notice.

How to setup NuVotifier?

Place the NuVotifier JAR in the plugins folder, restart the server, and read config.yml to confirm or change the listening port, which defaults to 8192. The port must lie between 1 and 65535 and be unused by any other service, the game server's own port included. The public key for the lists is generated on that first start.

How to use NuVotifier?

NuVotifier is used as the receiving end: server lists send vote notices to its port, and a separate listener acts on each one. Installed alone, it receives notices and produces no reward, because it includes no listeners by default. A test vote sent from a list shows whether the connection works.

How to setup VotingPlugin?

Install a compatible vote listener first, such as VotifierPlus, then place VotingPlugin in the server's plugins directory and configure VoteSites.yml in the VotingPlugin folder. Rewards and other preferences come after that, and a restart with a test vote finishes the job. Proxy networks add bungeeconfig.yml, BungeeSettings.yml and a shared MySQL database.

How to use Votifier?

Votifier is used as a notifier: it tells the server when a vote is made for it on a Minecraft server list. Original Votifier offers the FlatfileVoteListener, which logs votes to a text file at plugins/Votifier/votes.log. A log records; rewards come from a separate plugin such as VotingPlugin.

How to setup Votifier plugin?

The Votifier plugin is set up in two halves: a receiving half made of the JAR, the port and the public key, and a reacting half made of a listener. Without the first, no list can deliver; without the second, a delivered notice triggers nothing.

How to use Votifier Plus?

Votifier Plus, written VotifierPlus in VotingPlugin's setup notes, is used as the compatible vote listener installed before VotingPlugin. It is a fork of Votifier. Its own settings are not described here, and its project README is the reference for them.

Cited sources

  1. github.com. github.com/NuVotifier/NuVotifier/wiki/Setup-Guide.
  2. wiki.bencodez.com. wiki.bencodez.com/VotingPlugin.
  3. obsidianservers.com. obsidianservers.com/knowledgebase/minecraft/setting-up-votifier-for-server-voting.
  4. obsidianservers.com. obsidianservers.com/knowledgebase/minecraft/setting-up-votifier-for-server-voting.
  5. obsidianservers.com. obsidianservers.com/knowledgebase/minecraft/setting-up-votifier-for-server-voting.
What this page does not cover

A correct Votifier setup cannot make a vote count: each server list decides that under its own terms, and no plugin setting changes it. The setup controls delivery of a notice and nothing else. No ranking or result in a server contest or poll follows from it, and votes paid for in a contest or poll remain subject to the list's rules.

What each board's terms bar

Reddit prohibits vote manipulation and counts using voting services, or asking people to vote on specific posts for personal gain, as manipulation. Product Hunt prohibits asking for upvotes, using bots and incentivizing upvotes. The Search for a Champion rules void votes from commercial contest subscriptions and vote-swapping sites, and the organiser may disqualify the entrant.

support.reddithelp.com help.producthunt.com championautoparts.com

How boards tell ordinary votes apart

Hacker News says it uses software to detect and protect against voting rings, and that its anti-abuse software drops some votes. IMDb says it may apply a different weighting calculation when it detects unusual rating activity. Ordinary participation is a spread of unconnected people voting at different times, which is the baseline these systems measure against, and this describes their checks without offering any way past them.

news.ycombinator.com news.ycombinator.com help.imdb.com

Contract terms govern, and some votes are refused

The documents cited here are platform terms, so the consequences they state are contractual: removal, vote resets, suspension, delisting or account termination. Hyvote prohibits vote manipulation, including buying or selling votes for a server listing. Whether a payment for votes is also lawful in a given country is outside these sources and belongs to a lawyer. Boards whose terms bar paid votes, contests that void them and political ballots are refused.

hyvote.org hytale-servers.com

What is refunded and what is excluded

Once voting closes, an order for a board or contest that has not reached its published count is refunded for the part not delivered. Nothing is refunded for action by the platform: Hytale Servers says servers found manipulating votes face vote resets, suspension, delisting or account termination, and TopG may reset votes and freeze a listing when it catches cheating. No rank or result is promised.

hytale-servers.com topg.org

Further reading

  • votifier minecraft How Votifier and NuVotifier deliver server-list votes to a Minecraft server, what the public key and port do, and what listing rules forbid.
  • disboard bump Disboard bump explained: what the /bump command does, the interval between bumps, how a reminder fits and what Disboard's guidelines and terms forbid.
  • hacker news karma How Hacker News karma, upvotes and ranking work, and what the site's FAQ and guidelines say about soliciting upvotes and the penalties.
  • imdb rating good How IMDb ratings work: one score per title per user, a weighted average, the Top 250 charts and the safeguards against fake scores.
  • mc server voting How Minecraft server lists count a vote, which limits and account checks they state, and what their rules say about automated voting and fraud.
  • product hunt launch meaning How a Product Hunt launch works: who can upvote, which clock times the platform names, how a launch is deleted and what its rules say about upvotes.