1
Fork 0
mirror of https://github.com/SapphireServer/Sapphire.git synced 2025-04-29 15:47:46 +00:00
sapphire/src/common/Network/PacketDef/Ipcs.h
コレット 23b7b052a1
PublicContent support. (#720)
* PublicContent support.

* update code
2021-08-16 18:18:29 +10:00

446 lines
15 KiB
C++

#ifndef _CORE_NETWORK_PACKETS_IPCS_H
#define _CORE_NETWORK_PACKETS_IPCS_H
#include <stdint.h>
namespace Sapphire::Network::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,
ClientVersionInfo = 0x0005,
ReqCharDelete = 0x000A,
ReqCharCreate = 0x000B,
};
////////////////////////////////////////////////////////////////////////////////
/// Zone Connection IPC Codes
/**
* Server IPC Zone Type Codes.
*/
enum ServerZoneIpcType : uint16_t
{
Ping = 0x02CB, // updated 5.58
Init = 0x02A8, // updated 5.58
ActorFreeSpawn = 0x0210, // updated 5.58
InitZone = 0x0100, // updated 5.58
EffectResult = 0x0151, // updated 5.58
ActorControl = 0x0264, // updated 5.58
ActorControlSelf = 0x0314, // updated 5.58
ActorControlTarget = 0x00FC, // updated 5.58
/*!
* @brief Used when resting
*/
UpdateHpMpTp = 0x039B, // updated 5.58
///////////////////////////////////////////////////
ChatBanned = 0xF06B,
Playtime = 0x02BE, // updated 5.58
Logout = 0x0297, // updated 5.58
CFNotify = 0x01AC, // updated 5.58
CFMemberStatus = 0x0079,
CFDutyInfo = 0x0083, // updated 5.58
CFPlayerInNeed = 0xF07F,
CFPreferredRole = 0x02FB, // updated 5.58
CFCancel = 0x0135, // updated 5.58
SocialRequestError = 0xF0AD,
CFRegistered = 0x037E, // updated 5.58
SocialRequestResponse = 0x0254, // updated 5.58
SocialMessage = 0x02F2, // updated 5.58
SocialMessage2 = 0x017A, // updated 5.58
CancelAllianceForming = 0xF0C6, // updated 4.2
LogMessage = 0x020F, // updated 5.58
Chat = 0x0220, // updated 5.58
PartyChat = 0x0065,
WorldVisitList = 0xF0FE, // added 4.5
SocialList = 0x0396, // updated 5.58
ExamineSearchInfo = 0x031F, // updated 5.58
UpdateSearchInfo = 0x0219, // updated 5.58
InitSearchInfo = 0x01A0, // updated 5.58
ExamineSearchComment = 0x0315, // updated 5.58
ServerNoticeShort = 0x0211, // updated 5.58
ServerNotice = 0x03B9, // updated 5.58
SetOnlineStatus = 0x0163, // updated 5.58
CountdownInitiate = 0x01F9, // updated 5.58
CountdownCancel = 0x0206, // updated 5.58
PlayerAddedToBlacklist = 0x01FE, // updated 5.58
PlayerRemovedFromBlacklist = 0x02D6, // updated 5.58
BlackList = 0x028A, // updated 5.58
LinkshellList = 0x02DD, // updated 5.58
MailDeleteRequest = 0xF12B, // updated 5.0
// 12D - 137 - constant gap between 4.5x -> 5.0
ReqMoogleMailList = 0xF138, // updated 5.0
ReqMoogleMailLetter = 0xF139, // updated 5.0
MailLetterNotification = 0x013A, // updated 5.0
MarketTaxRates = 0x01F8, // updated 5.35 hotfix
MarketBoardSearchResult = 0x0355, // updated 5.58
MarketBoardItemListingCount = 0x0275, // updated 5.58
MarketBoardItemListingHistory = 0x0112, // updated 5.58
MarketBoardItemListing = 0x00F5, // updated 5.58
CharaFreeCompanyTag = 0x013B, // updated 4.5
FreeCompanyBoardMsg = 0x028D, // updated 5.58
FreeCompanyInfo = 0x0346, // updated 5.58
ExamineFreeCompanyInfo = 0x00B7, // updated 5.58
FreeCompanyUpdateShortMessage = 0xF157, // added 5.0
StatusEffectList = 0x01C5, // updated 5.58
EurekaStatusEffectList = 0x0167, // updated 5.18
BossStatusEffectList = 0x0312, // added 5.1
Effect = 0x0102, // updated 5.58
AoeEffect8 = 0x0345, // updated 5.58
AoeEffect16 = 0x02B6, // updated 5.58
AoeEffect24 = 0x0298, // updated 5.58
AoeEffect32 = 0x03A4, // updated 5.58
PersistantEffect = 0x008D, // updated 5.58
GCAffiliation = 0x02B1, // updated 5.58
PlayerSpawn = 0x0249, // updated 5.58
NpcSpawn = 0x014B, // updated 5.58
NpcSpawn2 = 0x01CB, // ( Bigger statuseffectlist? ) updated 5.3
ActorMove = 0x023D, // updated 5.58
ActorSetPos = 0x0280, // updated 5.58
ActorCast = 0x02A7, // updated 5.58
SomeCustomiseChangePacketProbably = 0x00CD, // added 5.18
PartyList = 0x02BD, // updated 5.58
PartyMessage = 0x0318, // updated 5.58
HateRank = 0x02C0, // updated 5.58
HateList = 0x01B4, // updated 5.58
ObjectSpawn = 0x0104, // updated 5.58
ObjectDespawn = 0x030D, // updated 5.58
UpdateClassInfo = 0x0198, // updated 5.58
SilentSetClassJob = 0xF18E, // updated 5.0 - seems to be the case, not sure if it's actually used for anything
PlayerSetup = 0x0296, // updated 5.58
PlayerStats = 0x00D5, // updated 5.58
ActorOwner = 0x00AE, // updated 5.58
PlayerStateFlags = 0x022A, // updated 5.58
PlayerClassInfo = 0x02DF, // updated 5.58
CharaVisualEffect = 0x0134, // updated 5.58
ModelEquip = 0x0312, // updated 5.58
Examine = 0x00D3, // updated 5.58
CharaNameReq = 0x031C, // updated 5.58
// nb: see #565 on github
UpdateRetainerItemSalePrice = 0xF19F, // updated 5.0
RetainerSaleHistory = 0x01D3, // updated 5.58
RetainerInformation = 0x0069, // updated 5.58
SetLevelSync = 0x1186, // not updated for 4.4, not sure what it is anymore
ItemInfo = 0x00A7, // updated 5.58
ContainerInfo = 0x0208, // updated 5.58
InventoryTransactionFinish = 0x01A3, // updated 5.58
InventoryTransaction = 0x03AC, // updated 5.58
CurrencyCrystalInfo = 0x0394, // updated 5.58
InventoryActionAck = 0x0305, // updated 5.58
UpdateInventorySlot = 0x0200, // updated 5.58
HuntingLogEntry = 0x00C5, // updated 5.58
EventPlay = 0x01EF, // updated 5.58
EventPlay4 = 0x021C, // updated 5.58
EventPlay8 = 0x0337, // updated 5.58
EventPlay16 = 0x0319, // updated 5.58
EventPlay32 = 0x01E2, // updated 5.58
EventPlay64 = 0x02FD, // updated 5.58
EventPlay128 = 0x026E, // updated 5.58
EventPlay255 = 0x039E, // updated 5.58
EventContinue = 0x0123, // updated 5.58
EventStart = 0x01CC, // updated 5.58
EventFinish = 0x0180, // updated 5.58
EventLinkshell = 0x1169,
QuestActiveList = 0x035D, // updated 5.58
QuestUpdate = 0x029A, // updated 5.58
QuestCompleteList = 0x03C5, // updated 5.58
QuestFinish = 0x0274, // updated 5.58
MSQTrackerComplete = 0x01C1, // updated 5.58
MSQTrackerProgress = 0xF1CD, // updated 4.5 ? this actually looks like the two opcodes have been combined, see #474
QuestMessage = 0x0128, // updated 5.58
QuestTracker = 0x038E, // updated 5.58
Mount = 0x03C2, // updated 5.58
DirectorVars = 0x01ED, // updated 5.58
SomeDirectorUnk1 = 0x0084, // updated 5.18
SomeDirectorUnk2 = 0xF0C1, // updated 5.18
SomeDirectorUnk4 = 0x01BD, // updated 5.58
SomeDirectorUnk8 = 0x028A, // updated 5.18
SomeDirectorUnk16 = 0x028C, // updated 5.18
DirectorPopUp = 0x02E3, // updated 5.58
DirectorPopUp4 = 0x01DC, // updated 5.58
DirectorPopUp8 = 0x011D, // updated 5.58
CFAvailableContents = 0xF1FD, // updated 4.2
WeatherChange = 0x01B1, // updated 5.58
PlayerTitleList = 0x02B4, // updated 5.58
Discovery = 0x00B8, // updated 5.58
EorzeaTimeOffset = 0x03D9, // updated 5.58
EquipDisplayFlags = 0x0199, // updated 5.58
MiniCactpotInit = 0x0286, // added 5.31
ShopMessage = 0x00D0, // updated 5.58
LootMessage = 0x038C, // updated 5.58
ResultDialog = 0x00DF, // updated 5.58
DesynthResult = 0x038F, // updated 5.58
/// Housing //////////////////////////////////////
LandSetInitialize = 0x03E3, // updated 5.58
LandUpdate = 0x029E, // updated 5.58
YardObjectSpawn = 0x0367, // updated 5.58
HousingIndoorInitialize = 0x02A6, // updated 5.58
LandPriceUpdate = 0x0143, // updated 5.58
LandInfoSign = 0x0269, // updated 5.58
LandRename = 0x0107, // updated 5.58
HousingEstateGreeting = 0x0340, // updated 5.58
HousingUpdateLandFlagsSlot = 0x02D2, // updated 5.58
HousingLandFlags = 0x0156, // updated 5.58
HousingShowEstateGuestAccess = 0x015C, // updated 5.58
HousingObjectInitialize = 0x0245, // updated 5.58
HousingInternalObjectSpawn = 0x0194, // updated 5.58
HousingWardInfo = 0x00A4, // updated 5.58
HousingObjectMove = 0x01AE, // updated 5.58
SharedEstateSettingsResponse = 0x0378, // updated 5.58
LandUpdateHouseName = 0x034B, // updated 5.58
LandSetMap = 0x02F6, // updated 5.58
CeremonySetActorAppearance = 0x00EB, // updated 5.58
//////////////////////////////////////////////////
DuelChallenge = 0x0277, // 4.2; this is responsible for opening the ui
PerformNote = 0x00BE, // updated 5.58
PrepareZoning = 0x0171, // updated 5.58
ActorGauge = 0x0335, // updated 5.58
DutyGauge = 0x02F6, // updated 5.58
// daily quest info -> without them sent, login will take longer...
DailyQuests = 0x0331, // updated 5.58
DailyQuestRepeatFlags = 0x01D1, // updated 5.58
/// Doman Mahjong //////////////////////////////////////
MahjongOpenGui = 0x02A4, // only available in mahjong instance
MahjongNextRound = 0x02BD, // initial hands(baipai), # of riichi(wat), winds, honba, score and stuff
MahjongPlayerAction = 0x02BE, // tsumo(as in drawing a tile) called chi/pon/kan/riichi
MahjongEndRoundTsumo = 0x02BF, // called tsumo
MahjongEndRoundRon = 0x2C0, // called ron or double ron (waiting for action must be flagged from discard packet to call)
MahjongTileDiscard = 0x02C1, // giri (discarding a tile.) chi(1)/pon(2)/kan(4)/ron(8) flags etc..
MahjongPlayersInfo = 0xF2C2, // actor id, name, rating and stuff..
// 2C3 and 2C4 are currently unknown
MahjongEndRoundDraw = 0x02C5, // self explanatory
MahjongEndGame = 0x02C6, // finished oorasu(all-last) round; shows a result screen.
/// Airship & Submarine //////////////////////////////////////
AirshipExplorationResult = 0x036C, // updated 5.58
AirshipStatus = 0x021F, // updated 5.58
AirshipStatusList = 0x0073, // updated 5.58
AirshipTimers = 0x0250, // updated 5.58
SubmarineExplorationResult = 0x01D0, // updated 5.58
SubmarineProgressionStatus = 0x0377, // updated 5.58
SubmarineStatusList = 0x0338, // updated 5.58
SubmarineTimers = 0x0292, // updated 5.58
};
/**
* Client IPC Zone Type Codes.
*/
enum ClientZoneIpcType : uint16_t
{
PingHandler = 0x03A3, // updated 5.58
InitHandler = 0x03B3, // updated 5.58
FinishLoadingHandler = 0x0217, // updated 5.58
CFCommenceHandler = 0x02A3, // updated 5.58
CFCancelHandler = 0x00A9, // updated 5.58
CFRegisterDuty = 0x036A, // updated 5.58
CFRegisterRoulette = 0x038C, // updated 5.58
PlayTimeHandler = 0x01A8, // updated 5.58
LogoutHandler = 0x02A5, // updated 5.58
CancelLogout = 0x03CC, // updated 5.58
CFDutyInfoHandler = 0xF078, // updated 4.2
SocialReqSendHandler = 0x0366, // updated 5.58
SocialResponseHandler = 0x0311, // updated 5.58
CreateCrossWorldLS = 0x0125, // updated 5.58
ChatHandler = 0x02F4, // updated 5.58
PartyChatHandler = 0x0065,
PartySetLeaderHandler = 0x03C2, // updated 5.58
LeavePartyHandler = 0x028A, // updated 5.58
KickPartyMemberHandler = 0x01D1, // updated 5.58
DisbandPartyHandler = 0x032B, // updated 5.58
SocialListHandler = 0x006E, // updated 5.58
SetSearchInfoHandler = 0x010A, // updated 5.58
ReqSearchInfoHandler = 0x0255, // updated 5.58
ReqExamineSearchCommentHandler = 0x00E7, // updated 5.0
ReqRemovePlayerFromBlacklist = 0x015A, // updated 5.58
BlackListHandler = 0x02C5, // updated 5.58
PlayerSearchHandler = 0x0259, // updated 5.58
LinkshellListHandler = 0x01F0, // updated 5.58
MarketBoardRequestItemListingInfo = 0x02D3, // updated 5.58
MarketBoardRequestItemListings = 0x00AD, // updated 5.58
MarketBoardSearch = 0x00D6, // updated 5.58
ReqExamineFcInfo = 0x0359, // updated 5.58
FcInfoReqHandler = 0x0078, // updated 5.58
FreeCompanyUpdateShortMessageHandler = 0x0123, // added 5.0
ReqMarketWishList = 0x0364, // updated 5.58
ReqJoinNoviceNetwork = 0x0129, // updated 4.2
ReqCountdownInitiate = 0x020E, // updated 5.58
ReqCountdownCancel = 0x03BE, // updated 5.58
ZoneLineHandler = 0x00B0, // updated 5.58
ClientTrigger = 0x008B, // updated 5.58
DiscoveryHandler = 0x01B4, // updated 5.58
PlaceFieldMarkerPreset = 0x03B0, // updated 5.58
PlaceFieldMarker = 0x011A, // updated 5.58
SkillHandler = 0x0175, // updated 5.58
GMCommand1 = 0x0353, // updated 5.58
GMCommand2 = 0x03E7, // updated 5.58
AoESkillHandler = 0x021D, // updated 5.58
UpdatePositionHandler = 0x0212, // updated 5.58
InventoryModifyHandler = 0x014A, // updated 5.58
InventoryEquipRecommendedItems = 0x01D7, // updated 5.58
ReqPlaceHousingItem = 0x0354, // updated 5.58
BuildPresetHandler = 0x00DC, // updated 5.58
TalkEventHandler = 0x012D, // updated 5.58
EmoteEventHandler = 0x039E, // updated 5.58
WithinRangeEventHandler = 0x022C, // updated 5.58
OutOfRangeEventHandler = 0x0294, // updated 5.58
EnterTeriEventHandler = 0x00C1, // updated 5.58
ShopEventHandler = 0x02B8, // updated 5.58
EventYieldHandler = 0x03A2, // updated 5.58
ReturnEventHandler = 0x0333, // updated 5.58
TradeReturnEventHandler = 0x0179, // updated 5.58
TradeReturnEventHandler2 = 0x02E1, // updated 5.58
EventYield16Handler = 0x03D7, // updated 5.58
LinkshellEventHandler = 0x016B, // updated 4.5
LinkshellEventHandler1 = 0x016C, // updated 4.5
ReqEquipDisplayFlagsChange = 0x01AD, // updated 5.58
LandRenameHandler = 0x0083, // updated 5.58
HousingUpdateHouseGreeting = 0x031A, // updated 5.58
HousingUpdateObjectPosition = 0x010E, // updated 5.58
HousingEditExterior = 0x0324, // updated 5.58
HousingEditInterior = 0x02F7, // updated 5.58
SetSharedEstateSettings = 0x0342, // updated 5.58
UpdatePositionInstance = 0x01A3, // updated 5.58
PerformNoteHandler = 0x015E, // updated 5.58
WorldInteractionHandler = 0x03CE, // updated 5.58
Dive = 0x034C, // updated 5.58
};
////////////////////////////////////////////////////////////////////////////////
/// Chat Connection IPC Codes
/**
* Server IPC Chat Type Codes.
*/
enum ServerChatIpcType : uint16_t
{
Tell = 0x0064, // updated for sb
PublicContentTell = 0x00FB, // added 4.5, this is used when receiving a /tell in PublicContent instances such as Eureka or Bozja
TellErrNotFound = 0x0066,
FreeCompanyEvent = 0x012C, // added 5.0
};
/**
* Client IPC Chat Type Codes.
*/
enum ClientChatIpcType : uint16_t
{
TellReq = 0x0064,
PublicContentTellReq = 0x0326, // updated 5.35 hotfix, this is used when sending a /tell in PublicContent instances such as Eureka or Bozja
};
}
#endif /*_CORE_NETWORK_PACKETS_IPCS_H*/