Skip to content

Commit 119e2fe

Browse files
Drew4484John-CandleburyMom-Bundseguin
authored
Aftershock Exoskeletons (#53254)
* Modular Exos Adds a basic power armor frame with pockets for torso, back, arms, and legs. These pockets are for specific PA plating which uses the "CANT_WEAR" flag. Added draft steel plate for each location to verify functionality. * Armor types and power supplies Three different backpack power supplies exist (rechargeable, battery compartment, and gasoline), two types of destructible ablative armor are finished (steel and plastic). Initial sanity pass done on frame and armor balance. Next steps will be adding enhancement modules to increase carry weight, then more armor types like military composite, then pockets for tools/ammo/etc. * Additional plating Adds military composite plating. Milcom plating is destroyed like ballistic plates. * Modules Adds two module types in two sizes. APUs as additional battery storage and load bearing modules to reduce the carry weight. * Weight Bearing Modules Weight modules work now. Sacrificing a primary PSU and relying only on APUs, a large and four small weight modules can be worn, allowing the character to move wearing the heavy military composite plating. Plating values need balance. * Update modular_exoskeleton_plating.json * Polish Removed replaceable battery PSU, reloading anything larger than a car battery or small storage battery is impractical in the field without the suit's own strength. Added additional storage to legs and arms representing a 2L point on each limb. Plastic armor can be worn by a strength 8 character with no weight bearing modules. Steel requires some weight modules, forcing players to choose between protection and cargo. Milcomp requires a significant investment in weight support modules, when using the heavy ICE power supply and maximizing all possible weight support modules a strength 8 character will still be overburdened. * Boots, gloves, helmets, and more modules! Boots, gloves, helmets added, using same modular plating. Added some modules primarily intended for the helmet (sensory enhancements, gas filter) and a torso-specific recoil control module. Also a lamp. * Recipes and books Adds a set of initial recipes for repairing plating. Will include various plate types and simple modules like the light. Adds a book with above recipes. Adds an arm-mounted header drill, works as a slow powerful mace, adds cut damage when active, works as a digging tool. Adds a vehicle part "exoskeleton maintenance gantry". Changed the frame to thinner material and from steel to titanium. This modifies the defensive values and means that the suit can no longer be repaired with a standard welder. Added exoskeleton tool kit, capable of repairing titanium. Included tool in vehicle repair gantry part. Added alternative gauntlet plate replicating the hydraulic gauntlet. Co-authored-by: John Candlebury <[email protected]> Co-authored-by: Mom-Bun <[email protected]> Co-authored-by: David Seguin <[email protected]>
1 parent 1d4f464 commit 119e2fe

File tree

14 files changed

+1313
-3
lines changed

14 files changed

+1313
-3
lines changed

data/json/flags.json

Lines changed: 143 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1847,16 +1847,156 @@
18471847
"id": "CHOKE",
18481848
"type": "json_flag"
18491849
},
1850+
{
1851+
"id": "GAS_TANK",
1852+
"type": "json_flag",
1853+
"info": "Airtight tanks for propane, natural gas, etc.",
1854+
"name": "gas tank"
1855+
},
18501856
{
18511857
"id": "LASER_SIGHT",
18521858
"type": "json_flag",
18531859
"info": "Invalid when the target position is <bad>too far</bad> or <bad>too bright</bad>.",
18541860
"name": "laser sight"
18551861
},
18561862
{
1857-
"id": "GAS_TANK",
1863+
"id": "EXO_SMALL",
18581864
"type": "json_flag",
1859-
"info": "Airtight tanks for propane, natural gas, etc.",
1860-
"name": "gas tank"
1865+
"info": "This is meant for a small exosuit hardpoint."
1866+
},
1867+
{
1868+
"id": "EXO_LARGE",
1869+
"type": "json_flag",
1870+
"info": "This is meant for a large exosuit hardpoint."
1871+
},
1872+
{
1873+
"id": "EXO_PSU",
1874+
"type": "json_flag",
1875+
"info": "This is meant for an exosuit PSU hardpoint."
1876+
},
1877+
{
1878+
"id": "EXO_SMALL_GADGET",
1879+
"type": "json_flag",
1880+
"info": "This is meant for small exosuit gadgets, 1 L or less."
1881+
},
1882+
{
1883+
"id": "EXO_HELMET_GADGET",
1884+
"type": "json_flag",
1885+
"info": "This is meant for helmet-specific gadgets."
1886+
},
1887+
{
1888+
"id": "EXO_MEDIUM_GADGET",
1889+
"type": "json_flag",
1890+
"info": "This is meant for medium exosuit gadgets, between 1 L and 5 L."
1891+
},
1892+
{
1893+
"id": "EXO_LARGE_GADGET",
1894+
"type": "json_flag",
1895+
"info": "This is meant for large exosuit gadgets, larger than 5 L."
1896+
},
1897+
{
1898+
"id": "EXO_HELMET_PLATE",
1899+
"type": "json_flag",
1900+
"info": "This is meant for exosuit helmet plating."
1901+
},
1902+
{
1903+
"id": "EXO_TORSO_PLATE",
1904+
"type": "json_flag",
1905+
"info": "This is meant for exosuit torso plating."
1906+
},
1907+
{
1908+
"id": "EXO_PSU_PLATE",
1909+
"type": "json_flag",
1910+
"info": "This is meant for exosuit PSU plating."
1911+
},
1912+
{
1913+
"id": "EXO_ARM_PLATE",
1914+
"type": "json_flag",
1915+
"info": "This is meant for exosuit arm plating."
1916+
},
1917+
{
1918+
"id": "EXO_GLOVE_PLATE",
1919+
"type": "json_flag",
1920+
"info": "This is meant for exosuit arm plating."
1921+
},
1922+
{
1923+
"id": "EXO_LEG_PLATE",
1924+
"type": "json_flag",
1925+
"info": "This is meant for exosuit leg plating."
1926+
},
1927+
{
1928+
"id": "EXO_BOOT_PLATE",
1929+
"type": "json_flag",
1930+
"info": "This is meant for exosuit foot plating."
1931+
},
1932+
{
1933+
"id": "EXO_SMALL",
1934+
"type": "json_flag",
1935+
"info": "This is meant for a small exosuit hardpoint."
1936+
},
1937+
{
1938+
"id": "EXO_LARGE",
1939+
"type": "json_flag",
1940+
"info": "This is meant for a large exosuit hardpoint."
1941+
},
1942+
{
1943+
"id": "EXO_PSU",
1944+
"type": "json_flag",
1945+
"info": "This is meant for an exosuit PSU hardpoint."
1946+
},
1947+
{
1948+
"id": "EXO_SMALL_GADGET",
1949+
"type": "json_flag",
1950+
"info": "This is meant for small exosuit gadgets, 1 L or less."
1951+
},
1952+
{
1953+
"id": "EXO_HELMET_GADGET",
1954+
"type": "json_flag",
1955+
"info": "This is meant for helmet-specific gadgets."
1956+
},
1957+
{
1958+
"id": "EXO_MEDIUM_GADGET",
1959+
"type": "json_flag",
1960+
"info": "This is meant for medium exosuit gadgets, between 1 L and 5 L."
1961+
},
1962+
{
1963+
"id": "EXO_LARGE_GADGET",
1964+
"type": "json_flag",
1965+
"info": "This is meant for large exosuit gadgets, larger than 5 L."
1966+
},
1967+
{
1968+
"id": "EXO_HELMET_PLATE",
1969+
"type": "json_flag",
1970+
"info": "This is meant for exosuit helmet plating."
1971+
},
1972+
{
1973+
"id": "EXO_TORSO_PLATE",
1974+
"type": "json_flag",
1975+
"info": "This is meant for exosuit torso plating."
1976+
},
1977+
{
1978+
"id": "EXO_PSU_PLATE",
1979+
"type": "json_flag",
1980+
"info": "This is meant for exosuit PSU plating."
1981+
},
1982+
{
1983+
"id": "EXO_ARM_PLATE",
1984+
"type": "json_flag",
1985+
"info": "This is meant for exosuit arm plating."
1986+
},
1987+
{
1988+
"id": "EXO_GLOVE_PLATE",
1989+
"type": "json_flag",
1990+
"info": "This is meant for exosuit arm plating."
1991+
},
1992+
{
1993+
"id": "EXO_LEG_PLATE",
1994+
"type": "json_flag",
1995+
"info": "This is meant for exosuit leg plating."
1996+
},
1997+
{
1998+
"id": "EXO_BOOT_PLATE",
1999+
"type": "json_flag",
2000+
"info": "This is meant for exosuit foot plating."
18612001
}
18622002
]

