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 Jun 17, 2013@x3nec
For the giants above ground thing, just add another condition to your giant spawn entry:
if_y="above 60"
This will check if the giant is above y60, if it is below that then it won't spawn.
That won't stop them from spawning in higher caves though. I'm not really sure if there's a good way to prevent that. In the damaged.txt you could make it remove the giants if they get damaged by suffocation or something.
Edit: See above example. You can use if_sky_light_level to determine if they are in en enclosed space or not.
I'll post my updated sample code from before in a few minutes after I get it working.
-
View User Profile
-
Send Message
Posted Jun 17, 2013@BlueDwarf
Also how would i make sure the giants only spawn above ground ^_^
-
View User Profile
-
Send Message
Posted Jun 17, 2013@BlueDwarf
So, in his way, how would I do this stuff... by the looks of it I'd only be able to put one action to a mob..?
-
View User Profile
-
Send Message
Posted Jun 17, 2013@coldandtired
I've found that it works quite well. I had some issues earlier when I was trying to use multiple entries per action rather than multiple actions themselves (that was a while ago, I forget what was wrong. Probably something I did). When I was first trying to figure stuff out, my way is what I could get to work so I stuck with it.
I suppose if I'm going to try helping people in the comments though, I should probably update to the proper form. I'll see if I can get that working for me again. (Plus, I wouldn't want my wrong-code to be causing me unseen issues or eventually just end up breaking D: )
I assume linked actions still go outside of the <action> tags, correct?
-
View User Profile
-
Send Message
Posted Jun 17, 2013@BlueDwarf That might not work as expected, or if it does it shouldn't :)
This is how it's designed to work:
I have an app for the Windows Store that I'm trying to get finished but after that's done I might see about allowing multiple events again.
-
View User Profile
-
Send Message
Posted Jun 16, 2013@x3nec
That code you posted worked fine for me when I put it in my spawns.txt
Do you have anything else in there that might be throwing it off?
To add more 'control' for my types of mobs, you don't need to add more <event>s. You need to add more <action>s.
For example:
This code will spawn Giants 5% of the time instead of zombies, with 200 max_hp and hp.
It will also stop slimes from spawning over y60, preventing those wretched swamp slimes from spawning and plerping all over the place.
-
View User Profile
-
Send Message
Posted Jun 16, 2013-
View User Profile
-
Send Message
Posted Jun 16, 2013I'm also finding this really confusing after reading the website. Basically we can only use one <event> per file, i get that. But how would i then control different mobs, if only one text file can be called spawns..?
-
View User Profile
-
Send Message
Posted Jun 16, 2013@x3nec
That works as expected for me. Can you post your spawns file?
-
View User Profile
-
Send Message
Posted Jun 16, 2013For some reason, when I use the code on the previous page to spawn a giant, it stops ALL mob spawns all together... Fix available?
-
View User Profile
-
Send Message
Posted Jun 16, 2013@coldandtired
Ah, thanks for clearing that up about the if_death_cause thing, I wasn't quite sure how that worked and I didn't notice the killed by player condition.
Also, thanks for target list. That will be useful.
Keep up the good work :D
-
View User Profile
-
Send Message
Posted Jun 16, 2013@BlueDwarf I've added it now - http://mobs.sylian.eu/target-list/
Thanks for helping out with the comments :)
By the way, there's a if_killed_by_player condition which would do it. if_death_cause="entity_attack" wouldn't differentiate between the killers, although it would stop xp from other types of death.
-
View User Profile
-
Send Message
Posted Jun 16, 2013@facemywrath If you're using an event to set an action (e.g. HP, fireproof, etc.) then it will be active all the time, until the mob dies or the property is changed.
The events are just the trigger for doing something and you pick whichever is most relevant. For general use you use the spawns event to set up a mob and change it later if needed.
Heroes doesn't allow dynamic values so yo can either set static XP with Heroes and don't change it with Mobs, or set XP to 0 with Heroes and give players XP with Mobs directly.
-
View User Profile
-
Send Message
Posted Jun 15, 2013@facemywrath
Could you be more specific as to what you're trying to do?
Worst case scenario, you use the Extra Events config file and make a Timer that triggers once every second or so, then make your effects in the Timer.txt.
Though I wouldn't advise that without searching for other solutions first.
-
View User Profile
-
Send Message
Posted Jun 15, 2013Very helpful! But how do I make something always active, not just at midnight or whatever...?
-
View User Profile
-
Send Message
Posted Jun 15, 2013Is there a list for all valid options for 'target' somewhere? I have yet to really get any sort of targeted action to work out.
-
View User Profile
-
Send Message
Posted Jun 15, 2013@facemywrath
Midnight, Midday, and Teleport each trigger during said event.
If it is Midnight, the Midnight.txt will be triggered and scanned, if any appropriate actions are called in midnight.txt then they will trigger.
For example, if you have something like this in the midnight.txt:
That example will make the server declare it is midnight. Of course, that is just a basic example. If you wanted it to, you could make it turn the Wolves into Angry Wolves and trigger the 'howl' sound (Which is unused by default minecraft, but mobs can make use of the soundfile that exists)
Teleport can be used for detecting when players or endermen teleport. Or other mobs, if they find a way to teleport.
Be sure to browse the tutorial site for useful info, such as what each events is used for:
http://mobs.sylian.eu/events/
-
View User Profile
-
Send Message
Posted Jun 15, 2013@BlueDwarf
Ok I will try one last time and check all of that. Just in case I will update the plugin too. Thanks for all the help.
-
View User Profile
-
Send Message
Posted Jun 15, 2013Wait a second, I don't understand... What's with all of the files like Midnight and Midday and Teleport and stuff. Do I add the events to there?
-
View User Profile
-
Send Message
Posted Jun 15, 2013@facemywrath
Put whatever you want in the amount area.
Insert this into the 'dies.txt' and make conditions for each mob (if_mob="zombie" action="expno + expzombie")
Then you just make another linked action for each mob that you want to have custom exp drops, so each mob can have its own individual drops.
You can use commas in the amount="X,Y,Z" to allow for random exp drops.
You should probably ad another condition, if_death_cause="player" so that only mobs that die by the player drop XP. I'm not actually sure how to use the if_death_cause condition though ("player" is just a placeholder for whatever, it doesn't actually work when I test it)