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

Reduce electrocution damage and make them constant based on voltage #26455

Merged
merged 3 commits into from
Mar 28, 2024

Conversation

EmoGarbage404
Copy link
Member

About the PR

Makes electrocution damage based on the voltage of the wire and bring down the damage to a sane level. It's no longer primarily based on the power being received.

LV Cable -> 10 damage
MV Cable -> 20 damage
HV Cable -> 30 damage

Why / Balance

Having a primarily power-based damage system causes there to be massive fluctuations in damage based on things outside of a regular player's control, like the station power output. This removes a lot of player agency and turns grilles into a risky gamble where they can either do no damage or instantly fry the player due to simply being hooked up to the engine.

While this may be a more accurate simulation in some regards, the reality of the gameplay is that it's often just frustrating, resulting in constant death traps as players brushing against electrified grilles and punching wires take absurd amounts of damage. By making them flat rates, it's possible to actually balance the damage output and make them not such a pain in the ass.

Media

  • I have added screenshots/videos to this PR showcasing its changes ingame, or this PR does not require an ingame showcase

Changelog

🆑

  • tweak: Electrocution damage is no longer based on the power supplied and is instead based on the wire voltage (LV, MV, or HV).

@IamVelcroboy
Copy link
Contributor

I like that there's more control/consistency with this. But I feel HV should crit someone. MV maybe 2-3 hits to crit.

@EmoGarbage404
Copy link
Member Author

I like that there's more control/consistency with this. But I feel HV should crit someone. MV maybe 2-3 hits to crit.

the main issue is that it's simply unbelievably annoying to get instantly crit by something that isn't signaled. People can and do often make traps where they kill swarms of people by just setting up a single HV grille. at the very least, it should be more effortful.

@IamVelcroboy
Copy link
Contributor

Hmm, yeah. As a mapper I usually put up warning signs and whatnot. I don't suppose players setting traps are doing that...

I wonder if an electrified grille let off an occasional spark, if that would be enough. Or changed colors slightly with increased voltage, turning sort of orange. 🤷🏼‍♂️

@MjrLandWhale
Copy link
Contributor

MjrLandWhale commented Mar 26, 2024

Having a primarily power-based damage system causes there to be massive fluctuations in damage based on things outside of a regular player's control, like the station power output.

Isn't this inaccurate? Damage calculation was changed in #24554 to scale based on available max, not the current supply. This functionally means you get hit with no damage against an LV wire, 150KW against an MV wire, and (150KW * # of parallel SMES) against an HV wire. Of course bypassing the SMES still makes death grilles, but that's really a "fix power flickering so people don't do that in the first place" issue.

This change also reverts the logarithmic scaling introduced in #24829 and also takes us all the way back to the static multipliers removed in #20880.

Here's my idea/2 cents:

  1. Revert the change introduced in Fixes Electrocutions to use available power, not consumed power #24554, or make it a percentage of both supply & max supply (mimics increased load as you become a short to ground)
  2. Adjust the log calculation's DamageShift so you take damage at lower power values (<30kw)
  3. Make any grille / fence on a wire with over X KW in supply or max supply give off the electrified /spark effect like IamVelcroboy mentioned. It would give clear indication of "hey, there is a LOT of juice going through here, be careful".

@LordCarve
Copy link
Contributor

Regardless of what happens in this PR, life-threatening danger should be clearly telegraphed to players, and electrified grilles are big offenders in this aspect.

@Partmedia
Copy link
Contributor

Thanks for this PR. I think this brings electrocution damage to a place where it's predictable and not a random number game. The damage looked a bit low to me at first, but I think this is reasonable because players can often get shocked multiple times in a row by being unlucky and getting too close to the grilles.

Perhaps it would be worth removing the ElectrifiedScalePerWatt multiplier all together and really make this independent of the power going through the net.

@Partmedia
Copy link
Contributor

Based on some in-game testing, I found that players no longer get repeatedly get shocked by the same grille even if they're still touching it. So I think there's an opportunity to increase the damage a bit if you wanted to.

This change also reverts the logarithmic scaling introduced in #24829 and also takes us all the way back to the static multipliers removed in #20880.

Yes, because after trying this out we found that we didn't like insta-crit and LV doing no damage.

supply & max supply (mimics increased load as you become a short to ground)

This is not really how electricity works. This game only simulates power flow, and so cannot accurately simulate what happens when you have a "short to ground" because even a short to ground has finite resistance. At minimum the game would need to define the voltage of each voltage (high/medium/low) and body resistance. Happy to explain more on Discord if you'd like.

@Partmedia Partmedia merged commit aba1619 into space-wizards:master Mar 28, 2024
9 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants