Skip to content

Supersoldier serums: New transhuman fun for labs #53141

Open
@I-am-Erk

Description

Is your feature request related to a problem? Please describe.

We currently have two basic transhumanist modes: mutation and cybernetics. These are cool, but as CBMs move to their own set of plot-oriented quests to obtain, we're losing a bit of the ability to get weird random stuff from the environment. We also need magic potions in this game, and there's no reason we can't have them!

Solution you would like.

Super-soldier serums are another very reasonable area of XEDRA focus, without stretching disbelief as far as widespread CBMs did. These would be temporary-use consumables that, while powerful, have flaws that would keep them from widespread military use, but which may be acceptable to survivors willing to take the risk. Lore-wise, these are a combination of modern earth pharmaceutical tech coupled with experiments derived from mi-go mutable biology.

Basic concept

Every serum should have a set of benefits and powerful side effects, as well as a crash syndrome when it wears off. A serum should last long enough to be useful to the player and to reduce the instinct to hoard. If they last long enough, players can enjoy the benefits without having to focus on the crash. The side effects and crash of a serum should be at least partially manageable with other drugs, and as we progress through implementation, we should add more regular drugs that can help reduce the side effects and crash syndromes of the serums.

Serums should spawn in nested mapgen inside all types of labs and possibly bunkers, as a single type, along with some lab notes and things. So, if you find a serum locker, it should contain up to a dozen or so doses of a single serum along with some snippetized documents about the testing they were doing with that serum in that facility. You shouldn't find them scattered randomly anywhere and you shouldn't get a weird smattering of various types in one go. Eventually we should have a new serum development lab subtype, which stocks more of these, has a bunch of migo in various states of experimentation, and recipes for how to attempt to make serums, but that's down the road. Actually, a version of the giant research facility would be a reasonable place for some of this, with the mi-go portion put into the underground lab part, and the above-ground portion doing the more mundane pharmaceutical part, unaware of the alien origin of some of the active proteins.

At first, serums should not be craftable by any means. Crafting these should require a well-furnished lab and a fair bit of time, and in general is something you'll want NPCs to do for you. We should build it with that in mind from the ground up, eventually allowing you to either get your faction camp to crank these out, or get an existing NPC faction to make them.

Implementation part 1: Test of concept

At first, we should develop around 3-4 "flagship" serums. These are the ones XEDRA identified as most promising for future development, not necessarily just because of effects but also reproducibility. They spawn in any CDDA game, and do the same things. Some quick ideas:

Serum 48x-"Locutus": Regeneration serum.
Duration: 1-2 days
Primary effects: Rapid healing, including healing of nerve damage and regeneration of limbs.
Side effects: 
- Healing causes extremely rapid calorie expenditure. Inadequate calorie intake can lead to rapid muscle wasting (loss of strength and cardio)
- Increased need for sleep while under effects
- Bouts of extreme pain
- Vomiting, making calorie intake more difficult
- Severe teratogenicity, leading to rejection of project. This drug will probably give you cancer later in life, especially with repeated use (this will not have any immediate gameplay effect but eventually we could track it).
- may randomly cause gain or loss of mutations or rejection of cybernetics (neither effect known to xedra)
Crash effects: 1-2 days
- Strength wasting effect lasts a few days before fading back to normal
- decreased stamina regeneration and increased fatigue after serum wears off.
Serum 29x-"Noonien": Perfect soldier serum
Duration: about a week
Primary effects: Boost strength and dexterity, stamina regeneration, completely ignore weariness, hunger, and fatigue effects (including warnings), and reduce pain
Side effects:
- Increases blood pressure to potentially dangerous levels.
  - on the back end we should start tracking a blood pressure stat, for now just for this purpose. At high levels it should cause headache, blurred vision, and a few other side effects. At critically high levels, only attainable through medication overdose for now, you may have a stroke and die. 
  - once added for this med, we should start adding bp effects from other meds.
