"No <Monster>" Mod Pack

This is a set of mods to remove certain monsters from the game. That is at the moment all it does. This set of mods started as a generic ‘special’ zombie remover, but I have started to add other types of removers to the pack.

There are six mods included in this pack.
No Aberrations: This removes all aberrations, such as the jabberwock, charrned nightmare and crawler, among others.
No Blobs: This removes all blobs.
No Giant Animals: This removes all giant animals, such as giant spiders, ants, worms, dermatiks, and others.
No Nether Creatures: This removes all nether creatures (except blobs), such as krecks, grackes, body blanks, shoggoths, and more.
No Special Zombies: This removes special zombies, such as shocker, smoker, swimmer, boomer, etc. I only removed zombies that passed a certain “special” threshold. Such as a special attack (like boomers), a special function (like smokers), and so on. Zombies that added flavor but lacked any special ability were left in (such as brute, crawler and child zombies).
No Zombie Animals: This removes zombie animals, zoose, zombear, zolf, zombie dog, skeleton dog, and so forth.

These mods at the moment do nothing to adjust the game for their removal, it simply blacklists them. This mod likely requires the latest development release (at the moment).

Download

[hr]
How to Install
Extract the contents of the zip into your cataclysm-dda/data/mods/ folder. Then create a new world using the mod(s).

Also, if you don’t think this mod is particularly fun, no one is forcing you to download and use it.

[hr]
Notes
Not all of the given monsters may be removed with a given mod. Due to a large number of hard coded entries in the mapgen. There are 51 creatures that will spawn regardless. The bug in question can be found here #3951. Despite this, the large majority of these monsters will still be removed from the game.

List of hard coded monsters.

mon_zombie
mon_zombie_cop
mon_blank
mon_turret
mon_zombie_soldier
mon_zombie_bio_op
mon_zombie_shrieker
mon_zombie_brute
mon_zombie_child
mon_zombie_grabber
mon_zombie_scientist
mon_mi_go
mon_kreck
mon_crawler
mon_shoggoth
mon_secubot
mon_turret_rifle
mon_sewer_snake
mon_dark_wyrm
mon_dog_thing
mon_eyebot
mon_zombie_electric
mon_hazmatbot
mon_zombie_dog
mon_spider_trapdoor
mon_blob
mon_triffid
mon_creeper_hub
mon_biollante
mon_fungal_fighter
mon_spider_web
mon_triffid_heart
mon_broken_cyborg
mon_zombie_spitter
mon_zombie_smoker
mon_breather_hub
mon_breather
mon_jabberwock
mon_shia
mon_bee
mon_beekeeper
mon_fungaloid_queen
mon_zombie_swimmer
mon_wasp
mon_spider_widow_giant
mon_dementia
mon_blood_sacrifice
mon_sewer_rat
mon_rat_king
mon_ant_queen
mon_ant_larva

[hr]
Version History
1.3- Added aberrations, blobs, and nether creature remover.
1.2- Added giant animal remover
1.1- Fixed mod in author (copy and paste error)
1.0- Initial Release

YESSS

I need to find a way to remove monster specific structures from the game, such as fungal blooms, anthills (and tunnels), and similar. If you know how to do this by mod, please let me know.

Until then these mods will leave areas broken, as the monsters that once inhabited them are gone. Such as the giant ants hills and giant spider nests.

It also seems that the monsters blacklisted might still spawn. I am not sure of why, but it seems to happen with swimmers, some spiders and giant wasps.

The reason for this is very likely this issue. #3951 Replace add_spawn() calls in mapgen with place_spawn()

That’s a known issue, the functions used to place individual monsters by map gen don’t respect the blacklists.

Yep, that’s while I referenced the issue.

Could you make a Free Roam mod? To make absolutely no nothing spawn, but only normal wildlife? I want this for making experimets with the game engine. Muahahaha.
[me=StopSignal]imagines burning cities and making awesomely big cars[/me]

I’m not sure what happens if you blacklist every monster in a set. Currently other monsters in a set just spawn more to take up the places that these other monsters were. But removing everything but wildlife wouldn’t be impossible if it just doesn’t spawn anything with a completely blacklisted spawn group.

Chase, I love those. Any chance they could be mainlined?

The main problem with having it in mainline is having 6 more mods on the list, it’s already getting quite cluttered :confused:
Part of that is a new and very active contributor putting everything he adds in a mod, all of which can go into mainline, but we still need a nice way to handle it. I’m wondering if we can have subfolders or categories for the mod menu so they’re a bit better organized.

Well there was always the possibility of having a lot of mods. Isn’t that sort of the point of the mod system?

But to be honest, I don’t particularly like the “No XYZ” system. The bug that affects these mods is an example, the blacklist doesn’t work with everything. But if the mobs were in the mods themselves, it wouldn’t be an issue (though the game may crash not being able to find those monsters, but the point is removing the hard coding entirely).

Subtractive mods are always more difficult and problematic then additive mods. But I don’t see a way to remove a lot of these things from the core without breaking a lot of stuff. It doesn’t help that a lot of former mods seem to be moving from mods into the core, which is only making things worse.

No it wasn’t, the original concept was large mods like dinocataclysm that add a lot of related stuff all at once, not tiny mods that adjust one or two things at a time. If we were really lucky we’d have a dozen large scale mods, which is both a huge number of large-scale mods and a totally manageable number for the menu.

If we’re pushing content to mods, we can ignore the hard-coding because it “should be fixed”, but if we’re talking about the blacklist it’s still valid? Can you state an example that doesn’t rely on having different standards for the two implementations?

[citation needed]

There aren’t any “former mods”, they are all things that were originally in the core definitions and removed in order to make them toggle-able as a stopgap until we got around to implementing the blacklist system, which was the plan from the start.

The problem with putting content in mods is it’s inflexible. For example with “no zombies” vs “no zombie animals”, do you put zombie animals in the zombie mod? If you do, you now can’t turn off zombie animals without turning off zombies as a whole. If you don’t, turning off zombies doesn’t turn off zombie animals, so now the player has to remember to set both, also there have to be a bajillion different mods to even theoretically support enabling and disabling the correct ones. What if someone wants to just turn off spitters? If we were taking the mod path, they’d have to either delete the spitter definition from the json (including everywhere it’s included in spawn groups), OR we’d have to put every single zombie in it’s own mod just in case someone wants to disable it. With blacklists, all you have to do is add the spitter to a blacklist and you’re done.
Additive mod inclusion only looks good if there’s an obviously correct way to partition the things being added, and you don’t want to support any other way of partitioning the content.

You may or may not be aware, you can also just blacklist everything and then whitelist just what you want.

Okay, sorry. We are getting a bit off topic. Let’s just say I have my reasons, I will be happy to explain in full detail in a private message if you care about them. I just am not the fondest of subtractive modding systems.