The Great "Install Bionics" Rebalance!

I wrote this long essay on why the whole installing bionics system is broken, but it’s too in depth. I can upload it if you want, but (believe it or not) this massive post is a summary.

[b]Main points:

  1. Chance of success doesn’t change enough when you do (or don’t) have the right stats and skills
  2. The different failure types when installing (which are only based on your success chance and randomness) are too hard on highly skilled characters and too easy on unskilled characters
  3. The equation to calculate install skill is a bit off, and the flat “chance of success” curve makes the problem worse.
  4. Bionics difficulty needs to be tweaked.[/b]

I got excited and spent the last 2 days looking over the code and then thinking about how it could be improved. I think I have good suggestions to items 1-3 on my list above. I won’t mess with bionics difficulty until the other stuff is set.

So here are my suggestions. I’ll try to add them to the code, but a more experienced hand is welcome here too.

SPOILER ALERT: This whole post covers mechanics. Don’t read if you don’t want to know

INSTALL SKILL:

current skill = 0.25*int + electronics + 0.75*first_aid + 0.50*mechanics proposed skill = int + electronics + 0.75*first_aid + 0.25*mechanics

Increase the affect of Int and decrease Mechanics. Int is costly to increase during character creation and competes with other important stats (i.e. it forces specialization). Mech is easy to increase, and there is already plenty of incentive to do so. Most players will train mech regardless of strategy to get some kind of vehicle.

The other key part is to increase the range of the install skill A big range makes it easier for us to use it as a variable in the success equation. Based on our model low, avg, and high level characters above, the range is:

[table]
[tr]
[td] [/td]
[td]low[/td][td][/td]
[td]avg[/td][td][/td]
[td]high[/td]
[/tr]
[tr]
[td]int:[/td][td]6[/td][td][/td][td]10[/td][td][/td][td]20[/td]
[/tr][tr]
[td]elec:[/td][td]2[/td][td][/td][td]5[/td][td][/td][td]10[/td]
[/tr][tr]
[td]first_aid:[/td][td]2[/td][td][/td][td]5[/td][td][/td][td]10[/td]
[/tr][tr]
[td]mech:[/td][td]2[/td][td][/td][td]5[/td][td][/td][td]10[/td]
[/tr][tr]
[td]current skill:[/td][td]6[/td][td][/td][td]13.75[/td][td][/td][td]27.5[/td]
[/tr][tr]
[td]new skill[/td][td]10[/td][td][/td][td]20[/td][td][/td][td]40[/td]
[/tr]
[/table]

This example doesn’t make all the nuances clear, but int doesn’t matter in the old system. For a level 4 bionic in the old system, a 6 int character with skills at 10 10 10 has a 85% chance of success. Boosting int to 20 makes it an 87% chance of success. Int is soooo useless here. So even though my proposed system starts at 10 instead of 6 for our model low-lvl character, the dynamic range would be 30 (40-10) instead of 21.5. Maybe not perfect, but an improvement. The secret sauce is applying it to the success rate.

CHANCE OF SUCCESS:

The current chance of success is given by the equation:
skill/(skill + difficulty)
While it is nice and simple, install skill in its current implementation does not have a wide range, and difficulty in the denominator makes the curves really flat. Here is what they look like:

It’s pretty easy to get any character to an install skill of 15 or so, which means that building a character with bionics in mind to boost the success chance is stupid. Diamond Cornea will have a success chance in the low 70s at best, and the way punishments are, it’s extremely risky. I really feel like making bionics less accessible for “unskilled” characters and less risky for characters built for them creates a new strategic opportunity in the game (well, it makes it work like I think it was intended anyway).

So here is the same graph based on a new equation that I propose:

I changed two things here. I changed the skill equation to the one I proposed above. Then, to calculate success, I had 3 steps.

First, shift the skill range to between ~0.4 and 30.

