Skip to content

Commit

Permalink
Resurrect Wetsuit and diving gear rework (#68296)
Browse files Browse the repository at this point in the history
* Recover stuff (#2)

* Make neoprene closer to rubber (as it is a sort of rubber)

* Whoops...

* Linings for neoprene (wetsuits), environmental buffs, material adjustments

* Apply suggestions from code review

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>

* Thanks to dictionary

* Duplicate removal

* Another duplicate

* Make diving socks vehave like NORMAL layer boots, compatibility with boots fix

* Updated night vision/IR goggles to not break in water

* Documented TOUGH_FEET clothing flag

* Technical shorts, XL/XS varieties and more thickness varieties!

* Quickfix

* Another fix

* Fix

* Technical shorts pockets now provide some protection too.

* Update dictionary.txt

* Apply suggestions from code review

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>

* Update storage.json

* Update custom_storage.json

* Light Kevlar wetsuit, Kevlar wetsuits retouch

* Nylon thickness adjustment, encumbrance and pocket changes

* Misc adjustments to Kevlar wetsuits

* Custom diving boots initial addition

* Update custom_bodysuits.json

* Update swimming.json

* Initial implementation of survivor diving gloves

* Update custom_bodysuits.json

* Kevlar hoods initial implementation

* Whoops

* Diving leg rig

* Encumbrance for technical shorts bungees

* Whoops

* Update custom_bodysuits.json

* Waterproof camera case

* Update boots.json

* Update flags.json

* Fins for boots

* Update flags.json

* Custom swim fins

* Fix

* Fix

* Another fix

* Fix

* Update dictionary.txt

* Namings

* Glove namings

* Boot namings

* Naming convention change

* Update custom_headgear.json

* Update custom_bodysuits.json

* Update custom_boots.json

* Namings, wordings, and other stuff.

* Update custom_gloves.json

* Update materials.json

* Solving coverage weirdness

* Solving material weirdness

* Moving fins to swimming.json

* Arrival of fins to swimming.json, small tweak

* Custom fin attachment tweak

* Update flags.json

* Head straps for stuff

* Update flags.json

* Update custom_headgear.json

* Diving flashlights

* Flags, more flags

* Wrist mount for a flashlight

* Update dictionary.txt

* Update tool_armor.json

* Apply suggestions from code review

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>

* Fix

* Fixes

* Update data/json/items/tool/lighting.json

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>

* Update tool_armor.json

* Fix

* Update dictionary.txt

* Add IR goggles to hunting shop loot tables

* Fix

* Fix

* Now swim goggles provide eye protection.

* Survivor wetsuit adjustments and new recipes

* Remove redundant commas

* New wetsuit gloves recipes and their varieties

* Apply suggestions from code review

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>

* Update containers.json

---------

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>

* Readd camera case

* Fix

* Wetsuit boot recipes

* Adjust wetsuit gloves crafting cost

* Update hands.json

* Update feet.json

* Update hands.json

* Update survivor.json

* Wetsuit hood recipes

* Update head.json

* Update hands.json

* Update head.json

* Update hands.json

* Update head.json

* Update feet.json

* Update head.json

* Wetsuits and thick wetsuit crafts

* Fullface divemasks initial introduction

* Update survivor.json

* Nestening of unnested new stuff so checker does not freak out

* Update data/json/recipes/nested.json

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>

* Fix

* Fix

* Apply suggestions from code review

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>

* Update data/json/recipes/armor/feet.json

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>

* Update data/json/recipes/armor/feet.json

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>

* Update storage.json

* Fix

* Fix

* fix `cannot assign explicit value the same as default or inherited value`

* Fix `deduped_requirement_data generated too many alternatives` by replacing not waterproof clasps with hand made waterproof one

---------

Co-authored-by: randomtyper <59539398+randomtyper@users.noreply.github.com>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
  • Loading branch information
3 people committed Sep 27, 2023
1 parent aec48b6 commit e5c0a46
Show file tree
Hide file tree
Showing 23 changed files with 2,854 additions and 277 deletions.
24 changes: 24 additions & 0 deletions data/json/flags.json
Original file line number Diff line number Diff line change
Expand Up @@ -385,6 +385,30 @@
"info": "This item is attachable to metal cap helmets as a face and neck protective layer.",
"restriction": "Item must be some kind of chainmail veil"
},
{
"id": "BOOT_FINS",
"type": "json_flag",
"info": "This item is attachable to commercial diving boots as fins.",
"restriction": "Item must be some kind of fins"
},
{
"id": "BOOT_FINS_CUSTOM",
"type": "json_flag",
"info": "This item is attachable to custom diving boots as fins.",
"restriction": "Item must be some kind of custom fins"
},
{
"id": "HEAD_STRAP_MOUNT",
"type": "json_flag",
"info": "This item is attachable to straps and mountings on some masks and hoods.",
"restriction": "Item must be some kind of item that can be attached to straps on masks and hoods."
},
{
"id": "WRIST_MOUNT_ATTACHMENT",
"type": "json_flag",
"info": "This item is attachable to a proprietary wrist mount.",
"restriction": "Item must be some kind of item that can be attached to a proprietary wrist mount."
},
{
"id": "EXTRA_PLATING",
"type": "json_flag",
Expand Down
1 change: 1 addition & 0 deletions data/json/itemgroups/tools.json
Original file line number Diff line number Diff line change
Expand Up @@ -201,6 +201,7 @@
{ "item": "flashlight", "prob": 20, "charges": [ 0, 300 ] },
{ "item": "heavy_flashlight", "prob": 15, "charges": [ 0, 300 ] },
{ "item": "goggles_nv", "prob": 5, "charges": [ 0, 100 ] },
{ "item": "goggles_ir", "prob": 2, "charges": [ 0, 100 ] },
[ "hand_crank_charger", 15 ],
{ "item": "handflare", "prob": 20, "charges": 300 },
[ "hatchet", 10 ],
Expand Down
163 changes: 146 additions & 17 deletions data/json/items/armor/bespoke_armor/custom_bodysuits.json
Original file line number Diff line number Diff line change
Expand Up @@ -436,6 +436,7 @@
"armor": [
{
"material": [
{ "type": "nylon", "covered_by_mat": 100, "thickness": 0.2 },
{ "type": "neoprene", "covered_by_mat": 100, "thickness": 3.5 },
{ "type": "kevlar", "covered_by_mat": 100, "thickness": 1.5 }
],
Expand All @@ -444,27 +445,48 @@
"encumbrance": [ 19, 19 ]
}
],
"//": "Pockets are half in size of those found on technical shorts and without a pocket in the flap.",
"pocket_data": [
{
"pocket_type": "CONTAINER",
"max_contains_volume": "500 ml",
"max_contains_weight": "2 kg",
"moves": 80,
"max_contains_weight": "1 kg",
"moves": 130,
"max_item_length": "11 cm",
"description": "Pants pocket."
"watertight": true,
"description": "Back pocket."
},
{
"pocket_type": "CONTAINER",
"max_contains_volume": "500 ml",
"max_contains_weight": "2 kg",
"moves": 80,
"max_contains_weight": "1 kg",
"moves": 130,
"max_item_length": "11 cm",
"description": "Pants pocket."
"watertight": true,
"description": "Back pocket."
},
{
"pocket_type": "CONTAINER",
"max_contains_volume": "1650 ml",
"max_contains_weight": "2 kg",
"max_item_length": "32 cm",
"description": "Pants pocket.",
"volume_encumber_modifier": 0.25,
"moves": 80
},
{
"pocket_type": "CONTAINER",
"max_contains_volume": "1650 ml",
"max_contains_weight": "2 kg",
"max_item_length": "32 cm",
"description": "Pants pocket.",
"volume_encumber_modifier": 0.25,
"moves": 80
}
],
"warmth": 41,
"environmental_protection": 8,
"flags": [ "VARSIZE", "WATER_FRIENDLY", "POCKETS", "HOOD", "RAINPROOF", "STURDY", "SKINTIGHT", "NORMAL" ],
"environmental_protection": 12,
"flags": [ "VARSIZE", "WATER_FRIENDLY", "WATERPROOF", "STURDY", "SKINTIGHT", "NORMAL" ],
"melee_damage": { "bash": 6 }
},
{
Expand All @@ -483,6 +505,92 @@
"proportional": { "weight": 1.125, "volume": 1.13, "price": 1.25 },
"extend": { "flags": [ "OVERSIZE" ] }
},
{
"id": "h20survivor_jumpsuit_light",
"type": "ARMOR",
"category": "armor",
"name": { "str": "light Kevlar wetsuit oversuit" },
"description": "A hand-built light combination armor made from an expanded and lightened wetsuit padded with layers of Kevlar. Protects from the elements as well as from harm.",
"weight": "6400 g",
"volume": "7000 ml",
"price_postapoc": 5000,
"material": [ "neoprene", "kevlar" ],
"symbol": "[",
"to_hit": -3,
"looks_like": "wetsuit",
"color": "dark_gray",
"armor": [
{
"material": [
{ "type": "nylon", "covered_by_mat": 100, "thickness": 0.2 },
{ "type": "neoprene", "covered_by_mat": 100, "thickness": 2.0 },
{ "type": "kevlar", "covered_by_mat": 100, "thickness": 1.5 }
],
"covers": [ "torso", "leg_l", "leg_r", "arm_l", "arm_r" ],
"coverage": 100,
"encumbrance": [ 11, 11 ]
}
],
"//": "Pockets are half in size of those found on technical shorts and without a pocket in the flap.",
"pocket_data": [
{
"pocket_type": "CONTAINER",
"max_contains_volume": "500 ml",
"max_contains_weight": "1 kg",
"moves": 130,
"max_item_length": "11 cm",
"watertight": true,
"description": "Back pocket."
},
{
"pocket_type": "CONTAINER",
"max_contains_volume": "500 ml",
"max_contains_weight": "1 kg",
"moves": 130,
"max_item_length": "11 cm",
"watertight": true,
"description": "Back pocket."
},
{
"pocket_type": "CONTAINER",
"max_contains_volume": "1650 ml",
"max_contains_weight": "2 kg",
"max_item_length": "32 cm",
"description": "Pants pocket.",
"volume_encumber_modifier": 0.2,
"moves": 80
},
{
"pocket_type": "CONTAINER",
"max_contains_volume": "1650 ml",
"max_contains_weight": "2 kg",
"max_item_length": "32 cm",
"description": "Pants pocket.",
"volume_encumber_modifier": 0.2,
"moves": 80
}
],
"warmth": 30,
"environmental_protection": 10,
"flags": [ "VARSIZE", "WATER_FRIENDLY", "WATERPROOF", "STURDY" ],
"melee_damage": { "bash": 6 }
},
{
"id": "xs_h20survivor_jumpsuit_light",
"type": "ARMOR",
"name": { "str": "XS light Kevlar wetsuit oversuit" },
"copy-from": "h20survivor_jumpsuit_light",
"proportional": { "weight": 0.75, "volume": 0.75, "price": 0.5 },
"extend": { "flags": [ "UNDERSIZE" ] }
},
{
"id": "xl_h20survivor_jumpsuit_light",
"type": "ARMOR",
"name": { "str": "XL light Kevlar wetsuit oversuit" },
"copy-from": "h20survivor_jumpsuit_light",
"proportional": { "weight": 1.125, "volume": 1.13, "price": 1.25 },
"extend": { "flags": [ "OVERSIZE" ] }
},
{
"id": "thick_h20survivor_jumpsuit",
"type": "ARMOR",
Expand All @@ -500,36 +608,57 @@
"armor": [
{
"material": [
{ "type": "nylon", "covered_by_mat": 100, "thickness": 0.4 },
{ "type": "neoprene", "covered_by_mat": 100, "thickness": 5.0 },
{ "type": "nylon", "covered_by_mat": 100, "thickness": 0.5 },
{ "type": "kevlar", "covered_by_mat": 100, "thickness": 3.0 }
],
"covers": [ "torso", "leg_l", "leg_r", "arm_l", "arm_r" ],
"coverage": 100,
"encumbrance": [ 26, 26 ]
}
],
"//": "Pockets are from normal thick wetsuit with back pockets added on.",
"pocket_data": [
{
"pocket_type": "CONTAINER",
"max_contains_volume": "500 ml",
"max_contains_weight": "2 kg",
"moves": 80,
"max_contains_weight": "1 kg",
"moves": 130,
"max_item_length": "11 cm",
"description": "Pants pocket."
"watertight": true,
"description": "Back pocket."
},
{
"pocket_type": "CONTAINER",
"max_contains_volume": "500 ml",
"max_contains_weight": "2 kg",
"moves": 80,
"max_contains_weight": "1 kg",
"moves": 130,
"max_item_length": "11 cm",
"description": "Pants pocket."
"watertight": true,
"description": "Back pocket."
},
{
"pocket_type": "CONTAINER",
"max_contains_volume": "1000 ml",
"max_contains_weight": "1500 g",
"moves": 130,
"max_item_length": "20 cm",
"watertight": true,
"description": "Hip pocket."
},
{
"pocket_type": "CONTAINER",
"max_contains_volume": "1000 ml",
"max_contains_weight": "1500 g",
"moves": 130,
"max_item_length": "20 cm",
"watertight": true,
"description": "Hip pocket."
}
],
"warmth": 70,
"environmental_protection": 8,
"flags": [ "VARSIZE", "WATER_FRIENDLY", "POCKETS", "HOOD", "RAINPROOF", "STURDY", "SKINTIGHT", "NORMAL" ],
"environmental_protection": 14,
"flags": [ "VARSIZE", "WATER_FRIENDLY", "WATERPROOF", "STURDY", "SKINTIGHT", "NORMAL" ],
"melee_damage": { "bash": 6 }
},
{
Expand Down

0 comments on commit e5c0a46

Please sign in to comment.