-
Notifications
You must be signed in to change notification settings - Fork 4.2k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
next steps in pain #72851
Comments
These limb score proposals would stack with the existing injury limb score penalties, which are already difficult for even experienced players to keep track of compared to old methods of just eyeballing pain and speed ratings. This would make pain both more punishing and harder to understand. It might be appropriate to reduce injury penalties if pain penalties are introduced, but even if that's done in a way that feels balanced, the UI still won't give players great feedback about how they're doing. |
Making sure it's possible to assess your available options is important, yes. |
Just a thought.
Little relevant to the topicI, as a player, need more metagame information. Too many parameters, too hard to understand what they do. |
It'd also be doubling a wide variety of penalties in a way I'm not sure the dev team is anticipating. Limb scores are everything - wielding weapons, grabs, move speed, dodge, block, hit rate, climbing, they're potentially an even blunter instrument than stat penalties, and unlike those there aren't really ways to raise your totals. Even the WIP mutation stuff is only heavy tradeoffs.
That's not really how pain works IRL. If I stub my toe, I'm definitely worse at everything until I get over it. What you're describing is more like injury, where I'd be less able to use an injured body part but the rest of me would be fine. Pain inhibits the sufferer all over due to its highly distracting nature and the instinct to protect oneself from further harm, it doesn't just compromise one body part. |
I think you're imagining a much finer level of detail on pain than I'm describing. I'm still describing a strength penalty the same as we currently have. You just have a less serious penalty if your arms aren't damaged. |
Default character (8-8-8-8), no traits. Naked (no encumbrances).
In my opinion, you are more likely to be killed by a stat reduction than a speed reduction. The actual pain is 50, equivalent to 30 encumbrance. If it weren't for the reduction in strength, which reduces the maximum weight carried and gives an overload that further reduces speed. |
The double hit is part of why the strength reduction (edit: ie reducing the strength penalty) is a good idea, but dropping your run speed to 75 is a huge problem. That's too slow to outrun a standard zombie. With it compounded by speed dropping because your strength drops, that's a huge hit. Some of this will be a bit mitigated by adding strain, because at least your stamina won't also be zero at this point so you can run. |
Move cost and speed are two different things here, right? The former is only your step cost, the latter is affecting things like attack and wield speed. These things are further decreased by dexterity loss and limb damage, which means that enemies will have more chances to hit you per action you take, which is doubly dangerous because your defenses and grab resists are also debuffed. Move speed losses are bad, but action speed losses serve as a multiplier on incoming attacks. That's not to say this shouldn't be the case, but you may be comparing apples to oranges. |
Wouldn't the breakpoint actually be substantially lower because characters can run? 75 is only too slow to outwalk a standard zombie, and it's actually not even that thanks to STUMBLES, doors, etc. |
Theoretically yes, but in the present balance, if you're in severe pain you're probably also lower on stamina (however I am trying to fix that, soon I hope). It's the cascading stunlock problem I alluded to in the issue post: you walk slower than a zombie, it's harder to run, your encumbrance further drops your ability to move... We're double and triple dipping on things that make it hard to back out if you overcommitted, and that causes a geometric rise in difficulty to escape. |
I disagree with this point:
I believe the movement speed should be affected only by the pain stemming from the legs. Having your arms shattered while you have a shallow cut in your thigh increases pain, but it won't further affect the ability of your legs to function. |
That doesn't pass the smell test. A person with a freshly broken arm is not likely to run a four minute mile, they're going to stumble and have bad form and maybe lack the motivation to even try due to unconscious and involuntary reactions to the pain. These reactions are not limited to the injured area and include things like muscle groups tensing, hormonal reactions inhibiting normal ability, and the sheer mental distraction. |
I did not intend it to mean that pain shouldn't have general effects, just that the pain effect on a specific limb should be tied to the pain from that limb. General pain effects should happen on top of that. |
If he wants to live, he'll run. graph TB
damage --> |define| limb --> |create| pain --> |split| text1 & text2 -->text3
text1("limb_pain = limb_pain + 0,9 * pain")
text2("general_pain = general_pain + 0,1 * pain")
text3("penalty = function (limb_pain + general_pain)")
Or something like this UPD. Correct me if I'm wrong. Every second a character receives action points. The character spends these action points on a variety of actions. In particular, walking. The number of action points equals the Then is it correct to call this parameter exactly "speed"? These are action points. It's a system parameter, independent of the character. We have the cost of moving a character 1 tile, that's And then the pain reduces the stats, and therefore increases the cost of the move. |
That's not how pain works. Maybe he could stumble along and do his best, but he's not going to break any records. |
Both interpretations of pain on a specific limb and general pain having impacts are valid. Your ability to use a limb can be heavily impacted by how much it hurts especially if using it causes more pain. Than there is the fact that general pain is very disctracting and can impact your general functioning. The problem is that a decent bit of pain can very severely affect a limb without impacting your abilities much (burns on your arm will make using that arm very difficult but you could probably run a mile with the proper motivation such as a zombie). For your general ability to be affected you need to be in a lot more pain generally (getting shot kind of pain). So probably both should be implemented and balanced agianst eachother. |
It´s wierd that the general penalty for pain has a absolute debuff to stats instead of proportional to the stats of a character. We have a proportional debuff for poisons (big buff mutant losses more strength in absolute terms than Mr.couchpotato). So why doesn´t pain work the same? Makes much more sense. |
Most of the pain penalties are now proportional actually. That was a recent change that I'm happy with, but it has made pain more punishing at higher levels to a degree that needs mitigation, hence this topic I think it's important we not get too far into the weeds of modeling individual wounds, because we're going to do that with its own system. When that happens it will be appropriate to litigate exactly how a particular cut on your arm affects your abilities. For now we are mostly looking at full body pain, but we can tweak its effects using limb damage to make it a bit less all or nothing |
I think one of the bigger issues with the current implementation is how linear/additive pain feels. If you fight a bunch of regular Zs, you basically end up with a bunch of scraps and bruises. It should hurt enough to be detrimental but not put you into unmanageable pain as fast as it currently does. There should be some kind of threshold involved that gives diminishing returns on pain if, for example, the damage taken was less than 15% of your current pain level. That seems more in line with how real pain works. On the flip side, if you take a huge amount of damage in one go, there should be some form of shock state that delays the pain. |
Some tests.
Some conclusions.
Actually depends on stats, skills and armor. For the sake of interest, I tried to fight a zombie. Naked character, with bayonet and melee skill of level 5, came out victorious. And received only a couple of hits. Group? If someone grabs you (especially by the hand), you die.
Too much depends on the character, their stats, skills, and equipment. The only thing I can say is that this will affect the early stage of the game the most. My personal opinion, I'll adapt to those conditions as well. Electric zombies, still top 1 among targets for destruction. And HUB armor is still top 1 in availability, protection, and encumbrance.
UPD. @I-am-Erk How hard is it to make a mod that brings back the old system with pain? As an alternative. We leave everything as it is + add a mod. And come back to the question after the limbs (or wound system) are finalized. |
It would be okay for pain settings to be adjustable through global JSON settings so that they're moddable, but it's not high priority... It's not where we want it as is, so fixing it by patching externally shouldn't be our first step, fixing it by patching in the game should be first priority. We should look at the equations to determine pain. I'm not sure if a threshold is the right idea,.or if the pain impact of small wounds is too high relatively. |
Realistically pain does not make sense in combat. Adrenalin is extremely effective at nulling pain and that needs to be modelled if pain is intended to play a much larger role in the game. |
Nah. There's a small affect from adrenaline, but it's absolutely not standard for people to hop up and keep going after massive injuries, especially not when as mentioned we use pain to represent a lot of things. The delay effect of pain would be fine to add in though. I mentioned that in OP |
Came up with a few useful things in discord both brainstorming and reviewing literature.
|
The last time I mentioned pain tolerance in the initial Pain revamp PR people acted as if it was a foolish idea. I looked into several scientific papers basically describing "pain threshold" and "pain tolerance." though I didn't want to drop $500 to buy all of them. From what I could glean from the abstracts though... Pain Threshold is the minimum amount of stimulation or injury that makes you feel the sensation of pain. It cannot be changed or increased by anything except medication. IE: You can't dull your senses unless you take medication. Pain Tolerance is the amount of ongoing pain you can tolerate while doing something. This is something that theoretically can be trained by either dealing with pain regularly, extreme exercise or by simply an innate pain tolerance. If I remember correctly:
In those cases, marathon runners, contact sports participants etc seemed to have a higher than normal tolerance to pain. It's not the same as "Pain don't hurt" but more "learning to function while hurting" that's why I had previously suggested a "Pain Tolerance" attribute similar to cardio that build up over the players lifetime to somewhat increase tolerance. This doesn't apply to someone with a neurological issue or direct nerve damage so those edge cases don't fit. Nor do things like head blows or hits to the liver. But those could be simulated as critical hits against the player. Throw in blob healing magic and the player is less or not at all susceptible to permanent nerve conditions pains. So we either accept blob healing magic as a thing and thus pain tolerance may be a viable attribute or we might as well get rid of blob healing magic too. |
Kevin pulled up a pretty usable primary source, but there's the huge caveat that even within it, it points out that the data is quite shit. Plus it can't be used particularly for numbers, only vague concepts. https://www.sciencedirect.com/science/article/pii/S1526590023006491 Basically any source is still not going to tel us eg. How much being thrown through a wall by an incandescent hulk should impair your ability to think clearly. However, it does at least give us some ideas what things should be penalized by pain, and what things possibly might improve with training. My thought is to have the athletics skill slightly reduce pain penalties, and possibly eventually also have a proficiency that contributes. However, even then, the effect shouldn't be too huge... Enough to matter, not enough to invalidate pain effects. This also doesn't really help at all with the problem at hand. New characters still need to be able to survive combat and new players need some feedback before they become totally stunlocked. Hence the info in my last comment. |
Yeah pain science is already spotty and any data source is not going to cover in game events. At best we have sports science data for contact sports or martial arts. It's not like we'd have questionably dangerous military medical experiments posted publicly. Practically speaking, I would suggest if possible a combination of Athletics skill and avatar_damage_healed statistic leading to an invisible pain reduction bonus instead of a proficiency (or maybe the proficiency is learned via taking damage or healing damage) and could be applied as a small -% reduction to total pain up to a point. Not sure what to do about the current pain-lock issue. Working on faction content and haven't had time to play on current. |
From my tests today I really think taking out the speed penalties (and replacing them with a "hesitation" event like I described) and nerfing the strength penalties significantly would be a huge part of it. Then we need to do some better review of how pain ramps up but first I want to be sure that pain is behaving properly. It's overtuned right now but that has helped to unmask a lot of stuff we should have fixed a long time ago. |
I think the biggest problem is still in the way pain is calculated, it's too linear, leading to the fact that once a player is attacked once, then their attributes go down due to the pain, and the player is more likely to be attacked, and more likely to be attacked means more likely to become more pained, and their attributes go down more, and so on and so forth until one party is dead, and the other party is seriously injured. |
@Rocket-F-1024 and @MelacholicMimic see #72852 for a potential solution. |
On the subject of how the brain suppresses pain when in danger, "stress-induced analgesia" is what people should actually be talking about. That term is used for the variety of ways the body relieves pain when under stress and, unlike adrenaline, there are a lot of studies supporting it: https://www.ncbi.nlm.nih.gov/pmc/articles/PMC4795524/ Some of these also discuss stress-induced hyperalgesia, in which stress increases pain. It roughly seems like acute pain is reduced while chronic pain is increased. What'd be really useful would be a study into how much the stress of being in outright life-threatening danger suppresses pain, but since that would be a really immoral experiment I wouldn't be surprised if it doesn't exist. |
One way to implement stress-induced pain suppression would be to delay the effects of pain when in immediate danger, such as when fighting enemies, but take full effect after a short period or once danger has subsided—the brain is merely suppressing the pain, not outright removing it. Pain having an immediate, instantaneous effect on the player's abilities is my main issue with the current implementation—the brain's primary response to danger is to escape it, not to immediately collapse in pain. This could also be an answer to the "reduce speed or not" question. |
I was once present for a fist fight that turned into a stabbing. The stabbed man did not have any major muscles severed and he didn't bleed more than a pint over the half hour I spent tending to him, but he was still immediately disabled and unable to escape or continue fighting even though it took him several seconds to consciously understand what had happened. The delay was caused more by the fact that it was inconceivable to him that someone could have stabbed him, and this delay didn't protect him in any way from suffering a negative reaction to his wounds. There's no magic chemical in the body that causes you to gain super strength and ignore injuries. They hurt and that affects you, regardless of whether you are fully cognizant of them or not. It's not just the sensation of pain that gets you, it's the immediate and unconscious release of hormones that lock up muscles and send the brain into a panic. People who can ignore the pain long enough to win a fight or escape from an emergency are still fully being affected by that pain. The "adrenaline rush" people are envisioning is more just fight or flight kicking in, which is not always useful and isn't really relevant to the stat debuffs that pain applies in this game. You're never asked or told whether your character is acting on instinct or a carefully thought-out plan. The most the game does to address that is apply perception and intelligence debuffs, but since your character is being puppeted by a timelord with access to HHG who does not feel anything that is happening to them, it's hard to model. |
As fairyarmadillo says. "adrenaline" does not work as people imagine, and the most appropriate way to model it is to pool pain and deal it out as a steadily rising score over a few seconds. That does still offer players a bit more time to act on upcoming crippling injuries before their avatar is too heavily affected; however, anything that starts with "in real life, adrenaline keeps you from feeling pain" is a nonstarter. I've managed a lot of critical injuries, and the reason we hear occasional stories of amazing feats where people ignore their wounds is because those are amazing feats that are unusual and surprising. We model this in game by letting people take a special trait at character creation if they're going to play that rare individual. |
So, that strays us a little ways off my initial plan, in what I think is a better direction. Now strength isn't hit as hard, and pain (and other penalties) aren't calculated in carry weight, which removes the encumbrance double dip. That's definitely not going to bite us in other unexpected places... ... anyway. I think the next thing we need, and again this will alter other things, is a hesitation mechanic. This would replace speed penalties in a lot of places. Basically, we make a c++ routine for The end result of this is similar to slowing down your attacks, but, rather crucially:
On the downside, it is mildly more annoying, especially if it's an attack you took a while to line up. Personally I'm well willing to pay that cost in exchange for what I see as a pretty significant uptick in player agency around one of the most serious and important combat penalties. I think hesitate should also apply to ranged attacks. When aiming, it should cause your aim to drop a tiny amount as well. |
As long as the hit to ranged attacks comes in the form of reduced aim I don't have a problem with it. I, at least, tend to try to wait until the enemy is close enough for me to get a good chance to score a good hit, and I don't need additional cases of enemies moving multiple tiles and hits my character which also resets the aim (particularly bad with fast hit-and-run critters that are also hard to hit even with maximum aim). |
I might suggest a word other than hesitation. I know what you mean by it, but players might interpret it as their character making a conscious decision contrary to what the player is making, which is something I know the team wants to avoid where possible. You probably want players to see the message and think "oh wow my guy is in bad shape" and not "this useless character won't do what I tell them and now I'm going to lose" |
Fair point. Open to alternate phrases. |
Ideas:
|
Flinch is great, let's use flinch. |
Yeah, I want to be careful to make sure it doesn't reset your aim. That would be unreasonable |
Wouldn't it make more sense for ranged weapons (minus bows) to apply a flinch after firing and ruining your steadiness? I presume what would logically cause you to flinch is a pain spike from the sudden/jerky movement of winding up a swing. Once you start steadying your gun, you will only make the tiniest of adjustments, so it shouldn't be an issue there. Recoil, will however, send vibrations through your entire upper body, causing everything to flare up. If you ever sneezed while having a stiff neck, you know what I'm talking about. There is also the question of what should be affected by flinching. Drawing/sheathing seems an obvious choice, although you probably want a "Do you want to continue?" prompt, since that's quite a few key presses otherwise. Is it gonna be purely combat related or would it affect, let's say, crafting mess-ups or spilling liquid. Is it a light version of the jittery trait, basically. |
I don't know about that. Trying to hold steady and perform a precise task is very hard when in pain. I've never done sniper...ism? But I've tried to make really precise scalpel and needle movements after my own minor surgery, and it was quite a lot harder. |
@I-am-Erk Should the pain be modulated by presence or absence of a companion? People are social animals, after all. |
Mood should probably also either worsen of eleviate pain. |
Since the original post here has become pretty obsolete, I posted #73050 which is a summary of our last few comments and a lot more info on implementation |
Is your feature request related to a problem? Please describe.
GuardianDLL decided to open up a can of whoop-ass and bring a world of hurt with #72687. I think this is a good move. We haven't analyzed pain in game for a long time. My initial playtests of the new system have been short, but I've been reading a lot of feedback on it (including taking a look at an unusually civil Reddit thread). This has sparked a lot of thoughts and conversations, the results of which I'll post here.
Important context: until we have a wound system, understand that "pain" is still a stand in for all kinds of injuries and wear that aren't represented by limb damage. We want to move away from this but the wound overhaul is a big thing and we don't know when it'll be ready. Until that time, we're mostly trying to get this to feel right from a gameplay angle, as both a model of pain and a model of smaller quick-to-recover injuries. Scholarly information is fine but bear in mind that this system is already under close scrutiny by two credentialed experts on the subject, so it's probably not going to be news we hadn't heard.
Solution you would like.
On a later pass, I'd also like to have pain impact the player more slowly. Specifically, when pain is inflicted it should go into a "pool", and that pool is then transfered to the pain stat over the course of several seconds. This should be a small but very impactful change that helps people try to escape after taking major damage, before the impact reaches their brain.
Describe alternatives you have considered.
Many. This is just a recommendation and I may update it with more numbers or details but for now I have to work.
Additional context
It's important to note here that it's all right if pain makes melee combat more penalizing or difficult to maintain, especially against large hordes. It's not a design goal to make melee equal to ranged. Rather the goal is to make you have to seriously consider it's worth risking death to fight up close, or risking the danger of noise of firing a gun. We're a long way from that target still but we move towards it in baby steps.
The text was updated successfully, but these errors were encountered: