graphics: resolve item names from graphics.dat #334

Open
opened 2026-10-24 09:45:53 +02:00 by jqueuniet · 0 comments
Owner

Resolve item records to the names the game shows, using graphics.dat text, so tools don't display bare type IDs.

Scope

  • Map item record type + subtype to the dtText entry naming it (engine lookup per [SKPROJECT]).
  • Return decoded name strings; macro escapes left uninterpreted are acceptable if names don't use them.
  • Item icons: investigate how the engine picks an item's icon. If straightforward, return a PNG via the existing graphicsDecodePng; otherwise file a follow-up.
  • Expose through dm2-wasm.
  • Note: the dtText decoder currently covers PC-family graphics.dat; document Mac coverage or its gap.

Acceptance

  • Names match the in-game names for a sample of weapons, armour, containers and consumables on DOS retail.
  • Unknown type/subtype returns a fallback, not an error.
Resolve item records to the names the game shows, using `graphics.dat` text, so tools don't display bare type IDs. ## Scope - Map item record type + subtype to the `dtText` entry naming it (engine lookup per `[SKPROJECT]`). - Return decoded name strings; macro escapes left uninterpreted are acceptable if names don't use them. - Item icons: investigate how the engine picks an item's icon. If straightforward, return a PNG via the existing `graphicsDecodePng`; otherwise file a follow-up. - Expose through `dm2-wasm`. - Note: the `dtText` decoder currently covers PC-family `graphics.dat`; document Mac coverage or its gap. ## Acceptance - Names match the in-game names for a sample of weapons, armour, containers and consumables on DOS retail. - Unknown type/subtype returns a fallback, not an error.
jqueuniet added this to the dm2-tools project 2026-10-24 09:49:02 +02:00
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
jqueuniet/dm2-tools#334
No description provided.