Second, use the ratio of skill / difficulty as our metric to success. If skill is bigger than difficulty, this will be greater than one. If skill is less, it will be a fraction. If skill = difficulty, it will be 1.

Finally, use an equation that will give us the curve we want while staying bounded between 0 and 1. When x = 1, this gives a 50% chance of success. The square root term becomes larger as x decreases. As you can see from the graph, this gives us really nice behavior. Our “low” character should not be able to install a bionic. Our average character should be able to install easy bionics consistently. Our high example should be really good at installing any bionic (e.g. no risk of malfunction). The only downside is that calculating success requires using a square root. To do this, we either have to import math.h or use a loop to calculate the square root by hand (not hard. A simple algorithm is explained here: http://answers.yahoo.com/question/index?qid=20081002085704AAeaUPd).

PUNISHMENT:

I showed a graph above of success rates for a range of skill levels. Let me show a similar graph. This one is the odds of different punishments where the X axis is the “chance of failure” (i.e. 1 - chance_of_success).

The chance of no punishment is flat because it is calculated before all the other punishments are considered. For the actual punishments, the main problem with the curves is how slowly they go to zero. This again puts a big emphasis on luck and limits the benefit of improving your skill level. In my opinion, an ideal high-level player installing a tough bionic should never have the possibility of the bionic malfunctioning. It’s game breaking right now. We don’t want to make them permenantly handicap a smart, late-game character because RNG rolled a perfect 99 or 100. I could go into a lot more here, because at a more fundamental level I disagree with the random number distributions that the current system uses. But you get the idea. I’ll stop.

Here is an alternative that lets higher skill players install bionics without fear of permanent damage. The graph first for comparison:

Sorry for the noise in the graph. I made both of these through simulations. I was a little anxious and had smaller sample sizes with this one. Just noticed I missed labeling the axes too. X-axis is chance of failure. Y-axis is chance of a specific punishment if you try to install. If you have better than a 65% chance of success, you won’t get a malfunction. Better than 80%, you won’t lose other bionics. Also, if you fail big on an install, the “no punishment” option goes near zero, and the odds are something really bad will happen.

These curves depend on the “success” variable in-game (e.g. If you had a success chance of 70% and when you tried to install the bionic, the RNG rolled 84%, the success variable in the bionics_install_failure function ends up as abs(70-84)=14) and also the skill/difficulty ratio. The original equation uses only the success variable to decide punishment. Using the ratio as well provides a way to punish players for attempting an install that was too difficult and weaken the punishment for skilled players installing something that should be routine. This mimics real life in a satisfying way and makes a “bionics build” something players can go for. The equations to produce this are:

Nice and simple. Unless the sqrt() kills the speed, it may even be faster than the current method for bad failures.

CONCLUSION:

So that’s it. Those are my suggestions. Please give feedback on the idea of making bionics safer for highly skilled installers and more dangerous for characters with low install skill and low intelligence. Also, please give feedback on the implementation. There is more than one way to mathematically represent the ideas. I will try to make a pull request with these changes reflected in the code (assuming this gets a good response), but I’m not a C++ programmer. Others are welcome to put this in the code.

Edit: had an error in the “x =” equation. Fixed now. Also, this rebalance made is now pulled into the code. Yay!

Wow, I would love to see more research in this format extended into videogames like this.

Expect a full report later today (about 5-6 hours). The internet ate my last post, with about 500 words in it. Grumble grumble.

But I am excited to see the full report.

This is amazing!

Can this get pulled into git asap?

So onto my original report (rewriting takes longer than writing for some reason).

Firstly nice report, I approve.
Secondly, why have an inverse exponential growth rate on installation chance? Would it not follow your original idea better (low level player get few bionics, high get more) if the path instead followed an exponential path? Or maybe something like the attached graph (yes, that is MS Paint). With a more complex system people would be able to fall under 3 arch types, either low, mid or high level players, and giving their chances based on that, instead of a low/high player test.

Thirdly there was an argument with your punishment system that had me wondering something. If a low level player tried installing a bionic, according to your charts they would succeed, or at least succeed with a malfunctioning bionic. This ties into my last point that will illustrate further on my idea.

Lastly, your proposed system of punishments seems a bit too simplistic and does not take into consideration a character’s skill sets and abilities. Say for example that a electronics expert tries to install his own bionics, he is more likely to install it correctly and get all the gizmos and gadgets working, but is also more likely to hurt himself in the process. Conversely if a medical doctor were to do the same thing they would probably fail on the gadgets side and succeed on the medical side. Therefore my suggestion to you is to create a punishment system in which a character’s skills and abilities are taken into consideration and are used in order to create the most logical punishment from the choices. It would make sense that people are better at some things than others, and I think it is best to represent this in game.

Do you have any arguments with my analysis? I still want to see the full report and would like to see if my arguments are not voided within that report.



Thanks.

I’m sure a better formula is out there. Yours looks good, but I don’t know how to scale that up and down with difficulty (i.e. the 3rd dimension of that graph). Also, players in the average category “plateau” might get confused why they aren’t seeing big install success gains when they bump up their skill. You have a double sigmoid curve drawn, and I do think sigmoid curves are the way to go. The equation I used is sort of a skewed sigmoid curve. I think it works in deterring low level players because the curve shifts based on that skill/difficulty ratio. I plotted chance of success vs. install skill. I think if I had plotted chance of success vs. difficulty for different fixed install skills you would see the behavior you want. It drops off quickly if your skill is less than the difficulty. For high skill characters, I really don’t think difficult bionics should go much beyond 80% or 85% success rate, so it is kind of tuned for that. Keep in mind that above 80% success, the punishment for failing is pretty mild, so I think flattening out there is okay.

Maybe I don’t fully understand malfunctioning bionics. They are the worst fail type in the game and considered a failure. It looks to me like instead of giving you the benefit of the bionic, they do nasty things like zap and stun you occaisionally. And, you can’t remove them! So they give a permanent handicap. Probably a pretty accurate punishment. Just to pull a data point from what I am proposing, a character with 14 install skill trying to install a lvl 10 bionic would have a 20% chance of success and a 70% chance of getting a malfunctioning bionic. Under the old scheme, the same character would have a success chance in the 40% range and maybe a 6% chance of malfunction. Honestly, the way it is now, if you stumble upon a nice bionic early, it’s almost worth trying to install it right away. There is a good reward if it succeeds, and on the off chance it fails badly, at least you didn’t spend much IRL time on that character.

This is a cool idea. I like it. Let the chances of malfunction depend on electronics skill, mutation depend on first aid and robust genetics, and “lose bionics” depend on mechanics (and intelligence?). Pain and damage would fill in the rest. No punishment could scale up with intelligence (i.e. you know when to stop trying). This is cool.

I believe it, you obviously put a huge amount of work into this, and it’s actually pretty succinct.

[quote=“phaethon, post:1, topic:2559”][b]Main points:

  1. Chance of success doesn’t change enough when you do (or don’t) have the right stats and skills
  2. The different failure types when installing (which are only based on your success chance and randomness) are too hard on highly skilled characters and too easy on unskilled characters
  3. The equation to calculate install skill is a bit off, and the flat “chance of success” curve makes the problem worse.
  4. Bionics difficulty needs to be tweaked.[/b][/quote]
  1. It’s somewhat intended that you can “overcome” low stats with skills, but yea, int probabnly doesn’t play enough of a role here.
  2. Totally agree, having failure severity influenced very heavily by failure magnitude is desireable.
  3. You got kind of vague on this one, you explain it later.
  4. Seperate issue, sure.

[quote=“phaethon, post:1, topic:2559”]I got excited and spent the last 2 days looking over the code and then thinking about how it could be improved. I think I have good suggestions to items 1-3 on my list above. I won’t mess with bionics difficulty until the other stuff is set.

So here are my suggestions. I’ll try to add them to the code, but a more experienced hand is welcome here too.[/quote]
It looks like you have the hard part dealt with, with a design this detailed, implementing it in C++ isn’t goint to be hard.

[quote=“phaethon, post:1, topic:2559”]SPOILER ALERT: This whole post covers mechanics. Don’t read if you don’t want to know

INSTALL SKILL:

current skill = 0.25*int + electronics + 0.75*first_aid + 0.50*mechanics proposed skill = int + electronics + 0.75*first_aid + 0.25*mechanics

Increase the affect of Int and decrease Mechanics. Int is costly to increase during character creation and competes with other important stats (i.e. it forces specialization). Mech is easy to increase, and there is already plenty of incentive to do so. Most players will train mech regardless of strategy to get some kind of vehicle.

The other key part is to increase the range of the install skill A big range makes it easier for us to use it as a variable in the success equation.[/quote]
Seems reasonable, gives long-term consequences to stat choices.

[quote=“phaethon, post:1, topic:2559”]CHANCE OF SUCCESS:
I changed two things here. I changed the skill equation to the one I proposed above. Then, to calculate success, I had 3 steps.

[/quote]
This is a bit complex, but as long as we’re careful to break it down and annotate it with something similar to your explanation below it should be fine.

[quote=“phaethon, post:1, topic:2559”]First, shift the skill range to between ~0.4 and 30.

Second, use the ratio of skill / difficulty as our metric to success. If skill is bigger than difficulty, this will be a positive number. If skill is less, it will be negative. If skill = difficulty, it will be 0.

Finally, use an equation that will give us the curve we want while staying bounded between 0 and 1. As you can see from the graph, this gives us really nice behavior. Our “low” character should not be able to install a bionic. Our average character should be able to install easy bionics consistently. Our high example should be really good at installing any bionic (e.g. no risk of malfunction). The only downside is that calculating success requires using a square root. To do this, we either have to import math.h or use a loop to calculate the square root by hand (not hard. A simple algorithm is explained here: http://answers.yahoo.com/question/index?qid=20081002085704AAeaUPd).[/quote]
Two things here.
One, performance isn’t an issue, sqrt and trig functions and floating-point math are to be avoided in performance-critical parts of programs, like rendering, but in skill checks we can pretty much make them arbitrarally complicated as long as they aren’t doing something silly like running simulations.
Two, we’re a very dependency-averse project, but not THAT dependency averse, we already use math.h in various places.

[quote=“phaethon, post:1, topic:2559”]PUNISHMENT:
[SNIP]
[/quote]
Ok that’s pretty much ideal for this approach
Also an observation, we can pick some arbitrary threshold where the player knows how good they are, and remove it from the list of potential problems at the installation warning, meaning people don’t have to look up the difficulty equation on the wiki and try and calculate it to figure out if the risk is acceptable, but rather just attempt to install and check the list of potential consequences.

[quote=“phaethon, post:1, topic:2559”]

Nice and simple. Unless the sqrt() kills the speed, it may even be faster than the current method for bad failures.

CONCLUSION:

So that’s it. Those are my suggestions. Please give feedback on the idea of making bionics safer for highly skilled installers and more dangerous for characters with low install skill and low intelligence. Also, please give feedback on the implementation. There is more than one way to mathematically represent the ideas. I will try to make a pull request with these changes reflected in the code (assuming this gets a good response), but I’m not a C++ programmer. Others are welcome to put this in the code.[/quote]

[quote=“Otaku”]Lastly, your proposed system of punishments seems a bit too simplistic and does not take into consideration a character’s skill sets and abilities. Say for example that a electronics expert tries to
install his own bionics, he is more likely to install it correctly and get all the gizmos and gadgets working, but is also more likely to hurt himself in the process. Conversely if a medical doctor
were to do the same thing they would probably fail on the gadgets side and succeed on the medical side. Therefore my suggestion to you is to create a punishment system in which a character’s skills
and abilities are taken into consideration and are used in order to create the most logical punishment from the choices. It would make sense that people are better at some things than others, and I
think it is best to represent this in game.[/quote]
Well to be fair ‘his’ system is the existing system with the probabilities changed, the failings already existed :wink:
To implement what you propose, we’d (internally, no need to clutter the UI) break the operation into multiple steps governed by different skills. As a rough example, we might have:
“activation” - Activate and prep the module for implantation. Based on int and electronics. Failure results in damage to the module.
“surgery” - making any necessary incisions and such needed to implant the device(s), physically implant them, and to close up afterwards. Based on dex and first aid. Failure generally results in pain, infection, etc. but rarely damage to the module.
“integration” - Activating and integrating the installed module. Based on computers(!!!) and int. Failure results in a inert or malfunctioning module.

With it broken up like this, you can more easily tie sensical consequences to various failures, and give more varied failure messages. Also, since the steps proceed sequentially, a very bad failure will halt the process. So for example if you totally botch the activation step, you fry the CBM, but you never even start on the surgery. On the other hand, you might damage the module without knowing it and keep going. (ESD FTL!) Also this opens the door to having variable installation difficulties based on the properties of the bionincs, for example the under-skin armor CBMs would have a negligible activation and integration dificulty, but a very high surgery difficulty.

Within these categories though, I think the same formulae more or less apply, so this would be in addition to phaethon’s plan, and I think proceeding with implementing his ideas is something we could do right away, while something like the above is something it’d be nice to work toward.

Hey guys, I really appreciate the supportive feedback! Thanks for reading and commenting.

I agree fully on informing the player of risks! Editing the consequences list would be cool. I had thought about making the chance of success colored green above 80%, yellow above 65% (and below 80%), and red if less than 65%. Editing the consequences list is much more informative than color, though. I couldn’t find the code for when the chance of success is displayed on the screen.

A given failure_type is not possible when sqrt( (100-chance_of_success) * difficulty / adjusted_skill ) is less than that number. For example, if my raw skill is 15, the difficulty is 5, and my chance of success is 50%, this equation evaluates to: sqrt ( (100 - 50) * 10 / 5 ) = 10. (Note: adjusted_skill = 15 - 10 in this case). Since 10 is greater than 5, so all consequences are in play, but hopefully you get the idea. I don’t know of a good way to edit the consequence list without doing the full calculation. I don’t know how the display is generated, so I don’t know how hard this is to code up.

On a separate note, I tried to implement the chance of success and failure calculations in C++ and initiated a pull request to try to give the change some momentum. I need a better coder to check my changes, though, before merging.

bionics.cpp, line 508

[quote=“phaethon, post:7, topic:2559”]A given failure_type is not possible when sqrt( (100-chance_of_success) * difficulty / adjusted_skill ) is less than that number. For example, if my raw skill is 15, the difficulty is 5, and my chance of success is 50%, this equation evaluates to: sqrt ( (100 - 50) * 10 / 5 ) = 10. (Note: adjusted_skill = 15 - 10 in this case). Since 10 is greater than 5, so all consequences are in play, but hopefully you get the idea. I don’t know of a good way to edit the consequence list without doing the full calculation. I don’t know how the display is generated, so I don’t know how hard this is to code up.

On a separate note, I tried to implement the chance of success and failure calculations in C++ and initiated a pull request to try to give the change some momentum. I need a better coder to check my changes, though, before merging.[/quote]
Cool, I’ll take a look tonight, that’s kind of my job around here :wink:

Might i add if anything is done about success rate or the penalties of failing people would just save scum until they suceed?
Kevin or GalenEvil would you consider making the game autosave after installing a cbm wether it suceeded or not? So we would be forced to accept the consequences of trying to install a difficult cbm at low levels of skills . I feel like retrying until you suceed is a bit cheating just like it is for mutagens.

For exemple said player save scum his mutagens until he gets the ones he exactly want and does the same for cbm until it suceed. A hour or two after goes on irc saying the game is too easy and has nothing left to do, but thats only cause cheated his character to be so powerful but thinks its a feature rather than a exploit.

Just a thought i had to make the game more challenging and punishing yet still fun.

I think that calling it cheating is sort of a misnomer. Cataclysm is a single player game; if they’re cheating then who exactly are they cheating?

If people want to save scum, I say let them. It’s not like it’s depriving anyone else of anything.

This rebalance would affect those of us who don’t savescum, and for those who do it would make no difference - but that’s likely how they would want it anyway.

So in the end everyone would be happy.

The game autosaves when you die btw and its a much worse penalty than just loosing a few things from failing a cbm install.

Thats a feature of rougelikes, and is called permadeath. Its something that attracts people.

How about adding an extra variable s = helpful supplies to the whole function?
The difference of doing surgery with a pocket knife or scalpels, usage of medical grade painkillers or street Meth or none at all, disinfectants, everything else possibly related.
Maybe an anatomy book which would not only be helpful studying first aid but also give a small buff for bionic installation (possibly temporary so you have to study/read it before attempting an b. installation).

Also on a different note regarding penalties (making them more severe, hehe), how about losing body parts?
Fail to install Mini-Flamethrowers (both index fingers according to wiki), possible failure includes permanent dex penalty.
Same for finger mounted laser, finger hack, finger pick.
Integrated Toolset, risk of losing a whole hand.
Fusion blaster risk of losing your whole arm.

Since i never lost a limb in-game I’m not sure what the penalties include atm.

Autosave after CBM installation isn’t going to help, savescummers can just save and do a save file backup before installing. (I did this when learning to play Zangband back in the day, but have since decided it’s toxic to my enjoyment of games to do things like this)

There is one way to do it, which is to tie success to the item, and calculate success rate at item generation time, wich pushes the random check back before the player is even aware of the items existence. However, I’m very against having an arms race with savescummers. I don’t have a problem with people doing it, and I can’t force people to “play the right way”. It’s fairly absurd to do so when we also don’t obfsucate the savefiles or disable the debug menu on release. My preference is to make it clear when things are exploits and leave it to the player to make the final decision.

Deleting the player file on death is actually a legacy issue and I’m planning on changing it to “move player savefile to a graveyard”. If people want to savescum, they can feel free to do so, in my personal opinion they’re likely to be removing fun from the game, but that’s their choice to make. IMO this is a good compromise, they’re obviously not using a game feature at this point, but if they really want to, we’re not fighting them. Also we can use dead player savefiles to do a postmortem of the player for a graveyard feature.

The tools idea is pretty cool, although the whole point of the CBM concept is to keep things simple. If/when we do more extensive medical stuff it’d be a no-brainer to work CBMs into it though.

That makes sense, if theyre willing to go thru that much trouble to the point of making backups everytime i guess nothing can be done about it.

Woohoo! The rebalance made it into the code. Thanks Kevin for the pull and thanks to everyone for the feedback.

In perusing this thread and others in the forum, I found several really good ideas for other ways to improve the bionics aspect of the game. In an effort to preserve these ideas, I listed some good ones below and tried to put them in order of priority when they could be implemented… sort of a roadmap without being tied to target version numbers.

Future Bionics Ideas:

1) Install Menu Update: Kevin’s idea (in this thread) of a more descriptive (while still simple) menu when you attempt to install a bionic

  • change list of possible consequences based on what could happen
  • give the player more realistic messages instead of exact success percentages (e.g. “You are confident you can install this.” or “The thought of trying to install this terrifies you.”) If it’s too verbose, we could just report things like “Easy”, “Hard”, etc. I just don’t like “3% chance of failure”. If we can’t tell the time of day without a wristwatch, how could we know surgery outcome statistics?

2) Associate bionics with bodyparts: This would limit the number of bionics you can install and force decision making. I’ve seen The Darkling Wolf mention this (here) in the forums. This is a good way to force strategic choices and to keep adding new bionics without making it so that bionics users are totally “death on a stick” overpowered. For example, you could either take a legs bionic that improves movement speed or a different one that boosts carrying weight, but not both.

