ZombieApocalypse
Zombie Apocalypse
by sheodox
What is Zombie Apocalypse?
ZA adds the possibility for a zombie apocalypse to start at 9:00 each night. Zombies will spawn around each player, and you must defeat the zombies before morning to receive a reward!
How does it work?
At 9:00 P.M. there is a configurable (default: 20%) chance for an apocalypse to start and a configurable amount of zombies (default: 40) will spawn and a configurable percent of them (default: 50%) need to be killed for a reward to be gained. The apocalypse can be started with a command (optionally you can specify a number of zombies per person to spawn). Each zombie will spawn 1-14 blocks away in both the X and Z directions, one of coordinates is offset by another 10 blocks so the zombies don't spawn too close.
The rewards are configurable:
Each possible item needs to specify these things - (these are explained in config.yml)
- Item name
- Chance
- Quantity
- Message
Default Items
Item - Chance
- Diamond sword - 5
- Diamond chestplate - 5
- 2 x Diamond - 25
- Gold sword - 25
- Emerald - 25
- 1 x Diamond - 50
- 5 x Iron ingot - 150
Commands
/za help - displays information about the plugin.
/za version - displays the version of the plugin.
/za commands - displays a list of all commands.
/za kills - shows the kills/goal of the current apocalypse.
OP commands:
/za start - manually starts the zombie apocalypse.
/za start <integer> - manually starts the zombie apocalypse with <integer> number of zombies spawned per person.
/za getitem - gives the name of the item in your hand, used for configuring rewards.
Configuration
Configuration of Zombie Apocalypse is very simple. In config.yml enter the name of your world in the world field and change false to true in the configured field. If you don't do this the plugin will not load and every time someone logs in it will say the mod needs to be configured. If the world name isn't valid and it says it's configured you will get some null pointer exceptions from two tasks. There is also a field called "numzombies" that has a default value of 40, this is the number of zombies that will spawn per person from both naturally occurring apocalypses and when using the command "/za start" without specifying a number.
As an example my server has a world named Trysnor so I set up the config.yml file like this
#Enter the name of the world you want to use for the zombie apocalypse #Replace "world" with whatever your server's world is world: Trysnor #numzombies is the amount of zombies you want to spawn per person from a default event. numzombies: 40 #when you have configured this file with your world's name change false to true configured: true
You can also configure the chance per night for the apocalypse to happen. There is a message at 8:00 PM warning that the apocalypse might be coming, and a message if it doesn't happen. Both of those messages can be disabled. There is also a limit to the number of zombies that can spawn. If this number is anything under one there is no limit. If the "hardlimit" is over one, it will spawn only up to that many zombies.
FOR SUGGESTIONS AND BUGS
Please create a ticket here: https://bitbucket.org/sheodox/zombieapocalypse/issues/new I'm not actively developing this mod because I'm working on other projects. If you would like to fork this mod there is a git repo on the repository tab.
Hey guys, sorry about the wait. I'm hoping to get around to updating ZA soonish. No promises though on when. I need to fix a bunch of stuff because I didn't code it very well. After refactoring and adding new features and whatever else I'll upload the project to a Github repo so anyone can fork it and do what they please.
/za = internal error.
console on startup -
27.10 16:43:51 [Server] INFO at net.minecraft.server.v1_6_R3.ThreadServerApplication.run(SourceFile:583) 27.10 16:43:51 [Server] INFO at net.minecraft.server.v1_6_R3.MinecraftServer.run(MinecraftServer.java:421) 27.10 16:43:51 [Server] INFO at net.minecraft.server.v1_6_R3.MinecraftServer.s(MinecraftServer.java:488) 27.10 16:43:51 [Server] INFO at net.minecraft.server.v1_6_R3.DedicatedServer.t(DedicatedServer.java:227) 27.10 16:43:51 [Server] INFO at net.minecraft.server.v1_6_R3.MinecraftServer.t(MinecraftServer.java:524) 27.10 16:43:51 [Server] INFO at org.bukkit.craftbukkit.v1_6_R3.scheduler.CraftScheduler.mainThreadHeartbeat(CraftScheduler.java:345) 27.10 16:43:51 [Server] INFO at org.bukkit.craftbukkit.v1_6_R3.scheduler.CraftTask.run(CraftTask.java:53) 27.10 16:43:51 [Server] INFO at com.gmail.deathbysniper727.zombieapocalypse.ZombieApocalypseListener.run(ZombieApocalypseListener.java:242) 27.10 16:43:51 [Server] INFO java.lang.NullPointerException 27.10 16:43:51 [Server] WARNING Task #24 for ZombieApocalypse v1.4.0 generated an exception 27.10 16:43:48 [Server] INFO at net.minecraft.server.v1_6_R3.ThreadServerApplication.run(SourceFile:583) 27.10 16:43:48 [Server] INFO at net.minecraft.server.v1_6_R3.MinecraftServer.run(MinecraftServer.java:421) 27.10 16:43:48 [Server] INFO at net.minecraft.server.v1_6_R3.MinecraftServer.s(MinecraftServer.java:488) 27.10 16:43:48 [Server] INFO at net.minecraft.server.v1_6_R3.DedicatedServer.t(DedicatedServer.java:227) 27.10 16:43:48 [Server] INFO at net.minecraft.server.v1_6_R3.MinecraftServer.t(MinecraftServer.java:524) 27.10 16:43:48 [Server] INFO at org.bukkit.craftbukkit.v1_6_R3.scheduler.CraftScheduler.mainThreadHeartbeat(CraftScheduler.java:345) 27.10 16:43:48 [Server] INFO at org.bukkit.craftbukkit.v1_6_R3.scheduler.CraftTask.run(CraftTask.java:53) 27.10 16:43:48 [Server] INFO at com.gmail.deathbysniper727.zombieapocalypse.ZombieApocalypseTimer.run(ZombieApocalypseTimer.java:45) 27.10 16:43:48 [Server] INFO java.lang.NullPointerException 27.10 16:43:48 [Server] WARNING Task #23 for ZombieApocalypse v1.4.0 generated an exception 27.10 16:43:48 [Server] INFO at net.minecraft.server.v1_6_R3.ThreadServerApplication.run(SourceFile:583) 27.10 16:43:48 [Server] INFO at net.minecraft.server.v1_6_R3.MinecraftServer.run(MinecraftServer.java:421) 27.10 16:43:48 [Server] INFO at net.minecraft.server.v1_6_R3.MinecraftServer.s(MinecraftServer.java:488) 27.10 16:43:48 [Server] INFO at net.minecraft.server.v1_6_R3.DedicatedServer.t(DedicatedServer.java:227) 27.10 16:43:48 [Server] INFO at net.minecraft.server.v1_6_R3.MinecraftServer.t(MinecraftServer.java:524) 27.10 16:43:48 [Server] INFO at org.bukkit.craftbukkit.v1_6_R3.scheduler.CraftScheduler.mainThreadHeartbeat(CraftScheduler.java:345) 27.10 16:43:48 [Server] INFO at org.bukkit.craftbukkit.v1_6_R3.scheduler.CraftTask.run(CraftTask.java:53) 27.10 16:43:48 [Server] INFO at com.gmail.deathbysniper727.zombieapocalypse.ZombieApocalypseListener.run(ZombieApocalypseListener.java:242) 27.10 16:43:48 [Server] INFO java.lang.NullPointerException 27.10 16:43:48 [Server] WARNING Task #24 for ZombieApocalypse v1.4.0 generated an exception 27.10 16:43:45 [Server] INFO at net.minecraft.server.v1_6_R3.ThreadServerApplication.run(SourceFile:583) 27.10 16:43:45 [Server] INFO at net.minecraft.server.v1_6_R3.MinecraftServer.run(MinecraftServer.java:421) 27.10 16:43:45 [Server] INFO at net.minecraft.server.v1_6_R3.MinecraftServer.s(MinecraftServer.java:488) 27.10 16:43:45 [Server] INFO at net.minecraft.server.v1_6_R3.DedicatedServer.t(DedicatedServer.java:227) 27.10 16:43:45 [Server] INFO at net.minecraft.server.v1_6_R3.MinecraftServer.t(MinecraftServer.java:524) 27.10 16:43:45 [Server] INFO at org.bukkit.craftbukkit.v1_6_R3.scheduler.CraftScheduler.mainThreadHeartbeat(CraftScheduler.java:345) 27.10 16:43:45 [Server] INFO at org.bukkit.craftbukkit.v1_6_R3.scheduler.CraftTask.run(CraftTask.java:53) 27.10 16:43:45 [Server] INFO at com.gmail.deathbysniper727.zombieapocalypse.ZombieApocalypseListener.run(ZombieApocalypseListener.java:242) 27.10 16:43:45 [Server] INFO java.lang.NullPointerException 27.10 16:43:45 [Server] WARNING Task #24 for ZombieApocalypse v1.4.0 generated an exception 27.10 16:43:43 [Server] INFO at net.minecraft.server.v1_6_R3.ThreadServerApplication.run(SourceFile:583) 27.10 16:43:43 [Server] INFO at net.minecraft.server.v1_6_R3.MinecraftServer.run(MinecraftServer.java:421) 27.10 16:43:43 [Server] INFO at net.minecraft.server.v1_6_R3.MinecraftServer.s(MinecraftServer.java:488) 27.10 16:43:43 [Server] INFO at net.minecraft.server.v1_6_R3.DedicatedServer.t(DedicatedServer.java:227) 27.10 16:43:43 [Server] INFO at net.minecraft.server.v1_6_R3.MinecraftServer.t(MinecraftServer.java:524) 27.10 16:43:43 [Server] INFO at org.bukkit.craftbukkit.v1_6_R3.scheduler.CraftScheduler.mainThreadHeartbeat(CraftScheduler.java:345) 27.10 16:43:43 [Server] INFO at org.bukkit.craftbukkit.v1_6_R3.scheduler.CraftTask.run(CraftTask.java:53) 27.10 16:43:43 [Server] INFO at com.gmail.deathbysniper727.zombieapocalypse.ZombieApocalypseTimer.run(ZombieApocalypseTimer.java:45) 27.10 16:43:43 [Server] INFO java.lang.NullPointerException 27.10 16:43:43 [Server] WARNING Task #23 for ZombieApocalypse v1.4.0 generated an exception 27.10 16:43:42 [Server] INFO -Merciless <[Lord]EnderDhg> hey come play a game og Ma with me and jrcorcoran 27.10 16:43:42 [Server] INFO at net.minecraft.server.v1_6_R3.ThreadServerApplication.run(SourceFile:583) 27.10 16:43:42 [Server] INFO at net.minecraft.server.v1_6_R3.MinecraftServer.run(MinecraftServer.java:421) 27.10 16:43:42 [Server] INFO at net.minecraft.server.v1_6_R3.MinecraftServer.s(MinecraftServer.java:488) 27.10 16:43:42 [Server] INFO at net.minecraft.server.v1_6_R3.DedicatedServer.t(DedicatedServer.java:227) 27.10 16:43:42 [Server] INFO at net.minecraft.server.v1_6_R3.MinecraftServer.t(MinecraftServer.java:524) 27.10 16:43:42 [Server] INFO at org.bukkit.craftbukkit.v1_6_R3.scheduler.CraftScheduler.mainThreadHeartbeat(CraftScheduler.java:345) 27.10 16:43:42 [Server] INFO at org.bukkit.craftbukkit.v1_6_R3.scheduler.CraftTask.run(CraftTask.java:53) 27.10 16:43:42 [Server] INFO at com.gmail.deathbysniper727.zombieapocalypse.ZombieApocalypseListener.run(ZombieApocalypseListener.java:242) 27.10 16:43:42 [Server] INFO java.lang.NullPointerException 27.10 16:43:42 [Server] WARNING Task #24 for ZombieApocalypse v1.4.0 generated an exception 27.10 16:43:39 [Server] INFO at net.minecraft.server.v1_6_R3.ThreadServerApplication.run(SourceFile:583) 27.10 16:43:39 [Server] INFO at net.minecraft.server.v1_6_R3.MinecraftServer.run(MinecraftServer.java:421) 27.10 16:43:39 [Server] INFO at net.minecraft.server.v1_6_R3.MinecraftServer.s(MinecraftServer.java:488) 27.10 16:43:39 [Server] INFO at net.minecraft.server.v1_6_R3.DedicatedServer.t(DedicatedServer.java:227) 27.10 16:43:39 [Server] INFO at net.minecraft.server.v1_6_R3.MinecraftServer.t(MinecraftServer.java:524) 27.10 16:43:39 [Server] INFO at org.bukkit.craftbukkit.v1_6_R3.scheduler.CraftScheduler.mainThreadHeartbeat(CraftScheduler.java:345) 27.10 16:43:39 [Server] INFO at org.bukkit.craftbukkit.v1_6_R3.scheduler.CraftTask.run(CraftTask.java:53) 27.10 16:43:39 [Server] INFO at com.gmail.deathbysniper727.zombieapocalypse.ZombieApocalypseListener.run(ZombieApocalypseListener.java:242) 27.10 16:43:39 [Server] INFO java.lang.NullPointerException 27.10 16:43:39 [Server] WARNING Task #24 for ZombieApocalypse v1.4.0 generated an exception 27.10 16:43:38 [Server] INFO at net.minecraft.server.v1_6_R3.ThreadServerApplication.run(SourceFile:583) 27.10 16:43:38 [Server] INFO at net.minecraft.server.v1_6_R3.MinecraftServer.run(MinecraftServer.java:421) 27.10 16:43:38 [Server] INFO at net.minecraft.server.v1_6_R3.MinecraftServer.s(MinecraftServer.java:488) 27.10 16:43:38 [Server] INFO at net.minecraft.server.v1_6_R3.DedicatedServer.t(DedicatedServer.java:227) 27.10 16:43:38 [Server] INFO at net.minecraft.server.v1_6_R3.MinecraftServer.t(MinecraftServer.java:524) 27.10 16:43:38 [Server] INFO at org.bukkit.craftbukkit.v1_6_R3.scheduler.CraftScheduler.mainThreadHeartbeat(CraftScheduler.java:345) 27.10 16:43:38 [Server] INFO at org.bukkit.craftbukkit.v1_6_R3.scheduler.CraftTask.run(CraftTask.java:53) 27.10 16:43:38 [Server] INFO at com.gmail.deathbysniper727.zombieapocalypse.ZombieApocalypseTimer.run(ZombieApocalypseTimer.java:45) 27.10 16:43:38 [Server] INFO java.lang.NullPointerException 27.10 16:43:38 [Server] WARNING Task #23 for ZombieApocalypse v1.4.0 generated an exception 27.10 16:43:36 [Server] INFO at net.minecraft.server.v1_6_R3.ThreadServerApplication.run(SourceFile:583) 27.10 16:43:36 [Server] INFO at net.minecraft.server.v1_6_R3.MinecraftServer.run(MinecraftServer.java:421) 27.10 16:43:36 [Server] INFO at net.minecraft.server.v1_6_R3.MinecraftServer.s(MinecraftServer.java:488) 27.10 16:43:36 [Server] INFO at net.minecraft.server.v1_6_R3.DedicatedServer.t(DedicatedServer.java:227) 27.10 16:43:36 [Server] INFO at net.minecraft.server.v1_6_R3.MinecraftServer.t(MinecraftServer.java:524) 27.10 16:43:36 [Server] INFO at org.bukkit.craftbukkit.v1_6_R3.scheduler.CraftScheduler.mainThreadHeartbeat(CraftScheduler.java:345) 27.10 16:43:36 [Server] INFO at org.bukkit.craftbukkit.v1_6_R3.scheduler.CraftTask.run(CraftTask.java:53) 27.10 16:43:36 [Server] INFO at com.gmail.deathbysniper727.zombieapocalypse.ZombieApocalypseListener.run(ZombieApocalypseListener.java:242) 27.10 16:43:36 [Server] INFO java.lang.NullPointerException 27.10 16:43:36 [Server] WARNING Task #24 for ZombieApocalypse v1.4.0 generated an exception 27.10 16:43:35 [Multicraft] jrcorcoran ran command Message of the Day 27.10 16:43:35 [Connect] User jrcorcoran, IP 131.162.187.222 27.10 16:43:33 [Server] INFO at net.minecraft.server.v1_6_R3.ThreadServerApplication.run(SourceFile:583) 27.10 16:43:33 [Server] INFO at net.minecraft.server.v1_6_R3.MinecraftServer.run(MinecraftServer.java:421) 27.10 16:43:33 [Server] INFO at net.minecraft.server.v1_6_R3.MinecraftServer.s(MinecraftServer.java:488) 27.10 16:43:33 [Server] INFO at net.minecraft.server.v1_6_R3.DedicatedServer.t(DedicatedServer.java:227) 27.10 16:43:33 [Server] INFO at net.minecraft.server.v1_6_R3.MinecraftServer.t(MinecraftServer.java:524) 27.10 16:43:33 [Server] INFO at org.bukkit.craftbukkit.v1_6_R3.scheduler.CraftScheduler.mainThreadHeartbeat(CraftScheduler.java:345) 27.10 16:43:33 [Server] INFO at org.bukkit.craftbukkit.v1_6_R3.scheduler.CraftTask.run(CraftTask.java:53) 27.10 16:43:33 [Server] INFO at com.gmail.deathbysniper727.zombieapocalypse.ZombieApocalypseListener.run(ZombieApocalypseListener.java:242) 27.10 16:43:33 [Server] INFO java.lang.NullPointerException 27.10 16:43:33 [Server] WARNING Task #24 for ZombieApocalypse v1.4.0 generated an exception 27.10 16:43:33 [Server] INFO at net.minecraft.server.v1_6_R3.ThreadServerApplication.run(SourceFile:583) 27.10 16:43:33 [Server] INFO at net.minecraft.server.v1_6_R3.MinecraftServer.run(MinecraftServer.java:421) 27.10 16:43:33 [Server] INFO at net.minecraft.server.v1_6_R3.MinecraftServer.s(MinecraftServer.java:488) 27.10 16:43:33 [Server] INFO at net.minecraft.server.v1_6_R3.DedicatedServer.t(DedicatedServer.java:227) 27.10 16:43:33 [Server] INFO at net.minecraft.server.v1_6_R3.MinecraftServer.t(MinecraftServer.java:524) 27.10 16:43:33 [Server] INFO at org.bukkit.craftbukkit.v1_6_R3.scheduler.CraftScheduler.mainThreadHeartbeat(CraftScheduler.java:345) 27.10 16:43:33 [Server] INFO at org.bukkit.craftbukkit.v1_6_R3.scheduler.CraftTask.run(CraftTask.java:53) 27.10 16:43:33 [Server] INFO at com.gmail.deathbysniper727.zombieapocalypse.ZombieApocalypseTimer.run(ZombieApocalypseTimer.java:45) 27.10 16:43:33 [Server] INFO java.lang.NullPointerException 27.10 16:43:33 [Server] WARNING Task #23 for ZombieApocalypse v1.4.0 generated an exception 27.10 16:43:30 [Server] INFO at net.minecraft.server.v1_6_R3.ThreadServerApplication.run(SourceFile:583) 27.10 16:43:30 [Server] INFO at net.minecraft.server.v1_6_R3.MinecraftServer.run(MinecraftServer.java:421) 27.10 16:43:30 [Server] INFO at net.minecraft.server.v1_6_R3.MinecraftServer.s(MinecraftServer.java:488) 27.10 16:43:30 [Server] INFO at net.minecraft.server.v1_6_R3.DedicatedServer.t(DedicatedServer.java:227) 27.10 16:43:30 [Server] INFO at net.minecraft.server.v1_6_R3.MinecraftServer.t(MinecraftServer.java:524) 27.10 16:43:30 [Server] INFO at org.bukkit.craftbukkit.v1_6_R3.scheduler.CraftScheduler.mainThreadHeartbeat(CraftScheduler.java:345) 27.10 16:43:30 [Server] INFO at org.bukkit.craftbukkit.v1_6_R3.scheduler.CraftTask.run(CraftTask.java:53)
good plugin need to add configuration for rewards + special rewards items + %
We need an updaaate! :D
@SuperSayin234
Are you retarded? Obviously in game...
Is it like it comes out at 9:00 pm in rl or in the game?
Love your plugin! Im hoping for an update soon pretty please XD This plugin is like one my main features on my server, players love teaming up and fighting off hordes!
when you update the plugin could add these things possibly-
*make the zombie spawn chance increments of a % instead of 5=20% so we can choose a number between 1%-100%?
*make it so we can have a chosen number of waves and each wave could be customizable.
-wave sizes could be customized
-wave aggression could be customized (zombie walking speed for each wave.
-wave chance of zombies spawning with enchanted armor
-control drops and drop chance for each wave
*make it so when a player is under ground zombies don't spawn on the surface at their position. (people who mine almost never attack hordes when they are underground)
*add an option that allows zombies to open (not break) wooden doors.
*add an option that allows zombies to break glass pains if they are next to them
@machanicdude
yeah
this work for 1.6.4?
@dethlovesme
Thanks for the suggestions. One of these days I'm going to have to get back into working on the plugin. Before I add too much to it I want to clean up my code. It was the first plugin I made and I understand some of the challenges I had to overcome a lot better than I used to so there's probably a lot of things I could do to improve the code at least. More variation to the zombies would be great, I might think about that.
@wyndkin
Not yet, sorry. I have yet to get back into working on the mod again.
love the plugin it is epic only thing is i wish it was a bit more configurable like if i want the zombies to spawn with buffs/debuffs or armour/weapons maybe configure differnt mobs that may spawn as well or make it compatible with moremobs and have it hook into vault for economy bonusus after a winning night.
also one problem i have had is the whole spawning chances thing it took me a minute to get it but a person who is slightly more less mathimatically inclined as i wouldnt be able to figure it out lol maybe you could make the chances out of 100 instead 1 into 10
but it ios an epic idea and an epic plugin keep up the good work
ps. those are just suggestions not complaints love the plugin thx
Server log spam:
Any option to disable this yet?
@DoubleD_D
That's really cool, man.
Hi there, I enjoyed your plugin a lot, so I featured it in a video. I hope you like it.
When I manually start the apocalypse the server shows this error: http://pastebin.com/aerpwTXn
There are serveral errors for ZombieApocalypseListener and ZombieApocalypseTimer...
Edit: I noticed that when I enter "/za version" it says "version 1.4.0 by sheodox". But I downloaded version 1.4.2. Could this be the reason of this error?
Edit2: This time I startet with a clean bukkit installation (just like Buttonmasher50). Now I use the newest Craftbukkit Development build (#2865) instead of the beta build (#2838) and it works fine (Y)
Edit: FIXED.
I have no idea how or why, but apparently when I started with a clean slate, it worked great. I have a feeling it might've just been a bad download of the server.jar. Mod is up and working great again, and my server is thoroughly enjoying being swarmed with zombies, and newbies having a REAL reason to fear nighttime.
So if you end up having the same problem I did, (as can be read below) try redownloading your server's .jar file, and reinstalling the Plugin.
i would love to use this plug. but need feature where you can custom what item they give you like make diamonds ingots instead. and maybe pick the enchanted loot they win.
@DoctorBoyd
I'm glad you're enjoying it. Thats also a good idea for the messages.
An error shows in the terminal when a player enters '/za' instead of '/za help'
http://pastebin.com/DLvcC1fY