- Increase calorie needs plus ignorance of hunger and weariness means people often starve to death if not attended to carefully
- Decreased gastric emptying - stomach fills more easily as well as needing more food, compounding above problem
- Dramatically decreased healing speed to about 1/10 normal while under effects
- Reduce focus gain to about 1/10 normal while under effect.
Crash effects: 2-3 days
- Halve stamina regeneration, double hunger/fatigue/pain penalties
- drop blood pressure to potentially dangerous levels (see above)
- gastric emptying effect remains active for quite a while after serum fades, making it hard to regain lost calories
- continue reduce focus gain throughout crash syndrome
Serum 16x-"Armus": Indestructible serum.
Duration: 1-2 days
Primary effects: Skin gains armour-like damage reduction.  Bleeding stops much faster even after serious injuries like severed limbs. Reduced susceptibility to infection, and active infection progress is halted.
Side effects: 
- May cause mild to severe tremors, limiting dexterity and at the worst end reducing speed.
- May cause vertigo
- Overdose may cause clots in legs, lung, or brain. The latter two may be fatal.
- May cause reduced mood and/or hallucinations
Crash effects: 1-2 days
- accelerated heart rate and elevated blood pressure
- reduced clotting and increased bleeding; at extreme levels may cause spontaneous bleeding in lungs and bowels.
- periodic flashes of extreme pain may occur for several days after
- periodic transitory paralysis lasting at most a few seconds at a time, a few times a day for several days after
- extended use of Armus followed by withdrawal causes seizures
Serum 76x-"Lore": Hyperfocus serum.
Duration: 1/2 to 1 day
Primary effects: 
- cap focus at a minimum value and speed up focus regeneration
- increase xp boost for having knowledge level higher than practical
- boost perception and perception-related effects like trap detection
- During combat, adds a chance to experience a "time slow" effect allowing you to aim faster and make dodges/blocks or melee attacks faster (does not affect movement speed, occurs randomly at aim/attack time)
Side effects: 
- "tavaphobia": You cannot enter indoor tiles, and if you are currently in an indoor tile, cannot take any actions other than moving, open, and bash, and get messages about "needing to get out, right now"
- may cause hallucinations similar to kaluptic psychosis, or [others](https://github.com/CleverRaven/Cataclysm-DDA/issues/53171)
- Hyperfocus: A chance to inadvertantly continue doing a task for longer than intended. If reading, you have a chance to keep going after chosen stop time for a few minutes. If crafting, you have a chance to inadvertantly batch up additional items (and if you don't have additional materials, may start uncrafting and recrafting what you were working on, "That was great! You start dismantling the +pig tail shirt+ so you can do that again!")
- photophobia: bright lights reduce your vision and may cause pain, mitigated by hats and sunglasses
- Cannot sleep, at all, while under effects, although you experience fatigue normally.
- Increases heart rate significantly
- Increased rate of weariness gain, and you gain some weariness even at rest
Crash effects: Not too severe for this one, probably reduces your focus and makes you sleepy for a few hours.
Hallucinations, insomnia, tavaphobia, and photophobia may persist for several hours after benefits subside.

These basic implementations start to show what I'd like to see:

  • consumable items that use Effect on Conditions in a more nuanced way
  • Tracking of a few more basic medical stats, like blood pressure, heart rate, gastric emptying, etc and allowing effects to adjust these with cascading effects

Implementation part 2: Chasing side effects.

The next step once we have more side effect profiles is to add medications to deal with those side effects. This will require complex possible side effects list, and a lot of infrastructure. Some examples:

  • High blood pressure or heart rate - treat with antihypertensives.
  • Low blood pressure or heart rate - may attempt to treat with pressors, if you're insane or desperate, or addition of fluids and electrolytes in some cases
  • low focus, fatigue, stamina - may treat with stimulants
  • pain - treat with painkillers
  • reduced gastric emptying - attempt to treat with certain antidepressants or metoclopramide

To flesh this out, we will need a more thorough list of side effect profiles. These would be best done by creating some new vital stats, like BP, HR, and resp rate, and adding those as possible side effects to the flagship drugs, then adding new real-life drugs that would really be used to manage these. As we go, we can then start adding these effects to existing drugs as well (eg. opioids reduce respiratory rate and heart rate)

Implementation part 3: Randomization.

Once we got basic flagship serums added, the next step would be to add randomization to each one, but on a basic level. The intensity of effects, duration of effect and crash, and specific side/crash effects should be different each time.

  • A better but trickier option here would be to give each serum a "batch number", and serums with the same batch number would have the same, or almost the same, effect profile. The batch number could be determined by a random seed equal to the turn number at time of spawn, so serums spawning together would have the same batch number (or perhaps we use random seed plus rng1-3, so you get a few batches). Two given serums from the same batch might vary a little on intensity or duration, but the variation should be small. Ideally, once you've used a serum from a given batch, the effects should be listed in the item description, allowing you to save your favourite serums.
  • The randomization should be complex. We don't want serums to be so random that they are unfun to play. This is what makes this complex. There are several ways to do it; we should distinguish between effects that are always present at varying intensity and effects that randomize, for starters, and that's easy. After that, we can probably use artifact points systems to give each serum a "total point value" and have the randomization such that each serum remains generally positive but you can't necessarily predict what is going to happen.

Implementation part 4: Crafting.

As described above, crafting these should be hard. The lore documents scattered with the serum in the first place should emphasize the amount of work it takes, to set player expectations initially. However, it should not be impossible (developing new ones is though). Crafting should require a fair amount of stationary equipment, and a lot of "set this up and wait for it to be done" steps. In order to make this possible, before we allow crafting at all, we should develop the ability to build a faction camp laboratory expansion (something we need anyway so you can do research and autopsies and things), and the first pass on crafting should make it something you either pay hub01 or the old guard to do, or do through your faction camp. Once we have sorted the details out we could make it lone-wolf craftable if there is a lot of demand, but the process should be the sort of thing you don't want to do on your own, and we should stabilize the faction based crafting before even considering adding that. This both makes sense and encourages more faction gameplay, and will help to normalize moving other things to factions later.

The components of serum would have been rare before the cataclysm, but now that you can raid a mi-go tower, it should be pretty attainable to get them. The limitation now is getting people good enough at biochemistry to make a good batch.

Future implementation: You're a juicer, Harry.

The inevitable result of making interesting serums and learning to balance their effects will be allowing players to remain continuously on a serum. We'll need to start thinking of long-term effects that build up over weeks to months of use, and we may want to consider allowing players to repurpose something like an insulin pump to keep a low dose serum flowing at all times. I'd want to allow players to mix up cocktails that include potentially multiple serums and side effect mitigating drugs for this.

Future implementation: What's in this vial?

Down the road, we should develop a way to generate random serums, including crafting rules for them, probably usign the artifact generation code or a similar setup. We might want to do something like dwarf fortress with its procedural monsters, though, and limit the number of random serums per game world, so you might see batches of the same procedurally generated serum popping up in other labs across the cataclysm, but you would see different serums in each world. I think this implementation should be something we keep in mind, but it should wait until we have all the other infrastructure above in place and tested through. Doubtless, players will start giving us ideas for new serums that will make it easier to create nice lists of possible randomized effects.

These new serums would probably have names like "Untested serum 98x", and perhaps players could add their own names once they'd been tested, although obviously we need string parsing to ensure any future names follow the standard of "named after a star trek villain". In a perfect world though, we might also devise a complex system for including some procedurally generated lab notes with clues as to what the serum does.

Describe alternatives you have considered.

There are several, we've talked about doing different procedural medication models in discord, but I think starting with stable flagships will make it much easier to develop and test this system.

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions