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

Auditing breaks_into of vehicle_parts.json Part Two #73755

Merged

Conversation

TheMurderUnicorn
Copy link
Contributor

@TheMurderUnicorn TheMurderUnicorn commented May 14, 2024

Summary

Balance "Finished Auditing vehicle parts json for breaks_into"

Purpose of change

I started auditing these previously, finally finished this massive 3000+ line audit. #73630 was the original, my reasonings are the same, breaks_into made no sense for the majority of vehicle parts, many of these probably existed before half our materials did, so they needed an update.

Describe the solution

Here's what I wrote initially:

My Rambling Thoughts/Why I Did Things

For vehicle parts breaking into other parts, I did have to sort of pick these just based on common sense. I didn’t see anything about % of base material that should still be there after being destroyed, many of them gave more materials than the items they’re made from, and a lot were using identical catchall groups. I only fixed those that were clearly incorrect, some were close enough and I also left the catchall itemgroups because they are probably connected to some things still/valuable. I also believe that many things used count instead of charges for scrap metal, which caused them to spawn in increments of 10.

Many vehicle parts are made from 1 sheet metal, which has its own vp_sheet_metal itemgroup specifically for it. This is also true for frames/heavy duty frames. I have left this the same for larger/beefier things made of sheet metal or whatever, but I did change some of them, like I felt the aisle should produce less metal and changed it. However, after this I largely left them alone because I realized someone probably mathed out that group initially and set it how they thought was appropriate. I may change this group directly, it gives too much material for 1 sheet metal, based on deconstruction materials.

I didn’t touch any solar panels or anything to do with radiation/reactors because I don’t know shit about them and for some reason I found it intimidating.

So, apologies if these are not perfect, but I believe all the changes I’ve made are improvements overall, and it is generally a small part of the game that no one’s particularly passionate about changing/working on, so yeah, I’m doing it, idk.

Describe alternatives you've considered

None, I was already committed at this point.

Testing

At first I tested lots of vehicle parts to make sure they were producing proper amounts. By the end I basically was just checking there were no syntax errors, so the tests might kick me some issues, but it passed linting.

Additional context

List of Each Change and Reasoning
  • 1026 workbench gave an enormous amount of pipes and metal sheets, more than the % most vehicle parts give when destroyed. I also think that pipes/sheet_metal are too likely to be damaged by the part being fully destroyed, and should be reduced to component metals. I was very nervous changing this for some reason, but I’ve reduced the overall higher tier metal components, reducing it to mostly chunks, scrap, and smaller sheet metals.

  • 1054 workbench with battery recharger is based on the same logic as the workbench above, but with the addition of electronics materials. The electronics material listed seems correct, just the workbench part was insanely generous, so I’ve copied the metal from the above entry (workbench).

  • 1259 sail breaks_into up to 10 cotton patches but the largest material useable in making it would yield 8 patches maximum. Reduced cotton_patch spawn.

  • 1375 dashboard used the generic vp_device group, calling it 2-3 times. This is not ideal as it provides a range outside of what it should be dropping. I’ve made a bespoke group, primarily to increase plastic chunk drops and reduce e_scrap drops/scrap drops. Despite all materials being plastic, the part itself is 50% steel, so I’ve left some scrap, though I think I should have just fully removed that.

  • 1402 vehicle-mounted heater is made from a heater that includes 12 heating elements, it seemed plausible some of these might survive the destruction of the overall part. Added 0-2 heating elements, they are small, low value parts, so I think it’s both plausible and not interfering with game balance.

  • 1419 small vehicle-mounted heater same logic above but uses a smaller heater that contains 8 heating elements. Added heating element drop, not sure how to do this with a lot of control, just made it a 80% chance of dropping 1.

  • 1437 small integrated heater was copy-from’d small vehicle mounted heater previously, so I gave it its own drops. Those other heaters contain heating elements, whereas the integrated heater is just a metal ‘tube’ that draws heat from the engine into the vehicle. Assuming there’s a fan or whatever in there too, I gave it roughly the same metal as the heaters above, but slightly less, and no heating element drop.

  • 1462 vehicle mounted cooler involves 2 electric motors so I added some copper wire to the drops, left metal alone.

  • 1505 electronics control unit is basically just a dashboard with less plastic and copper wire, so I’ve copied my changes from the dashboard and reduced plastic/cable spawns to compensate. Also removed metal spawns as it’s all plastic.

  • 1538 mufflers gave a huge amount of lumps/chunks of steel despite being made from a couple pipes and sheet metal (even manufactured mufflers aren’t much more than that). Reduced their chunk/lump drops, increased scrap metal drop

  • security system Ultimately decided not to touch this, ignore me plz

  • 1668 curtain and 1699 aisle curtain did not break into anything despite being made from a full sheet. Changed to give various cotton pieces.

  • ** 1724 water wheel** broke into a lot of splinters and nothing else. However, water wheels include electric motors, wheels that are banded in metal, lots of nails/nuts and bolts, and a few pipe fittings. This merits some scrap metal materials (due to small sizes, mostly scrap metal not lumps/chunks), tons of copper wire from the electric motor, and misc spawns of nails/nutsbolts, so I’ve added them.

  • 1755 large water wheel has the same logic as the water wheel above, but with amended materials. Notably, this uses 3 small electric motors which means this water wheel has like 1500+ copper wire in it, a fair bit of which would be recoverable. These are player-made only, so it’s not like people will be exploiting them or duping materials or anything, it’s fine.

  • 1822 wind turbine gave only metal pieces but contains a motor (so should have copper wire), and several planks so should have wood. Added these things.

  • 1859 large wind turbine same logic as the wind turbine but with substantially more copper wire and splinters, etc.

  • 2044 wooden armor previously only gave splintered wood. However installing it requires nails, and the crafting of the base item requires rope, so I’ve given it some nail drops and cordage drops.

  • 2142 spiked plating previously gave too much metal (technically max was more than 100% materials from crafting the item). To keep the materials the same and allow it to give spikes, I have lowered the misc metals but still allowed for spikes to exist.

  • 2176 hard plating Gives slightly less metal than I would expect, added a few extra chunks and more scrap, since again this is a fully broken item that should be largely rendered down to small broken pieces.

  • 2235 bicycle horn disassembles into scrap aluminum (only 1 for some reason, I might change this) but the vehicle part would break into scrap metal. This should also be scrap aluminum, so I have changed scrap metal to scrap aluminum with a very small chance of getting it (since disassembly only gives 1). Also added plastic chunk at a less than 100% chance for 1, same reasoning.

  • 2326 cargo space is staggering at 4 steel frames and 4 long ropes yet had relatively low metal yields and no rope/string of any kind. I’ve changed this.

  • animal carrier was not changed in this PR, the two recipes for it make no sense and use massive amounts of metal for one, and very little for the other, it makes no sense to me and I want to change the breaks_into but don’t know which to base it on.

  • 2472 chimes looks like it was made with the idea that it’s comprised of metal chimes (gives lots of metal), however they’re actually made from chime loudspeakers that PLAY chime sounds. As a result I removed almost all metal from their breaks_into and more or less left everything else. A tiny bit of aluminum because some of the materials are aluminum, also some plastic added.

  • 2496 jumper_cable these disassemble to 100 copper wire, but break_into between 1-10% of that value. For most of these deconstructions I was aiming for 15-40% low-tier materials, and most pre-existing/catchall groups give a higher %. So I’ve increased copper wire drops here to be more balanced beside the other parts.

  • 2514 extension cord same deal as above (jumper cable), except extension cords disassemble into 300 copper wire, so I’ve increased their values to 15% to 30% for breaks_into.

  • 2532 outdoor extension cord is thicker AND longer than above extension cord, and gives a staggering 900 copper wire when disassembled. So I’ve increased their copper wire drops SUBSTANTIALLY.

  • 2550 heavyduty jumper cable is thicker/longer version of jumper cable, previously incorrectly gave wire instead of copper wire. I fixed that, and based its breaks_into on 15-30% of its disassembly values.

  • 2566 heavy duty tow cable 64 lumps of steel worth of metal to craft the 8 chains in the recipe and yet it only gave a little scrap metal. I’ve assessed the metal drops to increase them, and adding lumps/chunks as well. I debated removing the hook but idk someone put it here for a reason and I’m not familiar with it so I’ll leave it. I’ve been using 15-30% materials as a baseline, so 10-20 lumps basically. I mathed it out so all the metal material (minute the hook) come out to 10-20 lumps total metal. The description suggests that it’s coated in plastic, but since it’s a player craft (with no plastic) I did not want to create a situation where you could make something and deconstruct it for more materials than you put in.

  • 2610 seat wood flimsy is made of foldable wooden frame, so I gave it the normal drop I’ve been giving those parts. Requires ropes to be installed (2) AND to craft the frame (3), so I’ve added some strings to the list.

  • 2643 wooden seat uses nails to craft the frame and to install, but no nails present. Added nails.

  • 2672 wooden roof Same as wooden seat, added nails.

  • 2691 chitin plating breaks into too much chitin, I’ve reduced this somewhat and added chitin powder to reflect damage (what chitin breaks down to). The armor kit required to make this also requires long and short ropes, so I have added string. However, the installation uses glue/adhesive so I’m not sure if the ropes are actually still used or if they just poof out of existence when installed. So I’ve kept the string numbers much lower than they ‘should’ be to try and find a middle ground.

  • 2708 biosilicified chitin plating is more or less the same as the above chitin plating. This chiting stuff is making me nervous, we don’t have many chitin pieces and Im fuzzy on he rope/string stuff, doing my best here.

  • 2734 door motor broke into more scrap metal than metal put in, reduced significantly. Added small amount of copper wire to reflect the internals of the tiny electric motor used. Chance of e-scrap and ball bearing.

  • drive by wire controls although I hate that it gives a full tiny motor when broken, I didn’t know how to tackle this one. I left it alone, but it should probably be changed, I don’t know, the electronics stuff, I don’t know how to break it down.

  • 2796 camera control system seemed okay, although I personally feel the numbers are a little generous at the high end. Regardless, I just added a little copper wire to it.

  • 2825 security camera and 2848 reinforced security camera broke into more pieces than its crafting recipe required. It also broke into more escrap than the 10 LCD screens and etc. of the above control system. Knocked down e-scrap considerably, added some misc pieces as potential drops, including a small chance to retrieve an unbroken lens. For reinforced, added small amount of scrap metal (it uses 4 wires as reinforcement)

  • 3055 vehicle scoop only gave a tiny amount of scrap and plastic, despite containing 2 full electric motors, sheet metal, etc. For example, one sheet metal breaks down to over 100 scrap metal on its own, but the breaks_into gave 5 max. I increased the base materials, added a lot of copper wire (2k total in the electric motors, less in the breaks_into obviously) to reflect the motors, and allowed recovery of a few nuts and bolts.

  • 3086 water purifier gave a tiny amount of plastic chunks despite primarily being made from glass bottles and heating elements. Added broken glass and some metal. Small chance of getting a rubber hose, tiny amount of copper wire.

  • 3125 plow despite being a giant metal plow only broke into 1-2 plastic chunks. Idk even what to say x_x. Changed it to a berjillion pieces of metal. Added wheel destruction materials.

  • 3168 seeder is sadly another neglected farm part that is amusingly under-represented in terms of the material drops. Overhauled all the metal stuff, mathing these is starting to get annoying I’m ready to be done with this audit at this point -_-;

  • 3209 advanced seed drill is just a seed drill but with electronics components. Since there’s some plastic, e-scrap and copper wire already, I’ll just slap on the metal/rubber harvests from the seeder to this one as well and call it acceptable.

  • 3252 reaper has very similar materials to the seeder above, but with a little more metal, so basically just copied and tweaked that breaks_into to this one.

  • 3295 advanced reaper kept existing electronics pieces and added the metal/rubber from the standard reaper.

  • 3329 cargo_lock gives basically the amount of metal that is required for construction (more actually), so I reduced these to almost nothing. By volume honestly I should have hit it even harder

  • 3354 turret mount Overall missing a lot, added a variety of materials from the components.

  • 3387 door lock same issue as the cargo lock above, changed the same way.

  • turret control unit this shits complicated and I don’t know what to do with it. It needs fixed but I can’t be asked.

  • 3443 aluminum boat hulls broke down into steel, but are made 100% from aluminum. Fixed it to give scrap aluminum.

Left the stowed appliances alone, they look more recent and based on the deconstruction of those various appliances.

By the end I wanted to die, I don't know how you do it Karol, audits suck.

@github-actions github-actions bot added [JSON] Changes (can be) made in JSON Vehicles Vehicles, parts, mechanics & interactions json-styled JSON lint passed, label assigned by github actions astyled astyled PR, label is assigned by github actions BasicBuildPassed This PR builds correctly, label assigned by github actions labels May 14, 2024
@fairyarmadillo
Copy link
Contributor

fairyarmadillo commented May 14, 2024

A heads up, maybe you're aware of this, cars currently break into chunks and lumps of steel, which is just untyped old-style steel. But car bodies are made of sheet metal, and sheet metal is in this game (and irl) mild steel. See #71715

I didn't change the chunks and lumps at the time because a lot of early-game crafts rely on them and it seemed like a whole thing to get into, but you may wish to be aware that they ought to be low-carbon/mild steel. Otherwise cars that are made of crap steel are somehow alchemizing into regular steel when you hit them with a baseball bat.

Apologies if that's not relevant to what you're doing here, just thought I'd say something since I messed with that a bit ago.

Mild steel versions of chunks and lumps do seem to exist, like lc_steel_chunk. So it'd be a matter of making the makeshift hammer and a few other items use those.

