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

Remove handload quality distinction #1481

Conversation

KheirFerrum
Copy link
Collaborator

Summary

SUMMARY: "Ammo recipes create factory ammo instead of handloads. Added recipe for 5x50mm penetrators, 7.62x25mm Hot Load and 7.62x25mm Type P. Changed 38 Super to actually use 38 Super casings. Made uncraft and craft materials for ammo match."

Purpose of change

The idea of handloads being significantly worse than factory loaded ammunition is in fact unrealistic for skilled operators. Handloading ammo is an effective measure in modern times to save on costs or even to create more reliable ammunition.

In the process of this change it was learned that the uncraft recipes did not match the crafting recipes, producing more material than was needed to craft the ammo in question. Furthermore, the 38 Super ammunition used 38 casings instead of their own 38 super casings, which already exist in game and are used for 38 Super FMJ.

Describe the solution

Handload recipes were converted into Factory Ammo recipes by PoshOctavia on the Cataclysm Bright Nights Discord, who also edited the migration.json. I double-checked the code, and balanced the uncraft and craft recipes so that uncrafting a single load of ammo produced materials to craft said ammunition.

Some recipes were tweaked, for instance 4570 ammo used both ammo_bullet and lead in it's construction, leading to lead being used twice in the recipe at unrealistic amounts. The 38 Super was also changed so that it used and uncrafted into 38 super casings. The recipes were then obsoleted and the items moved to the obsoletion files.

Describe alternatives you've considered

Skill based increases in handloaded ammunition's damage, dispersion, accuracy and range.

  • Would be considered my gold standard, but would require rewriting for some parts of the crafting system, or massive recipe bloat. As such, it was discarded.

Preserve some of the downsides of handloaded ammunition

  • Seemed pointless, penalizing the player for using the crafting system on ammo for "realistic" reasons that don't include the benefits from said "realistic" model.

Testing

Created a save prior to the change with 5 of each reloaded version of ammo. Once changes done, checked that ammo was converted from handload to factory. Then disassembled and reassembled all ammo to ensure that no excess materials were gained.

Additional context

When I added some extra recipes for factory ammunition I neglected to add some of the blackpowder variants, maybe this could be added later, but right now I don't think it's very important. eg: 7.62x25 hot load and Type P lack Blackpowder variants.

Uncraft and Craft were heavily unbalanced and pulling materials out of thin air during uncraft.

Moved all reloaded ammo into the obsoletion/items.json

MIgration missed 5x50mm flechettes, fixed that.
Bugtest revealed human error. Fixed and retested.
@chaosvolt
Copy link
Member

Side note, having removed "reversible": true, and retaining all relevant uncrafts fixes the issue I was having when I implemented #886, as rifle-tier handloads were getting a pulling requirement of 1 instead of 2 due to hardcoded handling of reversible recipes.

Blackpowder rifle cartridges will still be stuck with a different tier of pulling tool than the factor loads, but that's still a minor enough problem to save for another time.

@Coolthulhu Coolthulhu self-assigned this Apr 25, 2022
@Coolthulhu
Copy link
Member

I'm getting "invalid recipe reloaded_380_p".
I have all recipes unlocked on the character, so it should mean only this one isn't properly obsoleted.

data/json/itemgroups/Weapons_Mods_Ammo/ammo.json contains one missed entry of the reloaded variant.

reloaded_4570_bp probably removed because of reloaded prefix, but is actually a blackpowder load, and the recipe still remains in the game, so I put it back since it appears to be an oversight.

All reference to reloaded ammunition in item_groups has been replaced with factory ammo.
@KheirFerrum
Copy link
Collaborator Author

I'm getting "invalid recipe reloaded_380_p". I have all recipes unlocked on the character, so it should mean only this one isn't properly obsoleted.

data/json/itemgroups/Weapons_Mods_Ammo/ammo.json contains one missed entry of the reloaded variant.

Yep, checked, it hadn't been added to the recipe obsoletion list.

While doing some checked I noticed that Generic guns had duplicate entries in their obsoletion files without any clear purpose, so I streamlined it.

Also it turns out I completely forgot to remove references to reloaded ammunition in the item groups, that's been fixed.

For some reason this predates my changes to the system???

This means that all this time we've had a recipe that leads to an obsoleted item.

Added back into the game and made it reversible because I don't really understand why it was removed.
@Coolthulhu Coolthulhu merged commit 6f1c6c6 into cataclysmbnteam:upload May 3, 2022
@KheirFerrum KheirFerrum deleted the Remove-Handload-Quality-Distinction branch June 9, 2022 01:34
@chaosvolt chaosvolt mentioned this pull request Oct 25, 2022
16 tasks
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants