The parameter bag driving the Resolve Injury flow — the single vocabulary shared by the action's scope payload, its configuration dialog, and its result card. A chat-card injury button serializes the blow into this shape (impact/aspect plus an aimed targetZoneNumber + zoneDie); the manual Actions-tab path starts from defaults; either way the dialog reads and rewrites it before resolution.

interface ResolveInjuryData {
    armorReduction: number;
    aspect: ImpactAspect;
    autoAddInjury: boolean;
    bleedImpactPenalty: number;
    bodyLocationCode: string;
    bodyLocationOverriden: boolean;
    impact: number;
    targetZoneNumber: number;
    treatmentModifier: number;
    zoneDie: number;
}

Properties

armorReduction: number

Armor reduction, applied to the location's armor only for a piercing aspect (default 0).

aspect: ImpactAspect

Weapon damage aspect (default Blunt).

autoAddInjury: boolean

Whether to record the resulting Trauma on the character sheet. Seeded from the world's "record trauma" setting; the dialog may override it.

bleedImpactPenalty: number

Extra impact added when determining whether the wound bleeds (default 0).

bodyLocationCode: string

The struck hit-location shortcode. Empty when unspecified — the flow then derives it from targetZoneNumber + zoneDie via Zone-Die aiming.

bodyLocationOverriden: boolean

Set true when the dialog changed bodyLocationCode away from the derived/aimed location (a manual GM override).

impact: number

Raw impact total delivered by the blow, before armor (default 0).

targetZoneNumber: number

The Zone Number aimed at (1-based; default 1). The zone-die roll offsets it: Hit ZN = (targetZoneNumber - 1) + roll(1..zoneDie).

treatmentModifier: number

Treatment modifier to seed on the resulting Trauma (default 0).

zoneDie: number

The Zone Die rolled to scatter the hit (uniform 1..zoneDie). 0 is the "unset" sentinel — the executor fills it with the body's max zone number so an unaimed derive covers the whole body.