From d1a91327332ccdc94787aeed8dd2b7f10b444d35 Mon Sep 17 00:00:00 2001 From: Venera3 <72006894+Venera3@users.noreply.github.com> Date: Sat, 25 Feb 2023 21:23:30 +0100 Subject: [PATCH] Rework basement spawns (#63713) * Roachless * Non-house --- data/json/mapgen/basement/basements.json | 24 +++++++++---------- data/json/mapgen/house/house05_ab.json | 8 +++---- data/json/mapgen/house/house23.json | 3 +-- data/json/mapgen/house/house38.json | 3 +-- data/json/mapgen/house/house42.json | 3 +-- data/json/mapgen/retirement_community.json | 2 +- .../house_general_palette.json | 14 +---------- data/json/monstergroups/misc.json | 14 +++++++++-- .../overmap_terrain_agricultural.json | 1 + .../overmap_terrain_commercial.json | 1 + .../overmap_terrain_residential.json | 3 ++- 11 files changed, 37 insertions(+), 39 deletions(-) diff --git a/data/json/mapgen/basement/basements.json b/data/json/mapgen/basement/basements.json index 7a80d9bd1e84f..4663b931cda6a 100644 --- a/data/json/mapgen/basement/basements.json +++ b/data/json/mapgen/basement/basements.json @@ -15,19 +15,19 @@ "^#|tCS|.............U|#^", "^#||||||...CCCCCCUUUU|#^", "^#| ||+|####|||||||#^", - "^#| | << !! |#^", - "^#| ! + |#^", - "^#| | ! |#^", + "^#| | << |#^", + "^#| + |#^", + "^#| | |#^", "^#|||||| |#^", "^#| | |#^", "^#| + |#^", - "^#| ! | ! |#^", + "^#| | |#^", "^#| | |#^", "^#|||||| |#^", - "^#| | !! |#^", - "^#| ! + !! |#^", "^#| | |#^", - "^#| | !! |#^", + "^#| + |#^", + "^#| | |#^", + "^#| | |#^", "^#||||||||||||||||||||#^", "^######################^", "^^^^^^^^^^^^^^^^^^^^^^^^" @@ -90,11 +90,11 @@ "^#| | |#^", "^#| + |#^", "^#| |< |#^", - "^#|||||| !!!!! |#^", - "^#| | !!!!! |#^", - "^#| + !!!!! |#^", - "^#| ! | !!!!! |#^", - "^#| | !!!!! |#^", + "^#|||||| |#^", + "^#| | |#^", + "^#| + |#^", + "^#| | |#^", + "^#| | |#^", "^#|||||| |#^", "^#| | |#^", "^#| + |#^", diff --git a/data/json/mapgen/house/house05_ab.json b/data/json/mapgen/house/house05_ab.json index d09e1156f095d..b2ffbc7c5803e 100644 --- a/data/json/mapgen/house/house05_ab.json +++ b/data/json/mapgen/house/house05_ab.json @@ -87,16 +87,16 @@ "^#| | |#^", "^#| + |#^", "^#| | |#^", - "^#|||||| ! |#^", + "^#|||||| |#^", "^#| | |#^", "^#| + |#^", - "^#| | ! |#^", "^#| | |#^", - "^#|||||| ! |#^", + "^#| | |#^", + "^#|||||| |#^", "^#| | < |#^", "^#| + |#^", "^#| | |#^", - "^#| | !!!!!! |#^", + "^#| | |#^", "^#||||||||||||||||||||#^", "^######################^", "^^^^^^^^^^^^^^^^^^^^^^^^" diff --git a/data/json/mapgen/house/house23.json b/data/json/mapgen/house/house23.json index a745c50a6f9e1..3ab037d6f06e2 100644 --- a/data/json/mapgen/house/house23.json +++ b/data/json/mapgen/house/house23.json @@ -266,8 +266,7 @@ { "item": "feces_roach", "x": [ 3, 21 ], "y": [ 5, 19 ], "chance": 20, "repeat": [ 4, 8 ] } ], "place_monster": [ - { "monster": "mon_large_cockroach", "x": [ 3, 21 ], "y": [ 5, 19 ], "chance": 100, "repeat": 8 }, - { "monster": "mon_giant_cockroach", "x": [ 3, 21 ], "y": [ 5, 19 ], "chance": 50, "repeat": 2 }, + { "monster": "mon_large_cockroach", "x": [ 3, 21 ], "y": [ 5, 19 ], "chance": 100, "repeat": [ 2, 6 ] }, { "monster": "mon_plague_vector", "x": [ 3, 21 ], "y": [ 5, 19 ], "chance": 20 } ] } diff --git a/data/json/mapgen/house/house38.json b/data/json/mapgen/house/house38.json index 1739ff3e76b2d..0b49f25405f10 100644 --- a/data/json/mapgen/house/house38.json +++ b/data/json/mapgen/house/house38.json @@ -155,8 +155,7 @@ { "item": "stereo", "x": 15, "y": 18, "chance": 35 } ], "place_monster": [ - { "monster": "mon_large_cockroach", "x": [ 3, 21 ], "y": [ 6, 15 ], "chance": 100, "repeat": 8 }, - { "monster": "mon_giant_cockroach", "x": [ 3, 21 ], "y": [ 6, 15 ], "chance": 50, "repeat": 2 }, + { "monster": "mon_large_cockroach", "x": [ 3, 21 ], "y": [ 6, 15 ], "chance": 100, "repeat": [ 2, 6 ] }, { "monster": "mon_plague_vector", "x": [ 3, 21 ], "y": [ 6, 15 ], "chance": 20 } ] } diff --git a/data/json/mapgen/house/house42.json b/data/json/mapgen/house/house42.json index 04fdcf75a191a..b1bfc0f59a67e 100644 --- a/data/json/mapgen/house/house42.json +++ b/data/json/mapgen/house/house42.json @@ -150,8 +150,7 @@ { "item": "stereo", "x": 16, "y": 6, "chance": 35 } ], "place_monster": [ - { "monster": "mon_large_cockroach", "x": [ 3, 21 ], "y": [ 6, 15 ], "chance": 100, "repeat": 8 }, - { "monster": "mon_giant_cockroach", "x": [ 3, 21 ], "y": [ 6, 15 ], "chance": 50, "repeat": 2 }, + { "monster": "mon_large_cockroach", "x": [ 3, 21 ], "y": [ 6, 15 ], "chance": 100, "repeat": [ 2, 6 ] }, { "monster": "mon_plague_vector", "x": [ 3, 21 ], "y": [ 6, 15 ], "chance": 20 } ] } diff --git a/data/json/mapgen/retirement_community.json b/data/json/mapgen/retirement_community.json index 1f35148f0c346..865d03b39de6e 100644 --- a/data/json/mapgen/retirement_community.json +++ b/data/json/mapgen/retirement_community.json @@ -211,7 +211,7 @@ { "group": "GROUP_RETIREMENT_COMMUNITY", "x": [ 34, 44 ], "y": [ 9, 13 ], "repeat": [ 2, 3 ] }, { "group": "GROUP_RETIREMENT_COMMUNITY", "x": [ 48, 56 ], "y": [ 9, 13 ], "repeat": [ 2, 3 ] }, { "group": "GROUP_RETIREMENT_COMMUNITY", "x": [ 73, 81 ], "y": [ 9, 13 ], "repeat": [ 2, 3 ] }, - { "monster": "mon_large_cockroach", "x": [ 85, 91 ], "y": [ 10 ], "chance": 100, "repeat": [ 6, 7 ] }, + { "monster": "mon_large_cockroach", "x": [ 85, 91 ], "y": [ 10 ], "chance": 50, "repeat": [ 2, 5 ] }, { "monster": "mon_spider_cellar_giant", "x": [ 26, 30 ], "y": [ 9, 17 ], "chance": 100, "repeat": [ 3, 4 ] }, { "monster": "mon_zombie_child", "x": [ 125 ], "y": [ 17 ], "chance": 100, "repeat": [ 1, 2 ] }, { "monster": "mon_zombie_child", "x": [ 125 ], "y": [ 11 ], "chance": 100, "repeat": [ 1, 2 ] }, diff --git a/data/json/mapgen_palettes/house_general_palette.json b/data/json/mapgen_palettes/house_general_palette.json index 1dd91e1fb8c17..c82aa3c4dbcc1 100644 --- a/data/json/mapgen_palettes/house_general_palette.json +++ b/data/json/mapgen_palettes/house_general_palette.json @@ -272,19 +272,7 @@ "u": "t_thconc_floor", "X": "t_thconc_floor" }, - "furniture": { "c": "f_exercise", "u": [ "f_ergometer", "f_ergometer_mechanical" ], "X": "f_punching_bag" }, - "monsters": { - "!": [ - { "monster": "GROUP_ROACH", "chance": 70 }, - { "monster": "GROUP_PLAGUE_ROACH", "chance": 50 }, - { "monster": "GROUP_ZOMBIE", "chance": 100 } - ], - ".": [ - { "monster": "GROUP_ROACH", "chance": 80 }, - { "monster": "GROUP_PLAGUE_ROACH", "chance": 50 }, - { "monster": "GROUP_ZOMBIE", "chance": 60 } - ] - } + "furniture": { "c": "f_exercise", "u": [ "f_ergometer", "f_ergometer_mechanical" ], "X": "f_punching_bag" } }, { "type": "palette", diff --git a/data/json/monstergroups/misc.json b/data/json/monstergroups/misc.json index f6739cbd40232..b87492ed4b964 100644 --- a/data/json/monstergroups/misc.json +++ b/data/json/monstergroups/misc.json @@ -238,7 +238,7 @@ { "monster": "mon_zombie_pig", "weight": 10, "cost_multiplier": 25, "starts": "7 days", "pack_size": [ 1, 5 ] }, { "monster": "mon_zombie_pig", "weight": 10, "cost_multiplier": 25, "starts": "28 days", "pack_size": [ 1, 5 ] }, { "monster": "mon_zombie_pig", "weight": 10, "cost_multiplier": 25, "starts": "90 days", "pack_size": [ 1, 5 ] }, - { "monster": "mon_giant_cockroach", "weight": 10, "pack_size": [ 1, 5 ] }, + { "monster": "mon_giant_cockroach", "weight": 10, "pack_size": [ 1, 2 ] }, { "monster": "mon_pregnant_giant_cockroach", "weight": 1, "cost_multiplier": 3 }, { "monster": "mon_giant_cockroach_nymph", "weight": 5 }, { "monster": "mon_tiger", "weight": 1, "cost_multiplier": 30 }, @@ -295,6 +295,16 @@ { "monster": "mon_cicada_nymph", "weight": 10 } ] }, + { + "type": "monstergroup", + "name": "GROUP_BASEMENT_HOUSE", + "//": "60-30-10% chance of zombies/roaches/cellar spiders, no mixing enemies in the same spawn", + "monsters": [ + { "group": "GROUP_HOUSE", "weight": 6, "pack_size": [ 2, 6 ] }, + { "group": "GROUP_ROACH", "weight": 3, "pack_size": [ 3, 10 ] }, + { "group": "GROUP_SPIDER_BASEMENT", "weight": 1, "pack_size": [ 1, 5 ] } + ] + }, { "type": "monstergroup", "name": "DUMP_ANIMALS", @@ -335,7 +345,7 @@ "conditions": [ "DAWN", "DUSK", "NIGHT", "SPRING", "SUMMER", "AUTUMN" ] }, { "monster": "mon_spider_widow_giant", "weight": 30, "pack_size": [ 2, 4 ] }, - { "monster": "mon_giant_cockroach", "weight": 50, "pack_size": [ 3, 6 ] }, + { "monster": "mon_giant_cockroach", "weight": 50, "pack_size": [ 1, 3 ] }, { "monster": "mon_black_rat", "weight": 30, "pack_size": [ 4, 8 ] }, { "monster": "mon_wasp_small", "weight": 50, "pack_size": [ 2, 4 ] }, { "monster": "mon_zombie_child", "weight": 20, "pack_size": [ 2, 6 ] }, diff --git a/data/json/overmap/overmap_terrain/overmap_terrain_agricultural.json b/data/json/overmap/overmap_terrain/overmap_terrain_agricultural.json index d0831c257bf95..23eeb594826be 100644 --- a/data/json/overmap/overmap_terrain/overmap_terrain_agricultural.json +++ b/data/json/overmap/overmap_terrain/overmap_terrain_agricultural.json @@ -120,6 +120,7 @@ { "type": "overmap_terrain", "id": [ "pottery_cottage_basement", "farm_stills_3_basement", "ranch_camp_68_basement" ], + "spawns": { "group": "GROUP_BASEMENT_HOUSE", "population": [ 1, 1 ], "chance": 80 }, "copy-from": "generic_city_house_basement" }, { diff --git a/data/json/overmap/overmap_terrain/overmap_terrain_commercial.json b/data/json/overmap/overmap_terrain/overmap_terrain_commercial.json index 0f58ccc2ec731..119f0c959906f 100644 --- a/data/json/overmap/overmap_terrain/overmap_terrain_commercial.json +++ b/data/json/overmap/overmap_terrain/overmap_terrain_commercial.json @@ -1714,6 +1714,7 @@ { "type": "overmap_terrain", "id": [ "urban_14_1", "urban_14_2", "urban_25_1", "urban_25_2" ], + "spawns": { "group": "GROUP_BASEMENT_HOUSE", "population": [ 1, 1 ], "chance": 80 }, "copy-from": "generic_city_house_basement" }, { diff --git a/data/json/overmap/overmap_terrain/overmap_terrain_residential.json b/data/json/overmap/overmap_terrain/overmap_terrain_residential.json index 6309489a61b67..3ffeda8cd15c7 100644 --- a/data/json/overmap/overmap_terrain/overmap_terrain_residential.json +++ b/data/json/overmap/overmap_terrain/overmap_terrain_residential.json @@ -531,7 +531,8 @@ "urban_18_1", "urban_18_2" ], - "copy-from": "generic_city_house_basement" + "copy-from": "generic_city_house_basement", + "spawns": { "group": "GROUP_BASEMENT_HOUSE", "population": [ 1, 1 ], "chance": 80 } }, { "type": "overmap_terrain",