mirror of
https://github.com/EQEmu/Server.git
synced 2026-07-09 20:17:16 +00:00
Integrate client-based say links for TOB+ clients (#5105)
This commit is contained in:
+4
-4
@@ -298,13 +298,13 @@ Below is a status list for the 450 opcodes we currently use on the server for th
|
||||
| `OP_InvokeNameChangeImmediate` | 🔴 Not-Set | | |
|
||||
| `OP_InvokeNameChangeLazy` | 🔴 Not-Set | | |
|
||||
| `OP_ItemAdvancedLoreText` | 🟠 Missing | | |
|
||||
| `OP_ItemLinkClick` | 🟠 Missing | | |
|
||||
| `OP_ItemLinkResponse` | 🟠 Missing | | |
|
||||
| `OP_ItemLinkClick` | 🟢 Verified | 0x0350. C→S: CChatWindow::WndNotification@0x1403afbf0 (also CTaskWnd, CPetitionQWnd). ParseItemLink→InspectItemSafe 84B; DECODE reads first 52B (item_id+augs+hash); extra 32B uncharted. | |
|
||||
| `OP_ItemLinkResponse` | 🟢 Verified | 0x7805. C→S: RequestInspectItem@0x140430e80 sends 80B; DECODE strips extra 8B. S→C: sub_1402136D0@0x1402136d0 calls ItemClient::CreateItemClient+ShowItem; ENCODE_FORWARD(OP_ItemPacket) correct. | |
|
||||
| `OP_ItemLinkText` | 🔴 Not-Set | | |
|
||||
| `OP_ItemName` | 🔴 Not-Set | | |
|
||||
| `OP_ItemPacket` | 🟢 Verified | Handler @ `0x1401f0bf3` (inline+CSB). Fixed: added `ItemPacketParcel` to `ServerToTOBItemPacketType` (srv 0x73→TOB 0x74) and corrected parcel `SerializeItem` to use `pms.slot_id`. Note: client discards note field. | |
|
||||
| `OP_ItemPreview` | 🟠 Missing | | |
|
||||
| `OP_ItemPreviewRequest` | 🔴 Not-Set | | |
|
||||
| `OP_ItemPreview` | 🟢 Verified | S→C only (0x3867). Handler @ `0x1401f254d`; passes raw packet bytes as `chngForm&` directly to `CMarketplaceWnd::SetPreviewForm`. Passthrough — `Handle_OP_ItemPreview` hand-rolled bytes ARE the chngForm struct. Replaces RoF2 OP_ItemPreview (0x6B5C). | |
|
||||
| `OP_ItemPreviewRequest` | 🟢 Verified | Bidirectional (0x2B8A). S→C: ENCODE added — SerializeItem → `ItemClient::CreateItemClient(CUnSerializeBuffer&)` + trailing bool @ `0x1401f2321`. C→S: 3 send sites (marketplace, ObjectPreviewWnd×2). Replaces RoF2 OP_ItemPreviewRequest (0x7F80). | |
|
||||
| `OP_ItemRecastDelay` | 🟢 Verified | Handler @ `0x1401E8638` (inline, Pattern B). Encoder added: InventorySlot_Struct (zeroed, TODO server struct) + recast_delay (+0x0C) + recast_type (+0x10). SetCoreItemRecastTimer fires; per-item timer needs server slot. | |
|
||||
| `OP_ItemVerifyReply` | 🟢 Verified | Handler `0x1401e652c` (inline Pattern B). Encoder added: expands 12→20 bytes; adds unknown0 (+0x0C exit gate) and recast_time (+0x10 timestamp, zeroed). Autobook-scribe (spell==0x407) needs server-side recast_time. | |
|
||||
| `OP_ItemVerifyRequest` | 🟢 Verified | C→S only. TOB sends 16-byte packet (InventorySlot_Struct 12 bytes + target uint32). DECODE added using TOBToServerSlot; tob_structs.h entry added. Matches RoF2 layout with int32 Type instead of int16. | |
|
||||
|
||||
Reference in New Issue
Block a user