BloodMoon
Description
This plugin will add a blood moon event to your server, each night has a configurable chance of a blood moon. During a blood mood the game is made a lot harder:
- Skeletons shoot faster.
- Skeletons shoot fire arrows (that start fires).
- Zombies spawn with weapons and armor.
- Mobs can break blocks when focused on a player.
- Hostile mobs have more health.
- Small chance of your sword taking massive damage with each strike.
- Creepers have much more powerful explosions (that cause fire).
- Any hostile mob killed has a small chance of coming back as a zombie (or other mob).
- A mob will spawn if you try to sleep.
- More mobs will spawn.
- Mobs will drop more XP when killed.
- Mobs will drop more items when killed
- Mobs will target players from further away
- Mobs will move faster
- Custom texture pack during a bloodmoon, the default one makes the moon red.
All of the features can be configured for each world. See the config section for more information.
Bug Reports / Suggestions
If you find a bug, encounter a problem or have a suggestion, please fill out a ticket via the Tickets link above. I do not have the time to read through the comments section, any comment that fits the previous three categories will be ignored.
Commands
- /bloodmoon start - Starts a bloodmoon event.
- /bloodmoon stop - Stops a current bloodmoon event.
- /bloodmoon next - Schedules a bloodmoon for the next night.
Permissions
- bloodmoon.admin.start - Allows the player to manually start a bloodmoon
- bloodmoon.admin.stop - Allows the player to manually stop a bloodmoon
- bloodmoon.admin.ignore-world-lock - Allows the player to leave the world even if the bloodmoon is active and the lock-in-world feature is enabled
All of these default to OPs only.
Config
Information relating to the config file for this plugin can be found on the config page.
Potential Conflicts
Due to limitations of the Bukkit API, this plugin has to override certain methods from the Minecraft source. If any other plugin replaces the same things it will not be compatible with BloodMoon and weird stuff may happen ! You would still be able to use both plugins but you would need to disable the break-blocks option in the config file, even them some features of either plugin may not work properly.
Contributing
Contributions to the project are very much welcome, if you have a feature that you want implemented and know a nice way to do it then consider forking the repo and submitting a pull request. These will be accepted as long as the following simple guidelines are followed.
- Do not edit the structure of the pom.xml file, feel free to add a dependency if you need it but the formatting and structure should not be changed.
- If you are exposing a new API method, add a JavaDoc comment to it, but don't over-comment internal code.
- Follow the existing code style, don't antagonise over every space though !
All dependencies that are used are now available from a public Maven repo, so you don't have to worry about building several other projects just to add a simple change any more.
Source Code
Dev Builds
Changes Since Last Release
Download
Development builds of this project can be acquired at the provided continuous integration server. These builds have not been approved by the BukkitDev staff. Use them at your own risk.
http://bukkit.jacekk.co.uk:8000/job/BloodMoon/
@wide_load
:(! i put the plugin back in, and immediatley a load of errors r happening. NO mobs are spawning naturally, my console is seeing loads of errors, and it is lagging and crashing the server. i have tried both upgrading and downgrading. unless there is a fix, i will have to find some other good plugin to make the server harder. this was the best one :( it was fun while the plugin worked.
is there a fix for this? i cannot understand why this is happening.
i will keep looking here, and try the new versions, but i will try and find some other way to make a harder mob server. here is the error, i could not copy it all, it is longer than my console.
after reading, would you like m e to delete this post to avoid spam? 20:19 [SEVERE] Could not pass event CreatureSpawnEvent to BloodMoon org.bukkit.event.EventException at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:303) at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:62) at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:459) at org.bukkit.craftbukkit.event.CraftEventFactory.callCreatureSpawnEvent(CraftEventFactory.java:225) at net.minecraft.server.World.addEntity(World.java:892) at org.bukkit.craftbukkit.CraftWorld.spawn(CraftWorld.java:966) at org.bukkit.craftbukkit.CraftWorld.spawn(CraftWorld.java:789) at org.bukkit.craftbukkit.CraftWorld.spawnCreature(CraftWorld.java:346) at uk.co.jacekk.bukkit.bloodmoon.featurelisteners.MoreSpawningListener.onCreatureSpawn(MoreSpawningList ener.java:41) at sun.reflect.GeneratedMethodAccessor679.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:616) at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:301) at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:62) at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:459) at org.bukkit.craftbukkit.event.CraftEventFactory.callCreatureSpawnEvent(CraftEventFactory.java:225) at net.minecraft.server.World.addEntity(World.java:892) at net.minecraft.server.SpawnerCreature.spawnEntities(SpawnerCreature.java:162) at net.minecraft.server.World.doTick(World.java:1738) at net.minecraft.server.MinecraftServer.w(MinecraftServer.java:538) at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:449) at net.minecraft.server.ThreadServerApplication.run(SourceFile:492) Caused by: java.lang.NoClassDefFoundError: org/bukkit/craftbukkit/util/UnsafeList at uk.co.jacekk.bukkit.bloodmoon.entities.BloodMoonEntitySkeleton.<init>(BloodMoonEntitySkeleton.java:3 1) at uk.co.jacekk.bukkit.bloodmoon.listeners.EntityListener.onCreatu
<<reply 777013="">>
That sounds more like a bug ;) It should work with just 5 :? I'll look into it once I unpack my dev server :)
Just a thought, at the moment I have my odds of a bloodmoon set pretty low. Just raised it from a 5% to 8% chance. I'm sure most people using this mod probably want a much higher occurrence than what I'm using, but it took me a little while to figure out that the single digit percentage needed a 0 in front. (Example, 05 instead of just 5, I think 5 had it set to 50%.)
So I thought, maybe you could add a clarifying line after chance that reads
#Chance as a percentage (01-99)%
Or something along those lines?
<<reply 772876="">>
It should never spawn that many ! I think Bukkit restricts it way before that anyway.
I did want to do something with giants, the problem is making them less buggy. At the moment you can only kill them by attacking their feet I think and I haven’t found a way to modify the collision detection yet.
Also they tend to get jammed in between trees and stuff since they can only jump as high as normal mobs so I would have to wither make them trample blocks (which would be cool but very irritating) or jump/step higher (which would look weird)
I will do the config thing though :)
@wide_load i have thought of another idea.# would it be possible to choose what mobs camt on bloodmoon, so (i wouldent) i could choose from anything from 1000 endercragon to 50 chickens? it would be nice to have giants and pig zombies walking around (i have natural pigzombies already) and i could throw the occasional ghast in there, or giant. this would be so fun!
my server is having critical mobspawning errors, and i have had to take the plugin out :( (well, spawning 100000 mobs is just laggy, and crashes)
<<reply 765857="">>
Yep that should be easy enough :) I'll add it for the next update.
Brilliant mod.
Any chance you could make it so you can choose what types of mobs apply to the more-spawning part of the config?
I'm kinda wanting to use bloodmoon as a randomly occurring zombie apocalypse type mod, preferably without creeper packs roaming around :-p
Maybe even being able to disable certain mobs on bloodmoon nights?
Altering the warning text would be interesting too.
<<reply 764485="">>
"arget" haha ! I was so careful this time ! I will change that with the next version, To be safe I would declare both in the config file so it doesn’t break on an update.
I have gotten some awesome suggestions for this actually and I will be trying to implement most of them this week. I might even revisit the Enderman idea since that was genuinely quite scary !
Awesome plugin, cheers :)
1 slight concern, in your last config it read just under fire arrows
"ignight-target"
then you changed it in the new update, it now reads
"ignite-arget" shouldn't that be "ignite-target" ?
also reads this way in your config help pages here. copy n pastes? lol
If it's meant to be that way then sorry for the trouble, if not then now you know :D
Cheers again for all the fun we having with this :) Keep up the great work.
<<reply 762317="">>
That should be fixed, you may get a warning about it not shutting down an async task though. I have no idea why that comes up since the plugin does not actually use any async tasks at all so you can just ignore it.
Is there still an issue with bloodmoon crashing when using the reload/command?
<<reply 757494="">>
Pointless comments are the best kind ! They don't blame me for anything ! And thanks ;)
@wide_load
xD your tut's are great, I use them on my site :) (pointless comment but who cares)
<<reply 755361="">>
You have the world listed under the affected-worlds section ?
<<reply 756243="">>
Haha, that's me. Hello :)
Wait, I know you.... Something on a YouTube video about PHP/Websites....?
Ahem, anyway, love the plugin. Great for RPG servers.
i am testing now and doesnt work , i test whit the fire arrows, the break function , etc i have allways on true, and all settings true, but the night is normal , i try whith the command but is the same, i have 1.2.5 R:3 good plugin men ;)
<<reply 755309="">>
You can safely ignore that, it's because I never use /reload so forgot about how permissions work. Just ignore it until the next update :D
hi, i have an error when i reoad the plugin, in console say: ilegal argument exeption, the permission bloodmoon.admin.start is already defined.
what is hapening ?
thanks good plugin!
<<reply 752248="">>
Correct :) Unfortunately there is no way to make the moon turn red from a Bukkit plugin. Hopefully that will be possible when the official mod API is ready :D
i think when it is activated it happens on a random night not everynight and when it is activated the moon should turn red to show its a Blood moon