diff --git a/docs/ISSUES.md b/docs/ISSUES.md index b3e20971..1a9e6af9 100644 --- a/docs/ISSUES.md +++ b/docs/ISSUES.md @@ -74,6 +74,14 @@ after each deliberate `Top` write for the imported-layout element. Precedent: `MapPageController.cs:235-249` (the same fix already landed for other runtime-repositioned imported/programmatic elements). +## #493 — In-game rule editors for metas and loot rules (VTank's "Edit Meta Rule" and the loot editor) — deferred by the owner + +**Status:** OPEN — filed 2026-09-07 at the slice-7 live look (owner: "we should not implement that right now since most metas are implemented outside of the game. Same with loot rules"). +**Severity:** LOW (feature; post-Campaign VT) +**Component:** `src/AcDream.Plugins.MossTank/mosstank-metaeditor.xml`, `mosstank-loot-editor.xml`, `MossTankPanel.cs` + +**Description.** VTank's Meta tab "Create" opens its "Edit Meta Rule" view (state, condition type + fields, action type + fields, nested All/Any/Not); its loot rules are edited in VTClassic's external editor. MossTank has a minimal popup editor for both. Metas are authored as metaf `.af` outside the game and loot profiles with the external `.utl` editor, so a full in-game editor is not on the campaign path. When picked up: model the editor on VTank's `Edit Meta Rule` view (KB 07 §1.3/§1.4 for every condition/action field) with a tree for nested rules, and a loot-rule editor over the `.utl` requirement vocabulary (KB 05 §1.3); the `.af`/`.utl` writers already exist. + ## #492 — Vulkan device loss at frame submit crashes the client and the shutdown path throws again on the lost device **Status:** OPEN — observed 2026-09-07 17:56 on the owner's machine during the slice-7 live look (gate build at `2b79ca325`). diff --git a/docs/plans/2026-09-07-campaign-vt-slice7-tabs.md b/docs/plans/2026-09-07-campaign-vt-slice7-tabs.md index 0e5b0449..65259e2d 100644 --- a/docs/plans/2026-09-07-campaign-vt-slice7-tabs.md +++ b/docs/plans/2026-09-07-campaign-vt-slice7-tabs.md @@ -107,3 +107,4 @@ re-review, merge to the campaign branch, then the owner's visual gate. - 2026-09-07 18:20 architecture re-check of rounds C+D at `2b79ca325`: round C fully closed; round D sound but NOT merge-ready on two items — D-1 pre-cutover JSON routes silently remap recalls (old ordinals 0..3 now name different kinds; the `Enum.IsDefined` guard never fires), D-2 the recall combo shows C# identifiers instead of the metaf-exact names; follow-ups D-3 (Advanced Options popup claims resizable but is not), D-4 (unknown `.af` recall name falls back to Primary Portal Recall), D-5 (values stale on popup open), D-6 (no resolved-geometry pin at min/enlarged sizes). Category names, the enum table and the click model verified data-driven and single-path; zero App-side production change in round D. Round E dispatched with all six. - 2026-09-07 18:40 resemblance re-check at `2b79ca325`: all 13 earlier items CLOSED; owner asks 1–3 CLOSED, 4–5 PARTIAL. NOT ready for the gate on: (1) the enlarged default never reaches a machine with a stored layout — plugin windows register with `authoredGeometryRevision = 0`, so the saved 856×236 always wins (App-side fix dispatched on its own worktree: derive the revision from the authored geometry; #490 part 2); (2) the recall combo's full spell names overflow the 120 px box on most of the 27 entries — VTank's `cmbRecallType` uses terse captions ("Primary", "LS Sending", "PtOIA", "Fac. Hub"…): show those, keep the full name in the waypoint and `.af`; (3) Monsters' move-down arrow drifted ~67 px from move-up because the last (auto) column absorbed the new width — add a trailing filler column; (4) Advanced Options popup not resizable (round E D-3). Nits for the same round: single-column `items=` lists still draw the selection band while grids do not; Buffs' 136 px middle gap and the orphaned Coverage label; the Loot Editor's leftover Back button; Route's count column squeezing to 17 px when the list scrolls. Six of nine tabs keep dead margin at 984×271 (Route 366 px right, Profiles 244) — accepted for now under "polish later", noted for the owner. Round F queued after round E. - 2026-09-07 19:10 App-side merges: `7b7e5e579` plugin `` draws no selection band by default (`selectionband="true"` opts in); `3d7065ebc` #490 part 2 fixed — plugin windows carry a geometry-hash `authoredGeometryRevision`, so a changed authored size replaces a stored size once (position kept, clamped); App window/markup/list filter 254/254. Round F (after round E on the panel worktree): merge the campaign branch in; VTank's terse `cmbRecallType` captions in the recall combo (full spell name stays in the waypoint and `.af`); Monsters trailing filler column so the arrows stay adjacent; Buffs middle gap + Coverage label; Loot Editor's leftover Back; Route count column min width. Then one combined final re-check, merge, gate build. +- 2026-09-07 18:15 OWNER LIVE LOOK at `2b79ca325`: (1) Advanced Options — the whole bottom block ("Editing X." notice + the MossTank Extras section with the Route extras) must go; (2) Advanced Options — the list scrollbar shows but clicks/drags work only sometimes (App-side hit-testing bug; dispatched); (3) `BuffProfile-Prots`/`-Banes` appear "duplicated" beside `BuffProfile_Prots`/`_Banes` and only the enum ones respond — the hyphen ones are `tString`, which VTank's Advanced Options never lists (KB 01, `db.cs:132-166`): hide `tString` settings from the list; (4) Items tab — remove the MossTank block right of the list (Weapon/Offhand readout, Refill Worn Mana slider, status, hint); (5) Meta "Create" should open a VTank-style rule editor — deferred by the owner, filed as #493 (with the loot-rule editor). Items 1, 3, 4 join round F on the panel worktree.