Game Opcodes:Retainer Search Results
From FFXIV Classic Wiki
Sends the current retainers selling an item during Market Ward search.
- Opcode - 0x1DB
- Source - Server
- Data Size - 2560 bytes
- Requirements - 0x1D___ was sent by the client.
Data
| Offset | Data Type | Length | Variable | Description |
|---|---|---|---|---|
| 0x0C | uint32 | 4 Bytes | numRetainers | The number of retainers in this packet. |
| 0x10 | retainerData[] | 128 Bytes * numRetainers | retainerData | A list of objects for each item for sale by a retainer. |
| retainerData - 128 Bytes Each | ||||
|---|---|---|---|---|
| Offset | Data Type | Length | Variable | Description |
| 0x08 | uint32 | 4 Bytes | itemCatalogID | The catalogID of the item being sold. |
| 0x0C | uint32 | 4 Bytes | marketDenID | The market den the retainer is at. |
| 0x10 | int32 | 4 Bytes | gilPrice | The price of the item. |
| 0x14 | uint32 | 4 Bytes | quantity | The amount of the item being sold. |
| 0x18 | boolean | 1 Bytes | isStack | Is this multiple stacks of items. 0 = false, otherwise true. |
| 0x19 | byte | 1 Bytes | quality | The item quality (1 = NQ, 2 = HQ + 1, 3 = HQ + 2, etc). |
| 0x1C | string | 32 Bytes | retainerName | The name of the retainer selling the item. |
| 0x60 | byte[5] | 5 Bytes | materiaTypes | The materia attached to this item. |
| 0x65 | byte[5] | 5 Bytes | materiaGrades | The grade of the materia attached to this item. |
Notes
- This packet is repeated until all items have been sent. Once done, 0x1DC is sent to update the UI.
- The client will keep updating the window if more of this + 0x1DC packets are sent.
Visual Layout
| Game Opcode layout | ||||||||||||||||
| 0x0 | 0x1 | 0x2 | 0x3 | 0x4 | 0x5 | 0x6 | 0x7 | 0x8 | 0x9 | 0xA | 0xB | 0xC | 0xD | 0xE | 0xF | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0x00 | 00 | 00 | 00 | 00 | 00 | 00 | 00 | 00 | 00 | 00 | 00 | 00 | numRetainers | |||
| 0x10 | retainerData | |||||||||||||||
| 0x20 | ||||||||||||||||
| 0x30 | ||||||||||||||||
| 0x40 | ||||||||||||||||
| 0x50 | ||||||||||||||||
| 0x60 | ||||||||||||||||
| 0x70 | ||||||||||||||||
| 0x80 | ||||||||||||||||
| 0xA00 | ||||||||||||||||
| RetainerData Layout | ||||||||||||||||
| 0x0 | 0x1 | 0x2 | 0x3 | 0x4 | 0x5 | 0x6 | 0x7 | 0x8 | 0x9 | 0xA | 0xB | 0xC | 0xD | 0xE | 0xF | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0x00 | 00 | 00 | 00 | 00 | 00 | 00 | 00 | 00 | itemCatalogID | retainerMarketDen | ||||||
| 0x10 | gilCost | quantity | isStack | quality | 00 | 00 | ||||||||||
| 0x20 | retainerName | |||||||||||||||
| 0x30 | 00 | 00 | 00 | 00 | ||||||||||||
| 0x40 | 00 | 00 | 00 | 00 | 00 | 00 | 00 | 00 | 00 | 00 | 00 | 00 | 00 | 00 | 00 | 00 |
| 0x50 | 00 | 00 | 00 | 00 | 00 | 00 | 00 | 00 | 00 | 00 | 00 | 00 | 00 | 00 | 00 | 00 |
| 0x60 | materiaType | materiaGrade | 00 | 00 | 00 | 00 | 00 | 00 | ||||||||
| 0x70 | 00 | 00 | 00 | 00 | 00 | 00 | 00 | 00 | 00 | 00 | 00 | 00 | 00 | 00 | 00 | 00 |