From 039e321ddeedb74872fc0a0599daa1f47e9cf638 Mon Sep 17 00:00:00 2001 From: Uleat Date: Thu, 25 Sep 2014 18:48:58 -0400 Subject: [PATCH] More re-enumeration prep work --- common/misc_functions.cpp | 23 +++ common/misc_functions.h | 2 + common/patches/client62.cpp | 16 -- common/patches/client62_ops.h | 53 +++---- common/patches/rof_ops.h | 282 ++++++++++++++++----------------- common/patches/sod_ops.h | 198 ++++++++++++----------- common/patches/sof_ops.h | 164 ++++++++++--------- common/patches/titanium.cpp | 16 -- common/patches/titanium_ops.h | 79 +++++---- common/patches/underfoot_ops.h | 216 +++++++++++++------------ 10 files changed, 516 insertions(+), 533 deletions(-) diff --git a/common/misc_functions.cpp b/common/misc_functions.cpp index e7b581733..882cc61c7 100644 --- a/common/misc_functions.cpp +++ b/common/misc_functions.cpp @@ -387,3 +387,26 @@ float EQHtoFloat(int d) { return(360.0f - float((d * 360) >> 11)); } + +// returns a swapped-bit value for use in client translator and inventory functions +uint32 SwapBits21and22(uint32 mask) +{ + static const uint32 BIT21 = 1 << 21; + static const uint32 BIT22 = 1 << 22; + static const uint32 SWAPBITS = (BIT21 | BIT22); + + if ((bool)(mask & BIT21) != (bool)(mask & BIT22)) + mask ^= SWAPBITS; + + return mask; +} + +// returns an unset bit 22 value for use in client translators +uint32 Catch22(uint32 mask) +{ + static const uint32 KEEPBITS = ~(1 << 22); + + mask &= KEEPBITS; + + return mask; +} diff --git a/common/misc_functions.h b/common/misc_functions.h index c057af8d8..abc9747b5 100644 --- a/common/misc_functions.h +++ b/common/misc_functions.h @@ -102,6 +102,8 @@ int FloatToEQ13(float d); int NewFloatToEQ13(float d); int FloatToEQ19(float d); int FloatToEQH(float d); +uint32 SwapBits21and22(uint32 mask); +uint32 Catch22(uint32 mask); // macro to catch fp errors (provided by noudness) #define FCMP(a,b) (fabs(a-b) < FLT_EPSILON) diff --git a/common/patches/client62.cpp b/common/patches/client62.cpp index 10cc331ec..494049876 100644 --- a/common/patches/client62.cpp +++ b/common/patches/client62.cpp @@ -131,22 +131,6 @@ static inline uint32 Client62ToServerCorpseSlot(uint32 Client62Corpse) { // reserved } */ -/* -static inline uint32 RemovePowerSourceBit(uint32 slots) { // shouldn't need to add one..just grab the actual server reference, if so... - static const uint32 BIT21 = 1 << 21; - static const uint32 BIT22 = 1 << 22; - static const uint32 KEEPBITS = ~(BIT21 | BIT22); - - bool wearammo = slots & BIT22; - - slots &= KEEPBITS; - - if (wearammo) - slots |= BIT21; - - return slots; -} -*/ EAT_ENCODE(OP_ZoneServerReady) diff --git a/common/patches/client62_ops.h b/common/patches/client62_ops.h index 5f1a1b4a0..8f544ccfc 100644 --- a/common/patches/client62_ops.h +++ b/common/patches/client62_ops.h @@ -1,36 +1,35 @@ - -//list of packets we need to encode on the way out: +// out-going packets that require an ENCODE translation: +E(OP_Action) +E(OP_BazaarSearch) +E(OP_BecomeTrader) +E(OP_CharInventory) +E(OP_DeleteSpawn) +E(OP_GuildMemberLevelUpdate) +E(OP_GuildMemberList) +E(OP_Illusion) +E(OP_ItemLinkResponse) +E(OP_ItemPacket) +E(OP_LeadershipExpUpdate) +E(OP_NewSpawn) +E(OP_OnLevelMessage) +E(OP_PetBuffWindow) +E(OP_PlayerProfile) +E(OP_ReadBook) +E(OP_RespondAA) E(OP_SendAATable) E(OP_SendCharInfo) -E(OP_LeadershipExpUpdate) -E(OP_PlayerProfile) -E(OP_NewSpawn) -E(OP_ZoneSpawns) -E(OP_ZoneEntry) -E(OP_ItemPacket) -E(OP_ItemLinkResponse) -E(OP_CharInventory) -E(OP_GuildMemberList) -E(OP_ZoneServerReady) -E(OP_GuildMemberLevelUpdate) -E(OP_ReadBook) -E(OP_Illusion) E(OP_Track) -E(OP_BazaarSearch) -E(OP_RespondAA) -E(OP_DeleteSpawn) E(OP_WearChange) -E(OP_Action) -E(OP_BecomeTrader) -E(OP_PetBuffWindow) -E(OP_OnLevelMessage) -//list of packets we need to decode on the way in: -D(OP_SetServerFilter) +E(OP_ZoneEntry) +E(OP_ZoneServerReady) +E(OP_ZoneSpawns) +// incoming packets that require a DECODE translation: D(OP_CharacterCreate) -D(OP_ItemLinkClick) -D(OP_WhoAllRequest) -D(OP_ReadBook) D(OP_FaceChange) +D(OP_ItemLinkClick) +D(OP_ReadBook) +D(OP_SetServerFilter) D(OP_WearChange) +D(OP_WhoAllRequest) #undef E #undef D diff --git a/common/patches/rof_ops.h b/common/patches/rof_ops.h index 9e3a91c7e..030c331d6 100644 --- a/common/patches/rof_ops.h +++ b/common/patches/rof_ops.h @@ -1,162 +1,160 @@ - -//list of packets we need to encode on the way out: - -E(OP_SendCharInfo) -E(OP_ZoneServerInfo) -E(OP_SendAATable) -E(OP_PlayerProfile) -E(OP_ZoneEntry) -E(OP_CharInventory) -E(OP_NewZone) -E(OP_SpawnDoor) -E(OP_GroundSpawn) -E(OP_SendZonepoints) -E(OP_NewSpawn) -E(OP_ZoneSpawns) -E(OP_ItemLinkResponse) -E(OP_ItemPacket) -E(OP_GuildMemberList) -E(OP_Illusion) -E(OP_ManaChange) -E(OP_ClientUpdate) -E(OP_LeadershipExpUpdate) -E(OP_ExpansionInfo) -E(OP_LogServer) -E(OP_Damage) -E(OP_Buff) +// out-going packets that require an ENCODE translation: E(OP_Action) -E(OP_Consider) -E(OP_CancelTrade) -E(OP_ShopPlayerSell) -E(OP_DeleteItem) -E(OP_ItemVerifyReply) -E(OP_DeleteCharge) -E(OP_MoveItem) -//E(OP_OpenNewTasksWindow) -E(OP_BazaarSearch) -E(OP_Trader) -E(OP_TraderBuy) -E(OP_LootItem) -E(OP_TributeItem) -E(OP_SomeItemPacketMaybe) -E(OP_ReadBook) -E(OP_Stun) -E(OP_ZonePlayerToBind) E(OP_AdventureMerchantSell) -E(OP_RaidUpdate) -E(OP_RaidJoin) -E(OP_VetRewardsAvaliable) -E(OP_InspectRequest) -E(OP_GroupInvite) -E(OP_GroupFollow) -E(OP_GroupFollow2) -E(OP_GroupUpdate) -E(OP_GroupCancelInvite) -E(OP_WhoAllResponse) -E(OP_Track) -E(OP_ShopPlayerBuy) -E(OP_PetBuffWindow) -E(OP_OnLevelMessage) -E(OP_Barter) +E(OP_AltCurrency) +E(OP_AltCurrencySell) +E(OP_Animation) E(OP_ApplyPoison) +E(OP_Barter) +E(OP_BazaarSearch) +E(OP_BeginCast) +E(OP_BlockedBuffs) +E(OP_Buff) +E(OP_BuffCreate) +E(OP_CancelTrade) +E(OP_CastSpell) E(OP_ChannelMessage) -E(OP_GuildsList) +E(OP_CharInventory) +E(OP_ClickObjectAction) +E(OP_ClientUpdate) +E(OP_Consider) +E(OP_Damage) +E(OP_DeleteCharge) +E(OP_DeleteItem) +E(OP_DeleteSpawn) +E(OP_DisciplineUpdate) +E(OP_DzCompass) E(OP_DzExpeditionEndsWarning) E(OP_DzExpeditionInfo) -E(OP_DzCompass) -E(OP_DzMemberList) E(OP_DzExpeditionList) -E(OP_DzLeaderStatus) E(OP_DzJoinExpeditionConfirm) -E(OP_TargetBuffs) -E(OP_BuffCreate) -E(OP_SpawnAppearance) -E(OP_RespondAA) -E(OP_DisciplineUpdate) -E(OP_AltCurrencySell) -E(OP_AltCurrency) -E(OP_RequestClientZoneChange) -E(OP_ZoneChange) -E(OP_WearChange) -E(OP_ShopRequest) -E(OP_CastSpell) -E(OP_InterruptCast) -E(OP_SendMembership) -E(OP_Animation) -E(OP_HPUpdate) -E(OP_BlockedBuffs) -E(OP_RemoveBlockedBuffs) -E(OP_DeleteSpawn) -E(OP_ClickObjectAction) -E(OP_RecipeAutoCombine) -E(OP_GMTrainSkillConfirm) -E(OP_SkillUpdate) -E(OP_TributeInfo) -E(OP_TaskHistoryReply) -E(OP_TaskDescription) -E(OP_SetGuildRank) -E(OP_MercenaryDataUpdate) -E(OP_MercenaryDataResponse) -E(OP_GuildMemberUpdate) +E(OP_DzLeaderStatus) +E(OP_DzMemberList) +E(OP_ExpansionInfo) E(OP_GMLastName) -E(OP_BeginCast) +E(OP_GMTrainSkillConfirm) +E(OP_GroundSpawn) +E(OP_GroupCancelInvite) +E(OP_GroupFollow) +E(OP_GroupFollow2) +E(OP_GroupInvite) +E(OP_GroupUpdate) +E(OP_GuildMemberList) +E(OP_GuildMemberUpdate) +E(OP_GuildsList) +E(OP_HPUpdate) +E(OP_Illusion) +E(OP_InspectRequest) +E(OP_InterruptCast) +E(OP_ItemLinkResponse) +E(OP_ItemPacket) +E(OP_ItemVerifyReply) +E(OP_LeadershipExpUpdate) +E(OP_LogServer) +E(OP_LootItem) +E(OP_ManaChange) +E(OP_MercenaryDataResponse) +E(OP_MercenaryDataUpdate) +E(OP_MoveItem) +E(OP_NewSpawn) +E(OP_NewZone) +E(OP_OnLevelMessage) +//E(OP_OpenNewTasksWindow) +E(OP_PetBuffWindow) +E(OP_PlayerProfile) +E(OP_RaidJoin) +E(OP_RaidUpdate) +E(OP_ReadBook) +E(OP_RecipeAutoCombine) +E(OP_RemoveBlockedBuffs) +E(OP_RequestClientZoneChange) +E(OP_RespondAA) E(OP_RezzRequest) -//list of packets we need to decode on the way in: -D(OP_SetServerFilter) -D(OP_CharacterCreate) -D(OP_ItemLinkClick) -D(OP_ConsiderCorpse) -D(OP_Consider) -D(OP_ClientUpdate) -D(OP_MoveItem) -D(OP_WhoAllRequest) +E(OP_SendAATable) +E(OP_SendCharInfo) +E(OP_SendMembership) +E(OP_SendZonepoints) +E(OP_SetGuildRank) +E(OP_ShopPlayerBuy) +E(OP_ShopPlayerSell) +E(OP_ShopRequest) +E(OP_SkillUpdate) +E(OP_SomeItemPacketMaybe) +E(OP_SpawnAppearance) +E(OP_SpawnDoor) +E(OP_Stun) +E(OP_TargetBuffs) +E(OP_TaskDescription) +E(OP_TaskHistoryReply) +E(OP_Track) +E(OP_Trader) +E(OP_TraderBuy) +E(OP_TributeInfo) +E(OP_TributeItem) +E(OP_VetRewardsAvaliable) +E(OP_WearChange) +E(OP_WhoAllResponse) +E(OP_ZoneChange) +E(OP_ZoneEntry) +E(OP_ZonePlayerToBind) +E(OP_ZoneServerInfo) +E(OP_ZoneSpawns) +// incoming packets that require a DECODE translation: +D(OP_AdventureMerchantSell) +D(OP_AltCurrencySell) +D(OP_AltCurrencySellSelection) +D(OP_ApplyPoison) +D(OP_AugmentInfo) +D(OP_AugmentItem) +D(OP_BazaarSearch) +D(OP_BlockedBuffs) D(OP_Buff) -D(OP_ShopPlayerSell) -D(OP_Consume) +D(OP_BuffRemoveRequest) D(OP_CastSpell) -D(OP_Save) -D(OP_ItemVerifyRequest) -D(OP_GroupInvite) -D(OP_GroupInvite2) +D(OP_ChannelMessage) +D(OP_CharacterCreate) +D(OP_ClientUpdate) +D(OP_Consider) +D(OP_ConsiderCorpse) +D(OP_Consume) +D(OP_Damage) +D(OP_DeleteItem) +D(OP_EnvDamage) +D(OP_FaceChange) +D(OP_FindPersonRequest) +D(OP_GMLastName) +D(OP_GroupCancelInvite) +D(OP_GroupDisband) D(OP_GroupFollow) D(OP_GroupFollow2) -D(OP_GroupDisband) -D(OP_GroupCancelInvite) -D(OP_FindPersonRequest) -D(OP_TraderBuy) -D(OP_LootItem) -D(OP_TributeItem) -D(OP_ReadBook) -D(OP_AugmentInfo) -D(OP_FaceChange) -D(OP_AdventureMerchantSell) -D(OP_TradeSkillCombine) -D(OP_RaidInvite) -D(OP_InspectRequest) -D(OP_ShopPlayerBuy) -D(OP_BazaarSearch) -D(OP_LoadSpellSet) -D(OP_ApplyPoison) -D(OP_Damage) -D(OP_EnvDamage) -D(OP_ChannelMessage) -D(OP_DeleteItem) -D(OP_AugmentItem) -D(OP_PetCommands) -D(OP_BuffRemoveRequest) -D(OP_AltCurrencySellSelection) -D(OP_AltCurrencySell) -D(OP_ZoneChange) -D(OP_ZoneEntry) -D(OP_ShopRequest) -D(OP_BlockedBuffs) -D(OP_RemoveBlockedBuffs) -D(OP_RecipeAutoCombine) +D(OP_GroupInvite) +D(OP_GroupInvite2) D(OP_GuildDemote) D(OP_GuildRemove) D(OP_GuildStatus) -D(OP_Trader) -D(OP_GMLastName) +D(OP_InspectRequest) +D(OP_ItemLinkClick) +D(OP_ItemVerifyRequest) +D(OP_LoadSpellSet) +D(OP_LootItem) +D(OP_MoveItem) +D(OP_PetCommands) +D(OP_RaidInvite) +D(OP_ReadBook) +D(OP_RecipeAutoCombine) +D(OP_RemoveBlockedBuffs) D(OP_RezzAnswer) +D(OP_Save) +D(OP_SetServerFilter) +D(OP_ShopPlayerBuy) +D(OP_ShopPlayerSell) +D(OP_ShopRequest) +D(OP_Trader) +D(OP_TraderBuy) +D(OP_TradeSkillCombine) +D(OP_TributeItem) +D(OP_WhoAllRequest) +D(OP_ZoneChange) +D(OP_ZoneEntry) #undef E #undef D diff --git a/common/patches/sod_ops.h b/common/patches/sod_ops.h index d7b87d514..792c9e5d3 100644 --- a/common/patches/sod_ops.h +++ b/common/patches/sod_ops.h @@ -1,117 +1,115 @@ - -//list of packets we need to encode on the way out: - -E(OP_SendCharInfo) -E(OP_ZoneServerInfo) -E(OP_SendAATable) -E(OP_PlayerProfile) -E(OP_ZoneEntry) -E(OP_CharInventory) -E(OP_NewZone) -E(OP_SpawnDoor) -E(OP_GroundSpawn) -E(OP_SendZonepoints) -E(OP_NewSpawn) -E(OP_ZoneSpawns) -E(OP_ItemLinkResponse) -E(OP_ItemPacket) -E(OP_GuildMemberList) -E(OP_Illusion) -E(OP_ManaChange) -E(OP_ClientUpdate) -E(OP_LeadershipExpUpdate) -E(OP_ExpansionInfo) -E(OP_LogServer) -E(OP_Damage) -E(OP_Buff) +// out-going packets that require an ENCODE translation: E(OP_Action) -E(OP_Consider) -E(OP_CancelTrade) -E(OP_ShopPlayerSell) -E(OP_DeleteItem) -E(OP_ItemVerifyReply) -E(OP_DeleteCharge) -E(OP_MoveItem) -E(OP_OpenNewTasksWindow) -E(OP_BazaarSearch) -E(OP_Trader) -E(OP_TraderBuy) -E(OP_LootItem) -E(OP_TributeItem) -E(OP_SomeItemPacketMaybe) -E(OP_ReadBook) -E(OP_Stun) -E(OP_ZonePlayerToBind) E(OP_AdventureMerchantSell) -E(OP_RaidUpdate) -E(OP_RaidJoin) -E(OP_VetRewardsAvaliable) -E(OP_InspectRequest) -E(OP_GroupInvite) -E(OP_GroupFollow) -E(OP_GroupFollow2) -E(OP_GroupUpdate) -E(OP_GroupCancelInvite) -E(OP_WhoAllResponse) -E(OP_Track) -E(OP_ShopPlayerBuy) -E(OP_PetBuffWindow) -E(OP_OnLevelMessage) -E(OP_Barter) +E(OP_AltCurrencySell) E(OP_ApplyPoison) +E(OP_Barter) +E(OP_BazaarSearch) +E(OP_Buff) +E(OP_CancelTrade) +E(OP_CharInventory) +E(OP_ClientUpdate) +E(OP_Consider) +E(OP_Damage) +E(OP_DeleteCharge) +E(OP_DeleteItem) +E(OP_DzCompass) E(OP_DzExpeditionEndsWarning) E(OP_DzExpeditionInfo) -E(OP_DzCompass) -E(OP_DzMemberList) E(OP_DzExpeditionList) -E(OP_DzLeaderStatus) E(OP_DzJoinExpeditionConfirm) -E(OP_TargetBuffs) -E(OP_AltCurrencySell) -E(OP_WearChange) +E(OP_DzLeaderStatus) +E(OP_DzMemberList) +E(OP_ExpansionInfo) +E(OP_GroundSpawn) +E(OP_GroupCancelInvite) +E(OP_GroupFollow) +E(OP_GroupFollow2) +E(OP_GroupInvite) +E(OP_GroupUpdate) +E(OP_GuildMemberList) +E(OP_Illusion) +E(OP_InspectRequest) +E(OP_ItemLinkResponse) +E(OP_ItemPacket) +E(OP_ItemVerifyReply) +E(OP_LeadershipExpUpdate) +E(OP_LogServer) +E(OP_LootItem) +E(OP_ManaChange) E(OP_MercenaryDataResponse) E(OP_MercenaryDataUpdate) -//list of packets we need to decode on the way in: -D(OP_SetServerFilter) -D(OP_CharacterCreate) -D(OP_ItemLinkClick) -D(OP_ConsiderCorpse) -D(OP_Consider) -D(OP_ClientUpdate) -D(OP_MoveItem) -D(OP_WhoAllRequest) +E(OP_MoveItem) +E(OP_NewSpawn) +E(OP_NewZone) +E(OP_OnLevelMessage) +E(OP_OpenNewTasksWindow) +E(OP_PetBuffWindow) +E(OP_PlayerProfile) +E(OP_RaidJoin) +E(OP_RaidUpdate) +E(OP_ReadBook) +E(OP_SendAATable) +E(OP_SendCharInfo) +E(OP_SendZonepoints) +E(OP_ShopPlayerBuy) +E(OP_ShopPlayerSell) +E(OP_SomeItemPacketMaybe) +E(OP_SpawnDoor) +E(OP_Stun) +E(OP_TargetBuffs) +E(OP_Track) +E(OP_Trader) +E(OP_TraderBuy) +E(OP_TributeItem) +E(OP_VetRewardsAvaliable) +E(OP_WearChange) +E(OP_WhoAllResponse) +E(OP_ZoneEntry) +E(OP_ZonePlayerToBind) +E(OP_ZoneServerInfo) +E(OP_ZoneSpawns) +// incoming packets that require a DECODE translation: +D(OP_AdventureMerchantSell) +D(OP_AltCurrencySell) +D(OP_AltCurrencySellSelection) +D(OP_ApplyPoison) +D(OP_AugmentInfo) +D(OP_AugmentItem) +D(OP_BazaarSearch) D(OP_Buff) -D(OP_ShopPlayerSell) -D(OP_Consume) +D(OP_Bug) D(OP_CastSpell) -D(OP_Save) -D(OP_ItemVerifyRequest) -D(OP_GroupInvite) -D(OP_GroupInvite2) +D(OP_CharacterCreate) +D(OP_ClientUpdate) +D(OP_Consider) +D(OP_ConsiderCorpse) +D(OP_Consume) +D(OP_DeleteItem) +D(OP_FaceChange) +D(OP_FindPersonRequest) +D(OP_GroupCancelInvite) +D(OP_GroupDisband) D(OP_GroupFollow) D(OP_GroupFollow2) -D(OP_GroupDisband) -D(OP_GroupCancelInvite) -D(OP_FindPersonRequest) -D(OP_TraderBuy) -D(OP_LootItem) -D(OP_TributeItem) -D(OP_ReadBook) -D(OP_AugmentInfo) -D(OP_FaceChange) -D(OP_AdventureMerchantSell) -D(OP_TradeSkillCombine) -D(OP_RaidInvite) +D(OP_GroupInvite) +D(OP_GroupInvite2) D(OP_InspectRequest) -D(OP_WearChange) -D(OP_ShopPlayerBuy) -D(OP_BazaarSearch) +D(OP_ItemLinkClick) +D(OP_ItemVerifyRequest) D(OP_LoadSpellSet) -D(OP_ApplyPoison) -D(OP_DeleteItem) -D(OP_AugmentItem) -D(OP_Bug) -D(OP_AltCurrencySellSelection) -D(OP_AltCurrencySell) +D(OP_LootItem) +D(OP_MoveItem) +D(OP_RaidInvite) +D(OP_ReadBook) +D(OP_Save) +D(OP_SetServerFilter) +D(OP_ShopPlayerBuy) +D(OP_ShopPlayerSell) +D(OP_TraderBuy) +D(OP_TradeSkillCombine) +D(OP_TributeItem) +D(OP_WearChange) +D(OP_WhoAllRequest) #undef E #undef D diff --git a/common/patches/sof_ops.h b/common/patches/sof_ops.h index ac8dd2008..f039c2189 100644 --- a/common/patches/sof_ops.h +++ b/common/patches/sof_ops.h @@ -1,100 +1,98 @@ - -//list of packets we need to encode on the way out: - -E(OP_SendCharInfo) -E(OP_ZoneServerInfo) -E(OP_SendAATable) -E(OP_PlayerProfile) -E(OP_ZoneEntry) -E(OP_CharInventory) -E(OP_NewZone) -E(OP_SpawnDoor) -E(OP_GroundSpawn) -E(OP_SendZonepoints) -E(OP_NewSpawn) -E(OP_ZoneSpawns) -E(OP_ItemLinkResponse) -E(OP_ItemPacket) -E(OP_GuildMemberList) -E(OP_Illusion) -E(OP_ManaChange) -E(OP_ClientUpdate) -E(OP_LeadershipExpUpdate) -E(OP_ExpansionInfo) -E(OP_LogServer) -E(OP_Damage) -E(OP_Buff) +// out-going packets that require an ENCODE translation: E(OP_Action) -E(OP_Consider) -E(OP_CancelTrade) -E(OP_ShopPlayerSell) -E(OP_DeleteItem) -E(OP_ItemVerifyReply) -E(OP_DeleteCharge) -E(OP_MoveItem) -E(OP_OpenNewTasksWindow) -E(OP_BazaarSearch) -E(OP_Trader) -E(OP_TraderBuy) -E(OP_LootItem) -E(OP_TributeItem) -E(OP_SomeItemPacketMaybe) -E(OP_ReadBook) -E(OP_Stun) -E(OP_ZonePlayerToBind) E(OP_AdventureMerchantSell) -E(OP_RaidUpdate) -E(OP_RaidJoin) -E(OP_VetRewardsAvaliable) -E(OP_InspectRequest) -E(OP_Track) -E(OP_DeleteSpawn) +E(OP_AltCurrencySell) E(OP_ApplyPoison) +E(OP_BazaarSearch) +E(OP_BecomeTrader) +E(OP_Buff) +E(OP_CancelTrade) +E(OP_CharInventory) +E(OP_ClientUpdate) +E(OP_Consider) +E(OP_Damage) +E(OP_DeleteCharge) +E(OP_DeleteItem) +E(OP_DeleteSpawn) +E(OP_DzCompass) E(OP_DzExpeditionEndsWarning) E(OP_DzExpeditionInfo) -E(OP_DzCompass) -E(OP_DzMemberList) E(OP_DzExpeditionList) -E(OP_DzLeaderStatus) E(OP_DzJoinExpeditionConfirm) -E(OP_BecomeTrader) -E(OP_PetBuffWindow) +E(OP_DzLeaderStatus) +E(OP_DzMemberList) +E(OP_ExpansionInfo) +E(OP_GroundSpawn) +E(OP_GuildMemberList) +E(OP_Illusion) +E(OP_InspectRequest) +E(OP_ItemLinkResponse) +E(OP_ItemPacket) +E(OP_ItemVerifyReply) +E(OP_LeadershipExpUpdate) +E(OP_LogServer) +E(OP_LootItem) +E(OP_ManaChange) +E(OP_MoveItem) +E(OP_NewSpawn) +E(OP_NewZone) E(OP_OnLevelMessage) -E(OP_AltCurrencySell) +E(OP_OpenNewTasksWindow) +E(OP_PetBuffWindow) +E(OP_PlayerProfile) +E(OP_RaidJoin) +E(OP_RaidUpdate) +E(OP_ReadBook) +E(OP_SendAATable) +E(OP_SendCharInfo) +E(OP_SendZonepoints) +E(OP_ShopPlayerSell) +E(OP_SomeItemPacketMaybe) +E(OP_SpawnDoor) +E(OP_Stun) +E(OP_Track) +E(OP_Trader) +E(OP_TraderBuy) +E(OP_TributeItem) +E(OP_VetRewardsAvaliable) E(OP_WearChange) -//list of packets we need to decode on the way in: -D(OP_SetServerFilter) -D(OP_CharacterCreate) -D(OP_ItemLinkClick) -D(OP_ConsiderCorpse) -D(OP_Consider) -D(OP_ClientUpdate) -D(OP_MoveItem) -D(OP_WhoAllRequest) +E(OP_ZoneEntry) +E(OP_ZonePlayerToBind) +E(OP_ZoneServerInfo) +E(OP_ZoneSpawns) +// incoming packets that require a DECODE translation: +D(OP_AdventureMerchantSell) +D(OP_AltCurrencySell) +D(OP_AltCurrencySellSelection) +D(OP_ApplyPoison) +D(OP_AugmentInfo) +D(OP_AugmentItem) D(OP_Buff) -D(OP_ShopPlayerSell) -D(OP_Consume) D(OP_CastSpell) -D(OP_Save) -D(OP_ItemVerifyRequest) +D(OP_CharacterCreate) +D(OP_ClientUpdate) +D(OP_Consider) +D(OP_ConsiderCorpse) +D(OP_Consume) +D(OP_DeleteItem) +D(OP_FaceChange) +D(OP_FindPersonRequest) D(OP_GroupFollow) D(OP_GroupFollow2) -D(OP_FindPersonRequest) -D(OP_TraderBuy) -D(OP_LootItem) -D(OP_TributeItem) -D(OP_ReadBook) -D(OP_AugmentInfo) -D(OP_FaceChange) -D(OP_AdventureMerchantSell) -D(OP_TradeSkillCombine) -D(OP_RaidInvite) D(OP_InspectRequest) +D(OP_ItemLinkClick) +D(OP_ItemVerifyRequest) +D(OP_LootItem) +D(OP_MoveItem) +D(OP_RaidInvite) +D(OP_ReadBook) +D(OP_Save) +D(OP_SetServerFilter) +D(OP_ShopPlayerSell) +D(OP_TraderBuy) +D(OP_TradeSkillCombine) +D(OP_TributeItem) D(OP_WearChange) -D(OP_ApplyPoison) -D(OP_DeleteItem) -D(OP_AugmentItem) -D(OP_AltCurrencySellSelection) -D(OP_AltCurrencySell) +D(OP_WhoAllRequest) #undef E #undef D diff --git a/common/patches/titanium.cpp b/common/patches/titanium.cpp index c79fa5d4f..77d87cb7d 100644 --- a/common/patches/titanium.cpp +++ b/common/patches/titanium.cpp @@ -133,22 +133,6 @@ static inline uint32 TitaniumToServerCorpseSlot(uint32 TitaniumCorpse) { // reserved } */ -/* -static inline uint32 RemovePowerSourceBit(uint32 slots) { // shouldn't need to add one..just grab the actual server reference, if so... - static const uint32 BIT21 = 1 << 21; - static const uint32 BIT22 = 1 << 22; - static const uint32 KEEPBITS = ~(BIT21 | BIT22); - - bool wearammo = slots & BIT22; - - slots &= KEEPBITS; - - if (wearammo) - slots |= BIT21; - - return slots; -} -*/ EAT_ENCODE(OP_ZoneServerReady) diff --git a/common/patches/titanium_ops.h b/common/patches/titanium_ops.h index ead6bcecc..40651a652 100644 --- a/common/patches/titanium_ops.h +++ b/common/patches/titanium_ops.h @@ -1,53 +1,52 @@ - -//list of packets we need to encode on the way out: -E(OP_SendCharInfo) -E(OP_SendAATable) -E(OP_LeadershipExpUpdate) -E(OP_PlayerProfile) -E(OP_NewSpawn) -E(OP_ZoneSpawns) -E(OP_ZoneEntry) -E(OP_CharInventory) -E(OP_ItemLinkResponse) -E(OP_ItemPacket) +// out-going packets that require an ENCODE translation: +E(OP_Action) E(OP_BazaarSearch) -E(OP_GuildMemberList) -E(OP_ZoneServerReady) -E(OP_GuildMemberLevelUpdate) -E(OP_Trader) -E(OP_TraderBuy) -E(OP_ReadBook) -E(OP_Illusion) -E(OP_VetRewardsAvaliable) -E(OP_InspectRequest) -E(OP_InspectAnswer) -E(OP_Track) -E(OP_RespondAA) +E(OP_BecomeTrader) +E(OP_CharInventory) E(OP_DeleteSpawn) -E(OP_WearChange) +E(OP_DzCompass) E(OP_DzExpeditionEndsWarning) E(OP_DzExpeditionInfo) -E(OP_DzCompass) -E(OP_DzMemberList) E(OP_DzExpeditionList) -E(OP_DzLeaderStatus) E(OP_DzJoinExpeditionConfirm) -E(OP_Action) -E(OP_BecomeTrader) -E(OP_PetBuffWindow) -E(OP_OnLevelMessage) +E(OP_DzLeaderStatus) +E(OP_DzMemberList) +E(OP_GuildMemberLevelUpdate) +E(OP_GuildMemberList) +E(OP_Illusion) +E(OP_InspectAnswer) +E(OP_InspectRequest) +E(OP_ItemLinkResponse) +E(OP_ItemPacket) +E(OP_LeadershipExpUpdate) E(OP_LFGuild) -//list of packets we need to decode on the way in: -D(OP_SetServerFilter) +E(OP_OnLevelMessage) +E(OP_PetBuffWindow) +E(OP_PlayerProfile) +E(OP_NewSpawn) +E(OP_ReadBook) +E(OP_RespondAA) +E(OP_SendCharInfo) +E(OP_SendAATable) +E(OP_Track) +E(OP_Trader) +E(OP_TraderBuy) +E(OP_VetRewardsAvaliable) +E(OP_WearChange) +E(OP_ZoneEntry) +E(OP_ZoneServerReady) +E(OP_ZoneSpawns) +// incoming packets that require a DECODE translation: D(OP_CharacterCreate) -D(OP_ItemLinkClick) -D(OP_TraderBuy) -D(OP_WhoAllRequest) -D(OP_ReadBook) D(OP_FaceChange) -D(OP_InspectRequest) D(OP_InspectAnswer) -D(OP_WearChange) +D(OP_InspectRequest) +D(OP_ItemLinkClick) D(OP_LFGuild) +D(OP_ReadBook) +D(OP_SetServerFilter) +D(OP_TraderBuy) +D(OP_WearChange) +D(OP_WhoAllRequest) #undef E #undef D diff --git a/common/patches/underfoot_ops.h b/common/patches/underfoot_ops.h index 7aa9caf50..28864301d 100644 --- a/common/patches/underfoot_ops.h +++ b/common/patches/underfoot_ops.h @@ -1,128 +1,126 @@ - -//list of packets we need to encode on the way out: - -E(OP_SendCharInfo) -E(OP_ZoneServerInfo) -E(OP_SendAATable) -E(OP_PlayerProfile) -E(OP_ZoneEntry) -E(OP_CharInventory) -E(OP_NewZone) -E(OP_SpawnDoor) -E(OP_GroundSpawn) -E(OP_SendZonepoints) -E(OP_NewSpawn) -E(OP_ZoneSpawns) -E(OP_ItemLinkResponse) -E(OP_ItemPacket) -E(OP_GuildMemberList) -E(OP_Illusion) -E(OP_ManaChange) -E(OP_ClientUpdate) -E(OP_LeadershipExpUpdate) -E(OP_ExpansionInfo) -E(OP_LogServer) -E(OP_Damage) -E(OP_Buff) +// out-going packets that require an ENCODE translation: E(OP_Action) -E(OP_Consider) -E(OP_CancelTrade) -E(OP_ShopPlayerSell) -E(OP_DeleteItem) -E(OP_ItemVerifyReply) -E(OP_DeleteCharge) -E(OP_MoveItem) -E(OP_OpenNewTasksWindow) -E(OP_BazaarSearch) -E(OP_Trader) -E(OP_TraderBuy) -E(OP_LootItem) -E(OP_TributeItem) -E(OP_SomeItemPacketMaybe) -E(OP_ReadBook) -E(OP_Stun) -E(OP_ZonePlayerToBind) E(OP_AdventureMerchantSell) -E(OP_RaidUpdate) -E(OP_RaidJoin) -E(OP_VetRewardsAvaliable) -E(OP_InspectRequest) -E(OP_GroupInvite) -E(OP_GroupFollow) -E(OP_GroupFollow2) -E(OP_GroupUpdate) -E(OP_GroupCancelInvite) -E(OP_WhoAllResponse) -E(OP_Track) -E(OP_ShopPlayerBuy) -E(OP_PetBuffWindow) -E(OP_OnLevelMessage) -E(OP_Barter) +E(OP_AltCurrency) +E(OP_AltCurrencySell) E(OP_ApplyPoison) +E(OP_Barter) +E(OP_BazaarSearch) +E(OP_Buff) +E(OP_BuffCreate) +E(OP_CancelTrade) E(OP_ChannelMessage) -E(OP_GuildsList) +E(OP_CharInventory) +E(OP_ClientUpdate) +E(OP_Consider) +E(OP_Damage) +E(OP_DeleteCharge) +E(OP_DeleteItem) +E(OP_DisciplineUpdate) +E(OP_DzCompass) E(OP_DzExpeditionEndsWarning) E(OP_DzExpeditionInfo) -E(OP_DzCompass) -E(OP_DzMemberList) E(OP_DzExpeditionList) -E(OP_DzLeaderStatus) E(OP_DzJoinExpeditionConfirm) -E(OP_TargetBuffs) -E(OP_BuffCreate) -E(OP_SpawnAppearance) -E(OP_RespondAA) -E(OP_DisciplineUpdate) -E(OP_AltCurrencySell) -E(OP_AltCurrency) -E(OP_WearChange) +E(OP_DzLeaderStatus) +E(OP_DzMemberList) +E(OP_ExpansionInfo) +E(OP_GroundSpawn) +E(OP_GroupCancelInvite) +E(OP_GroupFollow) +E(OP_GroupFollow2) +E(OP_GroupInvite) +E(OP_GroupUpdate) +E(OP_GuildMemberList) +E(OP_GuildsList) +E(OP_Illusion) +E(OP_InspectRequest) +E(OP_ItemLinkResponse) +E(OP_ItemPacket) +E(OP_ItemVerifyReply) +E(OP_LeadershipExpUpdate) +E(OP_LogServer) +E(OP_LootItem) +E(OP_ManaChange) E(OP_MercenaryDataResponse) E(OP_MercenaryDataUpdate) -//list of packets we need to decode on the way in: -D(OP_SetServerFilter) -D(OP_CharacterCreate) -D(OP_ItemLinkClick) -D(OP_ConsiderCorpse) -D(OP_Consider) -D(OP_ClientUpdate) -D(OP_MoveItem) -D(OP_WhoAllRequest) +E(OP_MoveItem) +E(OP_NewSpawn) +E(OP_NewZone) +E(OP_OnLevelMessage) +E(OP_OpenNewTasksWindow) +E(OP_PetBuffWindow) +E(OP_PlayerProfile) +E(OP_RaidJoin) +E(OP_RaidUpdate) +E(OP_ReadBook) +E(OP_RespondAA) +E(OP_SendAATable) +E(OP_SendCharInfo) +E(OP_SendZonepoints) +E(OP_ShopPlayerBuy) +E(OP_ShopPlayerSell) +E(OP_SomeItemPacketMaybe) +E(OP_SpawnAppearance) +E(OP_SpawnDoor) +E(OP_Stun) +E(OP_TargetBuffs) +E(OP_Track) +E(OP_Trader) +E(OP_TraderBuy) +E(OP_TributeItem) +E(OP_VetRewardsAvaliable) +E(OP_WearChange) +E(OP_WhoAllResponse) +E(OP_ZoneEntry) +E(OP_ZonePlayerToBind) +E(OP_ZoneServerInfo) +E(OP_ZoneSpawns) +// incoming packets that require a DECODE translation: +D(OP_AdventureMerchantSell) +D(OP_AltCurrencySell) +D(OP_AltCurrencySellSelection) +D(OP_ApplyPoison) +D(OP_AugmentInfo) +D(OP_AugmentItem) +D(OP_BazaarSearch) D(OP_Buff) -D(OP_ShopPlayerSell) -D(OP_Consume) +D(OP_BuffRemoveRequest) D(OP_CastSpell) -D(OP_Save) -D(OP_ItemVerifyRequest) -D(OP_GroupInvite) -D(OP_GroupInvite2) +D(OP_ChannelMessage) +D(OP_CharacterCreate) +D(OP_ClientUpdate) +D(OP_Consider) +D(OP_ConsiderCorpse) +D(OP_Consume) +D(OP_Damage) +D(OP_DeleteItem) +D(OP_EnvDamage) +D(OP_FaceChange) +D(OP_FindPersonRequest) +D(OP_GroupCancelInvite) +D(OP_GroupDisband) D(OP_GroupFollow) D(OP_GroupFollow2) -D(OP_GroupDisband) -D(OP_GroupCancelInvite) -D(OP_FindPersonRequest) -D(OP_TraderBuy) -D(OP_LootItem) -D(OP_TributeItem) -D(OP_ReadBook) -D(OP_AugmentInfo) -D(OP_FaceChange) -D(OP_AdventureMerchantSell) -D(OP_TradeSkillCombine) -D(OP_RaidInvite) +D(OP_GroupInvite) +D(OP_GroupInvite2) D(OP_InspectRequest) -D(OP_WearChange) -D(OP_ShopPlayerBuy) -D(OP_BazaarSearch) +D(OP_ItemLinkClick) +D(OP_ItemVerifyRequest) D(OP_LoadSpellSet) -D(OP_ApplyPoison) -D(OP_Damage) -D(OP_EnvDamage) -D(OP_ChannelMessage) -D(OP_DeleteItem) -D(OP_AugmentItem) +D(OP_LootItem) +D(OP_MoveItem) D(OP_PetCommands) -D(OP_BuffRemoveRequest) -D(OP_AltCurrencySellSelection) -D(OP_AltCurrencySell) +D(OP_RaidInvite) +D(OP_ReadBook) +D(OP_Save) +D(OP_SetServerFilter) +D(OP_ShopPlayerBuy) +D(OP_ShopPlayerSell) +D(OP_TraderBuy) +D(OP_TradeSkillCombine) +D(OP_TributeItem) +D(OP_WearChange) +D(OP_WhoAllRequest) #undef E #undef D