Votifier

Votifier

GitHub page: https://github.com/vexsoftware/votifier
Download link: http://dev.bukkit.org/server-mods/votifier/files/9-votifier-1-9/

What is Votifier?

Votifier is a Bukkit plugin whose purpose is to get notified (aka votified) when a vote is made on a Minecraft server list for the server. Votifier creates a lightweight server that waits for connections by a Minecraft server list and uses a simple protocol to get information about that vote. Votifier is and always will be open-source.

Is it secure?

Votifier employs 2048-bit RSA encryption to ensure that nobody can spoof a vote packet. When Votifier is run for the first time, it generates a unique key pair only for your server to use. When you register Votifier with a supporting server list, that server list will ask for your public RSA key so it can encrypt vote packets before sending them to you. Votifier is so secure, not even its own developers can hack it.

What does Votifier do when it receives a vote notification?

Votifier has a vote listener system where listeners are notified when Votifier receives a vote notification. Sort of like the Bukkit plugin system itself. Each of these listeners can carry out their own task (i.e. rewarding the player via iConomy, etc.) in response to the vote.

To install a vote listener, simply put it in Votifier's listeners folder.
Note that you must run Votifier first before this folder is made.

For having a log of votes, the FlatfileVoteListener can be used. This listener logs votes to a text file located at plugins/Votifier/votes.log

Where can I find vote listeners?

Vote listeners can be found at the vote listeners forum.

How do I write a vote listener?

Information about how to write a vote listener can be found on the vote listeners page on our wiki.

How can my server list support Votifier?

Information about Votifier's protocol can be found on protocol documentation page on our wiki.

Troubleshooting

If you are having problems, please see the troubleshooting page on our wiki.

Changelog

  • 1.0 - First release, includes basic protocol support.
  • 1.1 - Encryption support added, 2048-bit RSA.
  • 1.2 - Bug fixes, protocol changes, and other things.
  • 1.3 - Added a more dynamic vote listener system.
  • 1.4 - Important bug fixes.
  • 1.5 - Errors are displayed when problems occur with receiving and processing vote notifications. A broken listener should no longer prevent notifications from being sent to the other listeners.
  • 1.6 - The deprecated Configuration class is no longer used along with some minor changes.
  • 1.7 - Fix loading of vote listeners to only attempt to load .class files.
  • 1.8 - Contributions by frelling
    • More descriptive error messages.
    • host value is set to the value of server-ip in server.properties by default if a value is specified, otherwise host is set to 0.0.0.0.
    • A message will appear informing the user to verify that Votifier's default port, 8192, is available for use upon initial configuration.
    • More graceful exit when Votifier fails to initialize properly.
    • Vote notifications generate a Bukkit VotifierEvent, which can be used in other plugins.
    • A binding error instructs the user to verify their address/port configuration.
    • A message asks the user to verify if their public keys are correct when a BadPaddingException occurs.
    • RSA keys are regenerated when the rsa folder is missing.
  • 1.9
    • Descriptive message is displayed when a non-existent listener directory is defined in config.yml - contributed by frelling
    • Prevent default listener path generated by Votifier from using the backslash (\) in config.yml on Windows - contributed by SmilingDevil

