Body, Mind & Soul — API Reference
    Preparing search index...
    weaponStrike: {
        allowedTargetScopes: string[];
        configPartial: string;
        execute: (outcome: any, context: any) => Promise<void>;
        resultFields: { fields: string[]; subKeyField: string };
    }

    Execute one or more weapon strikes driven by a formula of {{mh}}/{{oh}} tokens. Each token in the formula queues one strike; the formula evaluates to 0. Config: { formula } — defaults to "{{mh}}"

    Result fields (per slot):

    • original: Damage amount before resistance application
    • actual: Damage amount after resistance application
    • rollTotal: Total value of the unarmed-strike roll (null for equipped weapons, which use fixed damageMod)
    • cardValue: Sum of drawn card face values in unarmed-strike formula (null for equipped weapons or if no cards drawn)
    • cardName: Name of the drawn card when exactly one card drawn in unarmed-strike (null otherwise, equipped weapons, or multi-card draws)

    Note: Results are stored under context.outcomeResults.weaponStrike[slot] regardless of invocation path (whether via embedded {{mh}}/{{oh}} tokens in applyDamage or the standalone weaponStrike outcome). For equipped weapons, rollTotal/cardValue/cardName are always null since the weapon uses a fixed damageMod with no formula resolution. Only unarmed-strike branches (actor.system.unarmedStrikeFormula) populate these fields.

    Type Declaration

    • allowedTargetScopes: string[]
    • configPartial: string
    • execute: (outcome: any, context: any) => Promise<void>
    • resultFields: { fields: string[]; subKeyField: string }