diablo2-web/src/netproto
troytt 8f8ea3b301 fix(netproto): vendor/stash packet encodings per 1.13c disassembly
- 0x4F ClickButton: amount high word before low word (D2Game 0x6fcf1470);
  named ClickButtonId (0x08 trade gold, 0x12 close stash, 0x13 withdraw,
  0x14 deposit, 0x18 transmute); amount is required.
- 0x35 repair split into NpcRepairItem (itemMode, durability) and
  NpcRepairAll (field4 0x80000000); no defaults.
- 0x32/0x33 field3 semantics: buy = itemMode<<16 | gamble 2 | shift 0x80000000,
  sell = itemMode; cost required.
- 0x38: NpcOpenTrade (action 1) / NpcOpenGamble (action 2), confirmed in
  D2Game 0x6fce00c0.
- 0x2A decoded as NpcTransaction{result@2, flag@1, itemId@7, gold@11}
  (builder D2Game 0x6fcaac90); ClientWorld no longer writes stat 14 from it.
- Byte-level golden tests.
2026-10-01 09:45:14 +00:00
..
bncs feat(netproto,client): implement pure-browser D2 1.13c online client (N0-N10) 2026-09-30 04:41:08 +00:00
core refactor: split into isolated common/netproto/server/client/baker modules 2026-10-01 00:10:18 +00:00
crypto feat(netproto,client): implement pure-browser D2 1.13c online client (N0-N10) 2026-09-30 04:41:08 +00:00
d2gs fix(netproto): vendor/stash packet encodings per 1.13c disassembly 2026-10-01 09:45:14 +00:00
domain fix(netproto): vendor/stash packet encodings per 1.13c disassembly 2026-10-01 09:45:14 +00:00
flow feat(netproto,client): implement pure-browser D2 1.13c online client (N0-N10) 2026-09-30 04:41:08 +00:00
mcp feat(netproto,client): implement pure-browser D2 1.13c online client (N0-N10) 2026-09-30 04:41:08 +00:00
transport refactor: split into isolated common/netproto/server/client/baker modules 2026-10-01 00:10:18 +00:00
ts feat(netproto,client): implement pure-browser D2 1.13c online client (N0-N10) 2026-09-30 04:41:08 +00:00
index.ts fix(netproto): vendor/stash packet encodings per 1.13c disassembly 2026-10-01 09:45:14 +00:00