MobManager
Description:
- MobManager's limiter aims to limit the number of mobs that can spawn at one time while still providing the appearance of having lots of mobs (Or less if you really want)
- MobManager's Abilities allow you to fully customize the difficulty of each mob, per world!
- MobManager's Bounty component gives you a flexible way to give players rewards when killing mobs
- MobManager's Spawner gives you total control over where different mobs spawn. Perfect to complete a rpg experience or just add a difficulty to your survival server.
Component Features:
Limiter
- Stop mobs from spawning when no players are nearby
- Stop mobs from spawning when no players are on or near the same height
- Limit the number of mobs allowed to spawn per world
- Limit the number of mobs allowed to spawn dynamically depending on the number of loaded chunks in a world
- Limit the number of mobs allowed to spawn by type (Monsters/Animals/Water Animals/Ambient/Villagers)
- Automagically despawns mobs which move out of range of players
- Does not despawn animals which are in farms Read more
- Does not despawn mobs which have picked up players armor or weapons
- Has the option to stop mobs from spawning near players in creative mode
- Can prevent mobs from spawning which you don't want
- Can allow mobs to spawn without counting towards the mob limits
- Super efficient!
- Optional Multi-Threaded despawner
Abilities
- Customisable Mob Abilities!!
- Customisable Mob SpawnRates
- Have mobs spawn as babies, Creepers spawn Charged and Wolves spawn Angry!
- Customisable Mob Bonus Health
- Customisable Mob Damage Multipliers
- Customisable Mob Potion effects (Last for the life of the mob)
- Customisable Mob Bonus Spawns (Spawn mobs on certain mob when it spawns/dies)
- Customisable Mob Armour sets (Per position, with enchantments)
- Customisable Mob Starting Items/Weapons
- Customisable Mob Drops (Count Range per item, set data, durability and enchantments!)
- Customisable Mob Ability Sets (Combine the above abilities together to create rare super mobs! (Or common :P))
- Show Mob Ability Set names above their heads!! (Mincraft 1.5+ only)
- Highly configurable!
Bounty
- Give players rewards for killing mobs
- Supports fines (Loss of money or experience)
- Customizable message upon receiving a reward/fine
- Rewards can be Money (Requires vault), Item drops or experience
- Set min/max reward values for each mob
- Set reward multipliers for worlds, biomes, time, permissions and even for AbilitySets (Requires Abilities component to be enabled)
- Exploit prevention techniques to prevent players from exploiting your server to earn rewards very fast
Spawner
- Spawns custom mobs around players
- Create specific regions with different sets of mobs which spawn within
- Control max/min distances for spawning in different regions
- Extensive mob limit system. Limit per player, region and specific mob type
- Default config similar to vanilla spawning (To use as a guide/template)
- Spawn requirements for every mob (Which spawn location must meet. Block Standing on, light levels, height, time, biome, world type
- Spawn actions performed upon spawns. Send messages to nearby players or run commands when your mob spawns.
What is a component?
A component is simply a part of MobManager. Every component can be enabled/disabled individually from config.ymlTo do
- Add Protection component to MobManager (Protect the world from things like explosions or Endermen picking up blocks)
Note: Ordered by importance to me (Higher == More important) (Your needs are important to me :D)
Commands:
- /mm help - Prints information about all the available commands
- /mm count - Prints mob counts and limits for each world which MobManager is active. Also prints totals for the server
- /mm count <WorldName> - Prints mob counts and limits for the specific world
- /mm butcher - Removes all mobs (Except villagers) from worlds enabled in MobManager
- /mm butcher <MobTypes> - Removes the given mob types from all worlds enabled in MobManager
- /mm spawn <MobType> <count> [world] [x] [y] [z] - Spawn a given mob at the location (Or yours)
- /mm spawnset <AbilitySetName> <count> [world] [x] [y] [z] - Spawn a given mob at the location (Or yours)
- /mm pspawn <MobType> <count> <Player> - Spawn a given mob on a player
- /mm pspawnset <AbilitySetName> <count> <Player> - Spawn a given mob on a player
- /mm abilitysets - Lists all AbilitySet names (Along with the mobtype) which can be used in /mm spawnset
- /mm mobtypes - Lists all valid EntityTypes for use in configs
- /mm reload - Reloads MobManagers configs
- /mm version - Tells you MobMangers current version + Checks my website for new versions
M = Monster, A = Animal, W = Water Animal (Squid), Am = Ambient Mob (Bats), V = Villagers
Permissions:
- mobmanager.admin - Gives permission to use all /mm commands (Default: OP)
- mobmanager.count - Gives permission to use the /mm count command
- mobmanager.butcher - Gives permission to use the /mm butcher command
- mobmanager.version - Gives permission to use the /mm version command
- mobmanager.reload - Gives permission to use the /mm reload command
- mobmanager.spawn - Gives permission to use the /mm spawn command
- mobmanager.pspawn - Gives permission to use the /mm pspawn command
- mobmanager.abilitysetlist - Gives permission to use the /mm abilitysets command
- mobmanager.mobtypes - Gives permission to use the /mm mobtypes command
Configuration:
As of v2.2 MobManagers configuration files consists of three parts- config.yml - Contains settings to enable/disable MobManager components
- Global configs - Contains global configs for each component, located in MobManager/<component>.yml
- World Configs - Contains settings for each component for each world located in MobManager/worlds/<worldname>/<component>.yml
Every config file contains a header block explaining every setting.
When you first install MobManager world and global configs are auto-magically generated. By default only MobManagers Limiter is enabled, configs for abilities are generated if the component is enabled The defaults for the limiter are pretty conservative. So you may wish to increase the limits. If you need help with the config feel free to PM me and I can make one for you :)
Auto-Update Checker
Mobmanager includes a update checker/downloader. It uses this project page to check for new approved builds. The /mm version command can be used to check if a new version is available on bukkit dev. The update checker is enabled by default and can be disabled in config.yml by setting EnableVersionCheck to false The update downloader is disabled by default can be enabled in config.yml by setting EnableAutoUpdater to trueStatistics
MobManager utilises Hidendra's plugin metrics system, which means that the following information is collected and sent to mcstats.org:- A unique identifier
- The server's version of Java
- Whether the server is in offline or online mode
- The plugin's version
- The server's version
- The OS version/name and architecture
- The core count for the CPU
- The number of players online
- The Metrics version
- MobManager components enabled
Opting out of this service can be done by editing plugins/Plugin Metrics/config.yml and changing opt-out to true
Public Test Server
Public test server has been shut down, will try get a new one in the futureAddress: mc.forgenz.com
Note: After joining, type /warp dev
Note: The test server only has the limiter component enabled
Developer Builds
Development builds of this project can be acquired at the provided continuous integration server.These builds have not been approved by the BukkitDev staff. Use them at your own risk.
Dev Builds
Configuration | Statistics | Reading
Ahhh my fault, forgot to add it to the main-config.
Does the plugin follows the worldguard Flags?
Today I saw Monsters around our spawn (WG Flag: Deny spawn: mobname...)
Or only have the WG "use-creature-spawn-event" to be true? (had it offline because it wants performance if many mobs are online)
I'll test it after Server-Restart later.
Edit: Info for Worldguard users
Yep, use-creature-spawn-event has to be true in mainconfig and per-World-Config. (only "true" in per-world config doesn't work)
@Jobsti2
Yes, you have to add it to enabled worlds. MobManager only adds current worlds when you first load the mod.
Ah FlyingMobAditionalLayerDepth. Thanks, works good, so far ;-)
I'm testing the Plugin Dungeon Maze, world created with Miltiverse.
MM doesn't find the world.
@Jobsti2
You can increase the chance a Flying creature will find a player by using this setting in config.yml FlyingMobAditionalLayerDepth. By default it is set to 2, which means it will check an additional 2 layers below the layers it would normally check.
NoLagg does a terrible job at limiting mobs. The one reason for that is that it was not supposed to be a complex limiter.
If the people want per-world layers! It will be done!
Great new build ;)
Whats with different Layers per World, see #74? (Ghasts)
Possible? Too much performance?
For skylands, it would be also interesting.
Summary after 2 days of Testing:
Awesomeness at it's best, absolutely must have plugin for all Server-Owners!
I'm switched from your "old" EntitySupressor (which was really good, much better than NoLagg etc.).
After a bit tweaking the config and testing, it's just perfect, now we have a really Hard Survival Feeling at night and in Caves. Now our users really fear the night. ;-)
Our Animal-Problems are also gone. Performance ist extremely good.
Now we count 1/6 of mobs, but the feeling is massive more mobs ;-)
Interesting for some Server-Owners:
Perfect to limit or deactivating the Mob-Towers.
Much thanks for your new plugin. Incredible work!
New build has been uploaded!
MobManager v1.8a brings a few small bug fixes + Villagers are now ignored by default to prevent them being despawned when a server first uses MobManager.
You can read about it and download it here
Warning: This build has not yet been approved by bukkitdev staff, use at your own risk
@ShadowDog007
Oh, btw, 4ms to setup the MobDespawner task. Thats with over 1000 mobs.
@CubieX
Both. MobManager searches chunks in a spiral pattern around the mobs spawn location, then checks layers which the mob is in. (If the mob spawned at y=10, default layers which would be checked would be 0-16 and 8-24)
If you want to prevent mobs from being despawned from such mob farms, you can either increase MinTicksLivedForDespawn to something like 600 ticks (30 seconds) Or you would have to increase the range of each layer. (Which would give you less in total)
Which distance (vertical/horizontal) from the player is used to decide, wether or not a monster gets despawned?
Our players are complaining because monsters nearby are despawned and I can' tell them why. For example if they have a monster expierience farm where monsters are for example transported through water a couple of blocks above the player.
@Jobsti2
By default only natural spawn reasons are counted. SPAWNER_EGG is not a natural spawn (In my opinion) And should not be listed unless you add it yourself.
EnabledSpawnReasons is not world specific. Stuff starts to get a bit messy once I put it into its own world config.
You can always just set MobManager to ignore Villagers. That would be best. Villagers are only despawned when they are over their limit. But to be safe, you should tell MobManager to ignore them.
The Spawn reasons are only used when the mob is being Spawned. After an animal has been spawned (By having its parents breed) it will only despawn once it fails the two checks which I have set in place for animals 'DaysTillFarmAnimalCleanup' and 'NumAnimalsForFarm'
No! :) MobManager iterates through every mob on the server, checking if it should be despawned. It will try not to let the task run more than 0.2ms per tick. If it does run over 0.2ms it puts the task on hold until the next tick. Currently it takes about 4ms to setup the task, then the task uses 0.2ms per tick afterwards. Having multiple tasks for each world may help reduce the amount of time spent in one tick setting up the tasks, but overall, it would not be much faster. Might look into it later, if I can be bothered.
Signs == No.
WhyUNoLikeMyColour?
A big request? Lol. Changing the Despawn task would require a lot more work than simply changing the colours. (Would take 20 seconds :P)
I might have a play around with some different colours for the next version of MobManager.
@Jobsti2
Could you pm me your layers?
Oh, after testing the half of the day..... little problem with the nether.
Layers per World would be great, so with per-Server layers, Ghast-Spawning is very very rare.
and my layers have the double size from default-setting above 50.
Heho,
your new plugin sound's great.
Question:
Does it despawn mobs, which are spawned by Spawneggs?
I think, so I have to "delete" SPAWNER_EGG from EnabledSpawnReasons?
EnabledSpawnReasons isn't possible to be world-specific I think?!
Because we're using Shopkeepers-Plugin and doesn't want, that this plugin despawns our Shops ;)
Question:
Possible to have this 2 options per world?
IgnoredMobs: and DisabledMobs:
Question:
If I remove - BREEDING from EnabledSpawnReasons,
mobmanager doesn't despawn the breeded Farm-Animals from our players?
And it doesn't count it anymore on /mm count?!
Question:
Yeah I see, 1.8 is out ;)
So another Question *laugh*
"The Despawn task now spreads itself over multiple ticks to prevent overloading the main thread (Makes a big difference when you have 1000+ Mobs)
The Despawn task can now be run in a separate thread to prevent overloading the main thread (BETA)"
The Despawn task is one process for alle Worlds at the same time?
It's possible and would it be better for the perfomance, if every world have his own Despawn task?
So I set TicksPerDespawnScan: 100, but it runs time-delayed (randomized) for every world, so not all
Worlds would be scanned and mobs despawned at the same time?
General Idea for Famrs:
Sign per Farm - See your PM
And a big Request:
Please other colors for /mm count ;)
Would be good for overview. Some thing like this (see the 2 first lines and 2 last lines)
http://s14.directupload.net/images/130117/cioi5b79.jpg
New build has been uploaded!
MobManager v1.8 brings some massive optimizations of the Despawner Task, smaller optimizations of player tracking + Adds better ways to protect your Tamed and Farm animals from being despawned. Also has a new command /mm version which you can use to check for updates :D
You can read about it and download it here
Warning: This build has not yet been approved by bukkitdev staff, use at your own risk
New build has been uploaded!
MobManager v1.7 brings a heap of cool new stuff along with some fixed bugs and something to automatically recover from other errors which may occur
You can read about it and download it here
Warning: This build has not yet been approved by bukkitdev staff, use at your own risk
@linkinkov
They should still work.
The only reason they may not work is if the spawners are too far above or below players when a mob tries to spawn from them. Otherwise check /mm count to see if you have hit the monster limits. You may want to increase your limits. Or you could reduce the monster spawn rate, so the mob limits are not reached so quickly.
@ShadowDog007
nope. but i didnt test it even for 1 hour cuz all spawners stopped working
after enable plugin, mob spawner dont work, why?
@eprimex
Did v1.6 still give you freezes?
PMed my plugins list as i dont want everyone to know them
btw
when using mobmanager our endermen xp grinder doesnt work at all (mobs never spawn)
if you want to check it out come in my server and go /warp endermenxpgrinder
config is default
EDIT: just checked shadowdog007 is banned in my server for griefing. was it you or some imposter?
E2: disabled mobmanager again. destroys animal respawning+spawners
@wolfenguard
Ahh, Are you sure its MobManager causing the error¿? It is definitely there.
Which version are you using? Could you copy/paste the exact error please?