Annihilation
Image retrieved from the Shotbow Wiki
The Game
Annihilation is a team oriented mini-game. It is widely know for being run on The Shotbow Network. This plugin will allow you to run Annihilation, a mini-game, that thousands of people play every day on The ShotBow Network, on your own server! Customize it however you like. If you want to play with 100 people, it can do that. Only 8 people? It can do that too! With this plugin, the skys the limit, or in this case, Y=256!
From The Shotbow Annihilation Wiki:
Annihilation is a team-based PvP gamemode with 4 teams, Red, Blue, Yellow, and Green. Your team's objective is to destroy the other 3 team's nexuses, while protecting your own. Each team has their own quarter of the map where they can gather resources, build defenses etc. Every player is in adventure mode, meaning block breaking is only possible with the correct tools. Your team wins when it is the last one with a nexus.
The game is split up into 5 phases, each phase lasting 10 minutes.
Phase 1: Nexus blocks are invincible
Phase 2: Nexus blocks lose their invincibility
Phase 3: Iron Golem boss mobs spawn and diamond ores spawn in the center of the map
Phase 4: No changes occur
Phase 5: Double Nexus damage
The game will stop at phase 5 and stay there until the game is over.
The Nexus is the most important block in the game. Each Nexus has only 75 hit points, and when mined it will lose 1 HP each time, 2 In Phase 5. There is no method to regain lost HP, so every hit matters. When mined it makes a very loud anvil sound at the base, or a light note block sound if you aren't close enough, to alert the team their nexus is being hit.
Once a team's Nexus is destroyed, that team will no longer re-spawn. The remaining members of the team will remain in the game until they die, meaning they can still attack and destroy your nexus.
In order to win, your team must be the last one with a nexus.
In addition to the above, there are several kinds of shops in which players can buy items with gold ingots. Currently there are 2 kinds of shops: Brewing and Weapon. Shops take the form of a sign.
This Plugin
This plugin runs the game described above. It is designed to be run on its own server, meaning everything is consolidated onto the server. It is NOT meant to be run on a server where things are happening in other worlds or on other parts of the map. When people join the server they will be spawned at the lobby location. (Location can be set through command or the config) While in the lobby, players will be given an item that will allow them to select a kit to use in the game.
Signs should be placed at the lobby so people can join a team. In the event that no join signs are at the lobby, players can use the /team command to join whichever team they like. The plugin will auto balance teams in such a way that each team has no more than a 3 player lead over the smallest team.
Once the amount of players on the server reaches the needed amount (The amount can be set in the config), the plugin will make an announcement and the game will begin in 30 seconds. An announcement will be made at the 5 second mark. Once they game beings, each player will be teleported to one of the spawn points assigned to his team. (These are currently only set-able through the config) The player will be given the items/abilities for his kit, the color armor for his team, and the player is now free to play the game.
Commands
- /Anni [arguments]
- Start - - - - -Starts the Game immediately
- Stop - - - - - Stops the Game immediately (teleports everyone back to the lobby)
- Lobby - - - - Sets the lobby spawn point to the player's current location
- /Team [arguments]
- Red - - - - - -Attempts to join the Red team
- Green - - - - Attempts to join the Green team
- Blue - - - - - Attempts to join the Blue team
- Yellow - - - -Attempts to join the Yellow team
Permissions
- A.Anni - - - - Gives permission to use the /Anni command
Configuration File
The config file is quite complicated and a complete explanation of it can be found:
Here
How To Install
- Make sure the server is stopped.
- Download the latest .jar.
- Put the .jar file in the "/plugins" directory.
- Start your server. This will generate a config.yml if there is not already one.
- Change the config so the game runs the way you like.
- Restart the server so changes to the config take effect. (You can reload, but I personally do not advise this)
Beta Info, Bugs, Features, Etc.
Follow this Link: This One Right Here
Already Setup Maps
Credits
Mr_Little_Kitty (Little_Cat_Guy) - Author and Main Developer.
Austincd118 - Code Contributions.
nisovin - Used his IconMenu Class quite a bit.
The Shotbow Network - Inspiration.
@MCTylerPVP
Link?
They are selling your plugin on Spigot and it pisses me off. This is an obvious violation of the original license.
@SmartGolden
Yep! :)
@Little_Cat_Guy
oh.. thanks ! :) one question.. you update this plugin in october/november?
@SmartGolden
I'm sorry to say that kits are just a little too detailed to be able to make using YML config files. You will need to know a bit of java in order to make kits. Hopefully it won't be too hard though!
@JairoJosePC
One of my intentions is to make all of the comments, text, etc. external. I don't know if you will be able to do this immediately, but I hope you will be able to eventually. As for a zone around the nexus, that will definitely be happening! I also already have the phase bar being displayed above the screen, so there should be no need to display phase time in the scoreboard.
@Cocoaloco
That is something I plan to have, but I would like to get the new version up and running first before I start doing specific things like that. :)
@Aodan1001
If I worked for ShotBow I would unban you just for your enthusiasm!
UNBAN ME SHOTBOW lol
@Little_Cat_Guy
Can You Implement a System of Achievements as well for this plugin to unlock kits and where you can lock certain kits by using a web/server currency like shotbow?
Also can you make a system where you can set where the nexus, spawns and the lobby spawn?
@Little_Cat_Guy
Hi, are you gonna rewrite the plugin that it looks like the original one? With vote system and maybe a new map?
@Little_Cat_Guy: Hi, I would like that you put a yml file for all the text, comments, etc. I'm spanish and although the messages can understand it, it would be better if it can edit to spanish. Other idea would be add the possibility of can't build or break close the nexus. Also it would be good that in the scoreboard displays the time until the next phase. I hope that my suggestions, help you.
@Little_Cat_Guy
Thanks SO MUCH! i love you <3 one question.. can make YML config for kits? because i want make messages from kits in spanish, and name of kits too (i live in Argentina) please! and please add in the YML config of kits, particles, sounds and effects (example: i want make Vampire class, with Wolf Hearts particles, and sound of drinking pots, and the Drain life effect.) if you make this, i will love you FOR EVER! :D thanks so much!
@SmartGolden
That is the plan, yes. In addition I hope to support custom kits! Then people other than me can make kits for the plugin.
@Little_Cat_Guy
Thanks so much! are you adding more Kits and bug fixing others?? :D
I would just like to apologize to everyone for my absence. For a while I lost interest in this project and with college being as it is, I didn't really feel like updating it.
But fear not! An update (or should I say rewrite?) is in the works! I have no eta on when said update will be available, but it will hopefully be much better than the current version.
@Lepoty
What Version of Bukkit or Spigot are you using?
@Donio95
This Plugin Runs on a Entire Server and also Reboots the Server when the game is finished
Annihilation] Task #197 for Annihilation v0.3.0 generated an exception java.lang.NullPointerException at Misc.ScoreBoardMain.setupBoard(ScoreBoardMain.java:68) [?:?] at Main.AnnihilationMain.startGame(AnnihilationMain.java:134) [?:?] at Main.AnnihilationMain.countDown(AnnihilationMain.java:340) [?:?] at Main.AnnihilationMain.access$0(AnnihilationMain.java:333) [?:?] at Main.AnnihilationMain$2$1.run(AnnihilationMain.java:355) [?:?] at org.bukkit.craftbukkit.v1_7_R3.scheduler.CraftTask.run(CraftTask.java:53) [spigot.jar:git-Bukkit-1.7.9-R0.1-10-g8688bd4-b3092jnks] at org.bukkit.craftbukkit.v1_7_R3.scheduler.CraftScheduler.mainThreadHeartbeat(CraftScheduler.java:345) [spigot.jar:git-Bukkit-1.7.9-R0.1-10-g8688bd4-b3092jnks] at net.minecraft.server.v1_7_R3.MinecraftServer.v(MinecraftServer.java:600) [spigot.jar:git-Bukkit-1.7.9-R0.1-10-g8688bd4-b3092jnks] at net.minecraft.server.v1_7_R3.DedicatedServer.v(DedicatedServer.java:260) [spigot.jar:git-Bukkit-1.7.9-R0.1-10-g8688bd4-b3092jnks] at net.minecraft.server.v1_7_R3.MinecraftServer.u(MinecraftServer.java:558) [spigot.jar:git-Bukkit-1.7.9-R0.1-10-g8688bd4-b3092jnks] at net.minecraft.server.v1_7_R3.MinecraftServer.run(MinecraftServer.java:469) [spigot.jar:git-Bukkit-1.7.9-R0.1-10-g8688bd4-b3092jnks] at net.minecraft.server.v1_7_R3.ThreadServerApplication.run(SourceFile:628) [spigot.jar:git-Bukkit-1.7.9-R0.1-10-g8688bd4-b3092jnks]
Shame, that this plugin don't support Multiverse :(
@Iwitrag
You cant do it with multiple maps. If you want multiple maps I suggest getting Different Servers for your maps
@Jonathan03011998
Acrobat and Scout are a bit low... But its just you having problems with Scorpio because I was testing the plugin with a few of my friends and it stayed after I threw it.
@TheFloxiCz
What Error is it giving you?