You must login to post a comment. Don't have an account? Register to get one!

  • Avatar of eeveefan133 eeveefan133 May 18, 2013 at 19:39 UTC - 0 likes

    ok i have been trying to get votifier to work, and i changed the host ip to 0.0.0.0, and also tried my server ip, nothing is working, please help

    18.05 12:35:35 [Server] SEVERE Votifier did not initialize properly! 18.05 12:35:35 [Server] INFO at net.minecraft.server.v1_5_R3.ThreadServerApplication.run(SourceFile:573) 18.05 12:35:35 [Server] INFO at net.minecraft.server.v1_5_R3.MinecraftServer.run(MinecraftServer.java:382) 18.05 12:35:35 [Server] INFO at net.minecraft.server.v1_5_R3.DedicatedServer.init(DedicatedServer.java:151) 18.05 12:35:35 [Server] INFO at net.minecraft.server.v1_5_R3.MinecraftServer.a(MinecraftServer.java:243) 18.05 12:35:35 [Server] INFO at net.minecraft.server.v1_5_R3.MinecraftServer.e(MinecraftServer.java:283) 18.05 12:35:35 [Server] INFO at net.minecraft.server.v1_5_R3.MinecraftServer.j(MinecraftServer.java:304) 18.05 12:35:35 [Server] INFO at org.bukkit.craftbukkit.v1_5_R3.CraftServer.enablePlugins(CraftServer.java:264) 18.05 12:35:35 [Server] INFO at org.bukkit.craftbukkit.v1_5_R3.CraftServer.loadPlugin(CraftServer.java:282) 18.05 12:35:35 [Server] INFO at org.bukkit.plugin.SimplePluginManager.enablePlugin(SimplePluginManager.java:381) 18.05 12:35:35 [Server] INFO at org.bukkit.plugin.java.JavaPluginLoader.enablePlugin(JavaPluginLoader.java:457) 18.05 12:35:35 [Server] INFO at org.bukkit.plugin.java.JavaPlugin.setEnabled(JavaPlugin.java:217) 18.05 12:35:35 [Server] INFO at com.vexsoftware.votifier.Votifier.onEnable(Votifier.java:172) 18.05 12:35:35 [Server] INFO at com.vexsoftware.votifier.net.VoteReceiver.<init>(VoteReceiver.java:75) 18.05 12:35:35 [Server] INFO at com.vexsoftware.votifier.net.VoteReceiver.initialize(VoteReceiver.java:81) 18.05 12:35:35 [Server] INFO at java.net.ServerSocket.bind(Unknown Source) 18.05 12:35:35 [Server] INFO at java.net.ServerSocket.bind(Unknown Source) 18.05 12:35:35 [Server] INFO at java.net.AbstractPlainSocketImpl.bind(Unknown Source) 18.05 12:35:35 [Server] INFO at java.net.PlainSocketImpl.socketBind(Native Method) 18.05 12:35:35 [Server] INFO java.net.BindException: Address already in use 18.05 12:35:35 [Server] SEVERE with hosting services and, if so, you should check with your hosting provider. 18.05 12:35:35 [Server] SEVERE IP address and port are not already in use. This is a common problem 18.05 12:35:35 [Server] SEVERE Error initializing vote receiver. Please verify that the configured 18.05 12:35:35 [Server] INFO Enabling Votifier v1.9

  • Avatar of KramerC KramerC May 17, 2013 at 23:24 UTC - 0 likes

    @ultimate_n00b: Go

    I'm not sure what you mean. I'm guessing you are wondering if we have the Javadocs for Votifier published. We just published them at http://vexsoftware.github.io/votifier/docs/.

  • Avatar of ultimate_n00b ultimate_n00b May 17, 2013 at 21:25 UTC - 0 likes

    Just curious, are there any javadocs I am missing?

    Working on two plugins.

    - AdvancedMobs - Adds levels of mobs into the game, makes fighting mobs a lot more interesting

    - Quests - Questing plugin. Hooks into a lot of different plugins for Requirements/Rewards

  • Avatar of KramerC KramerC May 16, 2013 at 16:42 UTC - 0 likes

    @deathnote1029: Go

    Try to find out which server list is causing that. It could also be connections hitting your Votifier instance that don't send a proper vote notification.

  • Avatar of deathnote1029 deathnote1029 May 16, 2013 at 01:40 UTC - 1 like

    @KramerC: Go

    Hey,

    For some reason i get this error every now and then in the console:

    9:39:33 AM CONSOLE: [WARNING] [Votifier] Unable to decrypt vote record. Make sure that that your public key 9:39:33 AM CONSOLE: [WARNING] [Votifier] matches the one you gave the server list. 9:39:33 AM CONSOLE: mismatch: 0

    But the key is exactly the same. Is there something i have done wrong?

    Thanks

    deathnote1029

  • Avatar of KramerC KramerC May 15, 2013 at 15:26 UTC - 0 likes

    @Mike10221999: Go

    That warning isn't caused by any configuration issue. It's possible that server list is resetting the connection before sending anything meaningful to Votifier. Try contacting them about it.

  • Avatar of Mike10221999 Mike10221999 May 15, 2013 at 14:38 UTC - 0 likes

    I get hi error when I try to vote at Minecraft-server-list.com:

    09:23:59 [WARNING] [Votifier] Protocol error. Ignoring packet - Connection reset

    I did some research ad fond it could be a config problem, but my config appears to be OK.

    It also appears when the server reloads.

  • Avatar of KramerC KramerC May 14, 2013 at 21:26 UTC - 0 likes

    @ummbobee98: Go

    If you want to support us then you can advertise on Minestatus through Project Wonderful or by bidding for a spot on sponsored servers. We are the same people behind Minestatus.

  • Avatar of ummbobee98 ummbobee98 May 14, 2013 at 20:25 UTC - 0 likes

    kramer I want to congratulate you on being so active and really supporting the bukkit community. why don't have have a donation page?

    BFAK:90752295,7652b8561bc19ba2c2b5da8f2e847f06e7142f54d659d7636c599197f24b6f08

  • Avatar of KramerC KramerC May 14, 2013 at 16:11 UTC - 0 likes

    @owenwant: Go

    Delete the rsa folder and reload Votifier. The new keys will look similar but they are not the same.

    @xavierhorovitz: Go

    Glad to hear that you got it resolved. :)

Facts

Date created
Oct 12, 2011
Categories
Last update
Aug 31, 2012
Development stage
Release
Language
  • enUS
License
GNU General Public License version 3 (GPLv3)
Curse link
Votifier
Downloads
168,737
Recent files

Authors