Skip to content

Commit

Permalink
Aftershock: Cold Suits (#48428)
Browse files Browse the repository at this point in the history
  • Loading branch information
John-Candlebury authored Apr 9, 2021
1 parent 5c60ce2 commit 16fb04b
Show file tree
Hide file tree
Showing 6 changed files with 408 additions and 1 deletion.
37 changes: 37 additions & 0 deletions data/mods/Aftershock/itemgroups/clothing/winter_outfits.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
[
{
"//": "A group for any advanced civilian piece of clothing",
"id": "afs_wintersuit_civilian_advanced",
"type": "item_group",
"subtype": "distribution",
"items": [ { "group": "afs_wintersuit_science_advanced", "prob": 2 }, { "group": "afs_wintersuit_generic_advanced", "prob": 2 } ]
},
{
"//": "A group for any generic-flavour advanced civilian piece of clothing",
"id": "afs_wintersuit_generic_advanced",
"type": "item_group",
"subtype": "distribution",
"items": [ { "group": "afs_frontier_cryo_g", "prob": 2 } ]
},
{
"//": "A group for any science-flavour advanced civilian piece of clothing",
"id": "afs_wintersuit_science_advanced",
"type": "item_group",
"subtype": "distribution",
"items": [ { "group": "afs_magellan_g", "prob": 2 } ]
},
{
"id": "afs_frontier_cryo_g",
"type": "item_group",
"//": "The matching frontier-cryosuit set. Includes suit, mask and possible future accessories",
"subtype": "collection",
"entries": [ { "item": "afs_frontier_cryo" }, { "item": "afs_frontier_cryomask", "prob": 90 } ]
},
{
"id": "afs_magellan_g",
"type": "item_group",
"//": "The matching Magellan Exosuit set. Includes suit, mask and possible future accessories",
"subtype": "collection",
"entries": [ { "item": "afs_magellan_suit" }, { "item": "afs_magellan_suit_helmet", "prob": 90 } ]
}
]
127 changes: 127 additions & 0 deletions data/mods/Aftershock/items/armor/winter_masks.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,127 @@
[
{
"id": "afs_magellan_suit_helmet",
"repairs_like": "afs_magellan_suit",
"type": "TOOL_ARMOR",
"category": "armor",
"looks_like": "helmet_motor",
"name": { "str": "Magellan helmet CA." },
"description": "The high quality helmet of a Magellan exosuit, adapted to handle the freezing but breathable air of Salus IV. In addition to its life support functionality, it features a minor augmented reality UI overlay and a retractable gold-plated visor to protect against glare and UV light. Although not armored as such, it's strong enough to handle minor blunt impacts.",
"weight": "2500 g",
"volume": "2250 ml",
"price": "750 USD",
"to_hit": -1,
"bashing": 7,
"material": [ "plastic", "nomex" ],
"symbol": "[",
"color": "dark_gray",
"ammo": "battery",
"charges_per_use": 1,
"use_action": {
"type": "transform",
"msg": "You activate your %s.",
"target": "afs_magellan_suit_helmet_on",
"active": true,
"need_charges": 1,
"need_charges_msg": "The %s's batteries are dead."
},
"armor_portion_data": [
{ "covers": [ "head" ], "coverage": 100, "encumbrance": 25 },
{ "covers": [ "eyes" ], "coverage": 100, "encumbrance": 5 },
{ "covers": [ "mouth" ], "coverage": 100, "encumbrance": 15 }
],
"pocket_data": [ { "pocket_type": "MAGAZINE", "rigid": true, "ammo_restriction": { "battery": 1000 } } ],
"warmth": 10,
"material_thickness": 6,
"environmental_protection": 1,
"flags": [
"VARSIZE",
"WATERPROOF",
"RAINPROOF",
"STURDY",
"SUN_GLASSES",
"RAD_RESIST",
"OUTER",
"SWIM_GOGGLES",
"RECHARGE",
"NO_RELOAD",
"NO_UNLOAD"
]
},
{
"id": "afs_magellan_suit_helmet_on",
"copy-from": "afs_magellan_suit_helmet",
"repairs_like": "afs_magellan_suit",
"type": "TOOL_ARMOR",
"name": { "str": "Magellan helmet CA. (on)", "str_pl": "Magellan helmets CA. (on)" },
"looks_like": "helmet_motor",
"description": "The temperature control units and augmented reality overlays of this high-tech garment are currently active, and continuously draining battery power. Use it to turn them off.",
"power_draw": 8170,
"warmth": 150,
"revert_to": "afs_magellan_suit_helmet",
"use_action": { "type": "transform", "menu_text": "Turn off", "msg": "Your %s deactivates.", "target": "afs_magellan_suit_helmet" },
"extend": {
"flags": [ "CLIMATE_CONTROL", "GAS_PROOF", "WATCH", "ALARMCLOCK", "THERMOMETER", "HYGROMETER", "PARTIAL_DEAF", "TRADER_AVOID" ]
},
"environmental_protection": 15
},
{
"id": "afs_frontier_cryomask",
"repairs_like": "nomex_hood",
"type": "TOOL_ARMOR",
"category": "armor",
"looks_like": "helmet_motor",
"name": { "str": "frontier cryomask" },
"description": "A common, industrially printed respirator cleverly retrofitted into a wearable air heater. While it adequately protects against the cold, most of its original functions have been discarded and it offers no noticeable protection against noxious fumes or other environmental hazards.",
"weight": "2500 g",
"volume": "2250 ml",
"price": "750 USD",
"to_hit": -1,
"bashing": 7,
"material": [ "plastic", "nomex" ],
"symbol": "[",
"color": "dark_gray",
"charges_per_use": 1,
"ammo": "battery",
"use_action": {
"type": "transform",
"msg": "You activate your %s.",
"target": "afs_frontier_cryomask_on",
"active": true,
"need_charges": 1,
"need_charges_msg": "The %s's batteries are dead."
},
"armor_portion_data": [
{ "covers": [ "eyes" ], "coverage": 100, "encumbrance": 15 },
{ "covers": [ "mouth" ], "coverage": 100, "encumbrance": 20 }
],
"pocket_data": [
{
"pocket_type": "MAGAZINE_WELL",
"holster": true,
"rigid": true,
"max_contains_volume": "20 L",
"max_contains_weight": "20 kg",
"item_restriction": [ "medium_battery_cell", "medium_plus_battery_cell", "medium_atomic_battery_cell", "medium_disposable_cell" ]
}
],
"warmth": 5,
"material_thickness": 2,
"environmental_protection": 2,
"flags": [ "VARSIZE", "WATERPROOF", "RAINPROOF", "STURDY", "SUN_GLASSES", "OUTER" ]
},
{
"id": "afs_frontier_cryomask_on",
"copy-from": "afs_frontier_cryomask",
"repairs_like": "afs_frontier_cryomask",
"type": "TOOL_ARMOR",
"name": { "str": "frontier cryomask (on)", "str_pl": "frontier cryomasks (on)" },
"looks_like": "helmet_motor",
"description": "The heater of this high-tech garment is currently active, and continuously draining battery power. Use it to turn the heat off.",
"power_draw": 6944,
"warmth": 150,
"revert_to": "afs_frontier_cryomask",
"use_action": { "type": "transform", "menu_text": "Turn off", "msg": "Your %s deactivates.", "target": "afs_frontier_cryomask" },
"extend": { "flags": [ "CLIMATE_CONTROL" ] }
}
]
126 changes: 126 additions & 0 deletions data/mods/Aftershock/items/armor/winter_suits.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,126 @@
[
{
"id": "afs_magellan_suit",
"type": "TOOL_ARMOR",
"category": "armor",
"name": { "str": "Magellan exosuit" },
"description": "A high-quality, civilian grade EVA suit often employed by well-established frontier research and exploration associations. Designed to support the exploration of challenging terrain, it offers respectable protection against common environmental hazards like extreme temperatures, inhospitable atmospheres, and light radiation. It leaves arms and hands relatively unencumbered to aid the manipulation of scientific instruments.\n\nAn integral battery allows the suit to operate for up to 34 hours, but complicates field recharging.",
"weight": "7800 g",
"volume": "14 L",
"price": "4 kUSD",
"material": [ "nomex", "steel" ],
"symbol": "[",
"looks_like": "robofac_enviro_suit",
"color": "light_gray",
"ammo": "battery",
"charges_per_use": 1,
"use_action": {
"type": "transform",
"msg": "You activate your %s.",
"target": "afs_magellan_suit_on",
"active": true,
"need_charges": 1,
"need_charges_msg": "The %s's batteries are dead."
},
"armor_portion_data": [
{ "covers": [ "torso" ], "coverage": 100, "encumbrance": 25 },
{ "covers": [ "leg_l", "leg_r" ], "coverage": 100, "encumbrance": 25 },
{ "covers": [ "arm_l", "arm_r" ], "coverage": 100, "encumbrance": 15 },
{ "covers": [ "hand_l", "hand_r" ], "coverage": 100, "encumbrance": 10 },
{ "covers": [ "foot_l", "foot_r" ], "coverage": 100, "encumbrance": 15 }
],
"pocket_data": [ { "pocket_type": "MAGAZINE", "rigid": true, "ammo_restriction": { "battery": 1000 } } ],
"warmth": 20,
"material_thickness": 2,
"valid_mods": [ "steel_padded" ],
"environmental_protection": 15,
"flags": [
"VARSIZE",
"WATERPROOF",
"GAS_PROOF",
"POCKETS",
"RAINPROOF",
"STURDY",
"RAD_RESIST",
"RECHARGE",
"OUTER",
"NO_RELOAD",
"NO_UNLOAD"
]
},
{
"id": "afs_magellan_suit_on",
"copy-from": "afs_magellan_suit",
"repairs_like": "afs_magellan_suit",
"type": "TOOL_ARMOR",
"name": { "str": "Magellan exosuit (on)", "str_pl": "Magellan exosuits (on)" },
"looks_like": "afs_cryopod_bodyglove",
"description": "The temperature control units of this high-tech garment are currently active, and continuously draining battery power. Use it to turn them off.",
"power_draw": 8170,
"warmth": 150,
"revert_to": "afs_magellan_suit",
"use_action": { "type": "transform", "menu_text": "Turn off", "msg": "Your %s deactivates.", "target": "afs_magellan_suit" },
"extend": { "flags": [ "CLIMATE_CONTROL" ] }
},
{
"id": "afs_frontier_cryo",
"type": "TOOL_ARMOR",
"category": "armor",
"name": { "str": "frontier cryo suit" },
"description": "A sturdy suit meant to protect against the freezing cold, made from a pair of jumpsuits that have been woven around a heavy insulation layer and crisscrossed with the thermal tubing of a heat regulation unit. The thick insulation allows the suit to function with unrivaled efficiency, but also makes all types of movement difficult.",
"weight": "7800 g",
"volume": "14 L",
"price": "75 USD",
"material": [ "cotton", "plastic" ],
"symbol": "[",
"looks_like": "robofac_enviro_suit",
"color": "cyan",
"ammo": "battery",
"charges_per_use": 1,
"use_action": {
"type": "transform",
"msg": "You activate your %s.",
"target": "afs_frontier_cryo_on",
"active": true,
"need_charges": 1,
"need_charges_msg": "The %s's batteries are dead."
},
"armor_portion_data": [
{ "covers": [ "head" ], "coverage": 100, "encumbrance": 5 },
{ "covers": [ "torso" ], "coverage": 100, "encumbrance": 35 },
{ "covers": [ "leg_l", "leg_r" ], "coverage": 100, "encumbrance": 25 },
{ "covers": [ "arm_l", "arm_r" ], "coverage": 100, "encumbrance": 25 },
{ "covers": [ "hand_l", "hand_r" ], "coverage": 100, "encumbrance": 25 },
{ "covers": [ "foot_l", "foot_r" ], "coverage": 100, "encumbrance": 15 }
],
"pocket_data": [
{
"pocket_type": "MAGAZINE_WELL",
"holster": true,
"rigid": true,
"max_contains_volume": "20 L",
"max_contains_weight": "20 kg",
"item_restriction": [ "medium_battery_cell", "medium_plus_battery_cell", "medium_atomic_battery_cell", "medium_disposable_cell" ]
}
],
"warmth": 20,
"material_thickness": 4,
"valid_mods": [ "steel_padded" ],
"environmental_protection": 2,
"flags": [ "VARSIZE", "WATERPROOF", "POCKETS", "HELMET_COMPAT", "RAINPROOF", "STURDY", "OUTER" ]
},
{
"id": "afs_frontier_cryo_on",
"copy-from": "afs_frontier_cryo",
"repairs_like": "afs_frontier_cryo",
"type": "TOOL_ARMOR",
"name": { "str": "frontier cryo suit (on)", "str_pl": "frontier cryo suits (on)" },
"looks_like": "afs_cryopod_bodyglove",
"description": "The temperature control units of this high-tech garment are currently active, and continuously draining battery power. Use it to turn them off.",
"power_draw": 6944,
"warmth": 150,
"revert_to": "afs_frontier_cryo",
"use_action": { "type": "transform", "menu_text": "Turn off", "msg": "Your %s deactivates.", "target": "afs_frontier_cryo" },
"extend": { "flags": [ "CLIMATE_CONTROL" ] }
}
]
6 changes: 5 additions & 1 deletion data/mods/Aftershock/maps/mapgen/astrobiology_lab.json
Original file line number Diff line number Diff line change
Expand Up @@ -63,7 +63,11 @@
{ "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 } ],
"R": [
{ "item": "decontamination_room", "chance": 60 },
{ "item": "clothing_work_set", "chance": 30 },
{ "item": "afs_wintersuit_science_advanced", "chance": 30 }
],
"t": [ { "item": "office_paper", "chance": 60 }, { "item": "tools_science", "chance": 10, "repeat": [ 1, 2 ] } ]
},
"item": { "c": { "item": "recipe_lichenlog", "chance": 6 } },
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,12 @@
{ "group": "afs_basic_material_scrapgroup", "prob": 20 }
]
},
{
"id": "afs_formless_ruins_random_suit",
"type": "item_group",
"subtype": "distribution",
"entries": [ { "group": "afs_wintersuit_civilian_advanced", "prob": 50 } ]
},
{
"type": "mapgen",
"method": "json",
Expand Down Expand Up @@ -724,6 +730,7 @@
"///.. // "
],
"terrain": { "C": "t_metal_floor", "s": "t_metal_floor" },
"items": { "P": [ { "item": "afs_formless_ruins_random_suit", "chance": 80, "repeat": [ 1, 2 ] } ] },
"furniture": { "P": "f_sleep_pod", "s": "f_sink" },
"place_monsters": [ { "monster": "AFS_GROUP_MOXIE_LOW_RISK", "x": [ 0, 11 ], "y": [ 0, 11 ], "density": 0.1 } ],
"palettes": [ "afs_formless_ruins" ]
Expand Down
Loading

0 comments on commit 16fb04b

Please sign in to comment.