Files
healer-man/docs/ROM_PRIEST_SCOUT_CURING_SHOT.md
2026-10-02 10:38:12 -04:00

5.9 KiB

Priest/Scout Curing Shot (492636)

Current CoA behavior

The current Chronicles of Arcadia Priest/Scout skill page identifies Curing Shot as ID 492636, Priest primary / Scout secondary, level 35. Its current +105 entry is instant, has a 6-second cooldown, range 150, and radius 100. It heals all raid members in reach for 125.6, then heals 167.5 every 3 seconds for 18 seconds. The caster receives 10% Elemental Damage for 18 seconds.

The official patch history establishes the current version of the effect:

  • Patch 10.6.1 changed the HoT interval from 2 to 3 seconds and duration from 20 to 18 seconds.
  • Patch 11.1.5 made Curing Shot instant and added Good Will, then described as +10% magical damage for 18 seconds.
  • Patch 12.1.6 changed the bonus from magical to Elemental Damage. That patch and the current English class page are the authority for the present wording; the Japanese page still shows the older magical-damage text.

Implementation

src/game/romPriestScoutCuringShot.ts overrides only the generated RuneWaker row with the exact Priest-primary / Scout-secondary identity and skill ID. src/game/romAbilityCatalog.ts applies the override to the generated catalog.

  • The CoA range 150 and radius 100 are converted at 10:1 to 15 and 10 project units, respectively.
  • The instant heal and six-tick HoT use the published +105 values. The HoT ticks every 3 seconds for 18 seconds.
  • CoA says all raid members in reach and publishes no target cap. The simulator applies it to every eligible modeled party member; the player and companion healing paths are both covered. It cannot currently represent a full raid roster.
  • Good Will is a caster-only 18-second aura with a 10% damage-dealt modifier.
  • The local level-35 row's 120 MP cost is preserved. CoA's page gives 242 MP at skill level +105, but no cost progression is available to derive an honest level-35 replacement.

Elemental-school mapping

CoA says Elemental Damage is defined by subclass (for example, the Mage skill page). It does not name Good Will's exact school on the Priest/Scout page. That class's page is water-themed: it includes One with the Water and the Water-damage skills Rising Tide and Ice Blades, while Frost Halo increases Elemental Damage. The implementation therefore makes the explicit, class-specific inference that Priest/Scout Elemental Damage means Water damage and maps Water to the simulator's frost school. The project already uses frost as its Water analogue.

This mapping is intentionally limited to frost; it does not boost fire, nature, or arcane. It also leaves holy, shadow, and physical unchanged. The current source identifies the category and subclass theme, but does not explicitly state “Good Will increases Water damage”; that remains an inference rather than a quoted CoA rule.

Differences from the RuneWaker snapshot

Field Local RuneWaker row Current CoA behavior in the simulator
Cast time 2 seconds Instant
Cooldown 12 seconds 6 seconds
Healing radius / target count Radius 20; maximum 5 Radius 100, converted to 10 units; no added cap
HoT cadence / duration Every 2 seconds for 20 seconds Every 3 seconds for 18 seconds
Published heal values Local effect from component 502905; child 502914 carries the older periodic payload 125.6 upfront, then 167.5 per tick at +105
Good Will No matching current payload in the local components Caster gets +10% Elemental Damage for 18 seconds; simulator applies this to the inferred Water/frost school
Mana cost 120 MP on the local level-35 row Preserved at 120 MP because no cost curve is sourced

The local direct component is 502905 (damagePower=20). Child 502914 has a 20-second effect, a 2-second periodic interval, and dotBase=10. Those local values describe the older snapshot and are superseded by the current CoA behavior above.

Runtime and verification

Player casts heal all eligible modeled party recipients and schedule six periodic effects. Companion casts use the same party healing and periodic paths. The aura stays on the caster and the damage resolver consumes its typed kind: "damage" modifier. The player's self-HoT applies through healPlayerInWork and is not recorded as a combatEvents healing entry in this runtime path; the integration test verifies the player's health rises on each tick. Companion-party ticks are recorded as healing events, so their coverage is asserted by recipient ID. Runtime healing amounts can be changed by existing simulator healing bonuses and critical effects, so catalog tests assert the exact source base values while integration tests assert recipients and scheduling.

Focused coverage is in:

  • src/game/romPriestScoutCuringShot.test.ts for source identity, helper values, the frost-only aura modifier, and local cost preservation.
  • src/game/romPriestScoutCuringShot.catalog.test.ts for the actual generated RuneWaker row and catalog override.
  • src/game/romPriestScoutCuringShot.integration.test.ts for player and companion direct/periodic heals, uncapped modeled party coverage, caster-only aura ownership, the player's six self-HoT health increases, frost damage increase, and unchanged fire/nature/arcane/holy/shadow/physical damage.
  • src/game/romCombatRuntime.test.ts for the general cast and HoT path with the CoA radius and no five-target cap.

The CoA page provides values at skill level +105, but Healer Man has no Priest/Scout skill-training progression. The simulator uses those published values for this unlocked row and does not invent an intermediate training curve. CoA says “every 3 seconds for 18 seconds”; six ticks are implemented from that interval and duration interpretation.