Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Done] Sheet metal stats rebalance and recipe fixes #25210

Merged
merged 21 commits into from
Sep 18, 2018

Conversation

cake-pie
Copy link
Contributor

@cake-pie cake-pie commented Aug 28, 2018

Summary

SUMMARY: Content "rebalance sheet metal stats; adjust recipes accordingly"

Purpose of change

Adjust sheet metal stats for realism and consistency with other steel "raw resource" items.
Adjust/update recipes involving sheet metal accordingly -- currently can vary quite drastically


Tasks

  • Bring sheet metal stats in line with other steel resources
  • Add small sheet metal
  • Adjust recipes making/disassembling sheet metal
  • Adjust recipes using sheet metal

Bring sheet metal stats in line with other steel resources

tl;dr: make sheet metal 6kg/1L

The other steel "raw resource" items (lump, chunk, scrap metal) have consistent stats based on IRL density (8g/cm³ after rounding). Sheet metal, at 1kg / 1L = 1g/cm³ is an unrealistic outlier.

Different recipes vary wildly in their interpretation of what "sheet metal" is -- e.g.: three sheet metal are needed to craft a 20L bucket, but metal_tank (60L) only requires two -- so that's not very useful for estimating reasonable stats.

Instead, start from sheet metal's primary role as a vehicle part: one piece of sheet metal is used to construct a variety of parts. A quick search re: US automotive steel thickness gives: generally 18 gauge, possibly thicker if load-bearing, and on the other hand thinner for bodywork and in newer vehicles (up to 20~22ga, but presumably stronger alloys).

Gauge table:

16ga 	0.0625in (1.59mm)
18ga 	0.0500in (1.27mm)
20ga 	0.0375in (0.95mm)
22ga 	0.0313in (0.80mm)
24ga 	0.0250in (0.64mm)

Using vehicle parts to make ballpark estimates for surface area, find an approximate value for volume that seems fairly reasonable across the board:

Part(s) est'd surface area volume
roof, aisle ≈5 sqft × 16ga ≈ 740ml
floor trunk >5 sqft
quarterpanel ≈6 sqft × 18ga ≈ 700ml
board ≈10 sqft × 22ga ≈ 740ml
stow board >10 sqft

750ml of steel would be 6kg, for consistency with the other steel resources. In non-freedom units, we're looking at sheet metal roughly in the range of 70cm × 70cm × 1.53mm to 1m × 1m × 0.75mm

Since the sheet is fairly bulky and would realistically have to be folded / rolled up most of the time to fit in inventory, account for that with "volume" : 4 rather than 3, making it 75% density of a solid block.
Precedent for this in chunk of steel, scrap metal, which, being crumpled scrap, take up more room than solid block of equal weight.


Add small sheet metal

When reviewing and updating recipes, it quickly became apparent that even one sheet metal is ridiculously overkill for several recipes, so a smaller version is needed.

Making it roughly in the range of 15 × 15cm to 20 × 20cm dimensions, same weight as steel_chunk, and 100% density because it's fairly compact and stacks perfectly.


Adjust recipes making/disassembling sheet metal

Sheet metal isn't (yet?) player-craftable (#21896) but can be made in faction base blacksmith (#24383).
/data/json/recipes/recipe_companion.json updated to use 6 steel_standard

Disassembly of sheet metal in /data/json/uncraft/generic.json changed from 20 scrap to 24 sheet_metal_small

Small sheet metal disassembles to 5 scrap.


Adjust recipes using sheet metal

Misc vehicle parts

  • cargo lock

  • wired sheet metal -> aisle with lights

    • sheet_metal_lit in json/items/vehicle_parts.json
    • weight increased to 6200 to match (sheet metal -> aisle)
  • muffler in recipes/recipe_others.json

    • 1 sheet -> 5 small sheets
  • storage battery case it_battery_mount in recipes/recipe_others.json

    • 1 sheet (unchanged)
  • vehicle tank (60L) metal_tank in recipes/recipe_others.json

    • 2 sheet -> 1 sheet
    • basis: 60L cube has approx 9200cm² surface area
  • vehicle tank (2L) metal_tank_little in recipes/recipe_others.json

    • 3 small sheets (was: 1 sheet or 2 scrap)
    • basis: 10cm x 10cm x 20cm cuboid
  • 2 sheet -> 1 sheet

    • vehicle scoop v_scoop_item in recipes/recipe_others.json
    • seed drill v_planter_item in recipes/recipe_others.json
    • reaper v_reaper_item in recipes/recipe_others.json
  • item group ig_vp_sheet_metal in json/vehicle_parts.json

    • specifies items spawned when vehicle parts made from sheet metal break
    • changed to 73% ~ 100% yield, down from exploitable >100%

Weapons

  • crude rocket launcher surv_rocket_launcher in json/recipes/recipe_weapon.json

    • "thick-walled steel pipe", 5L volume
    • changed to 2 sheets (from 4) -- sufficient for >4x thickness when rolled to 5L cylinder
  • heavy rail rifle heavy_rail_rifle in json/recipes/recipe_weapon.json

    • 1 sheet (unchanged)

Ammo

Changed from 1 sheet to 1 small sheet:

  • makeshift .223 magazine
  • makeshift STEN magazine

