Skip to content

Commit

Permalink
Add new locations to Aftershock (#73988)
Browse files Browse the repository at this point in the history
* Add Shuttle Landing Pad Mapgen to Aftershock Exo Planet

* Update shuttlepad layout and add sealed shipping crates to Aftershock.

* Add Malamute Freight Transport to Aftershock

* Update freight transport. Increase monster spawns and alter layout slightly.

* Format JSON to match style guides

* Restore deleted shuttlepad

* Fix broken broken JSON and remove unimplemented mapgen Aftershock

* Fix typo

* Lint JSON

* Fix description on sealed intermodal crate

* Add General Store to Aftershock Exoplanet

* Lint general store JSON

* Fix description on Open Intermodal crate

* Minor Updates to Mapgen Aftershock

* Add lights to Aftershock Mapgen.

* Fix General Store second floor generating ground instead of air

* Remove water spawn in colonist wardrobe Aftershock
  • Loading branch information
QuillInkwell authored May 23, 2024
1 parent 9640195 commit 2d02175
Show file tree
Hide file tree
Showing 15 changed files with 651 additions and 2 deletions.
5 changes: 5 additions & 0 deletions data/mods/Aftershock/itemgroups/food_groups.json
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,11 @@
[ "afs_caffex", 50 ]
]
},
{
"type": "item_group",
"id": "afs_cheap_drinks",
"items": [ [ "afs_h2o", 90 ], [ "afs_calorie_water", 50 ], [ "afs_sundew", 50 ], [ "afs_caffex", 50 ] ]
},
{
"id": "afs_spices",
"type": "item_group",
Expand Down
7 changes: 7 additions & 0 deletions data/mods/Aftershock/itemgroups/kitchen_groups.json
Original file line number Diff line number Diff line change
Expand Up @@ -29,5 +29,12 @@
{ "group": "afs_stored_veggies", "prob": 10, "count": [ 1, 2 ] },
{ "group": "afs_ruined_food", "prob": 50, "count": [ 1, 7 ] }
]
},
{
"id": "afs_old_beverage_storage",
"type": "item_group",
"subtype": "collection",
"//": "A fridge or equivalent storing drinks from before the discontinuity. Should only contain nonperishable food and spawn in ruins.",
"items": [ { "group": "afs_cheap_drinks", "prob": 10, "count": [ 1, 5 ] } ]
}
]
35 changes: 35 additions & 0 deletions data/mods/Aftershock/itemgroups/money_groups.json
Original file line number Diff line number Diff line change
Expand Up @@ -12,5 +12,40 @@
{ "item": "UICA_50d", "count": 10 },
{ "item": "UICA_1d", "count": 10 }
]
},
{
"id": "afs_banknotes",
"type": "item_group",
"items": [
{ "item": "UICA_1000d", "prob": 1 },
{ "item": "UICA_100d", "prob": 5 },
{ "item": "UICA_10d", "prob": 10 },
{ "item": "UICA_50d", "prob": 7 },
{ "item": "UICA_1d", "prob": 25 }
]
},
{
"id": "afs_cash_safe",
"type": "item_group",
"items": [ { "group": "afs_banknotes", "count": [ 33, 55 ] } ]
},
{
"id": "afs_register_full",
"type": "item_group",
"container-item": "cash_register",
"items": [ { "group": "afs_banknotes", "count": [ 5, 33 ] } ]
},
{
"id": "afs_register_looted",
"type": "item_group",
"//": "If aftershock adds it's own lore correct survivor notes this could be a place to put one",
"container-item": "cash_register",
"items": [ { "group": "afs_banknotes", "prob": 15, "count": [ 1, 2 ] } ]
},
{
"id": "afs_register_random",
"subtype": "distribution",
"type": "item_group",
"items": [ { "group": "afs_register_full", "prob": 45 }, { "group": "afs_register_looted", "prob": 55 } ]
}
]
45 changes: 45 additions & 0 deletions data/mods/Aftershock/itemgroups/sealed_crates.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
[
{
"type": "item_group",
"id": "afs_crate_civ_rand",
"//": "Genral civilian goods weighted for rarity",
"subtype": "distribution",
"entries": [
{ "group": "afs_crate_food", "prob": 4 },
{ "group": "afs_crate_clothing", "prob": 2 },
{ "group": "afs_crate_medical", "prob": 1 },
{ "group": "afs_civilian_armory", "prob": 1, "count": [ 2, 5 ] }
]
},
{
"type": "item_group",
"id": "afs_crate_food",
"subtype": "collection",
"//": "Perserved food shipped in from off world.",
"entries": [
{ "group": "afs_stored_meals", "prob": 50, "count": [ 3, 8 ] },
{ "group": "afs_dry_goods", "prob": 100, "count": [ 3, 5 ] }
]
},
{
"type": "item_group",
"id": "afs_crate_clothing",
"subtype": "collection",
"//": "Multiple sets of clothing goods. Increased likelyhood of a bag due the difficulty of getting into a crate in the first place.",
"entries": [
{ "group": "afs_colonist_outfit", "prob": 100, "count": [ 3, 6 ] },
{ "group": "afs_colonist_bags", "prob": 80, "count": [ 1, 2 ] }
]
},
{
"type": "item_group",
"id": "afs_crate_medical",
"subtype": "collection",
"//": "Civilian Grade Medical supplies with a low chance of rare medical goods.",
"entries": [
{ "group": "drugs_pharmacy", "prob": 100, "count": [ 3, 6 ] },
{ "item": "afs_synth_blood", "prob": 30, "count": [ 1, 3 ] },
{ "item": "afs_medigel", "prob": 60, "count": [ 1, 3 ] }
]
}
]
21 changes: 21 additions & 0 deletions data/mods/Aftershock/maps/city_buildings.json
Original file line number Diff line number Diff line change
Expand Up @@ -122,5 +122,26 @@
{ "point": [ 0, 0, 1 ], "overmap": "afs_shelter_1_roof_north" }
],
"locations": [ "land" ]
},
{
"id": "afs_general_store_1",
"type": "city_building",
"overmaps": [
{ "point": [ 0, 0, 0 ], "overmap": "afs_general_store_n1_north" },
{ "point": [ 0, 0, 1 ], "overmap": "afs_general_store_n2_north" },
{ "point": [ 0, 0, 2 ], "overmap": "afs_general_store_n3_north" }
],
"locations": [ "land" ]
},
{
"id": "afs_shuttle_pad",
"type": "city_building",
"overmaps": [
{ "point": [ 1, 0, 0 ], "overmap": "afs_shuttle_pad_a1_south" },
{ "point": [ 0, 0, 0 ], "overmap": "afs_shuttle_pad_a2_south" },
{ "point": [ 1, 0, 1 ], "overmap": "afs_shuttle_pad_a1_roof_south" },
{ "point": [ 0, 0, 1 ], "overmap": "afs_shuttle_pad_a2_roof_south" }
],
"locations": [ "land" ]
}
]
Original file line number Diff line number Diff line change
Expand Up @@ -186,5 +186,52 @@
{ "item": "circuit", "count": [ 0, 1 ] }
]
}
},
{
"type": "furniture",
"id": "f_intermodal_crate_open",
"name": "intermodal shipping crate",
"description": "A sealed metal crate used to ferry cargo to and from orbit. This one appears to be open.",
"required_str": 12,
"symbol": "O",
"bgcolor": "brown",
"move_cost_mod": -1,
"coverage": 60,
"flags": [ "TRANSPARENT", "MOUNTABLE", "SHORT", "SMALL_HIDE", "PLACE_ITEM", "CONTAINER" ],
"bash": {
"str_min": 40,
"str_max": 200,
"sound": "screeching metal!",
"sound_fail": "whump!",
"items": [
{ "item": "steel_chunk", "count": [ 1, 5 ] },
{ "item": "scrap", "count": [ 1, 5 ] },
{ "item": "afs_circuitry_1", "count": [ 1, 2 ] }
]
}
},
{
"type": "furniture",
"id": "f_sealed_intermodal_crate",
"name": "sealed intermodal crate",
"description": "A sealed metal crate used to ferry cargo to and from orbit. This one appears to be secured with an electric lock.",
"required_str": 12,
"symbol": "O",
"bgcolor": "brown",
"move_cost_mod": -1,
"coverage": 60,
"oxytorch": { "result": "f_intermodal_crate_open", "duration": "14 seconds" },
"flags": [ "TRANSPARENT", "MOUNTABLE", "SHORT", "SMALL_HIDE", "PLACE_ITEM", "CONTAINER", "SEALED" ],
"bash": {
"str_min": 40,
"str_max": 200,
"sound": "screeching metal!",
"sound_fail": "whump!",
"items": [
{ "item": "steel_chunk", "count": [ 1, 5 ] },
{ "item": "scrap", "count": [ 1, 5 ] },
{ "item": "afs_circuitry_1", "count": [ 1, 2 ] }
]
}
}
]
Original file line number Diff line number Diff line change
Expand Up @@ -24,5 +24,30 @@
{ "item": "rebar", "count": [ 0, 4 ] }
]
}
},
{
"type": "terrain",
"id": "t_metal_floor_olight_inactive",
"name": "metal floor, with inactive overhead light",
"description": "High-quality and tough checkered metal flooring to reduce the risk of slips and falls, with a still-functioning inactive light attached to the ceiling above.",
"looks_like": "t_metal_floor_olight",
"symbol": ".",
"color": "light_cyan",
"connect_groups": "METALFLOOR",
"connects_to": "METALFLOOR",
"move_cost": 2,
"roof": "t_metal_roof",
"flags": [ "TRANSPARENT", "INDOORS", "FLAT", "ROAD" ],
"bash": {
"str_min": 4,
"str_max": 12,
"sound": "glass breaking!",
"sound_fail": "whack!",
"sound_vol": 16,
"sound_fail_vol": 10,
"ter_set": "t_metal_floor",
"items": [ { "item": "glass_shard", "count": [ 8, 16 ] } ]
},
"shoot": { "chance_to_hit": 0, "reduce_damage": [ 0, 0 ], "reduce_damage_laser": [ 0, 0 ], "destroy_damage": [ 2, 8 ] }
}
]
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,28 @@
]
}
},
{
"type": "terrain",
"id": "t_afs_broken_treads",
"name": "broken treads",
"description": "A large set of broken and frozen over vehicle treads.",
"flags": [ "NOITEM", "NO_SCENT", "AUTO_WALL_SYMBOL", "MINEABLE", "BLOCK_WIND", "TRANSPARENT", "SHORT" ],
"symbol": "LINE_OXOX",
"color": "white",
"move_cost": 5,
"bash": {
"str_min": 100,
"str_max": 400,
"sound": "metal screeching!",
"sound_fail": "clang!",
"ter_set": "t_null",
"items": [
{ "item": "afs_material_2", "count": [ 1, 2 ] },
{ "item": "afs_material_1", "count": [ 2, 8 ] },
{ "item": "scrap", "count": [ 6, 24 ] }
]
}
},
{
"type": "terrain",
"id": "t_afs_gun_ship_hull_wall",
Expand Down
125 changes: 125 additions & 0 deletions data/mods/Aftershock/maps/mapgen/freight_transport.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,125 @@
[
{
"type": "mapgen",
"method": "json",
"om_terrain": [ [ "afs_freight_transport_a1", "afs_freight_transport_a2" ] ],
"object": {
"fill_ter": "t_metal_floor",
"rows": [
" ",
" ",
" ",
" ",
" ñññññññññññ ",
" -_-_- -__- ññññññ ñññññññ ",
" ---Foj----II--- -_- --!-- -__-__- ",
" ---yh...U-LL..qq---I---...-----G.H.G-- ",
" #.#yh.,ss-E...,.....q-l...l-22-G.,.G---- ",
" ---B.....!..f-_---..q-l...l-..---1---hc_ ",
" --!--ee-,hS_3!.1,..!..,..-....5..!.,c_ ",
" ---$.$----..f-_---7.q-l....!....,..--hc_ ",
" #.#.,.-OP-E...,.....q-l....-6f4....f---- ",
" ---$$.!,i-LL..qq---I---...-----fL.fE-- ",
" ---w-T----II--- -_- --!-- -__-__- ",
" -_-_- -__- ññññññ ñññññññ ",
" ñññññññññññ ",
" ",
" ",
" ",
" ",
" ",
" ",
" "
],
"palettes": [ "afs_habitat_structure", "afs_habitat_mech_furnishing", "afs_habitat_residential_furnishing" ],
"terrain": {
"ñ": "t_afs_broken_treads",
"1": "t_door_metal_locked",
"_": "t_reinforced_glass_shutter_open",
"3": "t_nuclear_reactor"
},
"furniture": {
"I": "f_sealed_intermodal_crate",
"$": "f_sleep_pod",
"e": "f_entertainment_center",
"4": "f_monomolecularsaw",
"6": "f_3dprinter",
"2": "f_drone_recharge_station",
"H": "f_exo_gantry",
"G": "f_rack",
"B": "f_bookcase",
"T": "f_habitat_bathroom",
"S": "f_atmospheric_control",
"i": "f_water_heater",
"w": "f_habitat_storage_board"
},
"liquids": { "i": { "liquid": "water_clean", "amount": [ 0, 100 ] } },
"place_item": [ { "item": "television", "repeat": 1, "x": 10, "y": 10 } ],
"items": {
"3": { "item": "nuclear_reactor" },
"2": { "item": "old_industrial_bot_storage", "chance": 20 },
"H": { "item": "afs_exosuit_worker", "chance": 60 },
"G": { "item": "afs_civilian_armory", "chance": 80, "repeat": [ 1, 3 ] },
"I": { "item": "afs_crate_civ_rand" },
"B": { "item": "homebooks", "repeat": [ 2, 3 ] },
"F": { "item": "afs_old_food_storage", "chance": 60 },
"w": { "item": "afs_colonist_outfit", "chance": 60 }
},
"place_monster": [
{ "group": "AFS_GROUP_ROBOT_LOW_RISK", "x": [ 7, 23 ], "y": [ 7, 13 ], "pack_size": [ 1, 4 ], "chance": 40 },
{ "group": "AFS_GROUP_RUIN_MOXIE", "x": [ 0, 23 ], "y": [ 0, 3 ], "pack_size": [ 1, 4 ], "chance": 50 },
{ "group": "AFS_GROUP_RUIN_MOXIE", "x": [ 0, 23 ], "y": [ 17, 23 ], "pack_size": [ 1, 2 ], "chance": 100 },
{ "group": "AFS_GROUP_RUIN_MOXIE", "x": [ 24, 47 ], "y": [ 17, 23 ], "pack_size": [ 1, 2 ], "chance": 70 }
],
"computers": {
"7": {
"name": "MALAMUTE REACTOR CONTROL",
"security": 5,
"options": [ { "name": "UNLOCK REACTOR DOORS", "action": "unlock" } ],
"failures": [ { "action": "shutdown" }, { "action": "alarm" } ]
},
"5": {
"name": "MALAMUTE ARMORY CONTROL",
"security": 3,
"options": [ { "name": "UNLOCK ARMORY DOORS", "action": "unlock" } ],
"failures": [ { "action": "shutdown" }, { "action": "alarm" } ]
}
}
}
},
{
"type": "mapgen",
"method": "json",
"om_terrain": [ [ "afs_freight_transport_roof_a1", "afs_freight_transport_roof_a2" ] ],
"object": {
"fill_ter": "t_metal_floor",
"rows": [
" ",
" ",
" ",
" ",
" ",
" ..... .... ",
" ............... ... ..... ....... ",
" ..&................................... ",
" .==A.....MM............===A............. ",
" ..&..............................MM..... ",
" .....................XX.........X..... ",
" ..&..............................MM..... ",
" .==A.....MM............===A............. ",
" ..&................................... ",
" ............... ... ..... ....... ",
" ..... .... ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" "
],
"palettes": [ "roof_palette" ]
}
}
]
Loading

0 comments on commit 2d02175

Please sign in to comment.