fix #234: port retail appraisal floaty and inscriptions
This commit is contained in:
parent
643cdfe66e
commit
f1a7912160
23 changed files with 1310 additions and 106 deletions
|
|
@ -74,6 +74,44 @@ Copy this block when adding a new issue:
|
|||
|
||||
---
|
||||
|
||||
## #234 — Monster assessment held busy and examination used the shared panel
|
||||
|
||||
**Status:** DONE — 2026-07-23, corrective connected gate pending
|
||||
**Severity:** HIGH
|
||||
**Filed:** 2026-07-23
|
||||
**Component:** appraisal protocol / retained examination UI / item writing
|
||||
|
||||
**Description:** Assessing a monster appeared to hang the UI with the busy
|
||||
cursor. Examination also replaced Inventory/Skills in the shared primary
|
||||
panel, while retail opens its own floaty window. Assessed item inscriptions
|
||||
were display-only.
|
||||
|
||||
**Root cause / status:** The local IdentifyResponse enum did not match
|
||||
ACE/retail: creature profile bit `0x0100` was labeled WeaponProfile. The strict
|
||||
parser consequently rejected normal creature responses before the appraisal
|
||||
owner could release its balanced busy reference. The examination LayoutDesc
|
||||
had also been incorrectly registered as synthetic main-panel id
|
||||
`0x80000001`; retail's concrete root is `gmFloatyExaminationUI`. Exact response
|
||||
bits/order are now pinned by literal packet tests, the floaty is registered as
|
||||
an independent top-level window, and the imported multiline field sends
|
||||
retail's CP-1252 `SetInscription (0x00BF)` under its ownership/authorship rules.
|
||||
|
||||
**Files:** `src/AcDream.Core.Net/Messages/AppraiseInfoParser.cs`;
|
||||
`src/AcDream.App/UI/RetailUiRuntime.cs`;
|
||||
`src/AcDream.App/UI/Layout/AppraisalUiController.cs`;
|
||||
`src/AcDream.App/UI/UiField.cs`;
|
||||
`src/AcDream.Core.Net/Messages/InventoryActions.cs`.
|
||||
|
||||
**Research:**
|
||||
[`research/2026-07-23-retail-appraisal-ui-pseudocode.md`](research/2026-07-23-retail-appraisal-ui-pseudocode.md).
|
||||
|
||||
**Acceptance:** Monster/NPC/player assessment opens and clears busy; the
|
||||
examination window coexists with the shared primary panel; an owned
|
||||
inscribable weapon can be edited/cleared and reassessed; foreign/nonowned/
|
||||
noninscribable cases show retail's exact permission messages.
|
||||
|
||||
---
|
||||
|
||||
## #235 — Capped/RDP jump presentation aliases the 30 Hz object clock
|
||||
|
||||
**Status:** OPEN
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue