Difference between revisions of "Category:Stats - Drug"
Jump to navigation
Jump to search
m (DrugStatsUtility of Drug Category) |
m |
||
(One intermediate revision by the same user not shown) | |||
Line 10: | Line 10: | ||
|- | |- | ||
! High gain per dose | ! High gain per dose | ||
− | | highGiver.severity | + | | highGiver.severity.ToStringPercent() |
| The intensity of high gained per dose of this drug. | | The intensity of high gained per dose of this drug. | ||
| 2480 | | 2480 | ||
|- | |- | ||
! High fall rate | ! High fall rate | ||
− | | { | + | | {highFall.ToStringPercent()} / day |
| How much this drug's high will decay each day. | | How much this drug's high will decay each day. | ||
| 2470 | | 2470 | ||
|- | |- | ||
! High duration per dose | ! High duration per dose | ||
− | | { | + | | {(highGiver.severity / highFall).ToString("F1")} days |
− | | How long this drug's high will last per dose. | + | | How long this drug's high will last per dose.<br /><br />This is calculated from the high gained per dose and the high fall rate. |
| 2460 | | 2460 | ||
|- | |- | ||
! Tolerance gain per dose | ! Tolerance gain per dose | ||
− | | toleranceGain | + | | toleranceGain.ToStringPercent() |
− | | How much a user's tolerance to the chemical will increase for each dose of this drug. | + | | How much a user's tolerance to the chemical will increase for each dose of this drug.<br /><br />This can be different for different forms of the same chemical. |
| 2450 | | 2450 | ||
|- | |- | ||
! Tolerance fall rate | ! Tolerance fall rate | ||
− | | { | + | | {DrugStatsUtility.GetToleranceOffsetPerDay(def).ToStringPercent()} / day |
| How much a user's tolerance to the chemical will fall per day. | | How much a user's tolerance to the chemical will fall per day. | ||
| 2440 | | 2440 | ||
Line 36: | Line 36: | ||
! Chemical | ! Chemical | ||
| drugComp.chemical.LabelCap | | drugComp.chemical.LabelCap | ||
− | | The active chemical in this. | + | | The active chemical in this.<br /><br />In some cases, the same chemical is present in multiple different drugs. These different drugs will satisfy the same addiction in different ways. |
| 2490 | | 2490 | ||
|- | |- | ||
! Random overdose chance | ! Random overdose chance | ||
− | | drugComp.largeOverdoseChance | + | | drugComp.largeOverdoseChance.ToStringPercent() |
| The chance of a random overdose when taking this drug. Random overdoses can happen on any dose, whether it's a new user's first try or an experienced addict's hundredth hit. | | The chance of a random overdose when taking this drug. Random overdoses can happen on any dose, whether it's a new user's first try or an experienced addict's hundredth hit. | ||
| 2380 | | 2380 | ||
Line 46: | Line 46: | ||
! Safe dose interval for adults | ! Safe dose interval for adults | ||
| DrugStatsUtility.GetSafeDoseIntervalReadout(def) | | DrugStatsUtility.GetSafeDoseIntervalReadout(def) | ||
− | | text | + | | An adult will only become addicted if they take the drug more often than this.<br /><br />This is calculated from the drug's minimum tolerance to addict, the tolerance gain per dose, and the rate of tolerance decay. Some drugs don't have a safe interval. Such drugs can addict on any dose, even the first one.<br /><br />Note that the safe dose interval depends on a person's body size. |
+ | ---- | ||
+ | (For each human lifestage, add this:) | ||
+ | LifeStageAge lifeStageAge = ThingDefOf.Human.race.lifeStageAges[i]; | ||
+ | string t = (i < ThingDefOf.Human.race.lifeStageAges.Count - 1) ? "AgeXToY".Translate(lifeStageAge.minAge, ThingDefOf.Human.race.lifeStageAges[i + 1].minAge - 1f) : "AgePlus".Translate(lifeStageAge.minAge); | ||
+ | text += "\n - " + lifeStageAge.def.LabelCap + " (" + t + ")" + ": " + "PeriodDays".Translate(DrugStatsUtility.GetSafeDoseInterval(def, lifeStageAge.def.bodySizeFactor).ToString("F1")); | ||
| 2435 | | 2435 | ||
|} | |} | ||
[[Category:Stat]] | [[Category:Stat]] |
Latest revision as of 04:21, 25 September 2024
Def Name | Label | Display Order |
Show All By Default |
---|---|---|---|
Drug | Drug | 30 | false |
Label | Value String | Report Text | Display Priority In Category |
---|---|---|---|
High gain per dose | highGiver.severity.ToStringPercent() | The intensity of high gained per dose of this drug. | 2480 |
High fall rate | {highFall.ToStringPercent()} / day | How much this drug's high will decay each day. | 2470 |
High duration per dose | {(highGiver.severity / highFall).ToString("F1")} days | How long this drug's high will last per dose. This is calculated from the high gained per dose and the high fall rate. |
2460 |
Tolerance gain per dose | toleranceGain.ToStringPercent() | How much a user's tolerance to the chemical will increase for each dose of this drug. This can be different for different forms of the same chemical. |
2450 |
Tolerance fall rate | {DrugStatsUtility.GetToleranceOffsetPerDay(def).ToStringPercent()} / day | How much a user's tolerance to the chemical will fall per day. | 2440 |
Chemical | drugComp.chemical.LabelCap | The active chemical in this. In some cases, the same chemical is present in multiple different drugs. These different drugs will satisfy the same addiction in different ways. |
2490 |
Random overdose chance | drugComp.largeOverdoseChance.ToStringPercent() | The chance of a random overdose when taking this drug. Random overdoses can happen on any dose, whether it's a new user's first try or an experienced addict's hundredth hit. | 2380 |
Safe dose interval for adults | DrugStatsUtility.GetSafeDoseIntervalReadout(def) | An adult will only become addicted if they take the drug more often than this. This is calculated from the drug's minimum tolerance to addict, the tolerance gain per dose, and the rate of tolerance decay. Some drugs don't have a safe interval. Such drugs can addict on any dose, even the first one. Note that the safe dose interval depends on a person's body size. (For each human lifestage, add this:) LifeStageAge lifeStageAge = ThingDefOf.Human.race.lifeStageAges[i]; string t = (i < ThingDefOf.Human.race.lifeStageAges.Count - 1) ? "AgeXToY".Translate(lifeStageAge.minAge, ThingDefOf.Human.race.lifeStageAges[i + 1].minAge - 1f) : "AgePlus".Translate(lifeStageAge.minAge); text += "\n - " + lifeStageAge.def.LabelCap + " (" + t + ")" + ": " + "PeriodDays".Translate(DrugStatsUtility.GetSafeDoseInterval(def, lifeStageAge.def.bodySizeFactor).ToString("F1")); |
2435 |
This category currently contains no pages or media.