Anyone who has been active on the main forums in the last few days must surely have already heard the news.
I'm not going to comment on why and how, but the short version is that Bukkit is almost certainly not getting passed this.
Consequently, the future of BukkitDev is very uncertain. Even if the legal matters were resolved tomorrow there isn't really anybody left to deal with file submissions anyway. There's no indication about how long the site will stay up and what will happen to the files.
Anyway, while I will continue updating and developing my plugins you will need to look for updates somewhere else, namely the wiki. I will be updating this wiki in the next few days to facilitate better communication (forums, email, etc.) and adding any documentation that's missing.
I will also, of course, be looking into porting the plugins over to whichever API emerges from the ashes!
Introduction
Mobs gives you the ability to control almost every aspect of the mobs on your server, and a few other things on top.
The concept is simple - as your server is running, things are constantly happening. Players are mining, mobs are spawning, the sun is going down, it's starting to rain, etc.
Behind the scenes, CraftBukkit is sending messages to all interested plugins about these events. Player John broke a block of stone in world at location 55, 23, 137; A sheep died in world at location 209, 77, 22, etc. There are dozens of events, and thousands of these messages are sent every minute.
Most plugins listen for a few of these messages and act upon them. Mob-blocking plugins, for example, listen for new mobs spawning somwehere, and then look at the config to decide whether to allow or block the mob from spawning. Chat filtering plugins listen for the player is chatting messages and block/edit them according to the config.
Mobs listens for most (eventually all) of the mob-related messages, and a few extra ones, and gives you the option to block, allow, or alter the effect of the event.
However, it goes beyond that in that it allows you to use the event to perform one or more actions. So, while you may not want to interfere with creepers spawning, you can use this event to change the weather, set the time, drop an item somewhere, give someone some experience points, or as many of the dozens of possible actions that you want.
Additionally, it's possible to use conditions to filter the events you act upon. Want to give creepers a 1 in 1000 chance of taking out half your house when it explodes? Not a problem (except for the house).
Config.yml
checkfornewerversion - set to yes to allow the plugin to contact this site and see if there is a newer version available. Note that it onlys checks, and doesn't download anything.
generatetemplates - set to yes to have the plugin create empty config files for every possible event. Alternatively, simply look up the names on the
tutorial and create only the files you want.
worldstoignore - a list of worlds in which the plugin will be effectively disabled, ignoring all events in those worlds.
allow_debug - set to yes to enable other plugins to access the event API (for logging, debugging, etc.)
Commands
There is one only command in the plugin, which is
/reload_mobs, or
/rm. The reloads the config without reloading the plugin itself.
Users need the mobs.can
reloadconfig permission, or to be an op.
Update checking
If you like, you can set the plugin to check for any newer versions that get released. To do this use the check
fornewer_version option in the config file. This only works for release builds so you won't be bothered by any beta or dev builds.
Note that no update will be downloaded even with this set.
Tutorial
Start the tutorial
here to read up on how the plugin works
The tutorial for the old config can be downloaded from
here for offline viewing.
Updates
Updates for all my plugins will be announced via Twitter, which you can find
here.
Dependencies
Mobs has another plugin as a dependency called Extra Events. Read more about it
here.
Make sure you install Extra Events as well otherwise you will get errors on startup!
Donate
Mobs takes a lot of time to maintain, so if your server is enriched by it and you have some spare donations please consider sharing!
If you're penniless or like
Mobs but not that much I'm also partial to TF2 items. Send any you don't want my way! STEAM id: coldntired
If you don't know what TF2 is, then start playing! It's
free and fun!
@coldandtired
Please do :D
@InsaneMCS Currently, no. But I can add that..
Can this control what mobs spawn on? As in block like "Grass"
1.4.1 is up - direct link
Fixed a bug with an empty spawns.yml (thanks @MysticRealms for the help!)
@MysticRealms The config will take into account all entries now, but will still execute the first true condition it finds. So start with specific conditions and get more general.
1.4 is up - direct link
This version has a lot of breaking changes so read carefully.
New spawner.yaml config
Changes
@MysticRealms The bug I referred to earlier means that no matter how big your config, the first found entry for the mob will be used. That works fine for simple configs but not for more complicated ones.
I'm working on it at the moment to build a list of entries instead of only the first one which should hopefully make things work as expected.
@coldandtired
We have no other plugin that deals with mob drops, but I will do some additional troubleshooting and get back to you to determine if a conflict exists.
EDIT (seconds later): I just realized that after the cavespider fix, it is only "zombie" that does not work, which I assume is not working due to the previous entry for "zombie" in another world. Could this be causing an issue? I don't really understand how an entry for another world could affect a new entry for a completely different world, but I can't think of anything else.
@MysticRealms I gave it a quick test and all the mobs in that config entry dropped what they were supposed to in the config - iron ingot, etc.
You have to remove the hyphen from the cave-spider (I fixed this but it seems the deaths module is still using the old code).
You said you had another plugin, could it (or another) be interfering with the drops?
@coldandtired
I appreciate your response. Can you think of any workaround to achieve what we need for the second entry? (Already tried listing one by one, but this did not work, and strangely the mobs that worked in the long list of names still worked in an individual entry, but those that did not work before did not. e.g. I single entry for zombie in 'world: dun' yielded no effect, but an entry for skeleton worked as it did when all name entries were used in a single entry.)
Our release is at 9pm EST today, so I am desperately trying to get some kind of system working by then.
@MysticRealms A couple of things I saw instantly - percents must be integer, so you can't have 0.5, 0.25, etc. I might add this possibility but I didn't really think it was necessary at the time.
Your second entry only working for some mobs is odd, they should all get the same conditions applied to them. I'll look into it.
I found a bug last night that when there are multiple entries with the same mob, only the first entry will be checked. This probably causes your global/region issue. It's on the list to fix in the next update.
@Enolamron Not currently. I have to look into how to get custom items ids. I'll do it after I've got the config rewrite done.
@mantegudo Your config definitely worked. The only thing I did was change the name of the region to my test region (in the box) Did the console show any errors for WorldGuard/Edit? I know you need to be using 5.4 for regions to work.
URGENT Hey coldandtired. We are releasing out server tomorrow (later today technically), and I'm having trouble setting up some drops.
The goal: I'm trying to setup drops for our "dungeons" that all are on one specific world. To save time, I am trying to setup a huge global configuration for all mobs used in the dungeons, as well as another entry for the mobs we use for bosses. So essentially, we need an entry for these mobs (zombie, spider, cave_spider, creeper, ghast, skeleton, pigzombie) to drop 1-3 iron_ingots randomly, or perhaps nothing at all. We need an additional entry for boss mobs (blaze, enderman, giant) to have a low chance of dropping a randomly enchanted item or 50 iron ingots.
My attempt at this is located at the following pastebin: http://pastebin.com/984aCSxd
The first entry is used for something else on another world, and it works.
The second entry "sort of" works, as only skeletons, pigzombies, creepers, and ghasts drop the specified items. The other mobs drop their natural items.
The third entry does not work at all, and the console says that there is something wrong with this entry.
The console also says that there is "something wrong" with the spawner.yml, despite all of these working (or at least appear to be working) without an issue. For reference, here is the spawner.yml ( http://pastebin.com/qrjaFKwY ). However, note that the spawner of the mobs of our dungeons is done by another plugin, and thus no spawners are configured for the dungeon with Mobs, just death events.
A side question to all of this is the following: how do you setup global drops for certain mobs without having a global drop conflict with a region-specific drop? The other day I tried to setup (for example) a global drop of 1 iron ingot for zombies in world: mr, but it apparently would not work with the already existing entry for the specific region in the first entry.
I would appreciate any help on this matter, as our release is approaching, and I desperately need to attend to these issues! Thanks!
Any way to get mobs to drop items from other mods like redpower?
@coldandtired
Yeah I have, latest version and running correct! Do u wanna join my server?
@mantegudo Do you have WorldEdit and WorldGuard installed? And they're running correctly, latest version?
It's now spawning on the configured time and even the shortcut don't work! Here is my config:
Is there currently or is there plans to control the mobs health and damage too? Maybe even their behavior style (like setting a skeleton to a creeper's behavior of charging the player, or a giant to a spider's behavior to allow it to "wall climb" over slight ledges)
@DrakeDouglas
the deaths.yml had conditions in it as
But it didn't like that. so now it just has conditions as world type normal, and it's working. I'm still getting that error every few minutes though.