1
Fork 0
mirror of https://github.com/SapphireServer/Sapphire.git synced 2025-04-29 07:37:45 +00:00

5.2 packet update.

This commit is contained in:
collett 2020-02-18 23:05:24 +09:00
parent d845162190
commit c98594f6c5
4 changed files with 75 additions and 84 deletions

View file

@ -43,29 +43,27 @@ namespace Sapphire::Network::Packets
*/
enum ServerZoneIpcType : uint16_t
{
// static opcode ( the ones that rarely, if ever, change )
Ping = 0x0200, // updated 5.18
Init = 0x018E,
Ping = 0x0106, // updated 5.2
Init = 0x0307, // updated 5.2
ActorFreeSpawn = 0x009B, // updated 5.18
InitZone = 0x007C, // updated 5.18
InitZone = 0x033A, // updated 5.2
EffectResult = 0x0267, // updated 5.18
ActorControl = 0x03BE, // updated 5.18
ActorControlSelf = 0x00E3, // updated 5.18
ActorControlTarget = 0x24d, // updated 5.18
EffectResult = 0x0340, // updated 5.2
ActorControl = 0x01E1, // updated 5.2
ActorControlSelf = 0x010E, // updated 5.2
ActorControlTarget = 0x00AE, // updated 5.2
/*!
* @brief Used when resting
*/
UpdateHpMpTp = 0x0125, // updated 5.18
UpdateHpMpTp = 0x00C1, // updated 5.2
///////////////////////////////////////////////////
ChatBanned = 0x006B,
Playtime = 0x00E7, // updated 5.18
Logout = 0x142, // updated 5.18
Logout = 0x0A1, // updated 5.2
CFNotify = 0x01F8, // updated 5.18
CFMemberStatus = 0x0079,
CFDutyInfo = 0x007A,
@ -84,25 +82,25 @@ namespace Sapphire::Network::Packets
WorldVisitList = 0x00FE, // added 4.5
SocialList = 0x01F1, // updated 5.18
SocialList = 0x033E, // updated 5.2
ExamineSearchInfo = 0x012B, // updated 5.18
UpdateSearchInfo = 0x01E5, // updated 5.18
InitSearchInfo = 0x01D0, // updated 5.18
InitSearchInfo = 0x021C, // updated 5.2
ExamineSearchComment = 0x0102, // updated 4.1
ServerNoticeShort = 0x0115, // updated 5.0
ServerNotice = 0x0088, // updated 5.18
SetOnlineStatus = 0x015E, // updated 5.1
ServerNotice = 0x0308, // updated 5.2
SetOnlineStatus = 0x0185, // updated 5.2
CountdownInitiate = 0x0309, // updated 5.11
CountdownCancel = 0x00D9, // updated 5.18
PlayerAddedToBlacklist = 0x033F, // updated 5.1
PlayerRemovedFromBlacklist = 0x0385, // updated 5.1
BlackList = 0x0253, // updated 5.18
BlackList = 0x01A2, // updated 5.2
LinkshellList = 0x00AC, // updated 5.18
LinkshellList = 0x028C, // updated 5.2
MailDeleteRequest = 0x012B, // updated 5.0
@ -125,24 +123,24 @@ namespace Sapphire::Network::Packets
FreeCompanyUpdateShortMessage = 0x0157, // added 5.0
StatusEffectList = 0x0183, // updated 5.18
StatusEffectList = 0x0374, // updated 5.2
EurekaStatusEffectList = 0x0167, // updated 5.18
BossStatusEffectList = 0x0312, // added 5.1
Effect = 0x026B, // updated 5.18
Effect = 0x028A, // updated 5.2
AoeEffect8 = 0x033E, // updated 5.18
AoeEffect16 = 0x0305, // updated 5.18
AoeEffect24 = 0x023F, // updated 5.18
AoeEffect32 = 0x0352, // updated 5.18
PersistantEffect = 0x019C, // updated 5.18
PersistantEffect = 0x00CE, // updated 5.2
GCAffiliation = 0x016F, // updated 5.0
PlayerSpawn = 0x0262, // updated 5.18
NpcSpawn = 0x0186, // updated 5.18
PlayerSpawn = 0x027D, // updated 5.2
NpcSpawn = 0x034B, // updated 5.2
NpcSpawn2 = 0x010C, // ( Bigger statuseffectlist? ) updated 5.18
ActorMove = 0x021B, // updated 5.18
ActorMove = 0x0130, // updated 5.2
ActorSetPos = 0x0068, // updated 5.18
ActorSetPos = 0x00CF, // updated 5.2
ActorCast = 0x03B1, // updated 5.18
SomeCustomiseChangePacketProbably = 0x00CD, // added 5.18
@ -150,15 +148,15 @@ namespace Sapphire::Network::Packets
PartyList = 0x0287, // updated 5.18
HateRank = 0x0226, // updated 5.18
HateList = 0x0361, // updated 5.18
ObjectSpawn = 0x027F, // updated 5.18
ObjectSpawn = 0x01B3, // updated 5.2
ObjectDespawn = 0x034B, // updated 5.18
UpdateClassInfo = 0x0362, // updated 5.18
UpdateClassInfo = 0x0131, // updated 5.2
SilentSetClassJob = 0x018E, // updated 5.0 - seems to be the case, not sure if it's actually used for anything
PlayerSetup = 0x0295, // updated 5.18
PlayerStats = 0x017A, // updated 5.18
PlayerSetup = 0x0278, // updated 5.2
PlayerStats = 0x03C8, // updated 5.2
ActorOwner = 0x03BB, // updated 5.18
PlayerStateFlags = 0x02C6, // updated 5.18
PlayerClassInfo = 0x01B0, // updated 5.18
PlayerStateFlags = 0x032B, // updated 5.2
PlayerClassInfo = 0x039A, // updated 5.2
ModelEquip = 0x02E6, // updated 5.18
Examine = 0x0366, // updated 5.18
@ -169,35 +167,35 @@ namespace Sapphire::Network::Packets
SetLevelSync = 0x1186, // not updated for 4.4, not sure what it is anymore
ItemInfo = 0x00F2, // updated 5.18
ContainerInfo = 0x01F2, // updated 5.18
InventoryTransactionFinish = 0x00D2, // updated 5.18
InventoryTransaction = 0x0233, // updated 5.18
CurrencyCrystalInfo = 0x02BF, // updated 5.18
ItemInfo = 0x03D4, // updated 5.2
ContainerInfo = 0x01A5, // updated 5.2
InventoryTransactionFinish = 0x02D7, // updated 5.2
InventoryTransaction = 0x01D8, // updated 5.2
CurrencyCrystalInfo = 0x0277, // updated 5.2
InventoryActionAck = 0x02FA, // updated 5.18
UpdateInventorySlot = 0x0370, // updated 5.18
InventoryActionAck = 0x0094, // updated 5.2
UpdateInventorySlot = 0x02E9, // updated 5.2
HuntingLogEntry = 0x01B3, // updated 5.0
EventPlay = 0x0279, // updated 5.18
EventPlay = 0x01F3, // updated 5.2
EventPlay4 = 0x02F7, // updated 5.18
EventPlay8 = 0x0119, // updated 5.18
EventPlay16 = 0x01FB, // updated 5.18
EventPlay32 = 0x0364, // updated 5.18
EventPlay64 = 0x00E5, // updated 5.18
EventPlay128 = 0x02BE, // updated 5.18
EventPlay255 = 0x01B1, // updated 5.18
EventPlay255 = 0x03B0, // updated 5.2
EventStart = 0x0230, // updated 5.18
EventFinish = 0x01E4, // updated 5.18
EventStart = 0x023D, // updated 5.2
EventFinish = 0x0318, // updated 5.2
UseMooch = 0x0233, // updated 5.18
EventLinkshell = 0x1169,
QuestActiveList = 0x031E, // updated 5.18
QuestActiveList = 0x017B, // updated 5.2
QuestUpdate = 0x0066, // updated 5.18
QuestCompleteList = 0x025D, // updated 5.18
QuestCompleteList = 0x0255, // updated 5.2
QuestFinish = 0x013A, // updated 5.18
MSQTrackerComplete = 0x01D6, // updated 5.0
@ -205,7 +203,7 @@ namespace Sapphire::Network::Packets
QuestMessage = 0x00BF, // updated 5.18
QuestTracker = 0x0289, // updated 5.18
QuestTracker = 0x0306, // updated 5.2
Mount = 0x038F, // updated 5.18
@ -227,7 +225,7 @@ namespace Sapphire::Network::Packets
EorzeaTimeOffset = 0x03B8, // updated 5.1
EquipDisplayFlags = 0x00FF, // updated 5.18
EquipDisplayFlags = 0x0173, // updated 5.2
/// Housing //////////////////////////////////////
@ -240,7 +238,7 @@ namespace Sapphire::Network::Packets
LandRename = 0x023A, // updated 5.0
HousingEstateGreeting = 0x023B, // updated 5.0
HousingUpdateLandFlagsSlot = 0x023C, // updated 5.0
HousingLandFlags = 0x01F3, // updated 5.18
HousingLandFlags = 0x00FE, // updated 5.2
HousingShowEstateGuestAccess = 0x023E, // updated 5.0
HousingObjectInitialize = 0x0240, // updated 5.0
@ -260,12 +258,12 @@ namespace Sapphire::Network::Packets
DuelChallenge = 0x0277, // 4.2; this is responsible for opening the ui
PerformNote = 0x0286, // updated 4.3
PrepareZoning = 0x035C, // updated 5.18
ActorGauge = 0x016D, // updated 5.18
PrepareZoning = 0x0208, // updated 5.2
ActorGauge = 0x0162, // updated 5.2
// daily quest info -> without them sent, login will take longer...
DailyQuests = 0x02D8, // updated 5.18
DailyQuestRepeatFlags = 0x03A3, // updated 5.18
DailyQuests = 0x00A2, // updated 5.2
DailyQuestRepeatFlags = 0x013D, // updated 5.2
/// Doman Mahjong //////////////////////////////////////
MahjongOpenGui = 0x02A4, // only available in mahjong instance
@ -285,11 +283,10 @@ namespace Sapphire::Network::Packets
*/
enum ClientZoneIpcType : uint16_t
{
PingHandler = 0x0106, // updated 5.2
InitHandler = 0x0307, // updated 5.2
PingHandler = 0x0200, // updated 5.18
InitHandler = 0x018E, // updated 5.18
FinishLoadingHandler = 0x01F5, // updated 5.18
FinishLoadingHandler = 0x012B, // updated 5.2
CFCommenceHandler = 0x006F,
@ -297,7 +294,7 @@ namespace Sapphire::Network::Packets
CFRegisterDuty = 0x0071,
CFRegisterRoulette = 0xFF72,
PlayTimeHandler = 0x0276, // updated 5.1
LogoutHandler = 0x015D, // updated 5.18
LogoutHandler = 0x029C, // updated 5.2
CancelLogout = 0x008F, // updated 5.1
CFDutyInfoHandler = 0x0078, // updated 4.2
@ -305,18 +302,18 @@ namespace Sapphire::Network::Packets
SocialReqSendHandler = 0x00AE, // updated 4.1
CreateCrossWorldLS = 0x00AF, // updated 4.3
ChatHandler = 0x0130, // updated 5.18
ChatHandler = 0x013A, // updated 5.2
SocialListHandler = 0x0090, // updated 5.18
SetSearchInfoHandler = 0x0320, // updated 5.18
ReqSearchInfoHandler = 0x0374, // updated 5.18
SocialListHandler = 0x03E7, // updated 5.2
SetSearchInfoHandler = 0x00A8, // updated 5.2
ReqSearchInfoHandler = 0x007B, // updated 5.2
ReqExamineSearchCommentHandler = 0x00E7, // updated 5.0
ReqRemovePlayerFromBlacklist = 0x00F1, // updated 5.0
BlackListHandler = 0x01EB, // updated 5.18
BlackListHandler = 0x0329, // updated 5.2
PlayerSearchHandler = 0x00F4, // updated 5.0
LinkshellListHandler = 0x014A, // updated 5.18
LinkshellListHandler = 0x00A7, // updated 5.2
MarketBoardRequestItemListingInfo = 0x0102, // updated 4.5
MarketBoardRequestItemListings = 0x0103, // updated 4.5
@ -335,39 +332,39 @@ namespace Sapphire::Network::Packets
ReqCountdownInitiate = 0x0135, // updated 5.0
ReqCountdownCancel = 0x0136, // updated 5.0
ZoneLineHandler = 0x0174, // updated 5.18
ClientTrigger = 0x03C0, // updated 5.18
ZoneLineHandler = 0x00B9, // updated 5.2
ClientTrigger = 0x017C, // updated 5.2
DiscoveryHandler = 0x017B, // updated 5.18
PlaceFieldMarker = 0x013C, // updated 5.0
SkillHandler = 0x01BE, // updated 5.18
SkillHandler = 0x0225, // updated 5.2
GMCommand1 = 0x014D, // updated 5.18
GMCommand2 = 0x03C2, // updated 5.18
AoESkillHandler = 0x0072, // updated 5.18
UpdatePositionHandler = 0x0318, // updated 5.18
UpdatePositionHandler = 0x0270, // updated 5.2
InventoryModifyHandler = 0x03C5, // updated 5.18
InventoryModifyHandler = 0x02E4, // updated 5.2
InventoryEquipRecommendedItems = 0x0149, // updated 5.0
ReqPlaceHousingItem = 0x014B, // updated 5.0
BuildPresetHandler = 0x0150, // updated 5.0
TalkEventHandler = 0x02FD, // updated 5.18
TalkEventHandler = 0x0340, // updated 5.2
EmoteEventHandler = 0x0183, // updated 5.18
WithinRangeEventHandler = 0x0167, // updated 5.18
OutOfRangeEventHandler = 0x02B5, // updated 5.18
EnterTeriEventHandler = 0x0267, // updated 5.18
ShopEventHandler = 0x0156, // updated 5.0
ReturnEventHandler = 0x026B, // updated 5.18
TradeReturnEventHandler = 0x02DD, // updated 5.18
ReturnEventHandler = 0x027F, // updated 5.2
TradeReturnEventHandler = 0x02DB, // updated 5.2
LinkshellEventHandler = 0x016B, // updated 4.5
LinkshellEventHandler1 = 0x016C, // updated 4.5
ReqEquipDisplayFlagsChange = 0x01FE, // updated 5.18
ReqEquipDisplayFlagsChange = 0x02E2, // updated 5.2
LandRenameHandler = 0xF177, // updated 5.0
HousingUpdateHouseGreeting = 0x0178, // updated 5.0

View file

@ -421,9 +421,9 @@ namespace Sapphire::Network::Packets::Server
uint32_t max_hp;
uint16_t current_mp;
uint16_t max_mp;
uint16_t currentTp;
uint8_t shieldPercentage;
uint8_t unknown1;
uint16_t unknown2;
Common::StatusEffect effect[30];
uint32_t padding;
};
@ -445,8 +445,6 @@ namespace Sapphire::Network::Packets::Server
uint32_t current_hp;
uint32_t max_hp;
uint16_t current_mp;
uint16_t current_tp;
uint16_t max_mp;
uint8_t unknown1;
uint8_t classId;
uint8_t shieldPercentage;
@ -464,7 +462,6 @@ namespace Sapphire::Network::Packets::Server
uint32_t sourceActorId;
} statusEntries[4];
uint32_t unknown5;
};
/**
@ -664,9 +661,8 @@ namespace Sapphire::Network::Packets::Server
uint32_t displayFlags;
uint16_t fateID;
uint16_t mPCurr;
uint16_t tPCurr;
uint16_t mPMax;
uint16_t tPMax;
uint16_t unk; // == 0
uint16_t modelChara;
uint16_t rotation;
uint16_t activeMinion;
@ -688,8 +684,11 @@ namespace Sapphire::Network::Packets::Server
uint8_t mountFeet;
uint8_t mountColor;
uint8_t scale;
uint32_t elementalLevel;
uint32_t element;
//uint32_t elementalLevel; one of these two field changed to 16bit
//uint32_t element;
uint8_t elementData[6];
Common::StatusEffect effect[30];
Common::FFXIVARR_POSITION3 pos;
uint32_t models[10];
@ -1023,7 +1022,7 @@ namespace Sapphire::Network::Packets::Server
unsigned char companionDefRank;
unsigned char companionAttRank;
unsigned char companionHealRank;
unsigned char u19[8];
unsigned char u19[13];
unsigned char mountGuideMask[22];
char name[32];
unsigned char unknownOword[16];

View file

@ -539,9 +539,7 @@ void Sapphire::Entity::Chara::addStatusEffect( StatusEffect::StatusEffectPtr pEf
statusEffectAdd->data().actor_id = pEffect->getTargetActorId();
statusEffectAdd->data().current_hp = getHp();
statusEffectAdd->data().current_mp = static_cast< uint16_t >( getMp() );
statusEffectAdd->data().current_tp = getTp();
statusEffectAdd->data().max_hp = getMaxHp();
statusEffectAdd->data().max_mp = static_cast< uint16_t >( getMaxMp() );
statusEffectAdd->data().classId = static_cast< uint8_t >( getClass() );
statusEffectAdd->data().entryCount = 1;
@ -661,7 +659,6 @@ void Sapphire::Entity::Chara::sendStatusEffectUpdate()
statusEffectList->data().level1 = getLevel();
statusEffectList->data().current_hp = getHp();
statusEffectList->data().current_mp = getMp();
statusEffectList->data().currentTp = getTp();
statusEffectList->data().max_hp = getMaxHp();
statusEffectList->data().max_mp = getMaxMp();
uint8_t slot = 0;

View file

@ -37,11 +37,9 @@ namespace Sapphire::Network::Packets::Server
m_data.hPCurr = player.getHp();
m_data.mPCurr = player.getMp();
m_data.tPCurr = player.getTp();
m_data.hPMax = player.getMaxHp();
m_data.mPMax = player.getMaxMp();
//m_data.tPMax = 3000;
m_data.level = player.getLevel();
m_data.gmRank = player.getGmRank();
m_data.pose = player.getPose();