- summary: A fighter loses life points: the life lost, the part of it that is permanent, the damage element and the shield points absorbed.
- area: Game.Action
A fighter loses life points: the life lost, the part of it that is permanent, the damage element and the shield points absorbed.
Kind struct · Area Game.Action
Damage dealt to a fighter: the payload of GameActionFightEvent.life_points_lost. The attacker is
GameActionFightEvent.source_id.
READ IT LIKE THIS
1. LifePointsLost.target_id is the fighter that is hit.
2. If LifePointsLost.shield_loss is present, the target's shield absorbed that many
points first: lower its shield by that amount.
3. Lower the target's current life by LifePointsLost.loss.
4. Lower its maximum life by LifePointsLost.permanent_damages (erosion: damage the
fighter can no longer heal).
5. LifePointsLost.element_id is the damage element (it only changes how the hit is shown).
6. Ignore the record's other members: the client never reads them.
WHAT THE OFFICIAL CLIENT DOES. When a shield loss is present it queues a shield step (fight log: ui.fight.lostShieldPoints), then a life step that applies -loss and -permanent_damages with the element (fight log: ui.fight.lifeLoss).
Not sent on its own — it travels inside GameActionFightEvent.life_points_lost. proven
Used by
Fields
| # | Field | Type | Meaning | You set it |
|---|---|---|---|---|
| 1 | permanent_damages | int32 | The part of the damage that also lowers the fighter's maximum life (erosion). (life points) The client applies it as a negative change of maximum life. | never |
| 2 | shield_loss | int32 | Shield points the hit removed before reaching life. Optional: absent when no shield was hit. Explicit presence: absent is not the same as zero. (shield points) When present the client plays a shield-loss step first (fight log: ui.fight.lostShieldPoints). | never |
| 4 | element_id | int32 | The element of the damage. The client converts it to its element enum; it changes how the hit is shown, not the amount. | never |
| 5 | target_id | int64 | The fighter that loses life. (fighter (entity) id) | never |
| 6 | loss | int32 | Life points lost (a positive number). (life points) The client applies it as a negative change of current life. | never |