Sea Battle
Sea Battle
This is a minigame where your goal is to destroy the enemies boat with (snow)balls. After building the arena and the following setup you can start fighting against each other! In version 1.1 economy got added, which means, you can turn this game even into a gambling game :) It works like a jackpot, everyone joins by paying e.g. 10$, but the winner gets everything that got paid back. You'll need Vault for this feature to work.
There's an updated version here, if this one doesn't work for you anymore: http://dev.bukkit.org/bukkit-plugins/minigameslib-seabattle/ Be aware that the commands and permissions changed a bit.
Setup
- Build your arena. Should contain water ;)
- Type in /sb createarena [name] to start the process of saving your arena.
- Next create two spawnpoints for two different teams in the arena: /sb setspawn 1 [arena] and /sb setspawn 2 [arena]
- Create a little lobby and type in /sb setlobby [name] while standing in the lobby.
- That's it!
Now you can create a sign containing the following lines:
- [boat]
- name (your arenaname)
Rightclick this sign and you'll spawn in your arena in a boat and some (snow)balls in your inventory.
As of the 1.5 update you can now add Ammo signs to let people get more snowballs ingame:
- [boat-ammo]
- 64 (this can be any number; it determines, how many snowballs the player gets, 2 stacks would be 128)
These ammo signs are available only once to each player in a game.
Commands
- /sb : Main SeaBattle command
- /sb createarena [name]
- /sb setspawn [number] [name]
- /sb setlobby [name]
- /sb removearena [name] : Remove an arena
- /sb leave : Leave the arena ingame
- /sb list : List all arenas
- /sb reload : Reload the SeaBattle config
- /sb reset [name] : Reset an arena
- /sb recreateconfig : Readds the default config values (doesn't remove arenas)
Permissions
- boatgame.* : all permissions
- boatgame.sign
- boatgame.create
- boatgame.setspawn
- boatgame.setlobby
- boatgame.cleararena
- boatgame.reload
- boatgame.list
- boatgame.remove
Config
- alwaysdropboat: true let boats drop always themselves
- invincibleboats: false invincible boats
- boatlifes: 5 number of snowballs that need to be shot at a boat to crash it
- playerlifes: 2 number of times a player respawns in one game
- use_economy: true true, if you want the gambling feature
- entry_money: 10.0 the entry price, please use numbers with decimal places. Only available, if use_economy is set to true
- maxplayers: 10 defines, how many players can join an arena
- minplayers: 2 defines, how many players are needed to start a sea battle
- starting_cooldown: 11 seconds to wait before an arena game begins
- teams: false enable this to have teams (max 2 teams)! Each team has a different head and uses one of the spawns as teamspawn. Members of a team can't kill themselves.
- itemreward_itemid: 264 Diamonds
- itemreward_amount: 2
- announce_winners: true
- auto_updating: true auto updates the plugin, if there are new releases
- lastmanstanding: true if set to true, the last man standing in a sea battle (if everyone leaves) will win and get the reward
- snowballstacks_amount: 3 the amount of snowball stacks to be added when a players joins a sea battle
- ammo_usage_count: 2 how many times the player can use an ammo sign in one game
Preview
Todo
- extend multiple item prizes with multiple item amounts
- additional weapons like shield in the future
- add MySQL support to store arenas and stats
- min/max players also per arena
- spectator mode
Green bullets are already done, yellow ones are still buggy or being tested, red ones not done yet.
Translation
The Config contains all strings used by the plugin. You can easily change them and the colors to your preferred language.
Additional Info
You can adjust the name of the boatballs by changing the strings.ball_name entry in the config.
You can configure boats to be invincible or drop theirselfs by changing the configfile, too. Defaults:
- alwaysdropboat: true
- invincibleboats: false
- This plugin uses an auto-updater which can be turned off in the config. I don't recommend that for future bugfix releases.
- This plugin also sends things like software information or online player count to MCStats (mcstats.griefcraft.com/plugin/SeaBattle).
Have fun!
Youtube
For those don't want to read all that stuff or don't understand the setup instructions above, here's a youtube video with some gameplay and a tutorial. :P This video is by BukkitHorde, thanks to him for doing that for me!
Here's another review in Spanish:
I get this error:
2013-08-23 11:55:26 [SEVERE] Could not pass event VehicleDamageEvent to comzeboatgame v1.4.4 org.bukkit.event.EventException at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:427) at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:62) at org.bukkit.plugin.TimedRegisteredListener.callEvent(TimedRegisteredListener.java:30) at org.bukkit.plugin.SimplePluginManager.fireEvent(SimplePluginManager.java:478) at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:463) at net.minecraft.server.v1_6_R2.EntityBoat.damageEntity(EntityBoat.java:104) at net.minecraft.server.v1_6_R2.EntitySnowball.a(SourceFile:30) at net.minecraft.server.v1_6_R2.EntityProjectile.l_(EntityProjectile.java:156) at net.minecraft.server.v1_6_R2.World.entityJoinedWorld(World.java:1492) at net.minecraft.server.v1_6_R2.World.playerJoinedWorld(World.java:1467) at net.minecraft.server.v1_6_R2.World.tickEntities(World.java:1336) at net.minecraft.server.v1_6_R2.WorldServer.tickEntities(WorldServer.java:517) at net.minecraft.server.v1_6_R2.MinecraftServer.t(MinecraftServer.java:571) at net.minecraft.server.v1_6_R2.DedicatedServer.t(DedicatedServer.java:239) at net.minecraft.server.v1_6_R2.MinecraftServer.s(MinecraftServer.java:481) at net.minecraft.server.v1_6_R2.MinecraftServer.run(MinecraftServer.java:413) at net.minecraft.server.v1_6_R2.ThreadServerApplication.run(SourceFile:582) Caused by: java.lang.NullPointerException at com.comze_instancelabs.boatgame.Main.onVehicleDamage(Main.java:641) at sun.reflect.GeneratedMethodAccessor59.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) at java.lang.reflect.Method.invoke(Unknown Source) at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:425) ... 16 more
and when a player win the battle, then the plugin arent teleport him to the spawn(lobby) And the Signs say the game is in game but nobody is in the battle... I use the Multiverse Plugin for more Battle Maps.
I uploaded v1.4.4, which should definitely fix this issue. Please read the description of that build when it is approved.
@Rissman
I'm starting to think that this is a bukkit bug or some plugin prevents the spawning.
Other possible causes:
If you want to I could add an optional "rage-mode" into the config, which spams the player with boats or in case of horseracingplus horses if the game starts and he doesn't have a boat/horse and later on removes all that stuff again.
the same problem as with Horse Racing Plus
@MaxKoopmansNL
Yep, I hope this is fixed now. A quickfix would have been saving the lobby next to the arena. ;)
It could be nice if you could confirm that it is working now, because I couldn't ever reproduce this bug on my testserver.
Finaly some bug fixes, i had to delete it because i didnĀ“t got in a boat anymore.
@bjonness98
Sorry for that :P You could try DrakonnasRealm, this is the ip: 172.245.10.111:25565
@instancelabs
I was mening some servers that I can se the ip on :-P so I can try out the plugin ;)
@bjonness98
Yes, Metrics shows 144 servers in the last 24 hours.
Some servers out there with this plugin??
@chopstick121
Sorry, i can't reproduce this bug in the latest craftbukkit build. Any errors?
players can get off the boat how can we provent that
@instancelabs
I meant only fix version :D Thx.
@MartinHavo
Thanks :)
I uploaded a new version today that fixed most of the bugs. Or do you mean a particular one?
Man, this is great plugin, when you will release new version and fix bugs?
Great Job.
@rickertxd
After the timer is finished, you should be able to move around and kill the boats of the others, but nothing special should happen. Or are there errors?
when the timer is ready there happens nothing
@daisyduck1
What operating system are you using? You could try copying the changed content of your configfile, remove the config.yml and create a new config.yml by yourself.
I'll fix the problem with the gambling. Thanks :)
Edit: uploaded new version, should be fixed now (delete current config file):
When i change anything in the config, for example the playerlife from 1 to 2, all the chat messages from the plugin changes from colored to white "?4TextTextTextText" and the plugin didn't work correct. I startet with a new generated config. When i change nothing the plugin works fine.
The second problem is, when i change the entry-money to 30, and maybe 3 people play, the winner only get 30 instead of 90.
Anybody with the same problem?
By the way, great plugin ;-).
@instancelabs
For MineCrafterCity's idea, you could make a separate plugin or a extra feature for minecarts called cart battle.