Update Healer Man server

This commit is contained in:
phenom committed 2026-10-04 13:13:35 -04:00
1 parent 39458d5de6
commit 6cc1b9217f
203 files changed
+133929 -31271

No files matched your search

+16 -2
View File
@@ -22,9 +22,13 @@ Native derived calculations are sourced from the local RuneWaker `RoleAttr.cpp`
Equipped native items carry `ItemStats.romNative`. Their common WoW projection is not counted again. Foreign items without that payload bridge only direct Strength, Stamina, Intellect, Agility, and flat health/mana under an explicit simulator policy. Spirit does not become Wisdom; WoW armor, attack/spell power, weapons, and ratings do not become native channels. The five existing source-reference heirloom classes supply native gear curves; other classes retain the direct-stat fallback until native gear profiles are sourced. Reference item selection and intermediate-level interpolation remain synthetic simulator policies.
The existing dungeon combat resolver remains a shared simulator. Adapting a verified native stat into a common combat field does not establish that the WoW damage, hit, armor, or critical formulas reproduce RoM combat. Native healing inputs alone also do not certify every RoM healing spell's amount, rank, or coefficient.
The RoM automatic fallback is displayed as Training gear, not an authentic heirloom system. Player and NPC training gear scales through level 79; character base growth continues through level 80. See `docs/ROM_FIVE_NATIVE_SCALING_2026-10-03.md` for the five-class follow-up, owner parity, enemy health policy, and validation. This does not introduce loot progression.
The explicit common adapter uses native ATK as attack/ranged attack power, MDMG as spell power, and DEF as armor. Physical mitigation uses the existing shared WoW armor curve. MATK, MDEF, DMG, native recovery values, and hit/critical/dodge/parry points remain source-semantic sidecar/display fields; native point values are not converted into common percentages. Native common hit/critical/avoidance percentages start at zero. Existing primary resource types and regeneration policy remain part of the shared dungeon simulation; native MP derivation also supplies supported secondary mana pools. The Equipment panel identifies the shared combat boundary, labels point fields explicitly, and shows active native aura effects for its selected owner. Shared HUD counters display whole HP/MP values while their accessible maxima and runtime pools retain source precision.
The follow-up's exact-dist check supersedes the browser artifacts at the shared `playtest-artifacts/stat-rulesets` path. Its final chunks and eleven screenshots are recorded in that follow-up; the validation totals below describe the original stat-ruleset implementation.
The dungeon combat system selects native source resolution for supported canonical RoM builds against exact imported RuneWaker NPCs, in either direction. Unsupported source inputs and WoW-mode actors retain the shared compatibility resolver. Adapting a native stat into a common field alone is not evidence of native formula parity. The latest [native resolution follow-up](ROM_NATIVE_COMBAT_RESOLUTION_PASS_2026-10-03.md) records supported channels and remaining source boundaries.
The common fallback adapter uses native ATK as attack/ranged attack power, MDMG as spell power and DEF as armor, with shared WoW mitigation only on that fallback. The supported native resolver directly consumes source ATK/DEF or MATK/MDEF and native hit/critical/dodge/parry/block points without converting them into common percentages. Existing primary resources and regeneration policy remain part of the shared simulation; native MP also supplies supported secondary mana pools. The Equipment panel labels native points explicitly and shows active native aura effects for its selected owner. DEF displays its source value without presenting a WoW armor percentage as native mitigation. Shared HUD counters display whole HP/MP values while runtime pools retain precision.
Player FIX record 303001 sets `DmgAtkArg` and `MDmgMAtkArg` to zero, so this source version derives DMG/MDMG from flat gear channels rather than ATK/MATK. Its `Dmg_HealArg` is **0.5**. Wisdom/MND, MDMG, MPow, HealPowerRate, HealPoint, and target heal-modifier inputs now have explicit source channels. Per-spell OrgPower, rank/skill-level evaluation, timing, flags, and the complete native healing consumer remain separate work. These local RuneWaker records do not certify current-CoA formulas or balance.
@@ -44,3 +48,13 @@ The character, party member, and combat actor retain their own ruleset. No globa
- Browser evidence: `playtest-artifacts/stat-rulesets/results.json` and its ten referenced screenshots. The checked chunks were `index-CGkT8hBz.js`, `combatStore-CVXgxk1Z.js`, and `PartyFrames-BeW5_TCA.js`. Synthetic engaged-mob and online-activity fixtures verify the menu guards, not a real multiplayer session.
- Final `npm run release:check` passed for 157 changed paths, including untracked files and concurrent unrelated work. Final documentation and owned vault notes satisfy text-file hygiene.
- No full repository suite, all-class balance sweep, RoM readiness promotion, matchmaking, or deployment was performed.
## Native combat amount follow-up (2026-10-03)
This section records the original amount-only pass. Its open native hit/defense/periodic and target-context boundaries are superseded by [the native resolution and damage-type follow-up](ROM_NATIVE_COMBAT_RESOLUTION_PASS_2026-10-03.md), which also records the newest pacing and browser evidence.
`romAbilityCatalog.ts` now carries explicit `romNativeSource` skill/component identities into bound effect amounts. `romNativeCombatAmount.ts` dispatches supported native direct damage, direct HolyHeal, and periodic HolyHeal snapshots from `equipmentAdjustedCombatAmount`; an unsupported source binding or required gear profile leaves the existing shared HealerMan amount fallback in place. Native `MagicProc.MagicLv` currently uses character level clamped to 1–80 as a simulator rule. Active five-build companion casts use the player-build source branch even when the owner is a party NPC.
Direct HolyHeal now uses the source OrgPower/MND/MDMG/MPow/HealPowerRate/HealPoint path with mean variance. Recipient HealAbsorbRate and flat HealAbsorb are applied once at the actual target, then existing generic combat-result stages resolve criticals and overheal. Periodic HolyHeal uses its separate source DotMagic rank correction and snapshots the integer tick amount when applied; player and NPC targets reuse that fixed tick snapshot. Source auto profiles cover player Knight main-hand attacks and NPC Knight/Rogue melee plus Scout Bow attacks, with NPC Rogue offhand. Player Rogue offhand handling requires an explicitly present equipped inventory item. Player Scout Shot uses the native direct-damage route for its actual bound Shoot hit, not a continuous native bow-auto profile. Caster ambient basic attacks retain generic timing and MDMG policy. Player melee haste explicitly reads the existing common aura because native stat re-derivation does not populate common haste fields. Element-specific MPow/BodyRate, unsupported source components, native hit/avoidance point consumption, complete native defense/variance resolution, and full source combat parity remain open. The damage consumer declines share-damage and target-ordinal decrease branches until runtime supplies exact target-count context. Custom/unverified gear cannot enter the source direct-damage training-weapon route and keeps the shared fallback.
The five exact-pair rotation and final full-player diagnostic are tracked in [`ROM_NATIVE_COMBAT_PASS_2026-10-03.md`](ROM_NATIVE_COMBAT_PASS_2026-10-03.md). The post-haste-retention report covers 80 fixed pulls at levels 1/10/30/60/65/66/79/80: all cleared with zero player/NPC deaths and zero invalid casts; trash took 4.5–9 seconds and Anglo 39–53.4 seconds. The scoped health factor applies only to native-stat RoM and leaves legacy WoW-stat RoM, WoW/CoA-origin health, enemy damage, and the level-80 cap unchanged. Source-damage follow-up passed 13 cases: seven helper cases, two player/companion amount-parity and Reflected Shot fail-closed cases, and four actual auto/source-action cases for player Knight main hand, NPC Scout bow, NPC Rogue offhand, and player Scout Shot. Player Rogue offhand handling requires an explicitly equipped inventory item. Player Scout Shot uses the native direct-damage route for its bound Shoot hit. Caster ambient basics keep generic timing/MDMG policy. Final production build and TypeScript project check passed with asset audits, compression, and bundle verification. Exact-dist browser QA passed with 11 screenshots captured and four representative roster, dungeon, NPC-stat, and mobile screenshots visually reviewed. Current chunks were `index-D_h9IRuA.js` and `combatStore-BiA9BOQG.js`; there were no page/server errors and the network response-errors list was empty, with only the optional existing favicon 404 in the console. A release check passed on 249 paths; the final docs update requires the final hygiene/release check. The earlier 60-sample, six-level report is retained as a historical baseline. The ordinary randomized companion pool is now restricted to the active five identities while the configured factory is broader; no pool/readiness promotion is included. No loot wiring, level-cap increase, or legacy/global enemy-HP retune is included.