3) Adjust punishments based on skills: This is Otaku’s idea (in this thread) on scaling punishment likelyhood’s with different skill levels. We should at least explore this idea. It may not be practical to integrate it in-game, but it would be a nice touch if it works out.

4) Success modifiers: I like Scheuche’s idea (in this thread), but Kevin also has a point that “compact bionics modules” are suppposed to come complete with sterile install tools (though if this is the case, it doesn’t really make sense that we recover the entire module, tools and all, from shocker zombie corpses). I like TaintedHolyWater’s idea (here) of a sadistic surgery bot added to the game that boosts success chance greatly, but that has other consequences… (e.g. “Robot: out of anaethetics… no matter” Installation successful, but some zombies were attracted by your screams). Maybe spawn the surgery bot at the end of the advanced bionics lab. That’s a pretty low spawn rate and sort of a late-game location. I think hospitals are too easy. The bot needs to be hard to find since it opens up new late-game bionics for the player.

5) Consolidate bionics: The nature of games with really high community contribution (and Cataclysm is the extreme of this!) is that too many items get added to the game. It gets annoying wading through all the junk to find the item you need. By the time items 1-4 are finished, bionics will almost certainly need to be pruned to a reasonable set with bonuses that complement each other and aren’t overpowered. Everything else can be moved to an optional game mod. Shoot, if the devs/community don’t like it, even the ideas in this roadmap would be bumped to a mod.

