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 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.
19 lines
465 B
C#
19 lines
465 B
C#
namespace Content.Server.Electrocution;
|
|
|
|
/// <summary>
|
|
/// Component for virtual electrocution entities (representing an in-progress shock).
|
|
/// </summary>
|
|
[RegisterComponent]
|
|
[Access(typeof(ElectrocutionSystem))]
|
|
public sealed partial class ElectrocutionComponent : Component
|
|
{
|
|
[DataField("electrocuting")]
|
|
public EntityUid Electrocuting;
|
|
|
|
[DataField("source")]
|
|
public EntityUid Source;
|
|
|
|
[DataField("timeLeft")]
|
|
public float TimeLeft;
|
|
}
|