docs(vt): round 3 item 11 — record the MyMonsters persistence gap
CombatSettings.Rules lives only in MossTank's JSON side-car; VtankSettingsProfileSerializer preserves the real .usd MyMonsters table byte-for-byte but never parses it into MonsterRules or regenerates it from them (VtankSettingsProfileSerializer.cs:24-30). MonsterRules.cs/ MonsterExpression.cs (the rule-grammar evaluator itself) is a faithful, well-cited port with no material gap — only the real-file round trip is missing. Filed TS-86 (temporary stopgap; slice 3 ports the table) and added it as gap item 6 in docs/research/vtank-kb/03-combat.md section 8 (previously absent — the existing five gaps are about rule-grammar/priority fidelity, not about whether the real table round-trips at all). Corrected the TS section header's stale active-row count (was undercounting by one before this row) to the actual count. Documentation-only; the parse is deliberately NOT implemented this round, per the task's explicit scope. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
This commit is contained in:
parent
fbb584436b
commit
55010f92c7
2 changed files with 19 additions and 1 deletions
File diff suppressed because one or more lines are too long
|
|
@ -538,6 +538,23 @@ and `PetDeviceCatalog.cs` — but was not compared step-by-step against
|
||||||
`CombatController.cs`. Effect: minor DPS/time loss from unnecessary
|
`CombatController.cs`. Effect: minor DPS/time loss from unnecessary
|
||||||
re-wields when several adjacent monsters need different weapons,
|
re-wields when several adjacent monsters need different weapons,
|
||||||
lower impact than 1–3 above.
|
lower impact than 1–3 above.
|
||||||
|
6. **The real `.usd` `MyMonsters` table is preserved but never read or
|
||||||
|
written — a persistence gap, not a rule-grammar gap.** Round 3 item 11:
|
||||||
|
`CombatSettings.Rules` (the live `MonsterRule` list `MonsterRules.cs`/
|
||||||
|
`MonsterExpression.cs` evaluate against, item 5's own faithful port)
|
||||||
|
lives ONLY in MossTank's JSON side-car
|
||||||
|
(`MossTankProfileStore.SideCarDocument.CombatRules`); the real 21-column
|
||||||
|
`MyMonsters` table `VtankSettingsProfileSerializer` round-trips inside
|
||||||
|
the `.usd` file (`VtankSettingsProfileSerializer.cs:24-30`: "every table
|
||||||
|
other than Settings … is preserved byte-for-byte") is never parsed into
|
||||||
|
`MonsterRule`s on load and never regenerated from them on save. Effect:
|
||||||
|
a drop-in `.usd` from real VTank (or a hand-edited one) keeps its
|
||||||
|
`MyMonsters` rows completely inert in acdream — MossTank always uses
|
||||||
|
whatever the side-car separately holds instead, and a real VTank opening
|
||||||
|
an acdream-saved `.usd` would see stale/absent `MyMonsters` rows
|
||||||
|
regardless of what MossTank's own rule editor currently shows. Deferred
|
||||||
|
to a future slice (slice 3) that ports the table; NOT implemented this
|
||||||
|
round (see `docs/architecture/retail-divergence-register.md`).
|
||||||
|
|
||||||
`AutoAttackPower.cs` (melee power table) and `MonsterRules.cs` /
|
`AutoAttackPower.cs` (melee power table) and `MonsterRules.cs` /
|
||||||
`MonsterExpression.cs` (rule expression grammar) were both checked in
|
`MonsterExpression.cs` (rule expression grammar) were both checked in
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue