Files
healer-man/docs/ROM_BLOOD_ARROW_TOGGLE_2026-10-04.md
2026-10-06 22:25:34 -04:00

4.9 KiB
Raw Permalink Blame History

Blood Arrow toggle and cost contract — 2026-10-04

Source identity

The Scout/Rogue current skill row identifies Scout General Blood Arrow as source skill 490434. The RuneWaker import binds that row to local ability rom-scout-general-4. The matching current class page is Chronicles of Arcadia — Scout/Rogue skills. Knight/Scout Blood Arrow is a distinct current source row, 499924, on the Knight/Scout skill page. Its passive 499923 and Joint Blow 490420 are separate skills. The Knight/Scout ranged-skill surcharge is not applied to Scout/Rogue.

The current verified rows describe Blood Arrow as a toggle: recasting it, or right-clicking its buff icon, turns it off and starts a 10-second cooldown for that owner. The local import’s old 30-second expiry and 3% max-HP-per-second drain came from the stale RuneWaker snapshot. The indefinite toggle and removal of the legacy periodic self-damage binding are scoped to the verified Scout/Rogue and Knight/Scout owners; other builds retain the legacy imported effect pending their own source reconciliation. Activation itself has no health, mana, or focus cost for the verified pairs.

Runtime behavior

  • Player and owned NPC buff instances are owner-local for the verified pairs. Recast and right-click deactivate only the owner's Blood Arrow, remove its rider, and set the ability ready time to 10 seconds later. The context menu accepts only the clicked Blood Arrow aura with matching owner source and target; right-clicking another self-owned buff leaves Blood Arrow active. The persistent NPC frame keeps this cancelable indefinite icon visible while continuing to filter other long-term clutter. Player Status already displays persistent auras, so its layout is unchanged. Unverified builds do not receive the new toggle/deactivation cooldown handling. Death, removal, and roster synchronization clear the aura and stale cooldown for its owner.
  • The Knight/Scout source contract charges 2% of max HP and 1% of max MP once when an eligible offensive ranged-weapon skill cast commits. Ordinary Scout General skills and the pair’s own offensive elite rows are considered; Scout Primary-only rows, non-damage control abilities, Blood Arrow itself, melee abilities, and the ongoing Auto Shot mode are excluded. Joint Blow source skill 490420 is included by its source identity even though the local tooltip omits the ranged-weapon wording. An owner without enough resources cannot commit the skill.
  • Scout/Rogue Blood Arrow charges 2% max HP per ranged attack and no additional mana. The runtime charges eligible damaging Scout Primary/General skill casts and each owned NPC ranged auto swing while its own aura is active. The NPC path skips the swing if its owner cannot afford the health cost. Knight/Scout plain auto attacks do not receive the skill surcharge.
  • The aura’s existing ranged-damage effect is retained. The local rank-scaling model remains unverified at cap 80; this change does not invent or import a level-105 damage curve.
  • Blood Punishment’s 15% received-healing and 5% Holy-damage riders remain attached to the active Blood Arrow aura and therefore end with it. There is no separate rider timer.

Player ordinary auto attacks and repeated Auto Shot are not currently simulated as ranged events, so there is no player auto-attack hook to charge. This implementation does not add a new player ranged auto-attack system; full Scout/Rogue parity for player auto attacks remains open.

The current source tooltips state percentage HP/MP costs without distinguishing current from maximum pools. The simulator uses maximum HP/MP and rounds each cost to whole points; that percentage basis is a local interpretation. The published +105 damage value is not extrapolated to the project's level-80 cap.

Verification

npx vitest run src/game/romKnightScoutBloodPunishment.integration.test.ts src/ui/AuraStrip.test.ts src/ui/PlayerStatusPanel.test.ts src/ui/partyResurrection.test.ts passes all 32 tests. Coverage includes ROM and WoW player costs and no-idle-drain checks, owned Knight/Scout activation and affordability in both rulesets, player recast/cooldown, Blood Punishment lifetime, and an owned Scout/Rogue ranged auto swing that charges once, keeps party and actor health synchronized, and receives Blood Arrow's ranged damage modifier. It also checks rank-resolved toggle behavior for verified owners, unchanged legacy behavior for an unverified Scout/Warrior, rejection of another buff's right-click, and rendered visibility of an NPC's tagged indefinite aura while unrelated long-term buffs remain filtered.

No dungeon playtest was run in this slice. Routine live QA now uses Stormwind Stockade: Cellblock Rush (bite-sized-stormwind-stockade); record the boss selected from the run ID. Full-source Stockade campaigns require explicit selection. No Wailing Caverns route or test was added.