Other ideas/comments/critiques? Please add them.

Oh, do we really need to put “obtained” bionics in boiling water? I’d rather work it around a bit, which will eventually prove that CBMs are multitools with specific, high-grade electronics. Once you lose the wrap, you can either install it, or funk with it so to get a burnt-out one; exclusions could be rare, for even more advanced bionics that have multiple purpose, perhaps even a choice. The deal would be that the unit itself, not the packaging, has the means (call it power, or sustenance, whatever) to preserve its function as long as it is handled with care. I like the idea of enhancing unwrapped CBMs; the main deal would be the great combine, which could allow superweapons and energy dedication. So to conclude, finding the latest-edge-grade CBM could prove significantly more useful than the one you sliced off some poor guy down at the Wall Mart.

You want suggestions? No problem!

Chance of success = Output to player
92-100% = Installing the [Bionic_name] looks like an easy procedure to you.
72-91% = Installing the [Bionic_name] looks like a routine procedure to you.
41-71% = Installing the [Bionic_name] looks like a gamble to you.
0-40% = Installing the [Bionic_name] looks like instant death to you.

Why in these intervals? I’m glad you asked, because with increasing skill your character should get better at diagnosing the difficulty of an operation and their own proficiency in getting things done.

If the plan is to further flesh out the bionics system, then associating bionics with body parts or rather sections would make sense.
The question is: How in depth are we/you/the dev team willing to go?
Whats it gonna be?

