2018-07-06 19:47:35 +10:00
|
|
|
#ifndef _CORE_NETWORK_PACKETS_ZONE_CLIENT_IPC_H
|
|
|
|
#define _CORE_NETWORK_PACKETS_ZONE_CLIENT_IPC_H
|
|
|
|
|
|
|
|
#include <Common.h>
|
|
|
|
#include <Network/CommonNetwork.h>
|
|
|
|
|
2018-11-29 16:55:48 +01:00
|
|
|
namespace Sapphire {
|
2018-07-06 19:47:35 +10:00
|
|
|
namespace Network {
|
|
|
|
namespace Packets {
|
|
|
|
namespace Client {
|
|
|
|
|
2018-08-29 21:40:59 +02:00
|
|
|
struct FFXIVIpcGmCommand1 :
|
|
|
|
FFXIVIpcBasePacket< GMCommand1 >
|
2018-07-06 19:47:35 +10:00
|
|
|
{
|
2018-08-29 21:40:59 +02:00
|
|
|
/* 0000 */ uint32_t commandId;
|
|
|
|
/* 0004 */ uint32_t param1;
|
|
|
|
/* 0008 */ uint32_t param2;
|
2018-10-14 12:52:06 +11:00
|
|
|
/* 000C */ uint32_t param3;
|
|
|
|
/* 0010 */ uint32_t param4;
|
|
|
|
/* 0014 */ uint32_t unknown1;
|
|
|
|
/* 0018 */ uint32_t target;
|
2018-07-06 19:47:35 +10:00
|
|
|
};
|
|
|
|
|
2018-08-29 21:40:59 +02:00
|
|
|
struct FFXIVIpcGmCommand2 :
|
|
|
|
FFXIVIpcBasePacket< GMCommand2 >
|
2018-07-06 22:43:49 +10:00
|
|
|
{
|
2018-08-29 21:40:59 +02:00
|
|
|
/* 0000 */ uint32_t commandId;
|
2018-10-14 12:52:06 +11:00
|
|
|
/* 0004 */ uint32_t param1;
|
|
|
|
/* 0008 */ uint32_t param2;
|
|
|
|
/* 000C */ uint32_t param3;
|
|
|
|
/* 0010 */ uint32_t param4;
|
|
|
|
/* 0014 */ char target[0x20];
|
|
|
|
/* 0034 */ uint32_t unknown1;
|
2018-07-06 22:43:49 +10:00
|
|
|
};
|
|
|
|
|
2018-08-29 21:40:59 +02:00
|
|
|
struct FFXIVIpcClientTrigger :
|
|
|
|
FFXIVIpcBasePacket< ClientTrigger >
|
2018-07-06 22:43:49 +10:00
|
|
|
{
|
2018-08-29 21:40:59 +02:00
|
|
|
/* 0000 */ uint16_t commandId;
|
|
|
|
/* 0002 */ uint8_t unk_2[2];
|
|
|
|
/* 0004 */ uint32_t param11;
|
|
|
|
/* 0008 */ uint32_t param12;
|
|
|
|
/* 000C */ uint32_t param2;
|
|
|
|
/* 0010 */ char unk_10[8];
|
|
|
|
/* 0018 */ uint64_t param3;
|
2018-07-06 22:43:49 +10:00
|
|
|
};
|
|
|
|
|
2018-08-29 21:40:59 +02:00
|
|
|
struct FFXIVIpcSkillHandler :
|
|
|
|
FFXIVIpcBasePacket< SkillHandler >
|
2018-07-06 22:43:49 +10:00
|
|
|
{
|
2018-08-29 21:40:59 +02:00
|
|
|
/* 0000 */ char pad_0000[1];
|
|
|
|
/* 0001 */ uint8_t type;
|
|
|
|
/* 0002 */ char pad_0002[2];
|
|
|
|
/* 0004 */ uint32_t actionId;
|
|
|
|
/* 0008 */ uint32_t useCount;
|
|
|
|
/* 000C */ char pad_000C[4];
|
|
|
|
/* 0010 */ uint64_t targetId;
|
2018-07-06 22:43:49 +10:00
|
|
|
};
|
|
|
|
|
2018-08-29 21:40:59 +02:00
|
|
|
struct FFXIVIpcZoneLineHandler :
|
|
|
|
FFXIVIpcBasePacket< ZoneLineHandler >
|
2018-07-06 23:36:50 +10:00
|
|
|
{
|
2018-08-29 21:40:59 +02:00
|
|
|
/* 0000 */ uint32_t zoneLineId;
|
2018-07-06 23:36:50 +10:00
|
|
|
};
|
|
|
|
|
2018-08-29 21:40:59 +02:00
|
|
|
struct FFXIVIpcDiscoveryHandler :
|
|
|
|
FFXIVIpcBasePacket< DiscoveryHandler >
|
2018-07-06 23:36:50 +10:00
|
|
|
{
|
2018-08-29 21:40:59 +02:00
|
|
|
/* 0000 */ uint32_t positionRef;
|
2018-07-06 23:36:50 +10:00
|
|
|
};
|
|
|
|
|
2018-08-29 21:40:59 +02:00
|
|
|
struct FFXIVIpcEventHandlerReturn :
|
|
|
|
FFXIVIpcBasePacket< ReturnEventHandler >
|
2018-07-06 23:36:50 +10:00
|
|
|
{
|
2018-08-29 21:40:59 +02:00
|
|
|
/* 0000 */ uint32_t eventId;
|
|
|
|
/* 0004 */ uint16_t scene;
|
|
|
|
/* 0006 */ uint16_t param1;
|
|
|
|
/* 0008 */ uint16_t param2;
|
|
|
|
/* 000A */ char pad_000A[2];
|
|
|
|
/* 000C */ uint16_t param3;
|
|
|
|
/* 000E */ char pad_000E[2];
|
|
|
|
/* 0010 */ uint16_t param4;
|
2018-07-06 23:36:50 +10:00
|
|
|
};
|
|
|
|
|
2018-08-29 21:40:59 +02:00
|
|
|
struct FFXIVIpcEnterTerritoryHandler :
|
|
|
|
FFXIVIpcBasePacket< EnterTeriEventHandler >
|
2018-07-06 23:36:50 +10:00
|
|
|
{
|
2018-08-29 21:40:59 +02:00
|
|
|
/* 0000 */ uint32_t eventId;
|
|
|
|
/* 0004 */ uint16_t param1;
|
|
|
|
/* 0006 */ uint16_t param2;
|
2018-07-06 23:36:50 +10:00
|
|
|
};
|
|
|
|
|
2018-08-29 21:40:59 +02:00
|
|
|
struct FFXIVIpcEventHandlerOutsideRange :
|
|
|
|
FFXIVIpcBasePacket< OutOfRangeEventHandler >
|
2018-07-06 23:36:50 +10:00
|
|
|
{
|
2018-08-29 21:40:59 +02:00
|
|
|
/* 0000 */ uint32_t param1;
|
|
|
|
/* 0004 */ uint32_t eventId;
|
|
|
|
/* 0008 */ Common::FFXIVARR_POSITION3 position;
|
2018-07-06 23:36:50 +10:00
|
|
|
};
|
|
|
|
|
2018-08-29 21:40:59 +02:00
|
|
|
struct FFXIVIpcEventHandlerWithinRange :
|
|
|
|
FFXIVIpcBasePacket< WithinRangeEventHandler >
|
2018-07-06 23:36:50 +10:00
|
|
|
{
|
2018-08-29 21:40:59 +02:00
|
|
|
/* 0000 */ uint32_t param1;
|
|
|
|
/* 0004 */ uint32_t eventId;
|
|
|
|
/* 0008 */ Common::FFXIVARR_POSITION3 position;
|
2018-07-06 23:36:50 +10:00
|
|
|
};
|
|
|
|
|
2018-08-29 21:40:59 +02:00
|
|
|
struct FFXIVIpcEventHandlerEmote :
|
|
|
|
FFXIVIpcBasePacket< EmoteEventHandler >
|
2018-07-06 23:36:50 +10:00
|
|
|
{
|
2018-08-29 21:40:59 +02:00
|
|
|
/* 0000 */ uint64_t actorId;
|
|
|
|
/* 0008 */ uint32_t eventId;
|
|
|
|
/* 000C */ uint16_t emoteId;
|
2018-07-06 23:36:50 +10:00
|
|
|
};
|
|
|
|
|
2018-08-29 21:40:59 +02:00
|
|
|
struct FFXIVIpcEventHandlerTalk :
|
|
|
|
FFXIVIpcBasePacket< TalkEventHandler >
|
2018-07-06 23:36:50 +10:00
|
|
|
{
|
2018-08-29 21:40:59 +02:00
|
|
|
/* 0000 */ uint64_t actorId;
|
|
|
|
/* 0008 */ uint32_t eventId;
|
2018-07-06 23:36:50 +10:00
|
|
|
};
|
|
|
|
|
2018-08-29 21:40:59 +02:00
|
|
|
struct FFXIVIpcPingHandler :
|
|
|
|
FFXIVIpcBasePacket< PingHandler >
|
2018-07-06 23:36:50 +10:00
|
|
|
{
|
2018-08-29 21:40:59 +02:00
|
|
|
/* 0000 */ uint32_t timestamp; // maybe lol..
|
2018-07-06 23:36:50 +10:00
|
|
|
};
|
|
|
|
|
2018-08-29 21:40:59 +02:00
|
|
|
struct FFXIVIpcSetSearchInfo :
|
|
|
|
FFXIVIpcBasePacket< SetSearchInfoHandler >
|
2018-07-07 16:50:11 +10:00
|
|
|
{
|
2018-08-29 21:40:59 +02:00
|
|
|
union
|
|
|
|
{
|
|
|
|
/* 0000 */ uint64_t status;
|
|
|
|
struct
|
|
|
|
{
|
|
|
|
/* 0000 */ uint32_t status1;
|
|
|
|
/* 0004 */ uint32_t status2;
|
|
|
|
};
|
|
|
|
};
|
2018-07-07 16:50:11 +10:00
|
|
|
|
2018-08-29 21:40:59 +02:00
|
|
|
/* 0008 */ char pad_0008[9];
|
|
|
|
/* 0011 */ Common::ClientLanguage language;
|
|
|
|
/* 0012 */ char searchComment[193];
|
2018-07-07 16:50:11 +10:00
|
|
|
};
|
|
|
|
|
2018-08-29 21:40:59 +02:00
|
|
|
struct FFXIVIpcTellHandler :
|
|
|
|
FFXIVIpcBasePacket< TellReq >
|
2018-07-07 22:27:35 +10:00
|
|
|
{
|
2018-08-29 21:40:59 +02:00
|
|
|
/* 0000 */ char pad_0000[4];
|
|
|
|
/* 0004 */ char targetPCName[32];
|
|
|
|
/* 0024 */ char message[1012];
|
2018-07-07 22:27:35 +10:00
|
|
|
};
|
|
|
|
|
2018-08-29 21:40:59 +02:00
|
|
|
struct FFXIVIpcChatHandler :
|
|
|
|
FFXIVIpcBasePacket< ChatHandler >
|
2018-07-07 22:27:35 +10:00
|
|
|
{
|
2018-08-29 21:40:59 +02:00
|
|
|
/* 0000 */ char pad_0000[4];
|
|
|
|
/* 0004 */ uint32_t sourceId;
|
|
|
|
/* 0008 */ char pad_0008[16];
|
|
|
|
/* 0018 */ Common::ChatType chatType;
|
|
|
|
/* 001A */ char message[1012];
|
2018-07-07 22:27:35 +10:00
|
|
|
};
|
2018-07-07 16:50:11 +10:00
|
|
|
|
2018-11-22 00:04:26 +01:00
|
|
|
struct FFXIVIpcShopEventHandler :
|
|
|
|
FFXIVIpcBasePacket< ShopEventHandler >
|
|
|
|
{
|
|
|
|
/* 0000 */ uint32_t eventId;
|
|
|
|
/* 0004 */ uint32_t param;
|
|
|
|
};
|
|
|
|
|
2018-08-29 21:40:59 +02:00
|
|
|
struct FFXIVIpcLinkshellEventHandler :
|
|
|
|
FFXIVIpcBasePacket< LinkshellEventHandler >
|
2018-07-08 12:38:08 +10:00
|
|
|
{
|
2018-08-29 21:40:59 +02:00
|
|
|
/* 0000 */ uint32_t eventId;
|
|
|
|
/* 0004 */ uint16_t scene;
|
|
|
|
/* 0006 */ char pad_0006[1];
|
|
|
|
/* 0007 */ char lsName[21];
|
2018-07-08 12:38:08 +10:00
|
|
|
};
|
|
|
|
|
2018-08-29 21:40:59 +02:00
|
|
|
struct FFXIVIpcInventoryModifyHandler :
|
|
|
|
FFXIVIpcBasePacket< InventoryModifyHandler >
|
2018-07-08 21:11:22 +10:00
|
|
|
{
|
2018-08-29 21:40:59 +02:00
|
|
|
/* 0000 */ uint32_t seq;
|
|
|
|
/* 0004 */ Common::InventoryOperation action;
|
|
|
|
/* 0005 */ char pad_0005[7];
|
|
|
|
/* 000C */ uint16_t fromContainer;
|
|
|
|
/* 000E */ char pad_000E[2];
|
|
|
|
/* 0010 */ uint8_t fromSlot;
|
|
|
|
/* 0011 */ char pad_0011[15];
|
|
|
|
/* 0020 */ uint16_t toContainer;
|
|
|
|
/* 0022 */ char pad_0022[2];
|
|
|
|
/* 0024 */ uint8_t toSlot;
|
|
|
|
/* 0025 */ uint8_t pad_0025[3];
|
|
|
|
/* 0028 */ uint32_t splitCount;
|
2018-07-08 21:11:22 +10:00
|
|
|
};
|
|
|
|
|
2018-11-11 14:27:39 +01:00
|
|
|
struct FFXIVIpcRenameLandHandler :
|
2018-11-12 09:32:20 +01:00
|
|
|
FFXIVIpcBasePacket< LandRenameHandler >
|
2018-11-11 14:27:39 +01:00
|
|
|
{
|
2018-11-28 21:59:28 +11:00
|
|
|
/* 0000 */ Common::LandIdent ident;
|
2018-11-28 00:05:57 +11:00
|
|
|
/* 0008 */ char houseName[20];
|
2018-11-11 14:27:39 +01:00
|
|
|
/* 0028 */ uint32_t padding;
|
|
|
|
};
|
|
|
|
|
2018-11-28 21:59:28 +11:00
|
|
|
struct FFXIVIpcHousingUpdateHouseGreeting :
|
|
|
|
FFXIVIpcBasePacket< HousingUpdateHouseGreeting >
|
|
|
|
{
|
|
|
|
/* 0000 */ Common::LandIdent ident;
|
|
|
|
/* 0008 */ char greeting[200];
|
|
|
|
};
|
|
|
|
|
2018-11-12 08:32:30 +01:00
|
|
|
struct FFXIVIpcBuildPresetHandler :
|
|
|
|
FFXIVIpcBasePacket< BuildPresetHandler >
|
|
|
|
{
|
|
|
|
/* 0000 */ uint32_t itemId;
|
|
|
|
/* 0004 */ uint8_t plotNum;
|
2018-11-12 08:43:24 +01:00
|
|
|
/* 0005 */ char stateString[27];
|
2018-11-12 08:32:30 +01:00
|
|
|
};
|
2018-11-11 14:27:39 +01:00
|
|
|
|
2018-09-26 03:32:05 +10:00
|
|
|
struct FFXIVIpcSetSharedEstateSettings :
|
|
|
|
FFXIVIpcBasePacket< SetSharedEstateSettings >
|
|
|
|
{
|
|
|
|
/* 0000 */ uint64_t char1ContentId;
|
|
|
|
/* 0008 */ uint64_t char2ContentId;
|
|
|
|
/* 0010 */ uint64_t char3ContentId;
|
|
|
|
/* 0018 */ uint8_t char1Permissions;
|
|
|
|
/* 0019 */ char padding1[0x7];
|
|
|
|
/* 0020 */ uint8_t char2Permissions;
|
|
|
|
/* 0021 */ char padding2[0x7];
|
|
|
|
/* 0028 */ uint8_t char3Permissions;
|
|
|
|
/* 0029 */ char padding3[0x7];
|
|
|
|
};
|
|
|
|
|
2018-12-02 23:26:21 +11:00
|
|
|
struct FFXIVIpcMarketBoardRequestItemListings :
|
|
|
|
FFXIVIpcBasePacket< MarketBoardRequestItemListings >
|
|
|
|
{
|
|
|
|
/* 0000 */ uint32_t itemCatalogId;
|
|
|
|
/* 0004 */ uint32_t padding;
|
|
|
|
};
|
|
|
|
|
2018-12-26 18:11:18 +11:00
|
|
|
struct FFXIVIpcReqPlaceHousingItem :
|
|
|
|
FFXIVIpcBasePacket< ReqPlaceHousingItem >
|
|
|
|
{
|
|
|
|
/* 0000 */ uint16_t landId; // 0 when plot 0 or inside an estate
|
|
|
|
/* 0002 */ uint16_t unknown1;
|
|
|
|
/* 0004 */ uint32_t unknown2;
|
|
|
|
/* 0008 */ uint16_t sourceInvContainerId;
|
|
|
|
/* 000A */ uint16_t sourceInvSlotId;
|
|
|
|
|
|
|
|
/* 000C */ Common::FFXIVARR_POSITION3 position;
|
|
|
|
/* 0018 */ float rotation;
|
|
|
|
|
|
|
|
/* 001C */ uint32_t unknown3; // always 1?
|
|
|
|
/* 0020 */ uint32_t unknown4[2]; // always 0 it looks like
|
|
|
|
};
|
|
|
|
|
2018-07-06 19:47:35 +10:00
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
#endif //_CORE_NETWORK_PACKETS_ZONE_CLIENT_IPC_H
|