diablo2-web/tests/client
troytt 2e9216fc7f feat(client): server-driven NPC/stash interaction state in ClientWorld
- 0x9D act 0x05 with a non-cursor location (NPC sale, capture 06) removes
  the item instead of moving it to the cursor.
- ClientInventoryManager.clearShop(): the server sends no RemoveFromShop
  after 0x30 (capture 05), so the store is freed locally.
- ClientWorld.npcInteraction (npcId / trade|gamble window / stashOpen from
  S2C 0x77 0x10) and lastNpcTransaction (numbered 0x2A log, display only).
- OnlineSession and the bot apply outgoing-command side effects through
  ClientWorld.noteOutgoingCommand.
- Replay tests over captures 05-09.
2026-10-01 10:08:43 +00:00
..
client-world.test.ts fix(client): neutral not-ready HUD state and server-authoritative HUD commands (P1/P2) 2026-10-01 01:41:13 +00:00
derived-stats.test.ts fix(client): table-driven missile ids and derived character stats (P3) 2026-10-01 01:41:13 +00:00
drlg-map-motion.test.ts refactor: split into isolated common/netproto/server/client/baker modules 2026-10-01 00:10:18 +00:00
hud-server-authority.test.ts fix(client): neutral not-ready HUD state and server-authoritative HUD commands (P1/P2) 2026-10-01 01:41:13 +00:00
hud-session-play.test.ts fix(client): neutral not-ready HUD state and server-authoritative HUD commands (P1/P2) 2026-10-01 01:41:13 +00:00
missile-id-map.test.ts fix(client): table-driven missile ids and derived character stats (P3) 2026-10-01 01:41:13 +00:00
settings-toolbar-view.test.ts refactor(client): remove leftover single-player client code 2026-10-01 06:03:55 +00:00
vendor-stash-replay.test.ts feat(client): server-driven NPC/stash interaction state in ClientWorld 2026-10-01 10:08:43 +00:00