From 345f6f4e6bf1fe78652f52e2c95ee60d1115b1ae Mon Sep 17 00:00:00 2001 From: Chaosvolt Date: Sun, 7 Jan 2024 20:31:55 -0600 Subject: [PATCH 1/4] feat(balance): update military outposts --- data/json/mapgen/outpost.json | 332 ++++++++++++------ data/json/monstergroups/military.json | 15 +- .../overmap/overmap_special/specials.json | 13 +- .../overmap_terrain_military.json | 13 + 4 files changed, 248 insertions(+), 125 deletions(-) diff --git a/data/json/mapgen/outpost.json b/data/json/mapgen/outpost.json index c137a976ef32..d378d4de3c73 100644 --- a/data/json/mapgen/outpost.json +++ b/data/json/mapgen/outpost.json @@ -5,57 +5,47 @@ "om_terrain": [ "outpost" ], "weight": 100, "object": { + "fill_ter": "t_floor", "rows": [ "|----------++----------|", - "|x xx x|", + "| |", "| ////// ///// |", "| /b.lb//;///&/&/ |", "| /l......lb/*/*/ |", "| /l........*.../ |", "| /b.lblb.lb/T.S/ |", "| ///////=/////// |", - "| /CCC.LLLLLL/ |", - "| /C........L/ |", - "| /C........L/ |", - "+x ;..........; x+", - "+x /CCCCCC.CCC/ x+", - "| ///////////=//// |", - "| /p../111/.....X/ |", - "| /...;...;.....X/ |", - "| /!!!/////.....X/ |", - "| /////rrr/....ct/ |", - "| /r../....ct/ |", - "| /r..=....ct/ |", - "| /////;////// |", + "| /S....BB.ct/ |", + "| /X.......ct/ |", + "| /X.......ct/ |", + "+ ;..........; +", + "+ /rrrrr...rr/ +", + "| ///////////;//// |", + "| /p../111/.....L/ |", + "| /...;...;.....L/ |", + "| /!!!/////.....L/ |", + "| /////22./.....L/ |", + "| /...x....../ |", + "| /22./6CCCCC/ |", + "| //////////// |", + "| |", "| |", - "|x xx x|", "|----------++----------|" ], "terrain": { - " ": [ "t_grass_dead", "t_grass", "t_grass_long", "t_dirt", "t_grass_tall" ], - "x": [ "t_grass_dead", "t_grass", "t_grass_long", "t_dirt", "t_grass_tall" ], + " ": "t_region_groundcover", + "~": "t_gutter_downspout", ".": "t_floor", - "!": "t_floor", - "&": "t_floor", - "1": "t_floor", - "l": "t_floor", - "c": "t_floor", - "t": "t_floor", - "r": "t_floor", - "L": "t_floor", - "b": "t_floor", - "S": "t_floor", - "T": "t_floor", - "C": "t_floor", - "X": "t_floor", "-": "t_chainfence", "|": "t_chainfence", "/": "t_concrete_wall", "+": "t_chaingate_l", "*": "t_door_c", "=": "t_door_locked", - ";": "t_door_metal_c", - "p": "t_plut_generator" + ";": "t_door_metal_pickable", + "6": "t_console", + "p": "t_plut_generator", + "x": "t_door_metal_locked" }, "furniture": { "t": "f_table", @@ -65,35 +55,65 @@ "X": "f_counter", "S": "f_sink", "1": "f_locker", + "2": "f_utility_shelf", "!": "f_locker", "l": "f_locker", "L": "f_locker", + "B": "f_bookcase", "b": "f_bunkbed", "T": "f_trashcan" }, "items": { - "b": { "item": "army_bed", "chance": 60 }, - "r": { "item": "mil_food", "chance": 60 }, - "t": { "item": "dining", "chance": 45 }, - "1": { "item": "cleaning", "chance": 70 }, - "!": { "item": "hardware_plumbing", "chance": 70 }, + "B": { "item": "book_military", "chance": 50, "repeat": 3 }, + "b": { "item": "army_bed", "chance": 50, "repeat": 2 }, + "r": { "item": "mil_food", "chance": 50, "repeat": 2 }, + "t": { "item": "dining", "chance": 50 }, + "1": { "item": "cleaning", "chance": 75 }, + "2": [ + { "item": "energy_weapon_armory", "chance": 50, "repeat": 2 }, + { "item": "mil_armor_electronics", "chance": 75, "repeat": 2 }, + { "item": "pwr_armor", "chance": 50 }, + { "item": "pwr_armor_acc", "chance": 50, "repeat": 2 } + ], + "!": { "item": "hardware_plumbing", "chance": 75 }, "L": [ - { "item": "guns_rifle_milspec", "chance": 90 }, - { "item": "energy_weapon_armory", "chance": 50 }, - { "item": "ammo_milspec", "chance": 100, "repeat": [ 15, 45 ] }, - { "item": "grenades", "chance": 100, "repeat": [ 2, 8 ] }, - { "item": "guns_launcher_milspec", "chance": 80 }, - { "item": "mags_milspec", "chance": 100, "repeat": [ 1, 3 ] } + { "item": "guns_rifle_milspec", "chance": 75, "repeat": 2 }, + { "item": "grenades", "chance": 75, "repeat": 3 }, + { "item": "guns_launcher_milspec", "chance": 75 }, + { "item": "ammo_milspec", "chance": 75, "repeat": 10 }, + { "item": "mags_milspec", "chance": 75, "repeat": 2 } + ], + "X": { "item": "oven", "chance": 75, "repeat": 2 }, + "C": [ + { "item": "clothing_military_distribution", "chance": 75, "repeat": 2 }, + { "item": "military_ballistic_armor", "chance": 50, "repeat": 2 }, + { "item": "clothing_tactical_torso", "chance": 50 }, + { "item": "clothing_tactical_leg", "chance": 50 } ], - "X": { "item": "oven", "chance": 70 }, - "C": { "item": "mil_armor", "chance": 40 }, "T": { "item": "trash_cart", "chance": 50 }, - "l": { "item": "bunker_basement_clothing", "chance": 40 } + "l": { "item": "bunker_basement_clothing", "chance": 50, "repeat": 2 } }, "mapping": { " ": { "item": [ { "item": "corpse", "chance": 2 } ] } }, "place_fields": [ { "field": "fd_blood", "x": [ 2, 21 ], "y": [ 2, 21 ], "repeat": [ 1, 12 ] } ], "toilets": { "&": { } }, + "computers": { + "6": { + "name": "Experimental Weapons Storage", + "access_denied": "ERROR! Access denied! Unauthorized access will be met with lethal force!", + "security": 5, + "failures": [ { "action": "alarm" }, { "action": "damage" }, { "action": "secubots" } ], + "options": [ { "name": "Unlock Storage", "action": "unlock" } ] + } + }, "place_monster": [ + { "group": "GROUP_MAYBE_MIL", "x": [ 6, 11 ], "y": [ 4, 5 ], "repeat": [ 1, 2 ] }, + { "group": "GROUP_MAYBE_MIL", "x": [ 9, 16 ], "y": [ 9, 11 ], "repeat": [ 2, 3 ] }, + { "group": "GROUP_MAYBE_MIL", "x": [ 12, 16 ], "y": [ 14, 19 ], "repeat": [ 2, 3 ] }, + { "group": "GROUP_ROBOTS_MIL", "x": [ 5, 6 ], "y": [ 14, 15 ] }, + { "group": "GROUP_ROBOTS_MIL", "x": [ 8, 10 ], "y": 15 }, + { "group": "GROUP_ROBOTS_MIL", "x": [ 8, 10 ], "y": 18 }, + { "group": "GROUP_ROBOTS_MIL", "x": [ 2, 6 ], "y": [ 8, 12 ] }, + { "group": "GROUP_ROBOTS_MIL", "x": [ 2, 6 ], "y": [ 18, 22 ] }, { "monster": "mon_turret_medium", "x": 10, "y": 1 }, { "monster": "mon_turret_longrange", "x": 13, "y": 1 }, { "monster": "mon_turret_medium", "x": 1, "y": 10 }, @@ -106,28 +126,62 @@ { "monster": "mon_turret_searchlight", "x": 22, "y": 22 }, { "monster": "mon_turret_searchlight", "x": 1, "y": 22 }, { "monster": "mon_turret_searchlight", "x": 22, "y": 1 } + ] + } + }, + { + "type": "mapgen", + "method": "json", + "om_terrain": "outpost_roof", + "object": { + "fill_ter": "t_metal_floor_no_roof", + "rows": [ + " ", + " ", + " ...... ..... ", + " ............... ", + " ..A.........=.. ", + " ............... ", + " ............P.. ", + " ............... ", + " ............ ", + " ............ ", + " ............ ", + " ............ ", + " ............ ", + " ................ ", + " ................ ", + " ................ ", + " ......R.R....X.. ", + " ................ ", + " ..R.R....X.. ", + " ............ ", + " ............ ", + " ", + " ", + " " ], - "monster": { - ".": [ - { "monster": "mon_zombie_soldier", "chance": 1 }, - { "monster": "mon_zombie_bio_op", "chance": 1 }, - { "monster": "mon_dispatch", "chance": 1 }, - { "monster": "mon_dispatch_military", "chance": 1 }, - { "monster": "mon_secubot", "chance": 5 }, - { "monster": "mon_zombie_flamer", "chance": 1 } - ] - } + "palettes": [ "roof_palette" ], + "terrain": { + ".": "t_metal_floor_no_roof", + "=": "t_metal_floor_no_roof", + "A": "t_metal_floor_no_roof", + "R": "t_radio_tower", + "X": "t_metal_floor_no_roof" + }, + "furniture": { "P": "f_water_purifier" } } }, { "type": "mapgen", "method": "json", - "om_terrain": [ "outpost" ], + "om_terrain": [ "outpost_1" ], "weight": 100, "object": { + "fill_ter": "t_floor", "rows": [ "|----------++----------|", - "|x xx x|", + "| |", "| |", "| /////;////// |", "| /b.....bllb/ |", @@ -135,49 +189,36 @@ "| /l.....bllb/ |", "| /b........./ |", "| //////*/../*/*//// |", - "| /L...../TS/&/&/11/ |", - "| /L...C/////////../ |", - "+x ;....C/...!/rrr..; x+", - "+x /....C/p..!/r..../ x+", - "| /L...C///;//r...r/ |", - "| /LLL....*.....rrr/ |", - "| //////*////*////// |", - "| /T........f/ |", - "| /tc.......X/ |", - "| /tc.......X/ |", - "| /tc.......X/ |", - "| /////;////// |", + "| /XXXf../TS/&/&/11/ |", + "| /...../////////../ |", + "+ ;...../...!/rrr..; +", + "+ /...../p..!/r..../ +", + "| /ccc..///;//r...r/ |", + "| /tttT...=.....rrr/ |", + "| ///////////;////// |", + "| /22/6.....L/ |", + "| /..x......L/ |", + "| /..x......L/ |", + "| /22/CCCCC.L/ |", + "| //////////// |", + "| |", "| |", - "|x xx x|", "|----------++----------|" ], "terrain": { - " ": [ "t_grass_dead", "t_grass", "t_grass_long", "t_dirt", "t_grass_tall" ], - "x": [ "t_grass_dead", "t_grass", "t_grass_long", "t_dirt", "t_grass_tall" ], + " ": "t_region_groundcover", + "~": "t_gutter_downspout", ".": "t_floor", - "!": "t_floor", - "&": "t_floor", - "1": "t_floor", - "l": "t_floor", - "c": "t_floor", - "d": "t_floor", - "t": "t_floor", - "r": "t_floor", - "f": "t_floor", - "L": "t_floor", - "b": "t_floor", - "S": "t_floor", - "T": "t_floor", - "C": "t_floor", - "X": "t_floor", "-": "t_chainfence", "|": "t_chainfence", "/": "t_concrete_wall", "+": "t_chaingate_l", "*": "t_door_c", "=": "t_door_locked", - ";": "t_door_metal_c", - "p": "t_plut_generator" + ";": "t_door_metal_pickable", + "6": "t_console", + "p": "t_plut_generator", + "x": "t_door_metal_locked" }, "furniture": { "t": "f_table", @@ -187,6 +228,7 @@ "X": "f_counter", "S": "f_sink", "1": "f_locker", + "2": "f_utility_shelf", "!": "f_locker", "l": "f_locker", "L": "f_locker", @@ -197,29 +239,56 @@ }, "items": { "b": { "item": "army_bed", "chance": 60 }, - "d": { "item": "office", "chance": 50 }, - "f": { "item": "fridge", "chance": 30 }, - "r": { "item": "mil_food", "chance": 60 }, - "t": { "item": "dining", "chance": 45 }, - "1": { "item": "cleaning", "chance": 70 }, - "!": { "item": "hardware_plumbing", "chance": 70 }, + "d": { "item": "office", "chance": 50, "repeat": 2 }, + "f": { "item": "fridge", "chance": 50, "repeat": 5 }, + "r": { "item": "mil_food", "chance": 50, "repeat": 2 }, + "t": { "item": "dining", "chance": 50 }, + "1": { "item": "cleaning", "chance": 75 }, + "2": [ + { "item": "energy_weapon_armory", "chance": 50, "repeat": 2 }, + { "item": "mil_armor_electronics", "chance": 75, "repeat": 2 }, + { "item": "pwr_armor", "chance": 50 }, + { "item": "pwr_armor_acc", "chance": 50, "repeat": 2 } + ], + "!": { "item": "hardware_plumbing", "chance": 75 }, "L": [ - { "item": "guns_rifle_milspec", "chance": 80 }, - { "item": "energy_weapon_armory", "chance": 50 }, - { "item": "ammo_milspec", "chance": 100, "repeat": [ 15, 45 ] }, - { "item": "grenades", "chance": 100, "repeat": [ 2, 6 ] }, - { "item": "guns_launcher_milspec", "chance": 80 }, - { "item": "mags_milspec", "chance": 100, "repeat": [ 1, 3 ] } + { "item": "guns_rifle_milspec", "chance": 75, "repeat": 2 }, + { "item": "grenades", "chance": 75, "repeat": 3 }, + { "item": "guns_launcher_milspec", "chance": 75 }, + { "item": "ammo_milspec", "chance": 75, "repeat": 10 }, + { "item": "mags_milspec", "chance": 75, "repeat": 2 } + ], + "X": { "item": "oven", "chance": 75, "repeat": 2 }, + "C": [ + { "item": "clothing_military_distribution", "chance": 75, "repeat": 2 }, + { "item": "military_ballistic_armor", "chance": 50, "repeat": 2 }, + { "item": "clothing_tactical_torso", "chance": 50 }, + { "item": "clothing_tactical_leg", "chance": 50 } ], - "X": { "item": "oven", "chance": 70 }, - "C": { "item": "mil_armor", "chance": 40 }, "T": { "item": "trash_cart", "chance": 50 }, - "l": { "item": "bunker_basement_clothing", "chance": 40 } + "l": { "item": "bunker_basement_clothing", "chance": 50, "repeat": 2 } }, "mapping": { " ": { "item": [ { "item": "corpse", "chance": 2 } ] } }, "place_fields": [ { "field": "fd_blood", "x": [ 2, 21 ], "y": [ 2, 21 ], "repeat": [ 1, 12 ] } ], "toilets": { "&": { } }, + "computers": { + "6": { + "name": "Experimental Weapons Storage", + "access_denied": "ERROR! Access denied! Unauthorized access will be met with lethal force!", + "security": 5, + "failures": [ { "action": "alarm" }, { "action": "damage" }, { "action": "secubots" } ], + "options": [ { "name": "Unlock Storage", "action": "unlock" } ] + } + }, "place_monster": [ + { "group": "GROUP_MAYBE_MIL", "x": [ 8, 13 ], "y": [ 4, 7 ], "repeat": [ 1, 2 ] }, + { "group": "GROUP_MAYBE_MIL", "x": [ 4, 8 ], "y": [ 10, 13 ], "repeat": [ 2, 3 ] }, + { "group": "GROUP_MAYBE_MIL", "x": [ 16, 18 ], "y": [ 12, 13 ], "repeat": [ 1, 2 ] }, + { "group": "GROUP_MAYBE_MIL", "x": [ 10, 15 ], "y": [ 16, 18 ], "repeat": [ 2, 3 ] }, + { "group": "GROUP_ROBOTS_MIL", "x": [ 11, 12 ], "y": [ 11, 12 ] }, + { "group": "GROUP_ROBOTS_MIL", "x": [ 7, 8 ], "y": [ 17, 18 ] }, + { "group": "GROUP_ROBOTS_MIL", "x": [ 3, 5 ], "y": [ 3, 7 ] }, + { "group": "GROUP_ROBOTS_MIL", "x": [ 18, 20 ], "y": [ 16, 20 ] }, { "monster": "mon_turret_medium", "x": 10, "y": 1 }, { "monster": "mon_turret_longrange", "x": 13, "y": 1 }, { "monster": "mon_turret_medium", "x": 1, "y": 10 }, @@ -232,17 +301,50 @@ { "monster": "mon_turret_searchlight", "x": 22, "y": 22 }, { "monster": "mon_turret_searchlight", "x": 1, "y": 22 }, { "monster": "mon_turret_searchlight", "x": 22, "y": 1 } + ] + } + }, + { + "type": "mapgen", + "method": "json", + "om_terrain": "outpost_1_roof", + "object": { + "fill_ter": "t_metal_floor_no_roof", + "rows": [ + " ", + " ", + " ", + " ............ ", + " ............ ", + " .........A.. ", + " ............ ", + " ......P..=.. ", + " .................. ", + " .................. ", + " .................. ", + " .................. ", + " .................. ", + " .................. ", + " .................. ", + " .................. ", + " ..R.R....X.. ", + " ............ ", + " ..R.R....X.. ", + " ............ ", + " ............ ", + " ", + " ", + " " ], - "monster": { - ".": [ - { "monster": "mon_zombie_soldier", "chance": 1 }, - { "monster": "mon_zombie_bio_op", "chance": 1 }, - { "monster": "mon_dispatch", "chance": 1 }, - { "monster": "mon_dispatch_military", "chance": 1 }, - { "monster": "mon_secubot", "chance": 5 }, - { "monster": "mon_zombie_flamer", "chance": 1 } - ] - } + "palettes": [ "roof_palette" ], + "terrain": { + ".": "t_metal_floor_no_roof", + "=": "t_metal_floor_no_roof", + "A": "t_metal_floor_no_roof", + "R": "t_radio_tower", + "X": "t_metal_floor_no_roof" + }, + "furniture": { "P": "f_water_purifier" } } } ] diff --git a/data/json/monstergroups/military.json b/data/json/monstergroups/military.json index c229738b4547..b925d60efe39 100644 --- a/data/json/monstergroups/military.json +++ b/data/json/monstergroups/military.json @@ -2,16 +2,15 @@ { "type": "monstergroup", "name": "GROUP_MAYBE_MIL", - "//": "50% chance military zombie or robot", + "//": "50% chance military zombies", "default": "mon_null", "monsters": [ - { "monster": "mon_zombie_soldier", "freq": 35, "cost_multiplier": 1 }, - { "monster": "mon_haulerbot", "freq": 5, "cost_multiplier": 0 }, - { "monster": "mon_dispatch", "freq": 10, "cost_multiplier": 50 }, - { "monster": "mon_dispatch_military", "freq": 5, "cost_multiplier": 80 }, - { "monster": "mon_talon_m202a1", "freq": 15, "cost_multiplier": 50 }, - { "monster": "mon_zombie_flamer", "freq": 10, "cost_multiplier": 50 }, - { "monster": "mon_zombie_military_pilot", "freq": 0, "cost_multiplier": 1 } + { "monster": "mon_zombie_soldier", "freq": 250, "cost_multiplier": 1 }, + { "monster": "mon_zombie_military_pilot", "freq": 75, "cost_multiplier": 1 }, + { "monster": "mon_zombie_flamer", "freq": 50, "cost_multiplier": 30 }, + { "monster": "mon_zombie_bio_op", "freq": 15, "cost_multiplier": 50 }, + { "monster": "mon_zombie_armored", "freq": 10, "cost_multiplier": 5 }, + { "monster": "mon_feral_soldier", "freq": 100, "cost_multiplier": 1 } ] }, { diff --git a/data/json/overmap/overmap_special/specials.json b/data/json/overmap/overmap_special/specials.json index e1f150b729e2..574809c9e7aa 100644 --- a/data/json/overmap/overmap_special/specials.json +++ b/data/json/overmap/overmap_special/specials.json @@ -695,10 +695,19 @@ { "type": "overmap_special", "id": "Military Outpost", - "overmaps": [ { "point": [ 0, 0, 0 ], "overmap": "outpost_north" } ], + "overmaps": [ { "point": [ 0, 0, 0 ], "overmap": "outpost_north" }, { "point": [ 0, 0, 1 ], "overmap": "outpost_roof_north" } ], "locations": [ "wilderness" ], "city_distance": [ 15, -1 ], - "occurrences": [ 0, 2 ], + "occurrences": [ 0, 1 ], + "flags": [ "MILITARY" ] + }, + { + "type": "overmap_special", + "id": "Military Outpost 1", + "overmaps": [ { "point": [ 0, 0, 0 ], "overmap": "outpost_1_north" }, { "point": [ 0, 0, 1 ], "overmap": "outpost_1_roof_north" } ], + "locations": [ "wilderness" ], + "city_distance": [ 15, -1 ], + "occurrences": [ 0, 1 ], "flags": [ "MILITARY" ] }, { diff --git a/data/json/overmap/overmap_terrain/overmap_terrain_military.json b/data/json/overmap/overmap_terrain/overmap_terrain_military.json index 80ded726df1f..1dce18a187ff 100644 --- a/data/json/overmap/overmap_terrain/overmap_terrain_military.json +++ b/data/json/overmap/overmap_terrain/overmap_terrain_military.json @@ -129,6 +129,19 @@ "extras": "build", "flags": [ "RISK_HIGH", "SOURCE_WEAPON", "SOURCE_AMMO" ] }, + { + "type": "overmap_terrain", + "id": "outpost_1", + "copy-from": "outpost", + "looks_like": "outpost" + }, + { + "type": "overmap_terrain", + "id": [ "outpost_roof", "outpost_1_roof" ], + "copy-from": "outpost", + "name": "military outpost roof", + "looks_like": "outpost" + }, { "type": "overmap_terrain", "id": [ "silo", "silo_1", "silo_2", "silo_3", "silo_4", "silo_finale" ], From adddf8ce2e8f74b03a6b3d0000afc208f118a498 Mon Sep 17 00:00:00 2001 From: Chaosvolt Date: Sun, 7 Jan 2024 20:38:45 -0600 Subject: [PATCH 2/4] Also No Hope ree >:C --- data/json/mapgen/outpost.json | 6 +- .../mods/No_Hope/Mapgen/military_outpost.json | 248 ------------------ 2 files changed, 4 insertions(+), 250 deletions(-) delete mode 100644 data/mods/No_Hope/Mapgen/military_outpost.json diff --git a/data/json/mapgen/outpost.json b/data/json/mapgen/outpost.json index d378d4de3c73..086e177618de 100644 --- a/data/json/mapgen/outpost.json +++ b/data/json/mapgen/outpost.json @@ -73,7 +73,8 @@ { "item": "energy_weapon_armory", "chance": 50, "repeat": 2 }, { "item": "mil_armor_electronics", "chance": 75, "repeat": 2 }, { "item": "pwr_armor", "chance": 50 }, - { "item": "pwr_armor_acc", "chance": 50, "repeat": 2 } + { "item": "pwr_armor_acc", "chance": 50, "repeat": 2 }, + { "item": "inactive_bots_milspec", "chance": 50 } ], "!": { "item": "hardware_plumbing", "chance": 75 }, "L": [ @@ -248,7 +249,8 @@ { "item": "energy_weapon_armory", "chance": 50, "repeat": 2 }, { "item": "mil_armor_electronics", "chance": 75, "repeat": 2 }, { "item": "pwr_armor", "chance": 50 }, - { "item": "pwr_armor_acc", "chance": 50, "repeat": 2 } + { "item": "pwr_armor_acc", "chance": 50, "repeat": 2 }, + { "item": "inactive_bots_milspec", "chance": 50 } ], "!": { "item": "hardware_plumbing", "chance": 75 }, "L": [ diff --git a/data/mods/No_Hope/Mapgen/military_outpost.json b/data/mods/No_Hope/Mapgen/military_outpost.json deleted file mode 100644 index fcfb2b1109f1..000000000000 --- a/data/mods/No_Hope/Mapgen/military_outpost.json +++ /dev/null @@ -1,248 +0,0 @@ -[ - { - "type": "mapgen", - "method": "json", - "om_terrain": [ "outpost" ], - "weight": 100, - "object": { - "rows": [ - "|----------++----------|", - "|x xx x|", - "| ////// ///// |", - "| /b.lb//;///&/&/ |", - "| /l......lb/*/*/ |", - "| /l........*.../ |", - "| /b.lblb.lb/T.S/ |", - "| ///////=/////// |", - "| /CCC.LLLLLL/ |", - "| /C........L/ |", - "| /C........L/ |", - "+x ;..........; x+", - "+x /CCCCCC.CCC/ x+", - "| ///////////=//// |", - "| /p../111/.....X/ |", - "| /...;...;.....X/ |", - "| /!!!/////.....X/ |", - "| /////rrr/....ct/ |", - "| /r../....ct/ |", - "| /r..=....ct/ |", - "| /////;////// |", - "| |", - "|x xx x|", - "|----------++----------|" - ], - "terrain": { - " ": [ "t_grass_dead", "t_grass", "t_grass_long", "t_dirt", "t_grass_tall" ], - "x": [ "t_grass_dead", "t_grass", "t_grass_long", "t_dirt", "t_grass_tall" ], - ".": "t_floor", - "!": "t_floor", - "&": "t_floor", - "1": "t_floor", - "l": "t_floor", - "c": "t_floor", - "t": "t_floor", - "r": "t_floor", - "L": "t_floor", - "b": "t_floor", - "S": "t_floor", - "T": "t_floor", - "C": "t_floor", - "X": "t_floor", - "-": "t_chainfence", - "|": "t_chainfence", - "/": "t_concrete_wall", - "+": "t_chaingate_l", - "*": "t_door_c", - "=": "t_door_locked", - ";": "t_door_metal_c", - "p": "t_plut_generator" - }, - "furniture": { - "t": "f_table", - "r": "f_rack", - "c": "f_chair", - "C": "f_counter", - "X": "f_counter", - "S": "f_sink", - "1": "f_locker", - "!": "f_locker", - "l": "f_locker", - "L": "f_locker", - "b": "f_bunkbed", - "T": "f_trashcan" - }, - "items": { - "b": { "item": "army_bed", "chance": 60 }, - "r": { "item": "mil_food", "chance": 60 }, - "t": { "item": "dining", "chance": 45 }, - "1": { "item": "cleaning", "chance": 70 }, - "!": { "item": "hardware_plumbing", "chance": 70 }, - "L": [ - { "item": "guns_rifle_milspec", "chance": 90 }, - { "item": "energy_weapon_armory", "chance": 50 }, - { "item": "ammo_milspec", "chance": 90, "repeat": [ 15, 45 ] }, - { "item": "grenades", "chance": 90, "repeat": [ 2, 8 ] }, - { "item": "guns_launcher_milspec", "chance": 80 }, - { "item": "mags_milspec", "chance": 90, "repeat": [ 1, 3 ] } - ], - "X": { "item": "oven", "chance": 70 }, - "C": { "item": "mil_armor", "chance": 40 }, - "T": { "item": "trash_cart", "chance": 50 }, - "l": { "item": "bunker_basement_clothing", "chance": 40 } - }, - "mapping": { " ": { "item": [ { "item": "corpse", "chance": 2 } ] } }, - "place_fields": [ { "field": "fd_blood", "x": [ 2, 21 ], "y": [ 2, 21 ], "repeat": [ 1, 12 ] } ], - "toilets": { "&": { } }, - "place_monster": [ - { "monster": "mon_crows_m240", "x": 10, "y": 1 }, - { "monster": "mon_turret_bmg", "x": 13, "y": 1 }, - { "monster": "mon_crows_m240", "x": 1, "y": 10 }, - { "monster": "mon_turret_bmg", "x": 1, "y": 13 }, - { "monster": "mon_crows_m240", "x": 22, "y": 10 }, - { "monster": "mon_turret_bmg", "x": 22, "y": 13 }, - { "monster": "mon_crows_m240", "x": 10, "y": 22 }, - { "monster": "mon_turret_bmg", "x": 13, "y": 22 }, - { "monster": "mon_turret_searchlight", "x": 1, "y": 1 }, - { "monster": "mon_turret_searchlight", "x": 22, "y": 22 }, - { "monster": "mon_turret_searchlight", "x": 1, "y": 22 }, - { "monster": "mon_turret_searchlight", "x": 22, "y": 1 } - ], - "monster": { - ".": [ - { "monster": "mon_zombie_soldier", "chance": 1 }, - { "monster": "mon_zombie_bio_op", "chance": 1 }, - { "monster": "mon_dispatch", "chance": 1 }, - { "monster": "mon_dispatch_military", "chance": 1 }, - { "monster": "mon_secubot", "chance": 5 }, - { "monster": "mon_zombie_flamer", "chance": 1 } - ] - } - } - }, - { - "type": "mapgen", - "method": "json", - "om_terrain": [ "outpost" ], - "weight": 100, - "object": { - "rows": [ - "|----------++----------|", - "|x xx x|", - "| |", - "| /////;////// |", - "| /b.....bllb/ |", - "| /l.dc....../ |", - "| /l.....bllb/ |", - "| /b........./ |", - "| //////*/../*/*//// |", - "| /L...../TS/&/&/11/ |", - "| /L...C/////////../ |", - "+x ;....C/...!/rrr..; x+", - "+x /....C/p..!/r..../ x+", - "| /L...C///;//r...r/ |", - "| /LLL....*.....rrr/ |", - "| //////*////*////// |", - "| /T........f/ |", - "| /tc.......X/ |", - "| /tc.......X/ |", - "| /tc.......X/ |", - "| /////;////// |", - "| |", - "|x xx x|", - "|----------++----------|" - ], - "terrain": { - " ": [ "t_grass_dead", "t_grass", "t_grass_long", "t_dirt", "t_grass_tall" ], - "x": [ "t_grass_dead", "t_grass", "t_grass_long", "t_dirt", "t_grass_tall" ], - ".": "t_floor", - "!": "t_floor", - "&": "t_floor", - "1": "t_floor", - "l": "t_floor", - "c": "t_floor", - "d": "t_floor", - "t": "t_floor", - "r": "t_floor", - "f": "t_floor", - "L": "t_floor", - "b": "t_floor", - "S": "t_floor", - "T": "t_floor", - "C": "t_floor", - "X": "t_floor", - "-": "t_chainfence", - "|": "t_chainfence", - "/": "t_concrete_wall", - "+": "t_chaingate_l", - "*": "t_door_c", - "=": "t_door_locked", - ";": "t_door_metal_c", - "p": "t_plut_generator" - }, - "furniture": { - "t": "f_table", - "r": "f_rack", - "c": "f_chair", - "C": "f_counter", - "X": "f_counter", - "S": "f_sink", - "1": "f_locker", - "!": "f_locker", - "l": "f_locker", - "L": "f_locker", - "b": "f_bunkbed", - "d": "f_desk", - "f": "f_fridge", - "T": "f_trashcan" - }, - "items": { - "b": { "item": "army_bed", "chance": 60 }, - "d": { "item": "office", "chance": 50 }, - "f": { "item": "fridge", "chance": 30 }, - "r": { "item": "mil_food", "chance": 60 }, - "t": { "item": "dining", "chance": 45 }, - "1": { "item": "cleaning", "chance": 70 }, - "!": { "item": "hardware_plumbing", "chance": 70 }, - "L": [ - { "item": "guns_rifle_milspec", "chance": 80 }, - { "item": "energy_weapon_armory", "chance": 50 }, - { "item": "ammo_milspec", "chance": 90, "repeat": [ 15, 45 ] }, - { "item": "grenades", "chance": 90, "repeat": [ 2, 6 ] }, - { "item": "guns_launcher_milspec", "chance": 80 }, - { "item": "mags_milspec", "chance": 90, "repeat": [ 1, 3 ] } - ], - "X": { "item": "oven", "chance": 70 }, - "C": { "item": "mil_armor", "chance": 40 }, - "T": { "item": "trash_cart", "chance": 50 }, - "l": { "item": "bunker_basement_clothing", "chance": 40 } - }, - "mapping": { " ": { "item": [ { "item": "corpse", "chance": 2 } ] } }, - "place_fields": [ { "field": "fd_blood", "x": [ 2, 21 ], "y": [ 2, 21 ], "repeat": [ 1, 12 ] } ], - "toilets": { "&": { } }, - "place_monster": [ - { "monster": "mon_laserturret", "x": 10, "y": 1 }, - { "monster": "mon_turret_bmg", "x": 13, "y": 1 }, - { "monster": "mon_crows_m240", "x": 1, "y": 10 }, - { "monster": "mon_turret_bmg", "x": 1, "y": 13 }, - { "monster": "mon_laserturret", "x": 22, "y": 10 }, - { "monster": "mon_turret_bmg", "x": 22, "y": 13 }, - { "monster": "mon_crows_m240", "x": 10, "y": 22 }, - { "monster": "mon_turret_bmg", "x": 13, "y": 22 }, - { "monster": "mon_turret_searchlight", "x": 1, "y": 1 }, - { "monster": "mon_turret_searchlight", "x": 22, "y": 22 }, - { "monster": "mon_turret_searchlight", "x": 1, "y": 22 }, - { "monster": "mon_turret_searchlight", "x": 22, "y": 1 } - ], - "monster": { - ".": [ - { "monster": "mon_zombie_soldier", "chance": 1 }, - { "monster": "mon_zombie_bio_op", "chance": 1 }, - { "monster": "mon_dispatch", "chance": 1 }, - { "monster": "mon_dispatch_military", "chance": 1 }, - { "monster": "mon_secubot", "chance": 5 }, - { "monster": "mon_zombie_flamer", "chance": 1 } - ] - } - } - } -] From f2d3ab80f374aa24c4cabb7abcf9d1175e622882 Mon Sep 17 00:00:00 2001 From: Chaosvolt Date: Sun, 7 Jan 2024 21:03:56 -0600 Subject: [PATCH 3/4] Also grid --- data/json/overmap/overmap_special/specials.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/data/json/overmap/overmap_special/specials.json b/data/json/overmap/overmap_special/specials.json index 574809c9e7aa..045654c7efd2 100644 --- a/data/json/overmap/overmap_special/specials.json +++ b/data/json/overmap/overmap_special/specials.json @@ -699,7 +699,7 @@ "locations": [ "wilderness" ], "city_distance": [ 15, -1 ], "occurrences": [ 0, 1 ], - "flags": [ "MILITARY" ] + "flags": [ "MILITARY", "ELECTRIC_GRID" ] }, { "type": "overmap_special", @@ -708,7 +708,7 @@ "locations": [ "wilderness" ], "city_distance": [ 15, -1 ], "occurrences": [ 0, 1 ], - "flags": [ "MILITARY" ] + "flags": [ "MILITARY", "ELECTRIC_GRID" ] }, { "type": "overmap_special", From 023460838289c063300cc9c8deb9990bfc2e5c2d Mon Sep 17 00:00:00 2001 From: Chaosvolt Date: Sun, 7 Jan 2024 22:02:47 -0600 Subject: [PATCH 4/4] Update outpost.json --- data/json/mapgen/outpost.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/data/json/mapgen/outpost.json b/data/json/mapgen/outpost.json index 086e177618de..2f67e8e07895 100644 --- a/data/json/mapgen/outpost.json +++ b/data/json/mapgen/outpost.json @@ -42,7 +42,7 @@ "+": "t_chaingate_l", "*": "t_door_c", "=": "t_door_locked", - ";": "t_door_metal_pickable", + ";": "t_door_metal_interior_locked", "6": "t_console", "p": "t_plut_generator", "x": "t_door_metal_locked" @@ -216,7 +216,7 @@ "+": "t_chaingate_l", "*": "t_door_c", "=": "t_door_locked", - ";": "t_door_metal_pickable", + ";": "t_door_metal_interior_locked", "6": "t_console", "p": "t_plut_generator", "x": "t_door_metal_locked"