OtherMobs
OtherMobs
Note (20Feb2013): some features below have been implemented in OtherDrops - eg.
- Allow Blazes to spawn in deserts during the day.
- Make Snow Golems spawn on ice blocks in tundra biomes at night.
OtherMobs is still in progress (as a low priority) and it's current focus is mob abilities, factions & aggression settings.
Example Config | Parameters | Abilities | Effects
OtherMobs is a new plugin being developed by the creator of OtherDrops that will allow you to customize nearly everything about mobs on your server, from where and how they spawn, to what they do, and if you have the Spout plugin with matching Spoutcraft Client, how they look.
This mod is a work in progress - a public beta will be posted when custom configs are working
The below examples may not accurately reflect the plugin's capabilities as-is, and are subject to change at any given time due to changes in development.
Some examples...
- Modify mob spawning
- Allow Blazes to spawn in deserts during the day (see OtherDrops)
- Make Snow Golems spawn on ice blocks in tundra biomes at night (see OtherDrops)
- New mob abilities
- Make Creepers and/or Spiders burn up at daybreak (planned)
- Make pigs fly! (in current dev. version)
- Modify Skeleton projectiles (planned)
- Create a custom mob, like glowing sheep that spawn at night, or... (in current dev. version)
- Hellhounds - blazing wolves that are immune to fire (dev.) - and/or Icehounds - frozen wolves susceptible to fire attacks. (planned)
- Many more combinations of mob conditions/health/abilities.
- Mob factions/agression (some basic work in dev version)
- Customise factions and agression values for mobs.
- "Faction" value determines how much a mob likes another type of mob (including it's own kind).
- Mobs are given a random agression within a configured range.
- Mobs with higher agression are more likely to attack you or other mobs at random.
- Targets can switch depending on priorities
- (planned) Fleeing if overwhelmed (higher agression = less likely to flee)
- (probably not possible) Would love to also vary size of mobs as well for more of a random factor (larger mobs more likely to be agressive).
Used in combination with OtherDrops, you could allow these new mobs (or existing ones) drop items, or cause them to spawn as a result of any OtherDrops drop, even cause them to spawn from say, breaking a diamond block, or killing another mob.
Usage
Just unzip the downloaded archive into our plugins folder and reload the server. Out of the box the plugin will do nothing - you'll need to active a custom config or start adding your own mob configs. Again, do note that custom configs are not yet implemented.
Config
Configs are added to the bottom of the main mobs file ("plugins/OtherMobs/othermobs-mobs.yml"). For advanced usage you can split your config into several files using the "include-files" section at the top of the main mobs file. Here's a small example configuration:
DesertBlaze: - biomes: [DESERT] replacemob: ALL/100% world: [WORLD] height: ">40" weather: CLEAR health: 1-20
This will create a new custom mob with the name "DesertBlaze". This mob will replace any mob in "WORLD" but only in desert biomes above a height of 40 blocks, and only during clear weather. It also allocates a random health value between 1 and 20.
Check out a more advanced configuration example that showcases more ideas for OtherMobs.
Progress
12/02/09 Lots more core added, new pre-release below, custom configs not working yet.
12/01/29 Improved the spawning command, worked some more on layout of the config files (important to get this right before I code the config reading section). Added basic "faction" abilities (funny to watch).
12/01/28 So far I have the ability to add custom mobs and spawn them via a command - working on getting custom configs working next, then I'll be looking into abilities.
Commands
/oms spawn <creaturetype> <quantity> <a:ability>
Available abilities are:
- flaming - mob spawns on fire and invulnerable for 20 seconds or so, then dies :/
- glow - the original idea was to make the block the mob stands on glow. It wasn't working, so it replaces the block under it with a glowstone for now. This *will* mess up the area a bit, depending on quantity spawned, as the blocks don't always turn back to their original form after the mob has wandered off of it.
- faction - hardcoded faction: this mob is short-tempered and will eventually take out everything around it.
- flight - mob will instantly take-off and fly around - currently fall damage is not prevented so they don't live too long (ability courtesy of redsgreens Pigasus mod).
If you're up for it, you can try /oms spawn skeleton 50 a:faction a:glow followed by /oms spawn blaze 50 a:faction a:glow (Be warned, this will take chunks out of the ground and mess up the sky somewhat)
Also added some potion effects testing to see how it would work for some creature attacks (eg. blind, poison, slow, etc) or friendly auras (regenerate, fastmine, speed, etc). Command: /om potiontest <id> m:<strength> t:<duration in ticks> (eg. /om potiontest 1 m:3 t:80 - strength 3 speed for 4 seconds). Potion effects and ID numbers are on the Minecraft Wiki page.
@fuzyfeet
Yeah, could be - we'll see, although it seemed to me that it was only loading the skins at the time of use.
I wouldn't expect damage skins to be used on normal mobs when they take like two hits to kill. Might be useful for a "super-mob" though.
Damage skins? Nice, but too many skins and it might make logging in a problem. I remember NinjaZidane was saying something about that in RandomMobs.
@fuzyfeet
Yup, already got some code for it. Although slowness would go with a "slow", or even a "stun" (sometimes stuck, sometimes slowed?) effect - I feel freeze has to _look_ cold too :)
I've also got plans for allowing config of "damage skins" for each mob. As in you select which skin to display and at which health values so you could see as a mob is getting injured.
Yeah, love Spout and it'll always be optional with OtherMobs :)
Have you thought about having the mobs apply potion effects to attacks? I think freeze would work better if it applied slowness effect. This could open up so many attacks, like poisoning, blindness, etc...
I love that your using Spout optionally to skin 'new' mobs. I'm a spout convert, but I know others aren't.
@aufdemrand
That's correct. I haven't worked on the config loading yet. The only thing you can do so far is spawn custom mobs manually with abilities (see the bottom of this main page). I'll be pushing a new build soon with a flying ability (used with permission from Pigasus by redsgreens).
So is it currently not possible to add mobs to the othermobs_mobs.yml?
@dudey8
Includes region support via WorldGuard - see the OtherDrop documentation here. Most of the conditional parameters (eg. height, lightlevel, region, world, etc) will be similar.
Awesome, this is exactly what I've been looking for for a while now.
One question, will u be able to select certain areas somehow, or just biomes?
Because i was making an RPG map and I was hoping to make the castles and villages mob free, but have the wilderness have lots of mobs and have like, a forest where there are tons of mobs. If u haven't including zoning, you should consider it.
@Bdl2
Glad to have you on board if you're interested. If you've seen the OtherDrops documentation on BukkitDev (Rofang wrote most of that) it gives you an idea of what we need - of course the more the idea evolves the better the documentation can get.
Translating changelogs into updated documentation is great too - as I often don't have time to do that until someone asks about a new feature :)
Documenting can also help shape the plugin as it helps define how the plugin should actually work.
Communication via Skype or the like will help when some features need clearing up. PM me your details if you're interested.
@ZariusT
A documenter, you say? I might be interested. I'm quite the fan of OtherDrops (Infact, it's become the primary staple of everything on my server. I've done some very cool things with it.) and wouldn't mind helping in my own way as a sort of repayment for that plugin, and this one - which is looking amazing thus far.
What would be involved in assisting in documenting?
@bladedpenguin
Doh... sorry I missed your post, seems BukkitDev doesn't auto-subscribe to projects you own!
Currently just replacing natural spawns - creating new spawns is planned for the future though. I haven't added it yet but I'm looking at adding a height: "aboveground" condition (or underground).
Yeah, any assistance is appreciated - I've set up a GitHub repository (see the repository page, link at top, for URL) but haven't quite got to the stage where I want to post the code.
If anyone's interested I could use a documenter too.
This looks really cool, and I'm looking forward to it!
Will this be able to create new spawns, or just replace the natural spawns? I've been looking for something like otherdrops that would be able to keep mob density on the overworld constant while dungeon spawned mob populations fluctuate. I am available to help code if you need.