Game Opcodes
This is a list of all the various opcodes and their layouts that FFXIV 1.23b uses.
Lobby
Sent from Client
Opcode | Packet Name | Size | Packet Description |
---|---|---|---|
0x03 | Get Characters | ||
0x04 | Select Character | ||
0x05 | Get Accounts | Content/Service Accounts? | |
0x0B | Modify Character | ||
0x0F | Finish Mod Retainers | GM Tool? |
Sent from Server
Opcode | Packet Name | Size | Packet Description |
---|---|---|---|
0x01 | |||
0x02 | Error | ||
0x0C | Account List | ||
0x0D | Character List | ||
0x0E | Modify Character Reply | ||
0x0F | Select Character Reply | ||
0x10 | |||
0x15 | World List | ||
0x16 | Import Name List | ||
0x17 | Retainer List | ||
0x1F4 | |||
0x1F5 |
Game
Opcode | Server -> Client | Client -> Server | Packet Description | |||
---|---|---|---|---|---|---|
Packet Name | Size | Packet Name | Size | |||
0x0001 | Pong | Ping | ||||
0x0002 | ??? | ??? | Received/Sent during login | |||
0x0003 | Chat Message | Chat Message | Sent along the chat socket | |||
0x0004 | Reset Engine? | |||||
0x0005 | Set Map | |||||
0x0006 | Mass Delete Actor Start | Language Code | ||||
0x0007 | Mass Delete Actor End | |||||
0x0008 | Actors to NOT Mass Delete | |||||
0x0009 | Actors to NOT Mass Delete (10?) | |||||
0x000A | Actors to NOT Mass Delete (20?) | |||||
0x000B | Actors to NOT Mass Delete (40?) | |||||
0x000C | Set Music | |||||
0x000D | Set Weather | |||||
0x000E | Logout | |||||
0x000F | ||||||
0x0010 | During Login - One param: 00 or FF? | |||||
0x0011 | Quit Game | |||||
0x00C7 | Party Message | |||||
0x00C8 | Tell Message | |||||
0x00C9 | Linkshell Message | |||||
0x00CA | Create Actor | Position Update | ||||
0x00CB | Delete Actor | |||||
0x00CC | Load Class Script for Actor | |||||
0x00CD | Unset Actor Class/Script? | Target Selected | ||||
0x00CE | Set Actor Position | Starting Cutscene | ||||
0x00CF | Move Actor to Position | /countdown | ||||
0x00D0 | Set Actor Speeds | |||||
0x00D2 | ? | Played Player does to mob, mob ID | ||||
0x00D3 | Set Actor Target (Animated) | Played Player does to mob, mob ID | ||||
0x00D4 | Turn Actor to Target | |||||
0x00D6 | Set Actor Appearance | |||||
0x00D7 | Flashes Appearance, Sets Actor Target | |||||
0x00D8 | Bind BG MapObj to Actor | |||||
0x00D9 | Play BG animation | spin: Ship In, spot: Ship Out, stt0: open dock, end0: close dock. Also "show"? | ||||
0x00DA | Play particle animation on actor (w.o stopping) | B9 0B 00 04 will fade you away | ||||
0x00DB | Set Actor Target | Final byte was 3F | ||||
0x00DC | ? Set Actor Targer (Unknown) | |||||
0x00DD | ? | |||||
0x00DE | ? Clears Actor Target (Seems to) | |||||
0x00DF | Set Actor Target | |||||
0x00E0 | Play animation/effect | Second param unknown | ||||
0x00E1 | Do Emote | Emotes use this | ||||
0x00E2 | Needed for mapchange (0x02 first byte) Show/Hide UI (0x15/0x16 first byte) | |||||
0x00E3 | Used to set "Have Quest" and "Important" NPC Icons | |||||
0x00E4 | Show/Hide Weapon | First byte can be 03, dunno what it does | ||||
0x00E5 | Countdown | |||||
0x012C | ||||||
0x012D | Script Start Request/Script Error | ~/Fired when actor with script is activated | ||||
0x012E | SetTalkEventCondition | Script Result | Sets actor to have a talk event condition/Fired after selecting an option in a script | |||
0x012F | KickClientOrderEvent | Parameter Data Request | Tells an actor to start an event/Fired on certain menus, asking for data | |||
0x0130 | StartServerOrderEventFunction | Like bed or door object | ||||
0x0131 | EndClientOrderEvent | |||||
0x0132 | Sets things up on PC creation (??) | |||||
0x0133 | General Data Packet | Group Created | Used for sending various info as well as some commands/Tells server to send work values | |||
0x0134 | Set Actor State | |||||
0x0135 | ||||||
0x0136 | SetEventStatus (Fire at the end to make em work) | |||||
0x0137 | Set Actor Propery (AKA: SynchMemory) | |||||
0x0138 | SetTargetTime | |||||
0x0139 | Battle Action (x01 Log/Effect) | Used for general attacks | ||||
0x013A | Battle Action (x10 Log/Effect) | Shows EXP Chains/Exp gained | ||||
0x013B | Battle Action (x18 Log/Effect) | |||||
0x013C | Battle Action (No Log/Effect) | Shows chocobo mount animation | ||||
0x013D | Set Actor Name | |||||
0x0143 | Delete Group | Might be delete group... sends group ids | ||||
0x0144 | Set Actor Animation | 0xc?, 0x00 0xF0? | ||||
0x0145 | Set Actor Icon (ChangeActorExtraStat) | |||||
0x0146 | Inventory Chunk Start | ActorId, Count, Inventory Type | 05, 62: Key Items | |||
0x0147 | Inventory Chunk End | 8bytes of 0. | ||||
0x0148 | Add Item (x01) | |||||
0x0149 | Add Item (x08, variable) | |||||
0x014A | Add Item (x16) | |||||
0x014B | Add Item (x32) | |||||
0x014C | Add Item (x64) | |||||
0x014D | Set Equipment Id (x01) | |||||
0x014E | Set Equipment Id (x08, variable) | |||||
0x014F | Set Equipment Id (x16) | |||||
0x0150 | Set Equipment Id (x32) | |||||
0x0151 | Set Equipment Id (x64) | |||||
0x0152 | Remove Item (x01) | 2bytes each | ||||
0x0153 | Remove Item (x08, variable) | count at 0x10 | ||||
0x0154 | Remove Item (x16) | |||||
0x0155 | Remove Item (x32) | |||||
0x0156 | Remove Item (x64) | |||||
0x0157 | Text Sheet Message (Source Actor) 1 | [Source Actor][WorldMaster Id][Text Id][Log] (30Bytes) | Used on Chocobo Call/Dismiss. | |||
0x0158 | Text Sheet Message (Source Actor) 2 | [Source Actor][WorldMaster Id][Text Id][Log][Params] [@0x14: int32] (38Bytes) | Used for "You can't use that item now". Last int32 needs to be > 4... investigate. | |||
0x0159 | Text Sheet Message (Source Actor) 3 | [Source Actor][WorldMaster Id][Text Id][Log][Params] (40Bytes) | Used for Ability switch/Class Switch | |||
0x015A | Text Sheet Message (Source Actor) 4 | [Source Actor][WorldMaster Id][Text Id][Log][Params] (50Bytes) | Used for "You obtain a [item]" | |||
0x015B | Text Sheet Message (Source Actor) 5 | [Source Actor][WorldMaster Id][Text Id][Log][Params] (70Bytes) | ||||
0x015C | Text Sheet Message (Custom Sender) 1 | [NPC Actor Id][Text Id][Log][0x20Bytes Name] (48Bytes) | ||||
0x015D | Text Sheet Message (Custom Sender) 2 | [NPC Actor Id][Text Id][Log][0x20Bytes Name][Params][@0x30: int32] (58Bytes) | ||||
0x015E | Text Sheet Message (Custom Sender) 3 | [NPC Actor Id][Text Id][Log][0x20Bytes Name][Params] (68Bytes) | ||||
0x015F | Text Sheet Message (Custom Sender) 4 | [NPC Actor Id][Text Id][Log][0x20Bytes Name][Params] (78Bytes) | ||||
0x0160 | Text Sheet Message (Custom Sender) 5 | [NPC Actor Id][Text Id][Log][0x20Bytes Name][Params] (98Bytes) | ||||
0x0161 | Text Sheet Message (DispId Sender) 1 | [Display Name Id][NPC Actor Id][Text Id][Log] (30Bytes) | ||||
0x0162 | Text Sheet Message (DispId Sender) 2 | [Display Name Id][NPC Actor Id][Text Id][Log][Params] [@0x14: int32] (38Bytes) | ||||
0x0163 | Text Sheet Message (DispId Sender) 3 | [Display Name Id][NPC Actor Id][Text Id][Log][Params] (40Bytes) | ||||
0x0164 | Text Sheet Message (DispId Sender) 4 | [Display Name Id][NPC Actor Id][Text Id][Log][Params] (50Bytes) | ||||
0x0165 | Text Sheet Message (DispId Sender) 5 | [Display Name Id][NPC Actor Id][Text Id][Log][Params] (60Bytes) | ||||
0x0166 | Text Sheet Message (No Source Actor) 1 | [WorldMaster Id][Text Id][Log] (28Bytes) | Used during "Teleporting" or "Can't carry anymore" message | |||
0x0167 | Text Sheet Message (No Source Actor) 2 | [WorldMaster Id][Text Id][Log][Params] [@0x30: int32] (38Bytes) | Used during "Entering Bowl of Embers" message | |||
0x0168 | Text Sheet Message (No Source Actor) 3 | [WorldMaster Id][Text Id][Log][Params] (38Bytes) | Used for "You Don't not have an Inferno lamp" and "You use 4 fire shards" message | |||
0x0169 | Text Sheet Message (No Source Actor) 4 | [WorldMaster Id][Text Id][Log][Params] (48Bytes) | Used for "teleport/anima" message | |||
0x016A | Text Sheet Message (No Source Actor) 5 | [WorldMaster Id][Text Id][Log][Params] (68Bytes) | ||||
0x016B | SetNoticeEventCondition | |||||
0x016C | SetEmoteEventCondition | emoteDefault? | ||||
0x016D | Inventory Start | |||||
0x016E | Inventory End | |||||
0x016F | SetPushEventConditionWithCircle | |||||
0x0170 | SetPushEventConditionWithFan | |||||
0x0171 | ||||||
0x0172 | ||||||
0x0173 | ||||||
0x0174 | ||||||
0x0175 | SetPushEventConditionWithTriggerBox | |||||
0x0176 | Equip Related????? Look in beta/alpha | |||||
0x0177 | Set Status @ Index | |||||
0x0179 | Set All Status | |||||
0x017A | Set Group Work Properties | |||||
0x017B | Set Actor In Different Zone | |||||
0x017C | Group Packet Header | |||||
0x017D | Group Begin | |||||
0x017E | Group End | |||||
0x017F | Group Members Body (x8, variable) | |||||
0x0180 | Group Members Body (x16) | |||||
0x0181 | Group Members Body (x32) | |||||
0x0182 | Group Members Body (x64) | |||||
0x0183 | Group Duty Members Body (x8, variable) | |||||
0x0184 | Group Duty Members Body (x16) | |||||
0x0185 | Group Duty Members Body (x32) | |||||
0x0186 | Group Duty Members Body (x64) | |||||
0x0187 | Single Group related | 0x08: FFFFFFFF, 0x0C: Name? | ||||
0x0188 | Create Named Group (IE: LS) | 0x00: 07, 0x10: Name? | ||||
0x0189 | Create Named Group (x8, variable) | Linkshell list? npc_pc_lastevent | ||||
0x018A | Set Active Linkshell | |||||
0x018B | Group Update Member (x1) | |||||
0x018C | Group Update Member (x8, variable) (?? guess) | |||||
0x018D | Group Update Member (x16, variable) (??) | |||||
0x018E | ChangeSystemStat | |||||
0x018F | Some Start Tag? | |||||
0x0190 | Some Body Opcode? | |||||
0x0191 | Some End Tag? | |||||
0x0192 | ||||||
0x0193 | Stops control (0x14) and starts (0x15). | 0x13 talks about actioncheck value being set. | ||||
0x0194 | Set Grand Company Info | |||||
0x0195 | Set Emnity Indicator | First arg actorID, Second emnity level | ||||
0x0196 | ??? - In Packet 7 | 0x00,00,0xE (1.19a), 0x00,00,0D (1.20), 0x00,07,5A also 0x1 @ 10 bytes backwards(1.22c), 0x000014, 1 in same spot. (1.23b) | ||||
0x0197 | Set Chocobo Appearance | 0: Standard, 1-4: Maelstrom, 1F-22: Adders, 3D-3F: Flames | ||||
0x0198 | Set Chocobo Name | |||||
0x0199 | Set Has Chocobo | > 0 YES, else NO | ||||
0x019A | Set Achievements Completed | |||||
0x019B | Set Top Achievements | |||||
0x019C | Set Total Achievement Points | |||||
0x019D | Set Player Title | |||||
0x019E | Achievement Earned Packet | |||||
0x019F | Respond Achievement Completion Rate | |||||
0x01A0 | Set Gobbue Appearance | |||||
0x01A1 | Set Has Gobbue Mount | > 0 YES, else NO | ||||
0x01A2 | JobQuestCompleteTriple | |||||
0x01A3 | Set Completed Quests (For Book) | Sets path companion too | ||||
0x01A4 | Set Current Job | |||||
0x01A5 | EntrustItem (20 bytes. Each byte tested as bitflag.) | |||||
0x01A6 | HamletSupplyRanking | |||||
0x01A7 | Set Dream Result (Required for wakeup) | |||||
0x01A8 | HamletDefenseScore | |||||
0x01C2 | Doesn't Exist? | |||||
0x01C3 | Recruiting Started Response | Recruitment Start Request | 0 = Failed, 1 = Successful | |||
0x01C4 | Recruiting Ended Response | Recruitment End Request | 0 = Failed, 1 = Successful | |||
0x01C5 | Recruiting State Response (Open Party) | Party Window Opened, asking for state | ||||
0x01C6 | Recruiting Acceptment Response | |||||
0x01C7 | Recruitment Search Results | Search Result request | ||||
0x01C8 | Get Recruitment Info | Current Recruitment Info request | Unable to retrieve recruitment info | |||
0x01C9 | Add Blacklist Response | 0 = Failed, 1 = Successful | ||||
0x01CA | Remove Blacklist Response | 0 = Failed, 1 = Successful | ||||
0x01CB | Send Blacklist | |||||
0x01CC | Add Friendlist Response | |||||
0x01CD | Remove Friendlist Response | 0 = Failed, 1 = Successful | ||||
0x01CE | Send Friendlist | |||||
0x01CF | Friend Status Update Response | |||||
0x01D0 | Faq Request Response | |||||
0x01D1 | Faq Body Response | |||||
0x01D2 | Send Issue Options | |||||
0x01D3 | Makes GM Icon Reply appear | First byte must == 1 to show icon | ||||
0x01D4 | GM Message Response | |||||
0x01D5 | GM Ticket Sent Response. | 0 = GM send failed, 1 = GM send successful | ||||
0x01D6 | Confirm GM ticket ended | First byte must == 1 to hide icon | ||||
0x01D7 | Deals with something stored at EAX + C8 | |||||
0x01D8 | Deals with something stored at EAX + C8 | |||||
0x01D9 | Deals with something stored at EAX + C8 | |||||
0x01DA | Deals with something stored at EAX + E8 | |||||
0x01DB | Deals with something stored at EAX + E8 | |||||
0x01DC | Set Search Info | Deals with something stored at EAX + E8 | ||||
0x01DD | Bazaar? | Begin Search | ||||
0x01DE | Response to Client 0x1DB | Needs to have 0x1DB to fire | ||||
0x01DF | Search Information Response | |||||
0x01E0 | Ends Search but also has info???? | |||||
0x01E1 | Deals with something stored at EAX + C8 | |||||
0x01F4 | Unused? | |||||
0x01F5 | Unused? | |||||
0x01F6 | Unused? |