Mobs
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!
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!
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.canreloadconfig 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 checkfornewer_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!
-
View User Profile
-
Send Message
Posted Oct 1, 2012@coldandtired
Alright then. Additionally, where's the configurator to go along with that? Or can the old b32 one still be used? :)
-
View User Profile
-
Send Message
Posted Oct 1, 2012@BEQOsNtDi6xRDGzqIAT7 https://dl.dropbox.com/u/23854992/Mobs.jar
V5 has a few important changes so the syntax has to change a little. The example file posted just above should still work for v4 though.
-
View User Profile
-
Send Message
Posted Oct 1, 2012Where does one get that alpha?
-
View User Profile
-
Send Message
Posted Sep 30, 2012Alpha4 is up.
Added a few more conditions and a new area system (with WorldGuard support). See the targets page for more information.
Use the /cn command with a parameter to see what actions, conditions, etc. are implemented.
-
View User Profile
-
Send Message
Posted Sep 30, 2012@rdemanta It's hard to make a mob do something that isn't in the original Minecraft as a lot of things are hard-coded.
Most things that can be done with Bukkit are reactionary, as in MC tries to do something and Bukkit (and plugins) hook this and decide whether to block it, allow it, or change it.
This means that stopping a mob from attacking is easy, but making a mob attack when it's normally passive isn't.
The way I handle this is with autospawns. These more or less replicate what MC is already doing with its mobs, but extended to any mob, anywhere.
So, to get Ghasts spawning somewhere unnatural for them you need to set up a timer (autospawn) with a location to make them spawn there.
-
View User Profile
-
Send Message
Posted Sep 30, 2012@Si7VdeR I have a similar problem as you, but the problem I have doesn't give me an "empty map." I am using the Planetoids world generator and I'm trying to get Ghasts to spawn there. When I've tried Ghasts just don't spawn, but other mobs do. My Planetoids world is a Normal world so I think that's why they don't spawn there. I've set in the world conditions section that the world is a normal world and I've put the name of the world its allowed on also. Also, I get no errors or anything. Great plugin BTW.Thanks in advance.
-
View User Profile
-
Send Message
Posted Sep 29, 2012I wanted this to spawn Ghasts in overworld but I just get an empty map without anything in it ? Reason ?
BTW is it possible to just put Ghasts on in the Overworld without changing too much other things?
-
View User Profile
-
Send Message
Posted Sep 29, 2012Error alert:
[SEVERE] Could not pass event EntityDeathEvent to Mobs org.bukkit.event.EventException at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:332) at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:62) at org.bukkit.plugin.SimplePluginManager.fireEvent(SimplePluginManager.java:477) at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:462) at com.earth2me.essentials.commands.Commandkillall.run(Commandkillall.java:155) at com.earth2me.essentials.commands.EssentialsCommand.run(EssentialsCommand.java:102) at com.earth2me.essentials.commands.EssentialsCommand.run(EssentialsCommand.java:96) at com.earth2me.essentials.Essentials.onCommandEssentials(Essentials.java:383) at com.earth2me.essentials.Essentials.onCommand(Essentials.java:301) at org.bukkit.command.PluginCommand.execute(PluginCommand.java:40) at org.bukkit.command.SimpleCommandMap.dispatch(SimpleCommandMap.java:168) at org.bukkit.craftbukkit.CraftServer.dispatchCommand(CraftServer.java:492) at net.minecraft.server.NetServerHandler.handleCommand(NetServerHandler.java:878) at net.minecraft.server.NetServerHandler.chat(NetServerHandler.java:825) at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:807) at net.minecraftserverhook.NetServerHandlerProxy.a(NetServerHandlerProxy.java:124) at net.minecraft.server.Packet3Chat.handle(Packet3Chat.java:44) at net.minecraft.server.NetworkManager.b(NetworkManager.java:276) at net.minecraft.server.NetServerHandler.d(NetServerHandler.java:109) at net.minecraft.server.ServerConnection.b(SourceFile:35) at net.minecraft.server.DedicatedServerConnection.b(SourceFile:30) at net.minecraft.server.MinecraftServer.q(MinecraftServer.java:581) at net.minecraft.server.DedicatedServer.q(DedicatedServer.java:212) at net.minecraft.server.MinecraftServer.p(MinecraftServer.java:474) at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:406) at net.minecraft.server.ThreadServerApplication.run(SourceFile:539) Caused by: java.lang.UnsupportedOperationException at java.util.AbstractList.add(AbstractList.java:131) at java.util.AbstractList.add(AbstractList.java:91) at me.coldandtired.mobs.listeners.Main_listener.onEntityDeath(Main_listener.java:162) at sun.reflect.GeneratedMethodAccessor83.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:330) ... 25 more
Seeing from the error, it happens when a mob dies (well, duh)..
-
View User Profile
-
Send Message
Posted Sep 28, 2012"Save" button does not work...
-
View User Profile
-
Send Message
Posted Sep 28, 2012@CosmicVoyager Use the alpha release linked above.
Create a new text file called config.txt and put it in the plugins/Mobs/ folder.
Inside this text file add the following:
Note the two actions elements with the ratio attribute. These control how many creepers get powered when it's thundering. In the example above, 2 creepers will be vanilla for every 1 that is powered (2:1). Adjust this to whatever you want.
-
View User Profile
-
Send Message
Posted Sep 28, 2012I am unable to save config. I added a new outcome for Creeper, and added thundering and powered, but the save icon is grey.
-
View User Profile
-
Send Message
Posted Sep 28, 2012@coldandtired
"@CosmicVoyager: Go You need a conditional outcome (top-left section) which has a thundering condition and a powered property (heart icon)."
Will that only spawn one lightning creeper? Is there a way to set several to spawn throughout the world?
-
View User Profile
-
Send Message
Posted Sep 26, 2012The Alpha version has been updated, and I'm doing the docs now.
Most of the old functionality is now present (except autospawns and saving/loading).
-
View User Profile
-
Send Message
Posted Sep 25, 2012doesn't work on my server. impossible to get the right result from any option. I would like to block damage that mobs deal to each other. in fact i want these stupids zombies stop attacks villagers or, at least, to deal any damage to them.
Even EntityManager can't do it (and this one work well).
-
View User Profile
-
Send Message
Posted Sep 24, 2012@coldandtired
Yeah that does make sense. I think it would be best to just leave it up to the server admin to define areas intelligently (like you said you're doing, so that's cool!). The performance benefits far outweigh having to be a little more careful with proper region defining.
-
View User Profile
-
Send Message
Posted Sep 24, 2012@coldandtired
server.properties file:
level-name=World
bukkit.yml file:
worlds:
World:
generator: TerrainControl
(terrain control is active, folder name of world in Win7 begins with capital "W". AFAI remember, I have edited world name in the past, hence the capital W.)
I have made some tweaks in spawn limits in bukkit.yml, but this should be unrelated, am I right?
Thank you in advance.
-
View User Profile
-
Send Message
Posted Sep 23, 2012@coldandtired
We have a conversation and you fixed one of the NPEs I was getting about two months ago.
-
View User Profile
-
Send Message
Posted Sep 23, 2012@Xikage The problem is that there might not be one, in which case the plugin could check forever, or I would have to create an arbitrary 'retry' amount, in which case the mob might not spawn at all.
The spawn_mob action in the new version doesn't check, and leaves it up to the admin to make sure the area chosen isn't in midair or inside a volcano or something.
The best solution is for the admin to set up a few small areas dotted around and have the plugin select one randomly, instead of one huge are that covers many blocks.
-
View User Profile
-
Send Message
Posted Sep 23, 2012@wisesurviver Your config looks generally right, except for one possible thing, You block natural mobs on the world called 'World'. By default, the first world created is called 'world' (small 'w') which would make all the difference.
Can you confirm your server's world is with a capital 'W'?
-
View User Profile
-
Send Message
Posted Sep 23, 2012@coldandtired
Does the plugin actually check all blocks within the area to find all locations that are safe to spawn on? It seems like it would be far less bottlenecky to just check random locations within the area until it finds a safe location.