@TheMurderUnicorn
Copy link
Contributor Author

I'm not sure what you mean. You're saying the chunks/lumps should be converted to mild steel versions? Are they interchangeable for crafting? I won't lie, I was sick of this project before I even finished, I'm more inclined to just delete it if there's an issue. And I'm very hesitant to change a ton of materials if it might bork crafting and also I'd have to change all their deconstructs because this is just breaks_into. I'm not sure what to do here.

@fairyarmadillo
Copy link
Contributor

I'm not sure what you mean. You're saying the chunks/lumps should be converted to mild steel versions? Are they interchangeable for crafting? I won't lie, I was sick of this project before I even finished, I'm more inclined to just delete it if there's an issue. And I'm very hesitant to change a ton of materials if it might bork crafting and also I'd have to change all their deconstructs because this is just breaks_into. I'm not sure what to do here.

  1. Yes, they should be switched to mild steel versions, but
  2. I don't think they're interchangeable, which is why it hasn't been done yet and
  3. There's no need for you to do it here, it isn't an obstacle for the rest of what you're doing. I was just pointing it out in case you wanted to get it while you were updating bash results.

Since you're not feeling it, my advice is to ignore what I said about chunks/lumps and let someone handle that part another time.

@TheMurderUnicorn
Copy link
Contributor Author

Okay. Thank you for your feedback, I'm sorry I didn't understand initially

@fairyarmadillo
Copy link
Contributor

It's cool, sorry to throw you for a loop.

@Maleclypse Maleclypse merged commit ab7a27b into CleverRaven:master May 19, 2024
21 of 27 checks passed
@TheMurderUnicorn TheMurderUnicorn deleted the FinishedThisStupidAudit branch May 19, 2024 01:47
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
astyled astyled PR, label is assigned by github actions BasicBuildPassed This PR builds correctly, label assigned by github actions [JSON] Changes (can be) made in JSON json-styled JSON lint passed, label assigned by github actions Vehicles Vehicles, parts, mechanics & interactions
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants