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 27, 2013@BlueDwarf I know reacting to a successful command is no problem, and I believe unknown (or disallowed) ones can be done as well. I'll look into adding them.
-
View User Profile
-
Send Message
Posted Jun 27, 2013Does anyone know how I would set a mob to a baby? I have a death action for zombies that has a 10% chance to spawn broodlings (baby zombies). It's working, I just can't figure out how to set them as babies.
Similar question, how do I set a creeper to charged?
Finally, is there a list of conditions for if_spawn_reason somewhere? I'm trying to disable a zombie action for all but naturally spawned zombies.
EDIT: I got charged creepers to spawn, and I managed to set naturally spawned zombies to babies but I can't work out how to add my setbaby action to the zombie spawn action?
Here's my current dies.txt
<event> <linked_action name="notify" action="tell" target="killer" message="§cThe Zombie Spawned Broodlings!"/> <linked_action name="spawnbroodlings" action="spawn" sub="mob" mob="zombie" amount="3,4,5"/> <linked_action name="setbaby" action="set" sub="adult" value="no"/> <action> <entry if_mob="zombie" if_percent="below 10" if_adult="yes" if_killed_by_player="yes" action="notify + spawnbroodlings + setbaby"/> </action> </event>
I've tried adult="no" in the spawnbroodlings action which also didn't work.
-
View User Profile
-
Send Message
Posted Jun 26, 2013Would there be any way for you to add functionality for Mobs to read and act on commands as well? (execute.txt or command.txt)
Like if a player does /spawn, or /msg, it could act on that? Possibly even if they issued a fake command that doesn't exist, I'm not sure what Mobs would be able to pick up on in that regard. Then add a target like 'executor' to target whoever issued the command.
That would certainly add a lot of possibilities if it's possible and not too much work.
-
View User Profile
-
Send Message
Posted Jun 26, 2013@BlueDwarf The way you did it first is fine. I'll add an all prefix in the near future to make it easier though.
-
View User Profile
-
Send Message
Posted Jun 26, 2013Is there a way to target all players? I've gotten as far as target random_player with the target about set to the max players limit on the server because all_player didn't work when I tried it.
I want a sound-effect to be heard by everyone on the server when a certain event happens, so I need to target everyone first. Unless there's a simpler way to do that.
-
View User Profile
-
Send Message
Posted Jun 25, 2013@coldandtired
This was basically the same problem I had, haha. Keep me up to date and I will feed you TF2 items. :)
-
View User Profile
-
Send Message
Posted Jun 25, 2013@SXRWahrheit Hmmm. A rudimentary search doesn't seem to throw up any plugins that do this.
Next month I have a little time so I might give it a proper go.
-
View User Profile
-
Send Message
Posted Jun 25, 2013@coldandtired
Can you offer a suggestion for handling spawning? :)
-
View User Profile
-
Send Message
Posted Jun 25, 2013@SXRWahrheit You can't easily alter spawning as most of that is hardcoded into Minecraft.
To be honest, I never intended Mobs to be used that way and for other, more specific plugins to handle spawning and then Mobs can take over and set HP, attack power, etc.
I did however include a very basic spawn command that can be used to force mobs into the world, but at the moment it doesn't take into account surroundings.
-
View User Profile
-
Send Message
Posted Jun 25, 2013@BlueDwarf When I was doing some research it seemed fireballs worked okay as long as you used them the way they are used in vanilla Minecraft. As soon as you start changing the power or distance they go a bit crazy.
I was rewriting the targeting system to allow something like this when I got sidetracked with Windows projects. It will be done though.
-
View User Profile
-
Send Message
Posted Jun 25, 2013@ownage_50 Only villagers can be spawned naturally. Everything else needs much Minecraft hacking.
-
View User Profile
-
Send Message
Posted Jun 24, 2013I picked up an extra TF2 item or two the other day that I will tip you with for helping too. :)
-
View User Profile
-
Send Message
Posted Jun 24, 2013What event would be used for altering "regular" mob spawning?
I want to set up spawns per-biome and I realize I can do this with the condition, but is that the ID of the biome or the name (using TerrainControl)?
How can you spawn a mob with specific items equipped? For example, a Skeleton with a power V bow?
-
View User Profile
-
Send Message
Posted Jun 21, 2013Would there be any way to target people by group?
It'd be neat to set up a thing for player_joins where if a new player joins, a specific sound is triggered at every admin. If a member joins, a different sound would trigger.
Something like that would be neat to have. And I'm sure it would have other applications as well.
I suppose I could target random players and check 'if_player_is_op' for playing a sound. Fiddle with the 'if_player_has_permission' maybe.
I'm just not finding a good way to work it out.
-
View User Profile
-
Send Message
Posted Jun 21, 2013So I was playing with a different plugin called NBTEditor and I was summoning fireballs. When I accidentally set some variables wrong, I noticed a familiar behavior. The fireballs would go where I wanted them for a short distance, but eventually stop and turn around.
This was caused by the 'power' ('direction'?) and the 'vel' ('motion'?)(he renames his variables from what they actually are called in minecraft, for ease of use and understanding) were mismatched. The vel was aimed properly and took the fireball a certain distance in its direction, but eventually Power would win out and slow the fireball, then send it back in the direction the power was pointed.
Given the way your fireballs behave where they go at the target, then arc and turn off in a different direction, maybe somewhere in there those two variables are getting set differently from eachother. (It would also explain why arrows, eggs, and snowballs function normally, as they have no 'power' variable. Just a velocity)
Anyway, I have no clue how minecraft, plugins, or any of this actually works, so I don't know if this could even remotely be the cause. I just noticed some similar behavior, and thought I'd mention it. Maybe it'll help, maybe it's nothing. Either way, kinda interesting.
-
View User Profile
-
Send Message
Posted Jun 20, 2013Any way to spawn player/human type mobs/entitys? Like how Citizens does it except naturally?
-
View User Profile
-
Send Message
Posted Jun 18, 2013@BlueDwarf This would turn a block into coloured wool:
-
View User Profile
-
Send Message
Posted Jun 18, 2013@coldandtired
Thanks coldandtired. I had passed that command off after trying to use it in an angry wolves script (I thought skylight at night decreased, but it stayed the same so I said 'What good is this command?' and moved on.)
I should really review that conditions page more thoroughly.
Question: How do you use target block? I can't seem to really get anything to happen when trying to target a block and using set block. Or other actions.
-
View User Profile
-
Send Message
Posted Jun 18, 2013@BlueDwarf There's a condition called if_sky_light_level which can be used to differentiate between inside and outside (even at night).
A level of 15 is full sun/moon, 12 -14 is under an overhang, and the level goes down the further you get into a cave.
-
View User Profile
-
Send Message
Posted Jun 17, 2013@x3nec
Sorry for the extra bits. I just straight copy-pasted my current spawns.txt over.
The first entry creates giants 5% of the time, but only above y62 (roughly sea level).
The second entry prevents snowmen from being built. (The blocks don't despawn when the snowman is 'built' either.)
The third entry stops those icky swamp slimes, as mentioned before.
Fourth stops Zombie Villagers from spawning, and instead makes more regular zombies.
Fifth prevents villagers themselves from spawning in any natural way.
(My world is villager-free, unless I intentionally spawn them in)