A) Head/Torso/Arms/Legs

B) Head/Torso/ArmL/ArmR/LegL/LegR

C) Cranium/Brain/Eyes/Mouth/Nose/Ears/Backbone/Heart/Lungs/Intestines/Stomach…Bones/Skin etc

I think it would be best if the deepest CDDA goes would be somewhere between B and C…because C is way too deep and would need way too many Bionics with little (at least hard to imagine) gameplay value.
Right now there is already quite a list, and even though I sometimes miss having an actual Cybernetic arm with “Options” to install like the fusion blaster (which could be an optional upgrade instead of the permanent megaman-arm), the Fingerpick/hack, Integrated Toolset and so on I am aware that CDDA is not a Cyberpunk/Dark Future RPG with heavy emphasis on Cybernetics.

I think it would be best if the deepest CDDA goes would be somewhere between B and C..because C is way too deep and would need way too many Bionics with little (at least hard to imagine) gameplay value.

If you think so, why propose C at all?

That said, I like the rest of the ideas you presented.

I guess I got a bit ahead of myself…that usually only happens when I’m excited about something - which in turn usually doesn’t happen.

I would love if we could have a UI section for Cybernetics/Bionics that kind of works like an…“inventory screen” mixed with the current Clothing layer screen.
That screen could be divided into Cranium, Torso, ArmL, ArmR, LegL, LegR.
Each section would “house” different bionics, with obvious limitations(which are already in the game, afaik) like being unable to have diamond cornea twice and similar silly stuff.

Cranium Bionics:
-Alarm System, Alloy Plating, Diamond Cornea, Enhanced Hearing, Enhanced Memory Banks, Sensory Dulling, Nictating Membrane, Membrane Oxygenator, Targetting System, Infrared Vision, Air Filtration System, Cranial Flashlight, Facial Distortion,

Torso Bionics:
Alloy Plating, Active Defense System, Offensive Defense System, Subdermal Carbon Filament, Battery System, Ethanol Burner, Internal Battery, Internal Furnace, Metabolic Interchange, Solar Panels, Internal Climate Control, Thermal Dissipation, Blood Filter, Expanded Digestive System, Internal Storage, Aero-Evaporator, Recycler Unit, Repair Nanobots, Blood Analysis, Cloaking System, Directional EMP, Olfactory Mask, Sonic Resonator, Power Armor Interface, Teleportation Unit, Time Dilation

Arm Bionics:
Adamantium Claws, Alloy Plating, Electroshock Unit, Heat Drain, Integrated Toolset, Water Extraction Unit, Electromagnetic Unit, Fingermounted Laser, Fingerhack, Fingerpick, Fusion Blaster, Hydraulic Muscles, Mini-Flamethrower, Railgun,

Leg Bionics:
Alloy Plating, Terranian Sonar,

This is what we have right now (used the current state of the wiki, so something may have been left out) divided into the (I think) appropriate sections.

We could add a system similar to how mutations work, where certain bionics block certain others, like only being able to have one heart modification, so you would have to choose between Blood Filter OR Blood Analyzer.

We could also introduce a new mechanic like Bionic Limbs converting normal Limbs to mechanical prosthetics, which would make them more durable (either more health or harder to dmg ie Cut/Bash/Pierce Resists) but also make it so you cannot heal them with bandages/medkits or by sleeping (unless you have Repair Nanobots installed) and instead would have to repair them with appropriate Tools and Scrap/Metal/Plastics/whatever. This could also have the sideeffect of further Installations of Arm Bionics to be more dependent on Mechanics/Electronics instead of First Aid, since you are no longer working with human flesh.

There might be room for new Bionics like
-Smartlinks(Arms) to work in tandem with Weapons modded into Smartguns(Weapon mod) and the Targeting System(Cranium)
-Wired Reflexes(Backbone…so Torso) which works like Quick(Trait) and gives a Bonus to AP
-Reinforced Backbone (see above) which grants extra carry weight
-Hydraulic Systems(Leg) to increase jump Height/Range for when the z-levels come

There a lots of possibilities and yes I am aware that this might look like a cyberpunk total conversion request or whatever - but its not.

I think there is a lot of potential for enabling players to have an experience quite special to the way they want to play the game.
The Hobo that became a Bionic Super-Soldier and rid the Post-Cataclysm-Wasteland of the evil [insert Mob/NPC Faction here] and helped the [insert another NPC Faction here] to flourish.

Of course, the same basic system could be done for Mutations, and obviously having a Bionic Arm should make it impossible to gain mutations that are tied to that limb like all the Claw/Talon Mutations, Arm tentacles (even though additional tentacles could sprout from somewhere else)

Well…yeah.
Btw I love CDDA, no other game of its kind has quite as much depth and attention to details.
Go team!