A powerful Hytale plugin that rewards players for voting on server lists using both Votifier V1 and V2 protocols.
/vote command opens a GUI with clickable vote site linksVoteReceivedEvent for other plugins to integrate| Protocol | Support | Description |
|---|---|---|
| Votifier V1 | Built-in | Original protocol using RSA encryption. Uses rsa/public.key for authentication. |
| NuVotifier V2 | Built-in | Modern protocol using HMAC-SHA256. Uses token from config.json for authentication. |
| Webserver | Via Votifier | For vote sites that send votes via HTTP requests instead of Votifier protocol. |
Both V1 and V2 protocols work on the same port simultaneously - no configuration needed.
mods folder/plugin load Hytalist:HyVotemods/Hytalist_HyVote/After installation, you'll find configuration files in mods/Hytalist_HyVote/:
Main configuration file for the Votifier server and rewards:
{
"Port": 8192,
"Host": "0.0.0.0",
"Token": "auto-generated-secure-token",
"DisableV1Protocol": false,
"RewardCommands": [
{
"Command": "give {player} Rock_Gem_Diamond --quantity 1"
},
{
"Command": "give {player} Rock_Gem_Emerald --quantity 5",
"Chance": 50
},
{
"Command": "give {player} Rock_Gem_Ruby --quantity 10",
"Chance": 10,
"Permission": "hyvote.vip"
}
],
"BroadcastMessage": true,
"BroadcastMessages": [
"<green>{player}</green> <gray>has voted on</gray> <aqua>{service}</aqua><gray>!</gray>",
"<gold>Vote for the server to receive awesome rewards!</gold>"
],
"DebugMode": false,
"CheckForUpdates": true
}
Each reward command is an object with the following properties:
{player} - Username of the player who voted{service} - Name of the voting service{address} - IP address of the voter{timestamp} - Unix timestamp of the voteNote: RSA keys for V1 protocol are auto-generated in rsa/public.key and rsa/private.key.
Configure notifications sent to players when they vote:
{
"Title": {
"Enabled": false,
"Title": "<green>Reward Received!</green>",
"Subtitle": "<gray>Thanks for voting on</gray> <aqua>{service}</aqua><gray>!</gray>",
"DurationSeconds": 3
},
"Notification": {
"Enabled": true,
"Title": "<green>Reward Received!</green>",
"Description": "<gray>Thanks for your vote on</gray> <aqua>{service}</aqua><gray>!</gray>",
"IconItem": "Rock_Gem_Diamond"
},
"Sound": {
"Enabled": true,
"Name": "SFX_Player_Pickup_Item"
}
}
Configure the /vote command and vote site links:
{
"Enabled": true,
"VoteLinks": {
"Hytalist.com": "https://hytalist.com/test-server?nick={player}",
"AnotherServerList": "https://example.com"
},
"UI": {
"Enabled": true,
"Title": "Vote for the Server"
},
"Chat": {
"Enabled": true,
"Header": "<gray>========== <green>Vote Links</green> ==========</gray>",
"Format": "<aqua>{siteName}</aqua><gray>:</gray> <white>{siteUrl}</white>"
}
}
Configure vote reminders for players who haven't voted recently:
{
"Enabled": true,
"AfterHours": 24,
"DelayInSeconds": 60,
"Title": {
"Enabled": true,
"Title": "Vote Reminder",
"Subtitle": "Use /vote to support the server!"
},
"Sound": {
"Enabled": true,
"Name": "SFX_UI_Quest_Objective_Complete"
}
}
Forward votes to other servers in your network (useful for BungeeCord/Velocity-style setups):
{
"Enabled": false,
"Targets": [
{
"Host": "127.0.0.1",
"Port": 8192,
"Token": "target-server-token"
}
]
}
HyVote uses TaleMessage for color formatting. Available tags:
<black>, <dark_blue>, <dark_green>, <dark_aqua>, <dark_red>, <dark_purple>, <gold>, <gray>, <dark_gray>, <blue>, <green>, <aqua>, <red>, <light_purple>, <yellow>, <white>
You can even do rainbow colors:
<gradient:red:yellow:green:blue:purple>Rainbow!</gradient>
config.json (auto-generated on first run)rsa/public.key (auto-generated on first run)public.keyDebugMode to test/vote - Opens the vote menu (permission: hytalist.hyvote.command.vote, allowed by default)/hyvote - Shows HyVote admin commands/hyvote test <player> - Send a test vote for a player (permission: hytalist.hyvote.admin)/hyvote reload - Reload all configuration files (permission: hytalist.hyvote.admin)/testvote <player> - Alias for testing if not taken by another plugin (permission: hytalist.hyvote.admin)DebugMode in config.jsonHyVote messagesJoin our Discord for support: https://discord.gg/fWgDuCThj2