2017-08-22 17:29:03 +02:00
|
|
|
#ifndef _CORE_NETWORK_PACKETS_IPCS_H
|
|
|
|
#define _CORE_NETWORK_PACKETS_IPCS_H
|
|
|
|
|
|
|
|
#include<stdint.h>
|
|
|
|
|
|
|
|
namespace Core {
|
|
|
|
namespace Network {
|
|
|
|
namespace Packets {
|
|
|
|
|
|
|
|
////////////////////////////////////////////////////////////////////////////////
|
|
|
|
/// Lobby Connection IPC Codes
|
|
|
|
/**
|
|
|
|
* Server IPC Lobby Type Codes.
|
|
|
|
*/
|
|
|
|
enum ServerLobbyIpcType : uint16_t
|
|
|
|
{
|
|
|
|
LobbyError = 0x0002,
|
|
|
|
LobbyServiceAccountList = 0x000C,
|
|
|
|
LobbyCharList = 0x000D,
|
|
|
|
LobbyCharCreate = 0x000E,
|
|
|
|
LobbyEnterWorld = 0x000F,
|
|
|
|
LobbyServerList = 0x0015,
|
|
|
|
LobbyRetainerList = 0x0017,
|
|
|
|
|
|
|
|
};
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Client IPC Lobby Type Codes.
|
|
|
|
*/
|
|
|
|
enum ClientLobbyIpcType : uint16_t
|
|
|
|
{
|
|
|
|
ReqCharList = 0x0003,
|
|
|
|
ReqEnterWorld = 0x0004,
|
|
|
|
ReqServiceAccountList = 0x0005,
|
|
|
|
|
|
|
|
ReqCharDelete = 0x000A,
|
|
|
|
ReqCharCreate = 0x000B,
|
|
|
|
};
|
|
|
|
|
|
|
|
////////////////////////////////////////////////////////////////////////////////
|
|
|
|
/// Zone Connection IPC Codes
|
|
|
|
/**
|
|
|
|
* Server IPC Zone Type Codes.
|
|
|
|
*/
|
|
|
|
enum ServerZoneIpcType : uint16_t
|
|
|
|
{
|
|
|
|
Ping = 0x0065, // updated for sb
|
|
|
|
Init = 0x0066, // updated for sb
|
|
|
|
Chat = 0x0067, // updated for sb
|
2017-09-10 14:02:16 +09:00
|
|
|
ChatBanned = 0x006B,
|
2017-08-22 17:29:03 +02:00
|
|
|
Logout = 0x0077, // updated for sb
|
2017-08-28 18:36:51 +02:00
|
|
|
CFNotify = 0x0078,
|
|
|
|
CFMemberStatus = 0x0079,
|
|
|
|
CFDutyInfo = 0x007A,
|
|
|
|
CFPlayerInNeed = 0x007F,
|
|
|
|
|
2017-08-22 17:29:03 +02:00
|
|
|
Playtime = 0x00AF, // updated for sb
|
|
|
|
SocialRequestError = 0x00AD,
|
|
|
|
SocialRequestResponse = 0x11AF,
|
2017-08-28 18:36:51 +02:00
|
|
|
CFRegistered = 0x00B0,
|
2017-08-22 17:29:03 +02:00
|
|
|
SocialList = 0x00B4, // updated for sb
|
|
|
|
UpdateSearchInfo = 0x00B6, // updated for sb
|
|
|
|
InitSearchInfo = 0x00B7, // updated for sb
|
|
|
|
ServerNotice = 0x00BC, // updated for sb
|
|
|
|
SetOnlineStatus = 0x00BD, // updated for sb
|
|
|
|
BlackList = 0x00CA, // updated for sb
|
2017-08-28 18:36:51 +02:00
|
|
|
LogMessage = 0x00D0, // updated for sb
|
2017-08-22 17:29:03 +02:00
|
|
|
LinkshellList = 0x00D1, // updated for sb
|
|
|
|
StatusEffectList = 0x00F0, // updated for sb
|
|
|
|
Effect = 0x00F1, // updated for sb
|
|
|
|
GCAffiliation = 0x00FC,
|
|
|
|
|
|
|
|
ActorSetPos = 0x0114, // updated for sb
|
|
|
|
ActorCast = 0x0116, // updated for sb
|
|
|
|
PlayerSpawn = 0x0110, // updated for sb
|
|
|
|
NpcSpawn = 0x0111, // updated for sb
|
|
|
|
ActorMove = 0x0112, // updated for sb
|
|
|
|
HateList = 0x011A, // updated for sb borked
|
|
|
|
UpdateClassInfo = 0x011D, // updated for sb
|
|
|
|
InitUI = 0x011E, // updated for sb
|
|
|
|
PlayerStats = 0x011F, // updated for sb
|
|
|
|
ActorOwner = 0x0120, // updated for sb
|
|
|
|
PlayerStateFlags = 0x0121, // updated for sb
|
|
|
|
PlayerClassInfo = 0x0123, // updated for sb
|
|
|
|
ModelEquip = 0x0124, // updated for sb
|
|
|
|
ItemInfo = 0x0139, // updated for sb
|
|
|
|
ContainerInfo = 0x013A, // updated for sb
|
2017-08-28 18:36:51 +02:00
|
|
|
InventoryTransactionFinish = 0x013B, // updated for sb
|
|
|
|
InventoryTransaction = 0x013C, // updated for sb
|
2017-08-22 17:29:03 +02:00
|
|
|
CurrencyCrystalInfo = 0x013D,
|
2017-08-28 18:36:51 +02:00
|
|
|
InventoryActionAck = 0x1139,
|
2017-08-22 17:29:03 +02:00
|
|
|
UpdateInventorySlot = 0x0140, // updated for sb
|
|
|
|
AddStatusEffect = 0x0141,
|
|
|
|
ActorControl142 = 0x0142, // unchanged for sb
|
|
|
|
ActorControl143 = 0x0143, // unchanged for sb
|
|
|
|
ActorControl144 = 0x0144, // unchanged for sb
|
|
|
|
UpdateHpMpTp = 0x0145, // unchanged for sb
|
|
|
|
|
2017-08-28 18:36:51 +02:00
|
|
|
|
2017-08-22 17:29:03 +02:00
|
|
|
|
|
|
|
EventPlay = 0x0154, // updated for sb
|
|
|
|
EventStart = 0x015D, // updated for sb
|
|
|
|
EventFinish = 0x015E, // updated for sb
|
2017-08-27 02:03:27 +02:00
|
|
|
|
|
|
|
EventLinkshell = 0x0169,
|
|
|
|
|
2017-08-22 17:29:03 +02:00
|
|
|
QuestActiveList = 0x0171, // updated for sb
|
|
|
|
QuestUpdate = 0x0172, // updated for sb
|
|
|
|
QuestCompleteList = 0x0173, // updated for sb
|
|
|
|
QuestFinish = 0x0174, // updated for sb
|
|
|
|
QuestMessage = 0x0179,
|
|
|
|
QuestTracker = 0x0181, // updated for sb
|
|
|
|
ActorSpawn = 0x0190, // todo: split into playerspawn/actorspawn and use opcode 0x110/0x111
|
|
|
|
ActorFreeSpawn = 0x0191, // unchanged for sb
|
|
|
|
InitZone = 0x019A, // unchanged for sb
|
|
|
|
WeatherChange = 0x01AF, // updated for sb
|
|
|
|
Discovery = 0x01B2, // updated for sb
|
|
|
|
|
2017-09-22 22:03:57 +09:00
|
|
|
EorzeaTimeOffset = 0x01B4,
|
2017-08-28 18:36:51 +02:00
|
|
|
|
|
|
|
CFAvailableContents = 0x01CF,
|
|
|
|
|
2017-08-22 17:29:03 +02:00
|
|
|
PrepareZoning = 0x0239, // updated for sb
|
|
|
|
|
|
|
|
// Unknown IPC types that still need to be sent
|
|
|
|
// TODO: figure all these out properly
|
2017-08-22 21:36:20 +02:00
|
|
|
IPCTYPE_UNK_320 = 0x1FB,
|
2017-08-22 17:29:03 +02:00
|
|
|
IPCTYPE_UNK_322 = 0x1FD,
|
|
|
|
|
|
|
|
};
|
|
|
|
|
|
|
|
// TODO: Include structures for the individual packet segment types
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Client IPC Zone Type Codes.
|
|
|
|
*/
|
|
|
|
enum ClientZoneIpcType : uint16_t
|
|
|
|
{
|
|
|
|
|
2017-08-23 23:58:14 +02:00
|
|
|
PingHandler = 0x0065, // updated for sb
|
|
|
|
InitHandler = 0x0066, // updated for sb
|
|
|
|
ChatHandler = 0x0067, // updated for sb
|
2017-08-22 17:29:03 +02:00
|
|
|
|
2017-08-23 23:58:14 +02:00
|
|
|
FinishLoadingHandler = 0x0069, // updated for sb
|
2017-08-22 17:29:03 +02:00
|
|
|
|
|
|
|
CFCommenceHandler = 0x006F,
|
|
|
|
CFRegisterDuty = 0x0071,
|
|
|
|
CFRegisterRoulette = 0x0072,
|
2017-08-23 23:58:14 +02:00
|
|
|
PlayTimeHandler = 0x0073, // updated for sb
|
|
|
|
LogoutHandler = 0x0074, // updated for sb
|
2017-08-22 17:29:03 +02:00
|
|
|
|
|
|
|
CFDutyInfoHandler = 0x0078,
|
|
|
|
|
|
|
|
SocialReqSendHandler = 0x00A5,
|
2017-08-23 23:58:14 +02:00
|
|
|
SocialListHandler = 0x00AA, // updated for sb
|
|
|
|
SetSearchInfoHandler = 0x00AC, // updated for sb
|
2017-08-22 17:29:03 +02:00
|
|
|
|
|
|
|
ReqSearchInfoHandler = 0x00AD,
|
|
|
|
|
2017-08-23 23:58:14 +02:00
|
|
|
BlackListHandler = 0x00B7, // updated for sb
|
2017-08-22 17:29:03 +02:00
|
|
|
|
2017-08-23 23:58:14 +02:00
|
|
|
LinkshellListHandler = 0x00BF, // updated for sb
|
2017-08-22 17:29:03 +02:00
|
|
|
|
2017-08-23 23:58:14 +02:00
|
|
|
FcInfoReqHandler = 0x0100, // updated for sb
|
2017-08-22 17:29:03 +02:00
|
|
|
|
|
|
|
ZoneLineHandler = 0x0107, // updated for sb
|
2017-08-23 23:58:14 +02:00
|
|
|
ActionHandler = 0x0108, // updated for sb
|
|
|
|
DiscoveryHandler = 0x0109, // updated for sb
|
2017-08-22 17:29:03 +02:00
|
|
|
|
|
|
|
SkillHandler = 0x010B, // updated for sb
|
2017-08-23 23:58:14 +02:00
|
|
|
GMCommand1 = 0x010C, // updated for sb
|
|
|
|
GMCommand2 = 0x010D, // updated for sb
|
2017-08-22 17:29:03 +02:00
|
|
|
UpdatePositionHandler = 0x010F, // updated for sb
|
|
|
|
|
|
|
|
InventoryModifyHandler = 0x0116, // updated for sb
|
|
|
|
|
|
|
|
TalkEventHandler = 0x011F, // updated for sb
|
|
|
|
EmoteEventHandler = 0x0120, // updated for sb
|
|
|
|
WithinRangeEventHandler = 0x0121, // updated for sb
|
|
|
|
OutOfRangeEventHandler = 0x0122, // updated for sb
|
|
|
|
EnterTeriEventHandler = 0x0123, // updated for sb
|
|
|
|
|
|
|
|
ReturnEventHandler = 0x0128,
|
|
|
|
TradeReturnEventHandler = 0x0129,
|
2017-08-23 23:58:14 +02:00
|
|
|
|
2017-08-27 02:03:27 +02:00
|
|
|
LinkshellEventHandler = 0x013B,
|
|
|
|
LinkshellEventHandler1 = 0x013C,
|
2017-08-22 17:29:03 +02:00
|
|
|
};
|
|
|
|
|
|
|
|
////////////////////////////////////////////////////////////////////////////////
|
|
|
|
/// Chat Connection IPC Codes
|
|
|
|
/**
|
|
|
|
* Server IPC Chat Type Codes.
|
|
|
|
*/
|
|
|
|
enum ServerChatIpcType : uint16_t
|
|
|
|
{
|
2017-08-22 21:36:20 +02:00
|
|
|
Tell = 0x0064, // updated for sb
|
2017-08-22 23:53:20 +02:00
|
|
|
TellErrNotFound = 0x0066,
|
2017-08-22 17:29:03 +02:00
|
|
|
};
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Client IPC Chat Type Codes.
|
|
|
|
*/
|
|
|
|
enum ClientChatIpcType : uint16_t
|
|
|
|
{
|
2017-08-22 21:36:20 +02:00
|
|
|
TellReq = 0x0064,
|
2017-08-22 17:29:03 +02:00
|
|
|
};
|
|
|
|
|
|
|
|
|
|
|
|
} /* Packets */
|
|
|
|
} /* Network */
|
|
|
|
} /* Core */
|
|
|
|
|
|
|
|
#endif /*_CORE_NETWORK_PACKETS_IPCS_H*/
|