08-12-2021, 11:38 AM
Right now, a large number of medical chems, rather than healing Y damage every tick, have an X% chance to heal Y damage every tick. This can make healing people rather RNG dependent, a problem only exacerbated once mult gets involved. From my own experiments, the game appears to only roll once if it's processing multiple ticks at the same time.
For why this matters, take salicylic acid, which has a 55% chance of healing 2 BRUTE. In a lag-free situation, the amount of healing and the chance of said healing occurring over a period of three ticks would be a 9.1125% (0.45 x 0.45 x 0.45) chance of healing 0 BRUTE, a 33.4125% ([0.45 x 0.45 x 0.55] + [0.45 x 0.55 x 0.45] + [0.55 x 0.45 x 0.45]) chance of healing 2 BRUTE, a 40.8375% ([0.55 x 0.55 x 0.45] + [0.55 x 0.45 x 0.55] + [0.45 x 0.55 x 0.55]) chance of healing 4 BRUTE, and a 16.6375% (0.55 x 0.55 x 0.55) chance of healing 6 BRUTE.
In a high lag situation, where three ticks are being processed at once, the possible outcomes would instead be a 45% chance of healing 0 BRUTE and a 55% chance of healing 6 BRUTE, because, as noted, it rolls once and multiplies the results. (This isn't even a particularly high multiplier for peak hours, as I recall.)
What I propose, then, is to go from X% of healing Y damage to healing X% of Y damage. I went ahead and did the math for a bunch of them. I generally won't be mentioning the stuff that wouldn't change to save me a bunch of typing. (I've not done overdose damage because that tends to be way more complicated and would mostly just get healed by the healing. Overdoses really need a rework, honestly.)
Format is [CHEMICAL - old behavior -> new behavior]
CHARCOAL - 50% chance of increasing depletion rate of all other chems by 1 -> increases depletion rates of all other chems by 0.5
EPHEDRINE - over 0 health 33% chance of -1 BRUTE, -1 BURN, 8% chance of -1 TOX; under 0 health -1 BRUTE, -1 BURN, 50% chance of -1 TOX -> over 0 health -0.33 BRUTE, -0.33 BURN, -0.08 TOX; under 0 health -1 BRUTE, -1 BURN, -0.5 TOX
MENTHOL - 55% chance of -2 BURN -> -1.1 BURN
MUGWORT - on INGEST by wizards, 85% chance of -1 LOSEBREATH, 45% chance of -1 OXY, 45% chance of -1 TOX, 45% chance of -6 BRUTE, 45% chance of -6 BURN -> on ingest by wizards, -0.85 LOSEBREATH, -0.45 OXY, -0.45 TOX, -2.7 BRUTE, -2.7 BURN
OCULINE - 80% chance of -1 eye damage, 80% chance of -1 ear damage -> -0.8 eye damage, -0.8 ear damage
OMNIZINE - 50% chance of -1 LOSEBREATH, 10% chance of -1 BLEED -> -0.5 LOSEBREATH, -0.1 BLEED
PENTETIC ACID - 75% chance of -4 TOX, 33% chance of +! BRUTE, 33% chance of +1 BURN -> -3 TOX, +0.33 BRUTE, +0.33 BURN
PERFLUORODECALIN - 33% chance of -1 BRUTE, 33% chance of -1 BURN -> -0.33 BRUTE, -0.33 BURN
POTASSIUM IODIDE - 33% chance of -1 kidney damage, 33% chance of -1 liver damage -> -0.33 kidney damage, -0.33 liver damage
PROCONVERTIN - 90% chance of -1 BLEED -> -0.9 BLEED
SALICYLIC ACID - 55% chance of -2 BRUTE -> -1.1 BRUTE
SALINE-GLUCOSE SOLUTION - 33% chance of -2 BRUTE, 33% chance of -2 BURN, 33% chance of generating 1u of blood -> -0.66 BRUTE, -0.66 BURN, +0.33u blood
STRANGE REAGENT - 10% chance of +2 BRUTE, 10% chance of +2 TOX -> +0.2 BRUTE, +0.2 TOX
STYPTIC POWDER - 5% chance of -1 BLEED -> -0.05 BLEED (The actual value isn't on the wiki, I'm going off of memory of the PR. It might be a higher chance, it was awhile back.)
SYNAPTIZINE - under 90 BRAIN, 50% chance of -1 BRAIN -> under 90 BRAIN, -0.5 BRAIN
Note that I'm not sure if LOSEBREATH, BRAIN, eye, ear, and organ damage can be non-integer values since the health analyzer doesn't give detailed information there. If they can't, it probably wouldn't be a big deal just to round it.
For why this matters, take salicylic acid, which has a 55% chance of healing 2 BRUTE. In a lag-free situation, the amount of healing and the chance of said healing occurring over a period of three ticks would be a 9.1125% (0.45 x 0.45 x 0.45) chance of healing 0 BRUTE, a 33.4125% ([0.45 x 0.45 x 0.55] + [0.45 x 0.55 x 0.45] + [0.55 x 0.45 x 0.45]) chance of healing 2 BRUTE, a 40.8375% ([0.55 x 0.55 x 0.45] + [0.55 x 0.45 x 0.55] + [0.45 x 0.55 x 0.55]) chance of healing 4 BRUTE, and a 16.6375% (0.55 x 0.55 x 0.55) chance of healing 6 BRUTE.
In a high lag situation, where three ticks are being processed at once, the possible outcomes would instead be a 45% chance of healing 0 BRUTE and a 55% chance of healing 6 BRUTE, because, as noted, it rolls once and multiplies the results. (This isn't even a particularly high multiplier for peak hours, as I recall.)
What I propose, then, is to go from X% of healing Y damage to healing X% of Y damage. I went ahead and did the math for a bunch of them. I generally won't be mentioning the stuff that wouldn't change to save me a bunch of typing. (I've not done overdose damage because that tends to be way more complicated and would mostly just get healed by the healing. Overdoses really need a rework, honestly.)
Format is [CHEMICAL - old behavior -> new behavior]
CHARCOAL - 50% chance of increasing depletion rate of all other chems by 1 -> increases depletion rates of all other chems by 0.5
EPHEDRINE - over 0 health 33% chance of -1 BRUTE, -1 BURN, 8% chance of -1 TOX; under 0 health -1 BRUTE, -1 BURN, 50% chance of -1 TOX -> over 0 health -0.33 BRUTE, -0.33 BURN, -0.08 TOX; under 0 health -1 BRUTE, -1 BURN, -0.5 TOX
MENTHOL - 55% chance of -2 BURN -> -1.1 BURN
MUGWORT - on INGEST by wizards, 85% chance of -1 LOSEBREATH, 45% chance of -1 OXY, 45% chance of -1 TOX, 45% chance of -6 BRUTE, 45% chance of -6 BURN -> on ingest by wizards, -0.85 LOSEBREATH, -0.45 OXY, -0.45 TOX, -2.7 BRUTE, -2.7 BURN
OCULINE - 80% chance of -1 eye damage, 80% chance of -1 ear damage -> -0.8 eye damage, -0.8 ear damage
OMNIZINE - 50% chance of -1 LOSEBREATH, 10% chance of -1 BLEED -> -0.5 LOSEBREATH, -0.1 BLEED
PENTETIC ACID - 75% chance of -4 TOX, 33% chance of +! BRUTE, 33% chance of +1 BURN -> -3 TOX, +0.33 BRUTE, +0.33 BURN
PERFLUORODECALIN - 33% chance of -1 BRUTE, 33% chance of -1 BURN -> -0.33 BRUTE, -0.33 BURN
POTASSIUM IODIDE - 33% chance of -1 kidney damage, 33% chance of -1 liver damage -> -0.33 kidney damage, -0.33 liver damage
PROCONVERTIN - 90% chance of -1 BLEED -> -0.9 BLEED
SALICYLIC ACID - 55% chance of -2 BRUTE -> -1.1 BRUTE
SALINE-GLUCOSE SOLUTION - 33% chance of -2 BRUTE, 33% chance of -2 BURN, 33% chance of generating 1u of blood -> -0.66 BRUTE, -0.66 BURN, +0.33u blood
STRANGE REAGENT - 10% chance of +2 BRUTE, 10% chance of +2 TOX -> +0.2 BRUTE, +0.2 TOX
STYPTIC POWDER - 5% chance of -1 BLEED -> -0.05 BLEED (The actual value isn't on the wiki, I'm going off of memory of the PR. It might be a higher chance, it was awhile back.)
SYNAPTIZINE - under 90 BRAIN, 50% chance of -1 BRAIN -> under 90 BRAIN, -0.5 BRAIN
Note that I'm not sure if LOSEBREATH, BRAIN, eye, ear, and organ damage can be non-integer values since the health analyzer doesn't give detailed information there. If they can't, it probably wouldn't be a big deal just to round it.