Game Opcodes:Set Cutscene Book Details
From FFXIV Classic Wiki
Sets the information needed for the "The Unending Journey" cutscene book actor. This includes completed quests as well as Path Companion info. This should be sent when the player zones into the inn.
TO-DO: Requires further documenting of the Path Companion (eg. their name), as well as whichever byte(s) handles the "Others" category
- Opcode - 0x1A3
- Source - Server
- Data Size - 0x130 bytes
- Requirements - None
Data
Offset | Data Type | Length | Variable | Description |
---|---|---|---|---|
0x00 | byte | 1 Byte | beastIntro | Cutscenes for the beast tribe area introductions, under 'Other' category. 1st bit Zahar'ak, 2nd bit Natalan, 3rd bit U'Ghamaro Mines. |
0x01 | uint16 | 2 Bytes | msqInstance | Covers the Nightmare cutscenes (2nd bit opens all three versions of it), as well as the Castrum Novum intro cutscene (8th bit). The other 14 bits do nothing? |
0x03 | byte | 1 Byte | unk3 | Unknown. Set to 0x0. |
0x04 | uint16 | 2 Bytes | sNpcActorIdOffset | The offset from the base Actor Class ID (1070000) used to define what the player's Path Companion looks like. |
0x06 | byte | 1 Byte | sNpcSkin | The skin color of the Path Companion. |
0x07 | byte | 1 Byte | sNpcPersonality | The personality of the Path Companion |
0x08 | byte | 1 Byte | completedInstance | Covers cutscenes for Instanced Raids, as well as Hamlets under 'Other'. Bit layout under the Notes section. |
0x09 | bitstream | 250 Bytes | completedQuest | A bit stream of all the completed quests the player had done, which let's the player view their respective cutscenes. |
0x109 | string | 31 Bytes? | sNpcName | Name of the Path Companion. Client crashes if 32 bytes in length. |
Notes
- The client reads completedQuest's first bit as quest ID's 110001 completion state, with every bit from there-on adding 1 to that value.
- Due to skips in numbers between categories of quests, this leads to a lot of empty entries in the journal if one were to 0xFF the entire bitstream.
- completedInstance bit layout -
- 1 = Thousand Maws of Toto-Rak (Instanced Raids)
- 2 = Dzemael Darkhold (Instanced Raids)
- 3 = Aurum Vale (Instanced Raids)
- 4 = Cutter's Cry (Instanced Raids)
- 5 = The Battle for Aleport (Opening & Ending)
- 6 = The Battle for Hyrstmill (Opening & Ending)
- 7 = The Battle for the Golden Bazaar (Opening & Ending)
- 8 = n/a
Visual Layout
Packet Data Layout | ||||||||||||||||
0x0 | 0x1 | 0x2 | 0x3 | 0x4 | 0x5 | 0x6 | 0x7 | 0x8 | 0x9 | 0xA | 0xB | 0xC | 0xD | 0xE | 0xF | |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0x00 | beastIntro | msqInstance | unk3 | sNpcActorIdOffset | sNpcSkin | sNpcPersonality | completedInstance | |||||||||
0x10 | completedQuests | |||||||||||||||
~ | ||||||||||||||||
0xF0 | ||||||||||||||||
0x100 | 00 | 00 | 00 | 00 | 00 | 00 | ||||||||||
0x110 | sNpcName | |||||||||||||||
0x120 | 00 | 00 | 00 | 00 | 00 | 00 | 00 | 00 | 00 |