spawns
Spawns is a plugin for Bukkit and Minecraft that allows you to fully customize the spawning behaviour of mobs on your server.
Features
- tweak the default Minecraft spawns or replace them completely
- set mobs to spawn under conditions they never normally would
- block certain mobs from ever spawning
- cause mobs to spawn with potion effects, equipment, saddles, etc.
- cause mobs to spawn in different variants, like powered creeper, wither skeleton, etc.
- mobs appear in the world in the same way as they do normally, so are compatible with all other plugins
Dive right in here to see how to make config files or keep reading for an overview of Minecraft spawning.
Default spawning
Minecraft spawning works like this:
Every spawn cycle (1 tick or 1/20 second by default for hostile mobs) the game makes a list of all the chunks around each player, up to a radius of seven chunks. Each chunk will only be counted once, even if that chunk is around several players.
Once this list is complete a mob limit is calculated. The limit is higher the more chunks are in the list. If the limit is lower than the current amount of a mob type in the world then the cycle will be cancelled.
If the limit is not yet reached a random block from each chunk in the list will be calculated and this chunk will be used as the centre point for a pack of mobs to spawn around. In order to continue, this block must be water for water mobs (only squid so far) and air for any other type of mob.
If this block is suitable then a maximum of 12 random blocks are chosen from up to 20 blocks away, but always at the same height as the centre block.
Lastly, The individual blocks are checked that they can physically fit the mob, so they need to be air, have air above and an opaque block below. The type of mob is chosen based upon the matching conditions (biome, height, floor block type, etc.) and the final mob is chosen randomly from all mobs that are eligible to spawn there. All other mobs in the pack will be the same type.
Permissions
spawns.can-reload-config, which allows the user to reload the config. Default is Op.
spawns.can-count-mobs, which allows the user to display a summary of mob amounts in a world. Default is Op.
Commands
/reload-spawns, or /rs, which reloads the config without having to reload the server. Any mobs already in the world will be unaffected by any changes in the config.
/count-mobs, or /cm, which displays a list of mob numbers in the world. Add a world name argument to specify a world (optional if run as a player) and / or a mob type argument to choose one type of mob to count.
Update checking
If you like, you can set the plugin to check for any newer versions that get released. To do this add an element to the config.xml file, like this:
<check-for-newer-version/>
When this element is present the plugin will report if it finds a newer version. This only works for release builds so you won't be bothered by any beta or dev builds. To disable this checking simply remove the element.
Note that no update will be downloaded even with this set.
Examples
I would love to get any example config/packs/mobs files you have created to add to the docs, so if you have one you're proud of send it in and I'll add it.
spawns took a lot of work, so if your server is enriched by it please consider sending some love my way!
<a href="https://www.paypal.com/cgi-bin/webscr?return=http://dev.bukkit.org/server-mods/mobs/&cn=Add special instructions to the addon author(s)&[email protected]&bn=PP-DonationsBF:btndonateCCLG.gif%3ANonHosted&cancelreturn=http%3A%2F%2Fdev.bukkit.org%2Fserver-mods%2Fmobs%2F&lc=US&itemname=spawns+%28from+Bukkit.org%29&cmd=donations&rm=1&noshipping=1¤cycode=USD"><img class="aligncenter" alt="donate" src="https://www.paypalobjects.com/enUS/i/btn/btndonateLG.gif" /></a>
If you're penniless or like spawns 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!
For other projects, links, help, etc. please visit the main website.
You can also follow sylian.eu on Twitter for updates.
@lostminecraft YML is a very bad choice for all but the simplest configs, and it would be far harder (for everyone) to do this config in YML.
No mobs at all:
Only your mobs:
Add as many world elements as you need.
@RoosSkywalker I haven't actively played Minecraft since 1.10 Beta, so I have no idea what the current state of mobs is :)
The plugin can easily reduce or eliminate wolves though. A simple way is to leave everything as is and add a success-rate condition, which can cut the spawn rate dramatically.
<success-rate>75</success-rate> means that even if all the other conditions are valid, there is still only a 75% chance of the mob spawning.
@DerekZil The problem with nether mobs, and why I left it to Minecraft to handle them, is that they seem to spawn inside/around nether fortresses. So they don't really have spawning conditions and I'm not sure how easy (or cheap for the server) it would be to determine whether a block was inside a nether fortress or not.
You can very easily add them to spawn wherever you want though. Just create a new mob (or adapt a current one) and set it up to spawn when and where you want.
@Finelarme2 I'm not really sure what a video tutorial could show other than me typing configs, to be honest.
@lostminecraft
There's actually quite literally a config option for this too. Read through the whole site and give it some trial and error. This is an advanced plugin and the way it's formatted is intentional to allow for deeper customization. If you put effort into it, it'll pay off.
@lostminecraft
It's all done via packs and conditions.
hey this plugin seems like a great plugin but I dont know how to set up the config for multiple worlds, I dont want minecraft spawning any mobs anymore, I only want my custom mobs to spawn and I dont know how to use your plugin to make it where all spawning is disabled... I think it would be easier if it was a yml file and Yes I did read your site but Im still a bit confused. Does anyone know how to disable mob spawning with this plugin completely?
If it fixes my wolf plague on my server, I am glad to give you some TF2 swag!
@DerekZil
Matching the spawn settings on that would be a lot of work for a pretty edge case scenario. You should be able to work this one out on your own just by replacing the default mob packs with the nether ones. Make sure to turn down the frequency quite a bit.
Can you make a sweet default config for us with all the nether monsters added in the real world?
Thanks for that. But i don't understand how use it, so i delete and wait a video tutorial :).
@coldandtired
thanks! its mostly for enchantmentapi which adds additional enchantments as through lore text. I figure just adding lore would be easier than hooking into the api, but if you have time take a look at it, It's pretty cool :D
<<reply 1681195="">>
I'm not sure what lore is but I'll look into it. Probably it is possible.
Is it possible to put items with custom enchantment/ lore for drops? this is the ONLY thing that this plugin is missing.
<<reply 1672999="">>
Better to do things with spawns if you can. Mobs has a more complicated condition system but unless you need that it's cleaner to do it in spawns.
Would it be better to spawn a group of mobs that has some designation with spawns and let mobs handle its traits, or can you do all the trait work with spawns?
<<reply 1671144="">>
b4 fixes the file generation thing.
If you look at the list of mobs in that file, each of them is actually used by the plugin and I tried to emulate the normal Minecraft conditions as closely as possible (there's not a lot of information out there about when exactly certain mobs can spawn).
Here's the creeper:
Every cycle, the plugin will check those conditions and if they pass, will add the creeper to a list of mobs that can spawn on that block at that time. If multiple mobs can spawn one will be chosen randomly (this is how MC does it).
It's possible to either change this creeper or simply add another one, and decide when it can spawn. As long as you give it a unique id you can have as many of each type of mob in the file as you want. Add the unique id to any pack you want the creeper to spawn in and that's it. There are a few other properties and conditions listed on the tutorial site you can use, or simply edit the conditions above to give the creeper more or less chance of spawning.
<<reply 1671566="">>
The one from a second ago? Nothing. I had to re-upload it because the first time the file was rejected.
What changed in the new build? Changelog looks the same.
@MikyoM
The best way to learn is by doing! :)
Read through the site he set up, it's very detailed. Tweak one setting at a time and look at what changes.