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 May 14, 20121.2.5 b9dev is up - direct link
plugin changes
-
View User Profile
-
Send Message
Posted May 14, 2012<<reply 705615="">>
There will generally be conflicts with any plugin that changes mob properties (health, drops, etc.) You might get lucky and everything works okay but it's not guaranteed (due to the way events are handled in Bukkit).
As for CPU and RAM, I tried to make it as modular as possible, but it all depends on your config. If you want 20 groups of conditions to be checked for every mob spawn, death, damage, etc. it's probably going to have an impact. The average config shouldn't have a problem though.
And for advice, start small!
It's a potentially very complex plugin, so mess around with one mob, one section, one condition, etc. until you see how it works and then slowly expand.
-
View User Profile
-
Send Message
Posted May 13, 2012So the config generator generates the config that you would drop into the Mobs directory? This plugin looks fantastic btw. I am definitely going to give it a spin. If anyone has any pointers, pitfalls, or references to point me toward, fire away. Does it create much cpu overhead or ram usage? Any other incompatibilities or complications with other plugins? I am browsing the forums right now, so I should be caught up on current info by the time any may respond. :D
-
View User Profile
-
Send Message
Posted May 13, 20121.2.5 b8dev is up - direct link
More fixes and hopefully the fewest NPEs yet!
-
View User Profile
-
Send Message
Posted May 13, 2012<<reply 703729="">>
That's caused by a Bukkit bug. I remember about it now. It should be good in the next release.
-
View User Profile
-
Send Message
Posted May 12, 2012Edit: Getting same [SEVERE] Could not pass event EntityExplodeEvent to Mobs org.bukkit.event.EventException as well, but it works.
-
View User Profile
-
Send Message
Posted May 12, 2012<<reply 703603="">>
Tested it. The console is not throwing any errors anymore at least. But i'm not quite seeing any mobs spawning upon command. Not quite sure if i'm doing anything wrong or misunderstood something or it plain not working. >_>
Edit: Unrelated to that, i got a few more errors:
[SEVERE] Could not pass event EntityExplodeEvent to Mobs
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.TimedRegisteredListener.callEvent(TimedRegisteredListener.java:30)
at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:464)
at ic2.common.ExplosionIC2.doExplosion(ExplosionIC2.java:176)
at net.minecraft.server.mod_IC2.explodeMachineAt(mod_IC2.java:2715)
at ic2.common.TileEntityElecMachine.injectEnergy(TileEntityElecMachine.java:152)
at ic2.common.TileEntityElectricMachine.injectEnergy(TileEntityElectricMachine.java:217)
at ic2.common.EnergyNet.emitEnergyFrom(EnergyNet.java:266)
at ic2.common.TileEntityTransformer.q_(TileEntityTransformer.java:70)
at net.minecraft.server.World.tickEntities(World.java:1191)
at net.minecraft.server.MinecraftServer.w(MinecraftServer.java:547)
at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:453)
at net.minecraft.server.ThreadServerApplication.run(SourceFile:492)
Caused by: java.lang.NullPointerException
at me.coldandtired.mobs.listeners.Main_listener.onEntityExplode(Main_listener.java:504)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:601)
at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:301)
... 13 more
-
View User Profile
-
Send Message
Posted May 12, 2012Followed quickly by 1.2.5 b7dev - direct link
Just bug fixes in this one (hopefully all the ones below :) )
-
View User Profile
-
Send Message
Posted May 12, 2012<<reply 703517="">>
Here's the current config -> http://mc.wildwestscifi.net/data.mobs
(It's kinda spamming the console now. >_> )
-
View User Profile
-
Send Message
Posted May 12, 2012<<reply 703500="">>
Is that the same config as before?
-
View User Profile
-
Send Message
Posted May 12, 2012<<reply 703488="">>
Tried that version out. The spawn ID is now recognized, but nothing happens apart from this:
[SEVERE] Could not pass event CreatureSpawnEvent to Mobs
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.TimedRegisteredListener.callEvent(TimedRegisteredListener.java:30)
at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:464)
at org.bukkit.craftbukkit.event.CraftEventFactory.callCreatureSpawnEvent(CraftEventFactory.java:226)
at net.minecraft.server.World.addEntity(World.java:904)
at net.minecraft.server.SpawnerCreature.spawnEntities(SpawnerCreature.java:183)
at net.minecraft.server.World.doTick(World.java:1753)
at net.minecraft.server.MinecraftServer.w(MinecraftServer.java:543)
at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:453)
at net.minecraft.server.ThreadServerApplication.run(SourceFile:492)
Caused by: java.lang.NullPointerException
at me.coldandtired.mobs.conditions.Autospawn_id.check(Autospawn_id.java:26)
at me.coldandtired.mobs.L.get_mob_properties_outcome(L.java:255)
at me.coldandtired.mobs.L.merge_mob_properties(L.java:192)
at me.coldandtired.mobs.listeners.Main_listener.onCreatureSpawn(Main_listener.java:108)
at sun.reflect.GeneratedMethodAccessor15.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:601)
at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:301)
... 10 more
Getting closer. :)
-
View User Profile
-
Send Message
Posted May 12, 20121.2.5 b6dev is up - direct link
Plugin changes
-
View User Profile
-
Send Message
Posted May 12, 2012<<reply 703354="">>
Full or section. Later versions of the app default to section instead of none as this caught a few people out.
The latest version of the config app should update automatically if it's installed and I upload a newer version. Only works if you uninstall any version older than last night's and reinstall but that's hopefully the last time :)
These errors are fine, they're just reminding me of things I forgot to put back from the old config.
-
View User Profile
-
Send Message
Posted May 12, 2012<<reply 703220="">>
Hm, highly interesting... so i need to set the Fallthrough to "Full" for the changes to default mobs to take effect?
(Not sure if the version is older. Silverlight apps are annoyingly hard to keep up to date. You have to go to the config site, right click, uninstall, then install again, drag the shortcut to a place that isn't dumb... >_>)
Still, i am impressed at the speed at which you do these adjustments. A refreshing attitude inbetween other plugin makers that barely communicate at all. :)
...ah damn, i just checked the server log. This is what it says:
[SEVERE] Could not pass event CreatureSpawnEvent to Mobs
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.TimedRegisteredListener.callEvent(TimedRegisteredListener.java:30)
at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:464)
at org.bukkit.craftbukkit.event.CraftEventFactory.callCreatureSpawnEvent(CraftEventFactory.java:226)
at net.minecraft.server.World.addEntity(World.java:904)
at net.minecraft.server.TileEntityMobSpawner.q_(TileEntityMobSpawner.java:80)
at net.minecraft.server.World.tickEntities(World.java:1191)
at net.minecraft.server.MinecraftServer.w(MinecraftServer.java:547)
at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:453)
at net.minecraft.server.ThreadServerApplication.run(SourceFile:492)
Caused by: java.lang.NullPointerException
at me.coldandtired.mobs.conditions.Autospawn_id.check(Autospawn_id.java:26)
at me.coldandtired.mobs.L.get_mob_properties_outcome(L.java:253)
at me.coldandtired.mobs.L.merge_mob_properties(L.java:190)
at me.coldandtired.mobs.listeners.Main_listener.onCreatureSpawn(Main_listener.java:115)
at sun.reflect.GeneratedMethodAccessor67.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:601)
at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:301)
... 10 more
-
View User Profile
-
Send Message
Posted May 12, 2012<<reply 703047="">>
Fixed the /sm problem and an HP problem. Fix will be up a bit later tonight.
-
View User Profile
-
Send Message
Posted May 12, 2012<<reply 703091="">>
They're not tougher because you have fallthrough set to 'none', which translates as 'no conditional outcome found = vanilla mob'
You're also using an older version of the config app which might cause problems.
-
View User Profile
-
Send Message
Posted May 12, 2012<<reply 703066="">>
http://mc.wildwestscifi.net/data.mobs <- here you go. Am i somehow missing something? (Mobs also don't seem to be tougher, HP and damage-wise.)
-
View User Profile
-
Send Message
Posted May 12, 2012<<reply 703047="">>
Post your data file please.
-
View User Profile
-
Send Message
Posted May 12, 2012<<reply 702569="">>
Hm... say, is the manual autospawn working yet? When i type "/sm giant" it just says "yo, i can't find that ID/name.", despite me having set that ID for... well, a giant.
-
View User Profile
-
Send Message
Posted May 12, 2012<<reply 702545="">>
Installation of the plugin? Just copy it and a data file into the plugins\ folder, just like any other plugin.