# Is there a way to blacklist overmap specials?

**URL:** <https://discourse.cataclysmdda.org/t/is-there-a-way-to-blacklist-overmap-specials/23231>\
**Category:** The Lab\
**Created:** [April 13, 2020, 8:50pm UTC](https://discourse.cataclysmdda.org/t/is-there-a-way-to-blacklist-overmap-specials/23231 "2020-04-13T20:50:43Z")\
**Posts on this page:** 9\
**Page:** 1

<div class="post-metadata">

**Author:** ![Dueu](https://sea2.discourse-cdn.com/flex016/user_avatar/discourse.cataclysmdda.org/dueu/32/11646_2.png) [@Dueu](https://discourse.cataclysmdda.org/u/Dueu)\
**Post date:** [April 13, 2020, 8:50pm UTC](https://discourse.cataclysmdda.org/t/is-there-a-way-to-blacklist-overmap-specials/23231/1 "2020-04-13T20:50:43Z")

</div>

I’m making diferent mods related to robotics and sci fi content but I always found the same situation: farms, more farms and even more farms. Even Vorm complain about the farm hell.

I’m aware that you can ban certain types of overmap specials like in the mod No\_Fungi:

> {  
> “type”: “region\_overlay”,  
> “regions”: [“all”],  
> “overmap\_feature\_flag\_settings”: { “blacklist”: [“FUNGAL”] }  
> }

But that feature’s very limiting of what you can do with it, I want to specificly blacklist certain types of buildings like farms and others but no more than that.

---

<div class="post-metadata">

**Author:** ![Belcanzor](https://sea2.discourse-cdn.com/flex016/user_avatar/discourse.cataclysmdda.org/belcanzor/32/1798_2.png) [@Belcanzor](https://discourse.cataclysmdda.org/u/Belcanzor)\
**Post date:** [April 14, 2020, 12:33am UTC](https://discourse.cataclysmdda.org/t/is-there-a-way-to-blacklist-overmap-specials/23231/2 "2020-04-14T00:33:14Z")

</div>

Farms spawn its mentioned often. You can manipulate map generator, like distance between city, and farm dont appear or just few.  
I know this is not the answer you seek but perhaps help.

> [@No cities bigger than 3 streets generating](https://discourse.cataclysmdda.org/t/no-cities-bigger-than-3-streets-generating/22988):
>
> Made a new world, tried setting it for bigger cities but further away from each other than vanilla. Result: so far have found only 3 “cities”(and there are 3 more somewhere else judging by overmap screen). One of those is 3x2 streets, another is 4 houses, and the last is called a city but really is just a crossroads without any houses. The world was generated on one of latest experimentals about a week ago. Bug or some intricacy of mapgen options I’m not aware of?

Maybe this post help

---

<div class="post-metadata">

**Author:** ![Valase](https://sea2.discourse-cdn.com/flex016/user_avatar/discourse.cataclysmdda.org/valase/32/6972_2.png) [@Valase](https://discourse.cataclysmdda.org/u/Valase)\
**Post date:** [April 14, 2020, 5:10am UTC](https://discourse.cataclysmdda.org/t/is-there-a-way-to-blacklist-overmap-specials/23231/3 "2020-04-14T05:10:57Z")

</div>

How about `"overmap_feature_flag_settings": { "blacklist": ["FARM"] }`? It get’s rid of all farms, only exception the “ranch\_camp”.

For other buildings, there are not many options - you’ll need to take the long way and remove them “manually”, as in: Check the data-\>json-\>overmap-\>overmap\_special-\>specials.json file for the id of the building and create a file in your mod that contains `"type": "overmap_special"`, that id, an empty `"overmaps"` list and `"occurrences": [0, 0]`. For example…:

> **Get rid of all the prisons**
>
> ```
> [
> {
> "type": "overmap_special",
> "id": "Prison",
> "overmaps": [],
> "occurrences": [0, 0]
> },
> {
> "type": "overmap_special",
> "id": "Alcatraz Prison",
> "overmaps": [],
> "occurrences": [0, 0]
> },
> {
> "type": "overmap_special",
> "id": "Prison Hidden Lab",
> "overmaps": [],
> "occurrences": [0, 0]
> }
> ]
> 
> ```

If you want to get rid of certain city buildings, you probably can tweak them in your regional\_map\_settings.json “replacement”, specifically in the `"city"`-\>`"houses"` and `"shops"` list.

But I’m not experienced at modding building spawn rates, so maybe it wont work as I expect it to.

---

<div class="post-metadata">

**Author:** ![Dueu](https://sea2.discourse-cdn.com/flex016/user_avatar/discourse.cataclysmdda.org/dueu/32/11646_2.png) [@Dueu](https://discourse.cataclysmdda.org/u/Dueu)\
**Post date:** [April 14, 2020, 3:34pm UTC](https://discourse.cataclysmdda.org/t/is-there-a-way-to-blacklist-overmap-specials/23231/4 "2020-04-14T15:34:13Z")

</div>

Thanks, I’m gonna test your info right away.

---

<div class="post-metadata">

**Author:** ![Dueu](https://sea2.discourse-cdn.com/flex016/user_avatar/discourse.cataclysmdda.org/dueu/32/11646_2.png) [@Dueu](https://discourse.cataclysmdda.org/u/Dueu)\
**Post date:** [April 14, 2020, 4:46pm UTC](https://discourse.cataclysmdda.org/t/is-there-a-way-to-blacklist-overmap-specials/23231/5 "2020-04-14T16:46:12Z")

</div>

The first things definitely works but it doesn’t get rid of rural houses and the second it doesn’t but anyways it’s amazing the results. Now I just need a way to blacklist starting scenario sites, not scenarios as a whole just the site, because if you select a blacklist site to start it will not generate the region and a error pop-ups.

---

<div class="post-metadata">

**Author:** ![Valase](https://sea2.discourse-cdn.com/flex016/user_avatar/discourse.cataclysmdda.org/valase/32/6972_2.png) [@Valase](https://discourse.cataclysmdda.org/u/Valase)\
**Post date:** [April 15, 2020, 6:20am UTC](https://discourse.cataclysmdda.org/t/is-there-a-way-to-blacklist-overmap-specials/23231/6 "2020-04-15T06:20:27Z")

</div>

You could add in “WILDERNESS” to the blacklist (`"blacklist": ["FARM", "WILDERNESS"]`), but it will also get rid of some other stuff which you may or may not want to keep…:

> **Buildings with WILDERNESS flag**
>
> 1. Riverside Dwelling
> 2. Rural Gas Station
> 3. Cabin (all of them)
> 4. Strangle Temple
> 5. Standing stones
> 6. Radio Tower (not all of them, as hub01 has one built in)
> 7. Mine
> 8. Spider Pit
> 9. Cave
> 10. Bandit Camp
> 11. Campsite (all)
> 12. Rest Stop (multiple)
> 13. Garage with Gas Station (outside of city)
> 14. Pond
> 15. Basin
> 16. Bog
> 17. Swamp Shack
> 18. State Park
> 19. Fishing Pond
> 20. Derelict Property
> 21. Hunting Blind
> 22. Desolate Barn
> 23. Rural House (all)
> 24. Moonshine Still (all)
> 25. Giant Sinkhole
> 26. Fire Lookout Tower
> 27. Regional Dump
> 28. Lumbermill (might still generate in city vicinity as it’s listed in the city generator, not sure)
> 29. Island (multiple)
> 30. Crashed Airliner

> [@Dueu](#):
>
> […] the second it doesn’t [work] […]

Uh… what exactly doesn’t work? I’ve tested that when I’ve wrote that post and now again (build 10530) and it seems to work fine? It’s exactly how the No\_Rail\_Stations mod does it, just in an abbreviated version.  
Maybe a loading order issue? Or, if you tried to blacklist rural houses with that, did you made sure you got all of them (each one on its own segment, of course: rural\_house, rural\_house\_turn and rural\_house\_yard)? Did it throw an error message?

> [@Dueu](#):
>
> Now I just need a way to blacklist starting scenario sites

Basically the same thing as how to remove a specific overmap special. You could do it with the data-\>json-\>start\_locations.json data, but it will turn out ugly. Better use the ids in the data-\>json-\>scenarios.json file instead. Create a file in your mod folder, go to the file for the scenarios, copy them over to your file, and change them like…:

> **Example**
>
> Original:
> 
> ```
> [
> {
> "type": "scenario",
> "ident": "isolationist",
> "name": "Safe Place",
> "points": 1,
> "description": "You've found some distant safe place, devoid of the living dead. Looks like you're on your own...",
> "allowed_locs": [
> "sloc_refugee_center",
> "sloc_hermit_shack",
> "sloc_farm_survivalist",
> "sloc_cabin",
> "sloc_lmoe",
> "sloc_horse_ranch",
> "sloc_lighthouse_ground",
> "sloc_cabin_lake"
> ],
> "start_name": "Safe Building",
> "flags": ["LONE_START"]
> },
> ]
> 
> ```
> 
> Changes to:
> 
> ```
> [
> {
> "type": "scenario",
> "ident": "isolationist",
> "name": "Safe Place",
> "points": 1,
> "description": "You've found some distant safe place, devoid of the living dead. Looks like you're on your own...",
> "allowed_locs": [
> "sloc_refugee_center",
> "sloc_lmoe",
> "sloc_lighthouse_ground"
> ],
> "start_name": "Safe Building",
> "flags": ["LONE_START"]
> },
> ]
> 
> ```

Sadly, it seems to be necessary to copy the whole section of the scenario over, you can’t just modify one line/list. You can just add in the `"type": "scenario", "ident": "THE_ID_OF_THE_SCENARIO"` and then use `"copy-from": "THE_ID_OF_THE_SCENARIO"`, ending it with `"allowed_locs": ...`. This is a much cleaner solution.

If you remove the last allowed\_locs you’ll either need to replace it with a different location or completely remove (blacklist) the scenario in a new file, with `"type": "SCENARIO_BLACKLIST"` and `"subtype": "blacklist"`.

For a better understanding on how to use these things I’ve just named, check out these files:

- data/mods/No\_Rail\_Stations/overmap\_specials.json on how to remove some specific locations.
- data/mods/more\_classes\_scenarios/cs\_scenarios.json on how to change existing scenarios.
- data/mods/Dark-Skies-Above/blacklists/scenario\_blacklist.json on how a blacklist looks.

---

<div class="post-metadata">

**Author:** ![Dueu](https://sea2.discourse-cdn.com/flex016/user_avatar/discourse.cataclysmdda.org/dueu/32/11646_2.png) [@Dueu](https://discourse.cataclysmdda.org/u/Dueu)\
**Post date:** [April 15, 2020, 7:21am UTC](https://discourse.cataclysmdda.org/t/is-there-a-way-to-blacklist-overmap-specials/23231/7 "2020-04-15T07:21:33Z")

</div>

I don’t know what I’m doing wrong but I just not able to blacklist rural houses

> **Summary**
>
> > [  
> > {  
> > “type”: “overmap\_special”,  
> > “id”: “rural\_house”,  
> > “overmaps”: [],  
> > “occurrences”: [0, 0]  
> > },  
> > {  
> > “type”: “overmap\_special”,  
> > “id”: “rural\_house1”,  
> > “overmaps”: [],  
> > “occurrences”: [0, 0]  
> > },  
> > {  
> > “type”: “overmap\_special”,  
> > “id”: “rural\_house2”,  
> > “overmaps”: [],  
> > “occurrences”: [0, 0]  
> > },  
> > {  
> > “type”: “overmap\_special”,  
> > “id”: “rural\_yard”,  
> > “overmaps”: [],  
> > “occurrences”: [0, 0]  
> > },  
> > {  
> > “type”: “overmap\_special”,  
> > “id”: “rural\_turn”,  
> > “overmaps”: [],  
> > “occurrences”: [0, 0]  
> > }  
> > ]

yes I make sure that all variants of the rural houses are in the blacklist but still appearing in the regions. I think I lack something or just miss a big, dumb and clear mistake.

---

<div class="post-metadata">

**Author:** ![Valase](https://sea2.discourse-cdn.com/flex016/user_avatar/discourse.cataclysmdda.org/valase/32/6972_2.png) [@Valase](https://discourse.cataclysmdda.org/u/Valase)\
**Post date:** [April 16, 2020, 4:10am UTC](https://discourse.cataclysmdda.org/t/is-there-a-way-to-blacklist-overmap-specials/23231/8 "2020-04-16T04:10:19Z")

</div>

Hm, I’m not sure what version you’re playing / trying this on, but in the newest one there is no “rural\_house1” (or \_2, \_yard & \_turn for that matter) in the “specials.json” file.  
The names I found are `"rural_house"`, `"rural_house_turn"` and `"rural_house_yard"`.

Searching through the files shows that a `"rural_house1"` & `"rural_house2"` do exist, but they are linked to the city. To get rid of them, you’ll need to tweak them in your regional\_map\_settings.json “replacement” file.

> **Something like this**
>
> ```
> [
> {
> "type": "region_overlay",
> "regions": ["all"],
> "city":
> {
> "houses":
> {
> "rural_house1": 0,
> "rural_house2": 0
> }
> }
> }
> ]
> 
> ```
> 
> Or if you want to combine it with the farm blacklist…:
> 
> ```
> [
> {
> "type": "region_overlay",
> "regions": ["all"],
> "overmap_feature_flag_settings": { "blacklist": ["FARM"] },
> "city":
> {
> "houses":
> {
> "rural_house1": 0,
> "rural_house2": 0
> }
> }
> }
> ]
> 
> ```

I’ve tested it and it seemed to work, but I can’t say for sure.

Also, if you didn’t blacklist farms, there is one that comes with its own rural house, namely `"farm_lot_forest"`. That one would then again go into your “overmap\_special” blacklist.

So, try again and see if it works 😄 ?

---

<div class="post-metadata">

**Author:** ![Dueu](https://sea2.discourse-cdn.com/flex016/user_avatar/discourse.cataclysmdda.org/dueu/32/11646_2.png) [@Dueu](https://discourse.cataclysmdda.org/u/Dueu)\
**Post date:** [April 16, 2020, 8:48pm UTC](https://discourse.cataclysmdda.org/t/is-there-a-way-to-blacklist-overmap-specials/23231/9 "2020-04-16T20:48:30Z")

</div>

I still got the same problem and I updated to the version 0.E-767-g8786b2b (tiles) (10535). But ya know what? This is unnecessary, the problem I wanted to attend was the farm hell problem and I already solved that, now this is polishing small things that doesn’t affect that much the gameplay of the player. I prefer to focus now in the developing of the remake and maybe you can help me.

I’m making a mod that’s the remake of the Salvaged Robots mod, it’s more a remake because I’m doing from scratch, taking some ideas but mostly giving it a feeling of actually repairing and upgrading robots, it’s easy to make a 100 types of turrets and robots that shots various types of projectiles like acid, laser, scrap metal, bearing, bullets, etc. But I think that CDDA is already too combat centric, at the end it’s not so diferent from arming NPCs with melee weapons and armor, so I planned to add automation to make the life of the player a bit more easier.

My idea is to allow the player to craft with the inactive robots something easy to do, like disassemble ropes into thread. I know how to make new recipes and put it into books but I don’t know how to make a item that passed certain amount of time allows to activate it and drop the desire item. Like tanning leather, I researched for that item id but I only found it’s recipe, not the item itself.

Never mind, I found it :3
