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

feat: mainline some craftable bionics with consistency updates #4119

Merged
merged 4 commits into from
Jan 20, 2024

Conversation

chaosvolt
Copy link
Member

@chaosvolt chaosvolt commented Jan 17, 2024

Purpose of change

This finally works on re-implementing craftable bionics in vanilla. I decided to start by mainlining the ones craftable in Aftershock, with some standardization.

Describe the solution

  1. Added vanilla recipes for all the CBMs craftable in Aftershock, properly alphabetized by ID with booklearn levels made more standardized. General principles:
  • Use a range of components already in vanilla instead of Aftershock techno-scrap items. In particular, superalloy is used for anything that reasonably seems like it'd need special housing or superstructure (and in place of titanium), while nanomaterial and a self-monitoring module are used where some element of the bionic interfaces with the bloodstream or otherwise has a medical purpose.
  • Decomp level and booklearn level are both consistently one level lower than primary difficulty.
  • Uses a baseline first aid subskill of 5 by default, 7 if working with a self-monitoring module is required.
  • Uses fine screwdriving and fine bolt turning in place of bionic maintenance kit.
  • Working with superalloy adds the additional need for 3 mechanics skill, welding requirement equal to half what the soldering requirement is, and fine metal sawing.
  • Bionic ranged weapon recipes require the use of a firearm repair or gunsmithing kit.
  • Add the need for an autoclave (or lab autoclave), an autoclave pouch, and water since we're currently making ready-to-install CBMs.
  • Made non-reversible since we still have separate uncrafts for them, plus that way dismantling CBMs won't require an autoclave.
  1. Removed obsoletion of the new recipes from obsoletion folder.
  2. Updated uncrafts for CBMs, setting them to use fine screwdriving, fine bolt turning, and fine metal sawing instead of soldering, and where relevant based components on the recipe.
  3. Removed reference to titanium in the skeletal bracing bionic now that it's craftable with superalloy (though to be fair that can be assumed to probably be an advanced titanium-steel alloy anyway).
  4. Misc: Removed some obsoleted uncrafts. There are some obsoleted uncrafts that ALSO have a placeholder uncraft buried in the uncraft folder, but for some reason deleting the obsoleted version causes skippable load errors so I left them in for now.
  5. Deleted file for Aftershock's CBM recipes since all the recipes in it were for vanilla stuff whose recipes are being mainlined.
CBM Recipes Mainlined:
  • Deployable Grenade Launcher
  • Alloy Plating - Arms
  • Alloy Plating - Head
  • Alloy Plating - Legs
  • Alloy Plating - Torso
  • Battery System
  • Internal Climate Control
  • EMP Projector
  • Aero-Evaporator
  • Cranial Flashlight
  • Power Storage
  • Power Storage Mk. II
  • Kinetic Shock Absorbers
  • Anti-Glare Compensators
  • Intravenous Needletip
  • Internal Unified Power System
  • Water Extraction Unit
  • Titanium Skeletal Bracing
  • Solar Panels

Describe alternatives you've considered

Adding code support for a recipe flag that spawns the item with the non-sterile fault. This would make the player have to sterilize it as a separate step, but would allow Infection Immune characters to skip some hassle, and allow using the alternative sterilization method too.

Testing

  1. Checked affected files for syntax and lint errors.
  2. Ported JSON and Aftershock changes to test build.
  3. Load-tested a save with Aftershock after having debug-learned all recipes, no errors.
  4. Spawned in a Metabolic Interchange CBM, despite its uncraft being listed as obsoleted in one file, the extant uncraft in another file still allows it to be taken apart.

Additional context

I plan to follow up on this with a few more easy additions. Shotgun Arm and Repair Nanobots are definite examples given this will extend what gun repair kits and nanites are used for in these recipes, maybe also Bionic Infolink. Probably extend it to all CBMs that have an uncraft buried in the JSON even, we'll see.

I also plan to add at least one recipe that uses memory modules as mentioned in #4103 but this will depend on whether I end up merging some of the CBMs together or not.

Checklist

Co-Authored-By: Maleclypse <54345792+Maleclypse@users.noreply.github.com>
Co-Authored-By: John Candlebury <johncandlebury@gmail.com>
@github-actions github-actions bot added JSON related to game datas in JSON format. mods PR changes related to mods. labels Jan 17, 2024
@scarf005 scarf005 self-requested a review January 20, 2024 06:43
@scarf005 scarf005 self-assigned this Jan 20, 2024
@scarf005 scarf005 merged commit 93cdb20 into cataclysmbnteam:main Jan 20, 2024
9 checks passed
@chaosvolt chaosvolt deleted the mainline-cbm-crafting branch January 20, 2024 07:10
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
JSON related to game datas in JSON format. mods PR changes related to mods.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants