diff --git a/data/mods/Aftershock/itemgroups/item_groups.json b/data/mods/Aftershock/itemgroups/item_groups.json index da53458b17c64..7b70c7b953d20 100644 --- a/data/mods/Aftershock/itemgroups/item_groups.json +++ b/data/mods/Aftershock/itemgroups/item_groups.json @@ -419,29 +419,6 @@ "id": "beehive", "entries": [ { "item": "honeycomb", "count": [ 2, 4 ] } ] }, - { - "type": "item_group", - "id": "afs_scrapgroup", - "items": [ - [ "afs_biomaterial_1", 40 ], - [ "afs_biomaterial_2", 20 ], - [ "afs_biomaterial_3", 10 ], - [ "afs_biomaterial_4", 3 ], - [ "afs_circuitry_1", 25 ], - [ "afs_circuitry_2", 14 ], - [ "afs_circuitry_3", 6 ], - [ "afs_energy_storage_1", 30 ], - [ "afs_energy_storage_2", 19 ], - [ "afs_energy_storage_3", 2 ], - [ "afs_magnet_1", 18 ], - [ "afs_material_1", 100 ], - [ "afs_material_2", 40 ], - [ "afs_material_3", 20 ], - [ "afs_neural_io_1", 65 ], - [ "afs_neural_io_2", 10 ], - [ "plut_cell", 20 ] - ] - }, { "type": "item_group", "id": "exoticplants", diff --git a/data/mods/Aftershock/itemgroups/science_groups.json b/data/mods/Aftershock/itemgroups/science_groups.json new file mode 100644 index 0000000000000..4938608c73667 --- /dev/null +++ b/data/mods/Aftershock/itemgroups/science_groups.json @@ -0,0 +1,7 @@ +[ + { + "id": "supplies_xenoreagents_lab", + "type": "item_group", + "items": [ [ "yum_lichen", 10 ] ] + } +] diff --git a/data/mods/Aftershock/itemgroups/scrap_groups.json b/data/mods/Aftershock/itemgroups/scrap_groups.json index 293f81b734a66..e45c2e2b4fbe0 100644 --- a/data/mods/Aftershock/itemgroups/scrap_groups.json +++ b/data/mods/Aftershock/itemgroups/scrap_groups.json @@ -4,6 +4,11 @@ "type": "item_group", "items": [ [ "bionic_maintenance_toolkit", 20 ], [ "afs_biomaterial_4", 10 ], [ "afs_neural_io_3", 5 ] ] }, + { + "type": "item_group", + "id": "afs_basic_biomedical_scrapgroup", + "items": [ [ "afs_biomaterial_1", 40 ], [ "afs_biomaterial_2", 20 ], [ "afs_neural_io_1", 40 ], [ "afs_neural_io_2", 20 ] ] + }, { "type": "item_group", "id": "afs_scrapgroup", diff --git a/data/mods/Aftershock/maps/city_buildings.json b/data/mods/Aftershock/maps/city_buildings.json index 07a96ac79579c..0999937474376 100644 --- a/data/mods/Aftershock/maps/city_buildings.json +++ b/data/mods/Aftershock/maps/city_buildings.json @@ -12,5 +12,14 @@ { "point": [ 1, 0, 2 ], "overmap": "afs_urban_aquaponicsw_n3_north" } ], "locations": [ "land" ] + }, + { + "type": "city_building", + "id": "afs_astrobiology_lab", + "overmaps": [ + { "point": [ 0, 0, 0 ], "overmap": "afs_astrobiology_lab_n1_north" }, + { "point": [ 0, 0, 1 ], "overmap": "afs_astrobiology_lab_n2_north" } + ], + "locations": [ "land" ] } ] diff --git a/data/mods/Aftershock/maps/furniture_and_terrain/terrain_habitat_wall.json b/data/mods/Aftershock/maps/furniture_and_terrain/terrain_habitat_wall.json new file mode 100644 index 0000000000000..d3ddc1defe0ee --- /dev/null +++ b/data/mods/Aftershock/maps/furniture_and_terrain/terrain_habitat_wall.json @@ -0,0 +1,155 @@ +[ + { + "type": "terrain", + "id": "t_wall_prefab_metal", + "name": "habitat wall", + "description": "An industrially fabricated assembly of lightweight metallic framing and insulated cover sheets, used to quickly assemble standardized colonial infrastructure. Capable of resisting the merciless cold and not much else.", + "roof": "t_metal_flat_roof", + "symbol": "LINE_XOXO", + "looks_like": "t_wall_metal", + "color": "light_gray", + "connects_to": "WALL", + "move_cost": 0, + "coverage": 100, + "flags": [ "NOITEM", "SUPPORTS_ROOF", "WALL", "NO_SCENT", "AUTO_WALL_SYMBOL", "BLOCK_WIND" ], + "bash": { + "str_min": 20, + "str_max": 39, + "sound": "metal screeching!", + "sound_fail": "clang!", + "ter_set": "t_broken_prefab", + "items": [ + { "item": "steel_lump", "count": [ 1, 4 ] }, + { "item": "steel_chunk", "count": [ 3, 12 ] }, + { "item": "afs_material_1", "count": [ 0, 2 ] }, + { "item": "scrap", "count": [ 6, 24 ] } + ] + } + }, + { + "type": "terrain", + "id": "t_wall_prefab_glass", + "name": "habitat window", + "description": "A prefabricated porthole style window, equipped with metallic shutters for both protection and privacy purposes. It cannot be opened, but with its shutters are retracted, it could be smashed with no particular difficulty.", + "roof": "t_metal_flat_roof", + "symbol": "LINE_XOXO", + "color": "light_cyan", + "close": "t_wall_prefab_glass_shutters", + "move_cost": 0, + "coverage": 100, + "flags": [ "TRANSPARENT", "NOITEM", "WALL", "NO_SCENT", "AUTO_WALL_SYMBOL", "OPENCLOSE_INSIDE", "BLOCK_WIND" ], + "bash": { + "str_min": 4, + "str_max": 2, + "sound": "glass breaking!", + "sound_fail": "clang!", + "ter_set": "t_wall_prefab_bglass", + "items": [ { "item": "glass_shard", "count": [ 22, 33 ] }, { "item": "scrap", "count": [ 0, 4 ] } ] + } + }, + { + "type": "terrain", + "id": "t_wall_prefab_glass_shutters", + "name": "habitat window (shutters)", + "description": "A porthole style window of standard design, completely covered by sturdy metallic shutters.", + "roof": "t_metal_flat_roof", + "looks_like": "t_reinforced_glass_shutter", + "symbol": "=", + "color": "light_gray", + "open": "t_wall_prefab_glass", + "move_cost": 0, + "coverage": 100, + "flags": [ "NOITEM", "WALL", "NO_SCENT", "AUTO_WALL_SYMBOL", "OPENCLOSE_INSIDE", "BLOCK_WIND" ], + "bash": { + "str_min": 20, + "str_max": 30, + "sound": "metal screeching!", + "sound_fail": "clang!", + "ter_set": "t_broken_prefab", + "items": [ + { "item": "steel_lump", "count": [ 1, 4 ] }, + { "item": "steel_chunk", "count": [ 3, 12 ] }, + { "item": "afs_material_1", "count": [ 0, 2 ] }, + { "item": "scrap", "count": [ 6, 24 ] } + ] + } + }, + { + "type": "terrain", + "id": "t_wall_prefab_bglass_shutters", + "name": "broken habitat window (shutters)", + "looks_like": "t_reinforced_glass_shutter", + "symbol": "=", + "color": "yellow", + "move_cost": 0, + "coverage": 100, + "description": "The shutters of this porthole are deployed, but the lack of a window between them allows the frozen air to leak into the room.", + "open": "t_wall_prefab_glass", + "flags": [ "NOITEM", "WALL", "PERMEABLE", "OPENCLOSE_INSIDE" ], + "roof": "t_metal_flat_roof", + "bash": { + "str_min": 20, + "str_max": 30, + "sound": "metal screeching!", + "sound_fail": "clang!", + "ter_set": "t_broken_prefab", + "items": [ + { "item": "steel_lump", "count": [ 1, 4 ] }, + { "item": "steel_chunk", "count": [ 3, 12 ] }, + { "item": "afs_material_1", "count": [ 0, 2 ] }, + { "item": "scrap", "count": [ 6, 24 ] } + ] + } + }, + { + "type": "terrain", + "id": "t_wall_prefab_bglass", + "name": "broken habitat window", + "looks_like": "t_window_empty", + "symbol": "0", + "move_cost": 8, + "coverage": 60, + "color": "yellow", + "description": "The glass panel that would have covered this porthole has been broken, allowing unfettered access to the rooms within.", + "flags": [ "TRANSPARENT", "FLAMMABLE", "NOITEM", "MOUNTABLE", "CONNECT_TO_WALL", "SMALL_PASSAGE", "WINDOW" ], + "roof": "t_metal_flat_roof", + "bash": { + "str_min": 20, + "str_max": 30, + "sound": "metal screeching!", + "sound_fail": "clang!", + "ter_set": "t_broken_prefab", + "items": [ + { "item": "steel_lump", "count": [ 1, 4 ] }, + { "item": "steel_chunk", "count": [ 3, 12 ] }, + { "item": "afs_material_1", "count": [ 0, 2 ] }, + { "item": "scrap", "count": [ 6, 24 ] } + ] + } + }, + { + "type": "terrain", + "id": "t_broken_prefab", + "name": "broken habitat segment", + "symbol": "#", + "move_cost": 8, + "color": "light_blue", + "looks_like": "dark_", + "description": "Exposed structural ribs and battered plate metal are all what remains of this habitat segment.", + "flags": [ "TRANSPARENT", "MOUNTABLE", "THIN_OBSTACLE", "SMALL_PASSAGE", "WINDOW" ], + "roof": "t_metal_flat_roof", + "bash": { + "str_min": 20, + "str_max": 30, + "sound": "metal screeching!", + "sound_fail": "clang!", + "ter_set": "t_ice", + "items": [ + { "item": "steel_lump", "count": [ 2, 2 ] }, + { "item": "steel_chunk", "count": [ 3, 6 ] }, + { "item": "afs_material_1", "count": [ 0, 1 ] }, + { "item": "scrap", "count": [ 6, 24 ] } + ] + } + } +] diff --git a/data/mods/Aftershock/maps/mapgen/astrobiology_lab.json b/data/mods/Aftershock/maps/mapgen/astrobiology_lab.json new file mode 100644 index 0000000000000..81567369c36d6 --- /dev/null +++ b/data/mods/Aftershock/maps/mapgen/astrobiology_lab.json @@ -0,0 +1,109 @@ +[ + { + "type": "mapgen", + "method": "json", + "om_terrain": [ "afs_astrobiology_lab_n1" ], + "weight": 200, + "object": { + "fill_ter": "t_metal_floor", + "rows": [ + " ,, ", + " /44/ ", + " / / /../ ", + " //QQQQ//QQQ/33// ", + " //..hh../t???...// ", + " /..htt..3......../ ", + " //..htth./...dd5d.// ", + " /5...hh../...d.h..^/ ", + " ///////////33////3// ", + " /h..B/R...3.../&..S/ ", + " /dd.B/R.bb/:==////// ", + " /hh..//////...=d..E/ ", + " /===:/FFFS/==:=dh.E/ ", + " /................ö./ ", + " /.hccc..chccch..ch./ ", + " /.Tchc..ccchcc..cc./ ", + " ó..................ó ", + " /S..((((((((((((..O/ ", + " /S..(Iii____IIi(.hc/ ", + " //=:(I77_iA___i(:=// ", + " /..(____iii___(../ ", + " //.3__7I___II_3.// ", + " //------------// ", + " " + ], + "palettes": [ "afs_generic_building" ], + "terrain": { + "A": "t_basaltfloor", + "R": "t_metal_floor", + ",": "t_sidewalk", + "_": [ "t_deaddirt", "t_deaddirt", "t_ice" ], + "i": [ "t_lichenyum", "t_lichen", "t_lichendirt" ], + "I": [ "t_lichen", "t_lichendirt" ], + "7": [ "t_tree_worm", "t_tree_lichen" ] + }, + "furniture": { + "A": "f_geo_vent", + "I": "f_shrub_moss", + "T": "f_crispr", + "F": "f_glass_fridge", + "E": "f_machinery_electronic", + "R": "f_locker", + "O": "f_monomolecularsaw" + }, + "items": { + "c": [ + { "item": "tools_science", "chance": 80, "repeat": [ 1, 3 ] }, + { "item": "afs_basic_biomedical_scrapgroup", "chance": 20, "repeat": [ 1, 2 ] }, + { "item": "supplies_reagents_lab", "chance": 80, "repeat": [ 1, 3 ] } + ], + "d": { "item": "office", "chance": 60 }, + "B": [ { "item": "textbooks", "chance": 50 }, { "item": "manuals", "chance": 50 } ], + "F": [ + { "item": "supplies_reagents_lab", "chance": 70, "repeat": [ 2, 5 ] }, + { "item": "supplies_xenoreagents_lab", "chance": 70, "repeat": [ 2, 5 ] } + ], + "R": [ { "item": "decontamination_room", "chance": 60 }, { "item": "clothing_work_set", "chance": 30 } ], + "t": [ { "item": "office_paper", "chance": 60 }, { "item": "tools_science", "chance": 10, "repeat": [ 1, 2 ] } ] + }, + "item": { "c": { "item": "recipe_lichenlog", "chance": 6 } }, + "monster": { "ö": { "monster": "mon_skitterbot" } } + } + }, + { + "type": "mapgen", + "method": "json", + "om_terrain": "afs_astrobiology_lab_n2", + "object": { + "fill_ter": "t_metal_flat_roof", + "rows": [ + " ", + " .... ", + " . . .... ", + " ................ ", + " ..........&....... ", + " ..X............X.. ", + " .................... ", + " .................... ", + " .................... ", + " .................... ", + " .................... ", + " .................... ", + " .................... ", + " .................... ", + " .................... ", + " .................... ", + " .................... ", + " .................... ", + " .................... ", + " ..........&=====.... ", + " ..............=... ", + " ..............&... ", + " ................ ", + " " + ], + "terrain": { " ": "t_open_air" }, + "furniture": { "&": "f_roof_turbine_vent", "=": "f_vent_pipe", "X": "f_small_satelitte_dish" } + } + } +] diff --git a/data/mods/Aftershock/maps/mapgen_pallete/afs_generic_building.json b/data/mods/Aftershock/maps/mapgen_pallete/afs_generic_building.json index 3a980e09ae69e..49025f91765ae 100644 --- a/data/mods/Aftershock/maps/mapgen_pallete/afs_generic_building.json +++ b/data/mods/Aftershock/maps/mapgen_pallete/afs_generic_building.json @@ -7,11 +7,14 @@ "!": "t_door_locked_interior", "-": "t_wall_metal", "|": "t_concrete_wall", + "/": "t_wall_prefab_metal", + "Q": "t_wall_prefab_glass_shutters", "+": "t_door_c", "9": "t_window_domestic", ":": "t_door_glass_c", ";": "t_door_locked", "=": "t_wall_glass", + "o": "t_wall_prefab_glass", "(": "t_reinforced_glass", "X": "t_door_metal_locked", "3": "t_door_metal_c", @@ -32,6 +35,7 @@ "%": "f_console_broken", "5": "f_console", "B": "f_bed", + "?": "f_sofa", "S": "f_sink", "b": "f_bench", "c": "f_counter", diff --git a/data/mods/Aftershock/maps/overmap_terrain.json b/data/mods/Aftershock/maps/overmap_terrain.json index 00f23d3d47bad..b2b7ca1501f4b 100644 --- a/data/mods/Aftershock/maps/overmap_terrain.json +++ b/data/mods/Aftershock/maps/overmap_terrain.json @@ -108,6 +108,17 @@ "flags": [ "SIDEWALK", "SOURCE_FOOD" ], "see_cost": 3 }, + { + "type": "overmap_terrain", + "id": [ "afs_astrobiology_lab_n1", "afs_astrobiology_lab_n2" ], + "name": "astrobiology lab", + "spawns": { "group": "GROUP_ZOMBIE", "population": [ 2, 5 ], "chance": 80 }, + "sym": "L", + "color": "light_green", + "flags": [ "SIDEWALK", "SOURCE_FOOD" ], + "see_cost": 3, + "mondensity": 3 + }, { "type": "overmap_terrain", "id": "mortuary_2story", diff --git a/data/mods/Aftershock/maps/regional_map_settings.json b/data/mods/Aftershock/maps/regional_map_settings.json deleted file mode 100644 index 0e1745904fbc3..0000000000000 --- a/data/mods/Aftershock/maps/regional_map_settings.json +++ /dev/null @@ -1,6 +0,0 @@ -[ - { - "type": "region_overlay", - "regions": [ "all" ] - } -] diff --git a/data/mods/Aftershock/maps/terrain_floraxeno.json b/data/mods/Aftershock/maps/terrain_floraxeno.json index bee929de4c807..36bc87733647d 100644 --- a/data/mods/Aftershock/maps/terrain_floraxeno.json +++ b/data/mods/Aftershock/maps/terrain_floraxeno.json @@ -4,7 +4,7 @@ "id": "t_tree_worm", "name": "leviathan annelids", "description": "Several massive protusions emerge from the ground, coiled together into a tower. At the top, blue and purple tentacles sway in the wind.", - "symbol": "7", + "symbol": "I", "color": "magenta", "move_cost": 0, "coverage": 80, @@ -76,8 +76,8 @@ "id": "t_lichenyum", "name": "lichen shrub", "description": "A small mound of lichen grows here, noticeably bigger than the lichen and moss around it.", - "symbol": ",", - "color": "light_red", + "symbol": "i", + "color": "red", "move_cost": 3, "coverage": 20, "flags": [ "TRANSPARENT", "FLAMMABLE_ASH", "DIGGABLE", "FLAT", "THIN_OBSTACLE" ], @@ -100,7 +100,7 @@ "id": "t_lichen_harvested", "name": "lichen shrub", "description": "A small mound of lichen grows here, noticeably bigger than the lichen and moss around it. A few clumps have been removed.", - "symbol": ",", + "symbol": "i", "color": "light_red", "move_cost": 3, "coverage": 20, diff --git a/data/mods/Aftershock/maps/terrain_groundxeno.json b/data/mods/Aftershock/maps/terrain_groundxeno.json index 80b1dc33fb2f3..12d6bf72fab9d 100644 --- a/data/mods/Aftershock/maps/terrain_groundxeno.json +++ b/data/mods/Aftershock/maps/terrain_groundxeno.json @@ -4,10 +4,10 @@ "id": "t_lichen", "name": "lichen", "description": "Many colorful species of ice-lichen, thriving above an uncharacteristically fertile segment of ice. Either endemic, or surviving genecraft from an aborted terraforming project.", - "symbol": ",", + "symbol": ".", "looks_like": "t_underbrush_harvested_spring_season_autumn", "color": "light_red", - "move_cost": 4, + "move_cost": 2, "coverage": 40, "flags": [ "DIGGABLE", "FLAT", "FLAMMABLE_ASH", "TRANSPARENT" ], "bash": { "str_min": 4, "str_max": 30, "sound": "splosh.", "sound_fail": "brush.", "ter_set": "t_ice" } @@ -15,12 +15,12 @@ { "type": "terrain", "id": "t_lichendirt", - "name": "grass", + "name": "lichen bed", "description": "Familiar, yet unfamiliar. Lichens and moss cling to rocks and lifeless dirt here, providing a squishy but colorful grass.", "symbol": ",", "looks_like": "t_underbrush_harvested_spring_season_autumn", "color": "light_red", - "move_cost": 4, + "move_cost": 3, "coverage": 40, "flags": [ "DIGGABLE", "FLAT", "FLAMMABLE_ASH", "TRANSPARENT" ], "bash": { "str_min": 4, "str_max": 30, "sound": "splosh.", "sound_fail": "brush.", "ter_set": "t_deaddirt" } @@ -33,7 +33,7 @@ "description": "A small segment from the near planet-wide glacier of Salus IV. Gets called 'ground' around these parts.", "symbol": ".", "color": "light_blue", - "move_cost": 4, + "move_cost": 2, "flags": [ "TRANSPARENT", "DIGGABLE", "FLAT", "ROUGH" ], "bash": { "str_min": 50, @@ -52,9 +52,18 @@ "looks_like": "t_dirt_season_winter", "description": "A relatively flat area of black dirt with no observable growth on it, caked with shards of rock. The only real ground besides the glacial ice.", "symbol": ".", - "color": "light_blue", - "move_cost": 4, - "flags": [ "TRANSPARENT", "DIGGABLE", "FLAT" ] + "color": "dark_gray", + "move_cost": 2, + "flags": [ "TRANSPARENT", "DIGGABLE", "FLAT", "ROUGH" ], + "bash": { + "str_min": 50, + "str_max": 100, + "sound": "splosh!", + "sound_fail": "fweet!", + "ter_set": "t_null", + "str_min_supported": 100, + "bash_below": true + } }, { "type": "terrain", @@ -63,9 +72,18 @@ "looks_like": "t_dirt_season_winter", "description": "A relatively flat area of gray stone, warm to the touch.", "symbol": ".", - "color": "light_blue", - "move_cost": 4, - "flags": [ "TRANSPARENT", "DIGGABLE", "FLAT" ] + "color": "dark_gray", + "move_cost": 2, + "flags": [ "TRANSPARENT", "DIGGABLE", "FLAT", "ROUGH" ], + "bash": { + "str_min": 50, + "str_max": 100, + "sound": "splosh!", + "sound_fail": "fweet!", + "ter_set": "t_null", + "str_min_supported": 100, + "bash_below": true + } }, { "type": "furniture", @@ -78,10 +96,7 @@ "coverage": 65, "required_str": -1, "flags": [ "NOITEM", "MINEABLE", "BASHABLE", "BLOCK_WIND", "EMITTER" ], - "emissions": [ "emit_smoke_plume" ], - "//": [ - "right now this doesn't give off heat, but it would be great to add to this and make it do so, especially once managing cold starts to get added in" - ], + "emissions": [ "emit_smoke_plume", "emit_hot_air_migo_seep" ], "bash": { "str_min": 65, "str_max": 160, diff --git a/data/mods/Aftershock/region_settings.json b/data/mods/Aftershock/region_settings.json index 0d04eed62c99a..d1a9c1a8a62f1 100644 --- a/data/mods/Aftershock/region_settings.json +++ b/data/mods/Aftershock/region_settings.json @@ -12,6 +12,7 @@ "urban_35_hospital": 875, "office_tower_large": 800, "office_tower_hiddenlab": 800, + "afs_astrobiology_lab": 300, "mall": 700 } },