data/json/item_category.json

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -176,6 +176,13 @@
176176
"zone": "LOOT_ARMOR",
177177
"sort_rank": 20
178178
},
179+
{
180+
"id": "exosuit",
181+
"type": "ITEM_CATEGORY",
182+
"name": { "str": "EXOSUIT" },
183+
"zone": "LOOT_EXOSUIT",
184+
"sort_rank": 20
185+
},
179186
{
180187
"id": "ITEMS_WORN",
181188
"type": "ITEM_CATEGORY",
Lines changed: 43 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,43 @@
1+
[
2+
{
3+
"id": "exo_mounted_drill",
4+
"type": "TOOL_ARMOR",
5+
"name": { "str": "exosuit mounted drill" },
6+
"category": "tool",
7+
"description": "A powerful header drill with tough carbide bits, this tool mounts to the exosuit's arm and extends past the hand. While turned off, it still makes a powerful mace.",
8+
"flags": [ "USE_UPS", "DURABLE_MELEE", "POWERARMOR_COMPATIBLE", "ABLATIVE_LARGE", "EXO_GLOVE_PLATE" ],
9+
"weight": "40000 g",
10+
"volume": "5 L",
11+
"longest_side": "5 cm",
12+
"bashing": 60,
13+
"to_hit": { "grip": "weapon", "length": "short", "surface": "any", "balance": "clumsy" },
14+
"material": [ "hardsteel", "vacuum_carbide" ],
15+
"symbol": ";",
16+
"color": "light_gray",
17+
"techniques": [ "WBLOCK_1", "SWEEP" ],
18+
"sided": true,
19+
"armor": [ { "encumbrance": 20, "coverage": 80, "covers": [ "arm_l", "hand_l" ] } ],
20+
"use_action": {
21+
"ammo_scale": 0,
22+
"menu_text": "Turn on",
23+
"type": "transform",
24+
"active": true,
25+
"need_charges": 1,
26+
"msg": "You turn on the drill.",
27+
"target": "exo_mounted_drill_on"
28+
}
29+
},
30+
{
31+
"id": "exo_mounted_drill_on",
32+
"type": "TOOL_ARMOR",
33+
"copy-from": "exo_mounted_drill",
34+
"name": { "str": "exosuit mounted drill (on)", "str_pl": "exosuit mounted drills (on)" },
35+
"description": "The drill is now rotating and making a low growling noise. Meant to make short work of the toughest rock, it should work on more mobile surfaces as well. Use it to turn it off.",
36+
"flags": [ "USE_UPS", "MESSY", "POWERED", "DURABLE_MELEE", "DIG_TOOL", "POWERARMOR_COMPATIBLE" ],
37+
"bashing": 60,
38+
"cutting": 20,
39+
"power_draw": 2000,
40+
"revert_to": "exo_mounted_drill",
41+
"use_action": { "menu_text": "Turn off", "type": "transform", "msg": "You turn off the drill.", "target": "exo_mounted_drill" }
42+
}
43+
]
Lines changed: 37 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,37 @@
1+
[
2+
{
3+
"id": "exo_repair_kit",
4+
"copy-from": "large_repairkit",
5+
"type": "TOOL",
6+
"name": { "str": "exosuit repair kit" },
7+
"description": "This is a collection of tools including a high-powered torch for working the titanium frame.",
8+
"longest_side": "25 cm",
9+
"price": 1000,
10+
"price_postapoc": 100,
11+
"bashing": 2,
12+
"cutting": 6,
13+
"material": [ "steel" ],
14+
"symbol": ",",
15+
"color": "light_gray",
16+
"ammo": [ "battery" ],
17+
"charges_per_use": 1,
18+
"use_action": [
19+
{
20+
"type": "repair_item",
21+
"item_action_type": "repair_metal",
22+
"materials": [ "steel", "hardsteel", "titanium" ],
23+
"skill": "fabrication",
24+
"cost_scaling": 0.1,
25+
"move_cost": 1500
26+
}
27+
],
28+
"pocket_data": [
29+
{
30+
"pocket_type": "MAGAZINE_WELL",
31+
"flag_restriction": [ "BATTERY_HEAVY" ],
32+
"default_magazine": "heavy_plus_battery_cell"
33+
}
34+
],
35+
"flags": [ "ALLOWS_REMOTE_USE", "WATER_BREAK", "USE_UPS" ]
36+
}
37+
]

0 commit comments

Comments
 (0)