Horse Racing Plus
Horse Racing Plus
This plugin let's you create an arena with several spawns and a finish line and let your players race against each other! You will be able to specify rewards in form of money or items and have multiple arenas in multiple worlds!
This project is now open source: Github.
Features
v1.0: (14.08.13)
- simple setup
- rewards in form of money or items
- multiworld support
- multiarena support
- every command available trough signs
- customize all strings to your language and change all colors
- custom names for horses
- Linux support
- Include not only gambling, but also normal money reward
- Movement lock
- Players can't exit horses in any way (commands, shift)
- Autoupdater
v1.1: (16.08.13)
- /hr cancel [name] for cancelling a race
- clear arenas on server reload/shutdown
- /hr join command
- Java 1.6 support
- multiple rounds
- fix countdown bugs <-
- optionally announce winners
- Race statistics
v1.2: (20.08.13)
- remove log spam in the console
- Big code cleanup
- Errors etc. get logged to plugin_log.txt in the HorseRacingPlus directory
- shop
- Leaderboards
- Stats fixed
- minor bugfixes
- /hr removespawn command
- arena cycling
v1.2.1: (22.08.13)
- players can bet
- Bugfix: Horses not spawning if arena too far away
- Horse protection: if horse dies in a game, players gets new one
v1.2.2: (29.09.13)
- spectating
- a few minor bugfixes regarding player leaving
- inventory saving
- if all players leave and no winning possible anymore -> "last man standing" wins prize
- play sound when game starts
- add /hr reset command
- fix sign on rightclick, if it's screwed
- reloading now properly tps people away and fixes signs
- add wrong setup prevention
- fix bug preventing horses from despawning
- Bugfixes
v1.3:
- MySQL support
v1.3.1:
- multiple item prizes (only multiple ids, not amounts yet)
- maybe Bungee support
Green bullets are done, orange ones buggy or in work and red ones not done yet
Setup
It's fairly simple, you need a lobby, some spawns and the finish line.
- /hr createrace [name]
- /hr setlobby [name]
- /hr setspawn [count] [name] You can set unlimited spawns. The number of spawns is equal to the maximum of players that can join a race
- /hr setfinish [name] After you typed in /hr setfinish [name], you'll get a wooden shovel to select two points, as described on the picture beneath.
- create a join sign at the lobby:
- [horserace]
- racename
To set a finish line, select the first point by leftclicking the block with the wooden shovel and the second point by rightclicking the other block:
Arenacycling Setup (v1.2)
If you have two (or more) arenas and want your users to cycle through all this arenas in one run, use this feature.
Please delete any join signs before using arenacycling, otherwise it won't work. Right now you can either use multiple arenas with multiple join signs or arena cycling. Also, every arena needs to have the same amount of spawns.
- Be sure to have at least two arenas already set up.
- turn on arena_cycling in the config.
- Create the following join sign:
- [horserace]
- [cycle]
To remove the cycling feature again, turn arena_cycling off in the config. You can optionally remove the cycle join sign, but it won't work anyway with arena_cycling disabled.
MySQL (v1.3)
Enable MySQL in the config file by setting mysql.enabled to true, also adjust the host, database, user and password settings to your needs. Create a table in the following format and you're good to go!
id (int) | player (string) | win (int) | lose (int) |
The id column must be the primary key and have the autoincrement attribute set to true. Table name: horseracing_stats.
Configuration
Config:
- use_economy: true
- use_gambling: true
- entry_money: 10 if use_gambling is set to true, everyone pays a little bit, but the player wins everything
- normal_money_reward: 50 if gambling is not enabled, noone needs to pay to join the race and the winner gets e.g. 50$
- itemid: 364 If you don't want to use economy, your players can also get items (e.g. diamonds) as a reward
- itemamount: 10 amount of items to give
- horsename: Racehorse You can change the name of the race horses
- horsecolor: BLACK And even the color of the horses :)
- use_rounds_system: false
- rounds: 2
- min_players: 2
- starting_cooldown: 10
- cycle_through_arenas: false
- announce_winner: true
- arena_cycling: false see ArenaCycling Setup for more information
- enable_betting: false
- max_bet_amount: 500
- lastmanstanding: true if enabled, the last player in an arena gets the prize after everyone leaves
Shop:
- jumppotion_price: 50
- speedpotion_price: 150
- barding_price: 100
Commands
- /hr createrace [name]
- /hr setlobby [name]
- /hr setspawn [count] [name]
- /hr list: lists all arenas
- /hr reload: Reloads config
- /hr cancel [name]: cancels a race and clears the arena
- /hr join [name]: joins a race without rightclicking a sign
- /hr removerace [name]
- /hr removespawn [name] [count] e.g. '/hr removespawn arena1 3' removes the third spawn of arena1
- /hr stats [name] show win/lose ratio and later on personal horse stats
- /hr bet [amount] [name] if the provided player wins, you'll get the doubled amount back
- /hr leave
- /hr reset [name] resets the arena, if something went wrong
Permissions
- horseracing.createrace
- horseracing.setlobby
- horseracing.setspawn
- horseracing.removerace
- horseracing.setfinish
- horseracing.sign
Preview and Youtube
Also, thanks to 300richboy for doing that nice youtube video for me!
Additional Info
- I'm open for any suggestions, just comment below! Thank you and have fun :)
- You need Vault for the economy stuff to work
- This plugin uses MCStats to send statistics to mcstats.griefcraft.com/plugin/HorseRacingPlus which contain things like server software information etc.
- This plugin also uses an auto-updater which can be turned off in the config (I don't recommend that for future bugfix releases).
[Metrics stats again soon]
Join signs, with player + game info? :)
Nice job, on the plugin. Looks good so far :)
Does this put the player straight on the horse and is it locked so the player cannot leave the horse?
@pimsserver
I was planning to just add a movement lock while the game hasn't started yet, but if you want to, I can add that too :)
At all: Sadly I could not release the plugin today, because there are still bugs and I don't want to drop some buggy beta release to you. So yeah, tomorrow is the new ETA :)
Looks nice. I'll definitely try it out when it's released.
How about a gate in front of the spawn area though? As soon as the game starts (after a countdown), the gate would drop, allowing the players to start racing.
Can't wait for this to be released :)
@instancelabs
Oh THANKS !!!!!!!!
@romainimberti
I think I should be finished with the first beta today :) (UTC+1)
AMAZING !!!!! I hope I can download it in the 24h ! :D
Amazing :D