Skip to content
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

Updates to putting self out when on fire #2335

Merged

Conversation

chaosvolt
Copy link
Member

Summary

SUMMARY: Balance "Patting down fire has more impact, stop drop and roll triggers earlier"

Purpose of change

A thing @KheirFerrum looked into on the BN discord recently, it was found that the "attempt to put yourself out if on fire" behavior was a bit flawed. Part of it was because DoT from being on fire itself appears to be add more duration from it dealing DT_HEAT hits depending on the clothing worn, which is fair since clothing is good fuel.

But where this became a problem was when it intersected with the code to try and put yourself out. The baseline reduction in duration does almost nothing, while the more effective "stop drop and roll" action was locked behind a threshold of more than a minute duration before your character would be willing to choose the (vastly more effective) option. Needless to say, your HP bar typically isn't going to last long enough for this to ever really be a factor.

Describe the solution

  1. Turned the 1 minute restriction for stop drop and roll down to only 3 turns.
  2. Additionally, set the baseline impact of patting yourself down from 1 turn to 4 turns.

Combined, this should allow for situations where a single round of patting will negate being on fire if it's not that severe and thus letting you skip the turn loss from being knocked down, but any situation where the fire seems to escalate quickly prompts the more effective method to kick in.

Describe alternatives you've considered

  1. Calculating exactly what the highest threshold for rolling can be such that the character will always patdown if it'd keep them out of action for less turns than rolling and standing back up would. Fine-tuning it too much beyond "we can be reasonably certain one patdown will always fix this" runs into problems because the fuel value of your armor factors into how much duration you get from fire DoT, so there'd be the risk that the patdown turn reduction might keep you burning forever if your armor's flammability is just right.
  2. Just dropping the duration check entirely and accept that 2-turn time loss no matter what, just to idiotproof the function.

Testing

  1. Compiled and load tested.
  2. Spawned in and debugged a small fire right on top of me, then immediately removed it.
  3. Waited and observed my character happily favored rolling on the ground instead.
  4. Spawned in a laser turret so I'd only get myself lit on fire on a single body part and wouldn't have the added field effects stacking up the duration.
  5. Waited and confirmed that a patdown took care of it in only a single turn.

One weird thing I noticed, when you stop drop and roll, your character tends to both repeatedly drop and struggle to get up at the same time.

Additional context

@github-actions github-actions bot added the src PR changes related to source code. label Feb 11, 2023
@Coolthulhu Coolthulhu self-assigned this Feb 15, 2023
@Coolthulhu Coolthulhu merged commit cbfd2e3 into cataclysmbnteam:upload Feb 17, 2023
@chaosvolt chaosvolt deleted the rollin-rollin-rollin-rawhiiide branch February 18, 2023 00:48
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
src PR changes related to source code.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants