Cataclysm-dda: Stims and depressants aren't deadly

Created on 1 Apr 2017  路  7Comments  路  Source: CleverRaven/Cataclysm-DDA

Linux x64 gcc 0.C-21916-g18a9e4dd43 tiles

Crack has a "stim" value of 40, tainted tornado has a "stim" value of -60; these are the two extremes I found. You can consume both of them indefinitely (as long as you drink water and smoke pot to combat nausea) without dying, but this bit is supposed to kill you much more quickly than thirst.

Repro (here's a save already set up):

  • Obtain gobs of crack, tainted tornado, and optionally water/marijuana.
  • Smoke a few grams, drink some water, smoke a bowl, repeat. No heartsplosion.
  • Slam a few tornados, drink some water, smoke a bowl, repeat. You may need painkillers or food. No vegetablitis.
  • Shoot ~3g of heroin (wait a few minutes), finally die.

LD50 for crack is <10g, but smoking a kilo is non-lethal in current build. LD50 for heroin is <5g, but drinking gallons of a ~twice-as-powerful depressant is non-lethal in current build. Heroin does kill (via the painkiller check?), so this issue specifically regards +/-"stim"s from where I'm sitting.

Balance stale

Most helpful comment

It seems not to be guaranteed with 2, but is with 3.

Looks like stim effect is capped at 3 * stim of the food. And it needs to reach +/-200 (or 250?) to kill.

We can either increase the cap or invent some other kind of cap. Increasing has the problem of allowing stacking plain coffee for really strong effect.
We could have a witcher-ish system where each substance has "toxicity" that causes scaling penalties (up to constant damage) above certain point.

All 7 comments

It's because stim/pkill death is delayed to the next full 5 minute tick.
2 heroin uses in a row are enough to kill a non-addicted character.

It seems not to be guaranteed with 2, but is with 3.

Looks like stim effect is capped at 3 * stim of the food. And it needs to reach +/-200 (or 250?) to kill.

We can either increase the cap or invent some other kind of cap. Increasing has the problem of allowing stacking plain coffee for really strong effect.
We could have a witcher-ish system where each substance has "toxicity" that causes scaling penalties (up to constant damage) above certain point.

The witcherish method seems like the cleanest way to handle this, but there's still the problem of not blacking out from too much negative stim. Maybe pkill could add large negative stim as well, and not handle it separately when determining the cap to black out? Or scrap that system entirely?

Researching now, will post a table of suggested toxicity values once complete. I'll leave the coding to those who know what they're doing.

Here's the promised spreadsheet, the 'friendly' page is for exporting, the 'working' page shows my scribblework/explanations.

The toxicity_per_use column is the more useful one for this issue and is based on the dosage we currently use; the _per_mass one is just the substance's raw lethality without taking our dose sizes into account, scaled 0-100 nontoxic-poisonshroom.

Overall good for a start, though they do fray at the details:

  • Anything with value below 5% is effectively non-toxic
  • Alcohol is calculated by mass, while the in-game one is more "quantified" - there is weak (beer), medium (wines and liquor) and strong (just moonshine)
  • Wild apple is just 1 charge of liquor and 1 of juice (the in-game "cider" isn't really cider), meaning it is as toxic as 1 dose of liquor, but on the chart it got 4 times as much (similar for other mixed drinks)
  • Drying shrooms causes them to lose potency linearly with water mass
  • Water poisoning is negligible, caffeine could easily score a point or half on the scale

LD50 is not a good measure of overall toxicity, though if we only want this to handle death from overdose, it could work.

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions. Please do not \'bump\' or comment on this issue unless you are actively working on it. Stale issues, and stale issues that are closed are still considered.

This issue has been automatically closed due to lack of activity. This does not mean that we do not value the issue. Feel free to request that it be re-opened if you are going to actively work on it

Was this page helpful?
0 / 5 - 0 ratings