Electronics

  • solar backpacks in json/recipes/recipe_electronics.json
    with uncraft in json/recipes/recipe_deconstruction.json
    • reduce from 3 sheets to 2
    • make recipes irreversible as cutting is involved
    • add byproducts: small sheet metal and scrap -- a (partial) attempt to reconcile mass
    • only 1 sheet recovered in disassembly, rest in small sheet metal, steel chunks and scrap
    • remove alternate recipe (12× solar cells) because disassembly gives solar panel
    • uncraft is copy-paste for now because copy-from not working properly (Copy-from recipes don't receive properties from abstract recipes #24702)

Misc Tools/Items

  • crucible in recipes/recipe_others.json

    • 2 sheet -> 1 sheet
    • 2L volume, 1 sheet should be more than enough for really thick walls
  • toolbox in recipes/recipe_others.json

    • 2 sheet -> 5 small sheets
    • 2.5L toolbox
  • bucket in recipes/recipe_others.json

    • 5L capacity
    • approx 9cm radius, 20cm height
    • 3 sheet -> 4 small sheets
  • metal funnel in recipes/recipe_others.json

    • 3 sheet -> 1 sheet

Deployable Furniture

  • brazier in recipes/recipe_others.json / data/json/furniture.json

    • 2.5L, 5kg: single sheet hammered into shallow bowl
    • item craft: 2 sheet -> 1 sheet
    • bash: changed to small metal sheet [ 2, 6 ], steel chunk [ 2, 6 ], scrap [ 5, 15 ]
  • tourist table in recipes/recipe_others.json / data/json/furniture.json

    • item craft: 2 sheet -> 1 sheet
    • bash: add small metal sheet [ 4, 8 ], increase scrap

Constructed Furniture

  • oven f_oven

    • deconstruct: unchanged sheet metal [ 2, 6 ], add small metal sheet [ 0, 4 ]
    • bash: reduced sheet metal [ 1, 4 ], add small metal sheet [ 8, 12 ]
  • mailbox f_mailbox

    • USPS Next Generation Mailbox surface area: approx 8sqft
    • deconstruct: unchanged (1)
    • bash: add small metal sheet [ 6, 10 ], increase scrap
  • locker f_locker and display rack f_rack

    • deconstruct: unchanged sheet metal [ 1, 2 ], add small metal sheet [ 0, 4 ]
    • bash: add small metal sheet [ 6, 10 ], increase steel chunk
  • washing machine f_washer and dryer f_dryer

    • deconstruct: unchanged sheet metal [ 2, 6 ], add small metal sheet [ 0, 4 ]
    • bash: reduced sheet metal [ 1, 4 ], add small metal sheet [ 8, 12 ]
  • target f_target

    • dimensions NATO E-type target
    • bash: remove metal sheet, changed to small metal sheet [ 3, 7 ]
  • fermenting vat f_fvat_empty and f_fvat_full

    • 50L barrel: wood with metal hoops, (e.g. ø42.5cm × 57cm)
      • infer 12 nails -> 6 hoops, each approx 135cm (circumference) × 4cm width
    • construction: 2 sheet -> 12 small sheet; no longer accept scrap substitute
      • sheet metal too large, only need half of it, but construction cannot produce byproduct
      • instead apply some handwavium: small sheet treated as longish strips rather than squarish pieces
    • deconstruct: yield small sheet / scrap instead
    • bash: reduced yield small sheet, scrap
  • wooden keg f_wood_keg

    • 125L wooden barrel [approx ø57cm x 77cm]
      • infer 14 nails -> 7 hoops, each approx 180cm (circumference) × 5cm width
    • construction: 3 sheet -> 1 sheet; no longer accept scrap substitute
      • require metal sawing for cutting hoops
    • deconstruct: cannot recover intact sheet, yield small sheet / scrap instead
    • bash: reduced yield small sheet, scrap

Unchanged

  • reinforced vending machine
  • robotic arm

@cake-pie
Copy link
Contributor Author

Paging @nexusmrsep for input re: solar backpacks added #24027

In my mind its 2 metal sheets (made of steel, no aluminium variant for those) for the frame, and another metal sheet (also steel) cut to hold the retractable panels, some rope for the staps, and panels themselves.

Given sheet metal in the ballpark of 70cm × 70cm × 1.53mm to 1m × 1m × 0.75mm how would you adapt your recipes? Perhaps reduce to 2 sheets:

  • one for the part that folds out, with the solar panels mounted on it
  • one folded to form the structural frame

Also, if crafting involves cutting the metal sheets (as your description suggests) then it should not be possible to recover intact steel sheet from disassembly -- the recipe should not be reversible; use uncraft to instead yield chunks / scrap. Please clarify?

@nexusmrsep
Copy link
Contributor

@cake-pie I accept your ideas here in whole. That is absolutely acceptable.

@ZhilkinSerg ZhilkinSerg added [JSON] Changes (can be) made in JSON Vehicles Vehicles, parts, mechanics & interactions Items / Item Actions / Item Qualities Items and how they work and interact labels Aug 29, 2018
@cake-pie cake-pie changed the title [WIP] Sheet metal stats rebalance and recipe fixes [CR] Sheet metal stats rebalance and recipe fixes Sep 9, 2018
@cake-pie
Copy link
Contributor Author

cake-pie commented Sep 9, 2018

All DDA recipes should be done now, unless I missed something.

[CR] to let this simmer for a couple days.

@cake-pie cake-pie changed the title [CR] Sheet metal stats rebalance and recipe fixes [Done] Sheet metal stats rebalance and recipe fixes Sep 11, 2018
@cake-pie
Copy link
Contributor Author

Not sure why Travis still shows as pending, it's all done and passed.

All set to go if there are no further comments/objections

@cake-pie
Copy link
Contributor Author

cake-pie commented Sep 15, 2018

Blocked: waiting on #25617, then needs updated efficiency tests again.

@cake-pie cake-pie changed the title [Done] Sheet metal stats rebalance and recipe fixes [blocked] Sheet metal stats rebalance and recipe fixes Sep 15, 2018
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Items / Item Actions / Item Qualities Items and how they work and interact [JSON] Changes (can be) made in JSON Vehicles Vehicles, parts, mechanics & interactions
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants