mirror of
https://github.com/SapphireServer/Sapphire.git
synced 2025-04-27 06:47:45 +00:00
commit
37fabec6f5
14 changed files with 2231 additions and 1498 deletions
|
@ -6,6 +6,7 @@
|
|||
|
||||
#include "CommonGen.h"
|
||||
#include "Vector3.h"
|
||||
#include "Network/PacketDef/Ipcs.h"
|
||||
|
||||
// +---------------------------------------------------------------------------
|
||||
// The following enumerations are structures to require their type be included.
|
||||
|
@ -25,7 +26,7 @@ namespace Sapphire::Common
|
|||
const uint8_t CURRENT_EXPANSION_ID = 3;
|
||||
|
||||
const uint8_t CLASSJOB_TOTAL = 38;
|
||||
const uint8_t CLASSJOB_SLOTS = 28;
|
||||
const uint8_t CLASSJOB_SLOTS = 30;
|
||||
|
||||
const uint8_t TOWN_COUNT = 6;
|
||||
|
||||
|
@ -51,11 +52,11 @@ namespace Sapphire::Common
|
|||
|
||||
enum InventoryOperation : uint16_t
|
||||
{
|
||||
Discard = 0x0117,
|
||||
Move = 0x0118,
|
||||
Swap = 0x0119,
|
||||
Split = 0x011A,
|
||||
Merge = 0x011C,
|
||||
Discard = Network::Packets::ClientZoneIpcType::InventoryModifyHandler + 7,
|
||||
Move = Network::Packets::ClientZoneIpcType::InventoryModifyHandler + 8,
|
||||
Swap = Network::Packets::ClientZoneIpcType::InventoryModifyHandler + 9,
|
||||
Split = Network::Packets::ClientZoneIpcType::InventoryModifyHandler + 10,
|
||||
Merge = Network::Packets::ClientZoneIpcType::InventoryModifyHandler + 12
|
||||
};
|
||||
|
||||
enum ClientLanguage : uint8_t
|
||||
|
|
|
@ -4,14 +4,14 @@
|
|||
#include <stdint.h>
|
||||
|
||||
/* This file has been automatically generated.
|
||||
Changes will be lost upon regeneration.
|
||||
To change the content edit tools/exd_common_gen */
|
||||
Changes will be lost upon regeneration.
|
||||
To change the content edit tools/exd_common_gen */
|
||||
namespace Sapphire::Common {
|
||||
|
||||
///////////////////////////////////////////////////////////
|
||||
//ActionCategory.exd
|
||||
enum class ActionCategory : uint8_t
|
||||
{
|
||||
///////////////////////////////////////////////////////////
|
||||
//ActionCategory.exd
|
||||
enum class ActionCategory : uint8_t
|
||||
{
|
||||
None = 0,
|
||||
Autoattack = 1,
|
||||
Spell = 2,
|
||||
|
@ -25,15 +25,16 @@ enum class ActionCategory : uint8_t
|
|||
System = 10,
|
||||
Artillery = 11,
|
||||
Mount = 12,
|
||||
Glamour = 13,
|
||||
Special = 13,
|
||||
ItemManipulation = 14,
|
||||
AdrenalineRush = 15,
|
||||
};
|
||||
//1 = 16,
|
||||
};
|
||||
|
||||
///////////////////////////////////////////////////////////
|
||||
//BaseParam.exd
|
||||
enum class BaseParam : uint8_t
|
||||
{
|
||||
///////////////////////////////////////////////////////////
|
||||
//BaseParam.exd
|
||||
enum class BaseParam : uint8_t
|
||||
{
|
||||
None = 0,
|
||||
Strength = 1,
|
||||
Dexterity = 2,
|
||||
|
@ -85,7 +86,7 @@ enum class BaseParam : uint8_t
|
|||
Morale = 48,
|
||||
Enmity = 49,
|
||||
EnmityReduction = 50,
|
||||
CarefulDesynthesis = 51,
|
||||
DesynthesisSkillGain = 51,
|
||||
EXPBonus = 52,
|
||||
Regen = 53,
|
||||
Refresh = 54,
|
||||
|
@ -108,12 +109,12 @@ enum class BaseParam : uint8_t
|
|||
Control = 71,
|
||||
Gathering = 72,
|
||||
Perception = 73,
|
||||
};
|
||||
};
|
||||
|
||||
///////////////////////////////////////////////////////////
|
||||
//BeastReputationRank.exd
|
||||
enum class BeastReputationRank : uint8_t
|
||||
{
|
||||
///////////////////////////////////////////////////////////
|
||||
//BeastReputationRank.exd
|
||||
enum class BeastReputationRank : uint8_t
|
||||
{
|
||||
None = 0,
|
||||
Neutral = 1,
|
||||
Recognized = 2,
|
||||
|
@ -123,18 +124,33 @@ enum class BeastReputationRank : uint8_t
|
|||
Honored = 6,
|
||||
Sworn = 7,
|
||||
Allied = 8,
|
||||
};
|
||||
};
|
||||
|
||||
///////////////////////////////////////////////////////////
|
||||
//BeastTribe.exd
|
||||
enum class BeastTribe : uint8_t
|
||||
{
|
||||
};
|
||||
///////////////////////////////////////////////////////////
|
||||
//BeastTribe.exd
|
||||
enum class BeastTribe : uint8_t
|
||||
{
|
||||
/* = 0,
|
||||
1 = 1,
|
||||
2 = 2,
|
||||
3 = 3,
|
||||
4 = 4,
|
||||
5 = 5,
|
||||
6 = 6,
|
||||
7 = 7,
|
||||
8 = 8,
|
||||
9 = 9,
|
||||
10 = 10,
|
||||
11 = 11,
|
||||
12 = 12,
|
||||
13 = 13,
|
||||
14 = 14,*/
|
||||
};
|
||||
|
||||
///////////////////////////////////////////////////////////
|
||||
//ClassJob.exd
|
||||
enum class ClassJob : uint8_t
|
||||
{
|
||||
///////////////////////////////////////////////////////////
|
||||
//ClassJob.exd
|
||||
enum class ClassJob : uint8_t
|
||||
{
|
||||
Adventurer = 0,
|
||||
Gladiator = 1,
|
||||
Pugilist = 2,
|
||||
|
@ -174,12 +190,14 @@ enum class ClassJob : uint8_t
|
|||
Bluemage = 36,
|
||||
Gunbreaker = 37,
|
||||
Dancer = 38,
|
||||
};
|
||||
// = 39,
|
||||
//1 = 40,
|
||||
};
|
||||
|
||||
///////////////////////////////////////////////////////////
|
||||
//ContentType.exd
|
||||
enum class ContentType : uint8_t
|
||||
{
|
||||
///////////////////////////////////////////////////////////
|
||||
//ContentType.exd
|
||||
enum class ContentType : uint8_t
|
||||
{
|
||||
None = 0,
|
||||
DutyRoulette = 1,
|
||||
Dungeons = 2,
|
||||
|
@ -200,46 +218,53 @@ enum class ContentType : uint8_t
|
|||
DisciplesoftheHand = 17,
|
||||
RetainerVentures = 18,
|
||||
GoldSaucer = 19,
|
||||
//1 = 20,
|
||||
DeepDungeons = 21,
|
||||
//2 = 22,
|
||||
//3 = 23,
|
||||
WondrousTails = 24,
|
||||
CustomDeliveries = 25,
|
||||
Eureka = 26,
|
||||
};
|
||||
//4 = 27,
|
||||
UltimateRaids = 28,
|
||||
//5 = 29,
|
||||
};
|
||||
|
||||
///////////////////////////////////////////////////////////
|
||||
//EmoteCategory.exd
|
||||
enum class EmoteCategory : uint8_t
|
||||
{
|
||||
///////////////////////////////////////////////////////////
|
||||
//EmoteCategory.exd
|
||||
enum class EmoteCategory : uint8_t
|
||||
{
|
||||
None = 0,
|
||||
General = 1,
|
||||
Special = 2,
|
||||
Expressions = 3,
|
||||
};
|
||||
//1 = 4,
|
||||
};
|
||||
|
||||
///////////////////////////////////////////////////////////
|
||||
//ExVersion.exd
|
||||
enum class ExVersion : uint8_t
|
||||
{
|
||||
///////////////////////////////////////////////////////////
|
||||
//ExVersion.exd
|
||||
enum class ExVersion : uint8_t
|
||||
{
|
||||
ARealmReborn = 0,
|
||||
Heavensward = 1,
|
||||
Stormblood = 2,
|
||||
Shadowbringers = 3,
|
||||
};
|
||||
};
|
||||
|
||||
///////////////////////////////////////////////////////////
|
||||
//GrandCompany.exd
|
||||
enum class GrandCompany : uint8_t
|
||||
{
|
||||
///////////////////////////////////////////////////////////
|
||||
//GrandCompany.exd
|
||||
enum class GrandCompany : uint8_t
|
||||
{
|
||||
None = 0,
|
||||
Maelstrom = 1,
|
||||
OrderoftheTwinAdder = 2,
|
||||
ImmortalFlames = 3,
|
||||
};
|
||||
};
|
||||
|
||||
///////////////////////////////////////////////////////////
|
||||
//GuardianDeity.exd
|
||||
enum class GuardianDeity : uint8_t
|
||||
{
|
||||
///////////////////////////////////////////////////////////
|
||||
//GuardianDeity.exd
|
||||
enum class GuardianDeity : uint8_t
|
||||
{
|
||||
None = 0,
|
||||
HalonetheFury = 1,
|
||||
MenphinatheLover = 2,
|
||||
|
@ -253,12 +278,12 @@ enum class GuardianDeity : uint8_t
|
|||
NaldthaltheTraders = 10,
|
||||
NophicatheMatron = 11,
|
||||
AlthyktheKeeper = 12,
|
||||
};
|
||||
};
|
||||
|
||||
///////////////////////////////////////////////////////////
|
||||
//ItemUICategory.exd
|
||||
enum class ItemUICategory : uint8_t
|
||||
{
|
||||
///////////////////////////////////////////////////////////
|
||||
//ItemUICategory.exd
|
||||
enum class ItemUICategory : uint8_t
|
||||
{
|
||||
None = 0,
|
||||
PugilistsArm = 1,
|
||||
GladiatorsArm = 2,
|
||||
|
@ -367,12 +392,12 @@ enum class ItemUICategory : uint8_t
|
|||
BlueMagesArm = 105,
|
||||
GunbreakersArm = 106,
|
||||
DancersArm = 107,
|
||||
};
|
||||
};
|
||||
|
||||
///////////////////////////////////////////////////////////
|
||||
//ItemSearchCategory.exd
|
||||
enum class ItemSearchCategory : uint8_t
|
||||
{
|
||||
///////////////////////////////////////////////////////////
|
||||
//ItemSearchCategory.exd
|
||||
enum class ItemSearchCategory : uint8_t
|
||||
{
|
||||
None = 0,
|
||||
PrimaryArms = 1,
|
||||
PrimaryTools = 2,
|
||||
|
@ -460,13 +485,26 @@ enum class ItemSearchCategory : uint8_t
|
|||
RedMagesArms = 84,
|
||||
ScholarsArms = 85,
|
||||
GunbreakersArms = 86,
|
||||
ThrowingWeapons = 87,
|
||||
};
|
||||
DancersArms1 = 87,
|
||||
/*1 = 88,
|
||||
2 = 89,
|
||||
3 = 90,
|
||||
4 = 91,
|
||||
5 = 92,
|
||||
6 = 93,
|
||||
7 = 94,
|
||||
8 = 95,
|
||||
9 = 96,
|
||||
10 = 97,
|
||||
11 = 98,
|
||||
12 = 99,
|
||||
13 = 100,*/
|
||||
};
|
||||
|
||||
///////////////////////////////////////////////////////////
|
||||
//OnlineStatus.exd
|
||||
enum class OnlineStatus : uint8_t
|
||||
{
|
||||
///////////////////////////////////////////////////////////
|
||||
//OnlineStatus.exd
|
||||
enum class OnlineStatus : uint8_t
|
||||
{
|
||||
Producer = 1,
|
||||
GameMaster = 2,
|
||||
GameMaster1 = 3,
|
||||
|
@ -514,12 +552,12 @@ enum class OnlineStatus : uint8_t
|
|||
FreeCompany = 45,
|
||||
GrandCompany = 46,
|
||||
Online = 47,
|
||||
};
|
||||
};
|
||||
|
||||
///////////////////////////////////////////////////////////
|
||||
//Race.exd
|
||||
enum class Race : uint8_t
|
||||
{
|
||||
///////////////////////////////////////////////////////////
|
||||
//Race.exd
|
||||
enum class Race : uint8_t
|
||||
{
|
||||
None = 0,
|
||||
Hyur = 1,
|
||||
Elezen = 2,
|
||||
|
@ -529,12 +567,12 @@ enum class Race : uint8_t
|
|||
AuRa = 6,
|
||||
Hrothgar = 7,
|
||||
Viera = 8,
|
||||
};
|
||||
};
|
||||
|
||||
///////////////////////////////////////////////////////////
|
||||
//Tribe.exd
|
||||
enum class Tribe : uint8_t
|
||||
{
|
||||
///////////////////////////////////////////////////////////
|
||||
//Tribe.exd
|
||||
enum class Tribe : uint8_t
|
||||
{
|
||||
None = 0,
|
||||
Midlander = 1,
|
||||
Highlander = 2,
|
||||
|
@ -552,25 +590,30 @@ enum class Tribe : uint8_t
|
|||
TheLost = 14,
|
||||
Rava = 15,
|
||||
Veena = 16,
|
||||
};
|
||||
};
|
||||
|
||||
///////////////////////////////////////////////////////////
|
||||
//Town.exd
|
||||
enum class Town : uint8_t
|
||||
{
|
||||
///////////////////////////////////////////////////////////
|
||||
//Town.exd
|
||||
enum class Town : uint8_t
|
||||
{
|
||||
Nowheresville = 0,
|
||||
LimsaLominsa = 1,
|
||||
Gridania = 2,
|
||||
Uldah = 3,
|
||||
Ishgard = 4,
|
||||
// = 5,
|
||||
//1 = 6,
|
||||
Kugane = 7,
|
||||
TheCrystarium = 10,
|
||||
};
|
||||
//2 = 8,
|
||||
//3 = 9,
|
||||
Crystarium = 10,
|
||||
//4 = 11,
|
||||
};
|
||||
|
||||
///////////////////////////////////////////////////////////
|
||||
//Weather.exd
|
||||
enum class Weather : uint8_t
|
||||
{
|
||||
///////////////////////////////////////////////////////////
|
||||
//Weather.exd
|
||||
enum class Weather : uint8_t
|
||||
{
|
||||
None = 0,
|
||||
ClearSkies = 1,
|
||||
FairSkies = 2,
|
||||
|
@ -672,14 +715,14 @@ enum class Weather : uint8_t
|
|||
Moonlight1 = 98,
|
||||
Moonlight2 = 99,
|
||||
Moonlight3 = 100,
|
||||
FairSkies10 = 101,
|
||||
RedMoon = 101,
|
||||
Scarlet = 102,
|
||||
Scarlet1 = 103,
|
||||
Scarlet2 = 104,
|
||||
FairSkies11 = 105,
|
||||
FairSkies12 = 106,
|
||||
FairSkies13 = 107,
|
||||
FairSkies14 = 108,
|
||||
FairSkies10 = 105,
|
||||
FairSkies11 = 106,
|
||||
FairSkies12 = 107,
|
||||
FairSkies13 = 108,
|
||||
Flames = 109,
|
||||
Tsunamis = 110,
|
||||
Cyclones = 111,
|
||||
|
@ -701,13 +744,36 @@ enum class Weather : uint8_t
|
|||
Termination2 = 127,
|
||||
Termination3 = 128,
|
||||
EverlastingLight1 = 129,
|
||||
Eruptions1 = 130,
|
||||
Termination4 = 131,
|
||||
};
|
||||
FairSkies14 = 132,
|
||||
UmbralFlare = 133,
|
||||
UmbralDuststorm = 134,
|
||||
UmbralLevin = 135,
|
||||
UmbralTempest = 136,
|
||||
Starshower = 137,
|
||||
Delirium = 138,
|
||||
Clouds2 = 139,
|
||||
Clouds3 = 140,
|
||||
Irradiance1 = 141,
|
||||
Irradiance2 = 142,
|
||||
StormClouds1 = 143,
|
||||
Firestorm = 144,
|
||||
SpectralCurrent = 145,
|
||||
//1 = 146,
|
||||
Climactic = 147,
|
||||
//2 = 148,
|
||||
//3 = 149,
|
||||
//4 = 150,
|
||||
//5 = 151,
|
||||
//6 = 152,
|
||||
//7 = 153,
|
||||
};
|
||||
|
||||
///////////////////////////////////////////////////////////
|
||||
//HousingAppeal.exd
|
||||
enum class HousingAppeal : uint8_t
|
||||
{
|
||||
///////////////////////////////////////////////////////////
|
||||
//HousingAppeal.exd
|
||||
enum class HousingAppeal : uint8_t
|
||||
{
|
||||
None = 0,
|
||||
Emporium = 1,
|
||||
Boutique = 2,
|
||||
|
@ -721,6 +787,7 @@ enum class HousingAppeal : uint8_t
|
|||
Sanctum = 10,
|
||||
Venue = 11,
|
||||
Florist = 12,
|
||||
// = 13,
|
||||
Library = 14,
|
||||
PhotoStudio = 15,
|
||||
HauntedHouse = 16,
|
||||
|
@ -728,8 +795,10 @@ enum class HousingAppeal : uint8_t
|
|||
Bathhouse = 18,
|
||||
Garden = 19,
|
||||
FarEastern = 20,
|
||||
};
|
||||
|
||||
VisitorsWelcome = 21,
|
||||
Bakery = 22,
|
||||
UnderRenovation = 23,
|
||||
ConcertHall = 24,
|
||||
};
|
||||
}
|
||||
#endif
|
||||
|
||||
|
|
File diff suppressed because it is too large
Load diff
File diff suppressed because it is too large
Load diff
|
@ -43,67 +43,67 @@ namespace Sapphire::Network::Packets
|
|||
*/
|
||||
enum ServerZoneIpcType : uint16_t
|
||||
{
|
||||
Ping = 0x0183, // updated 5.45 hotfix
|
||||
Init = 0x01EA, // updated 5.45 hotfix
|
||||
Ping = 0x02CB, // updated 5.58
|
||||
Init = 0x02A8, // updated 5.58
|
||||
|
||||
ActorFreeSpawn = 0x0185, // updated 5.45 hotfix
|
||||
InitZone = 0x0233, // updated 5.45 hotfix
|
||||
ActorFreeSpawn = 0x0210, // updated 5.58
|
||||
InitZone = 0x0100, // updated 5.58
|
||||
|
||||
EffectResult = 0x01D7, // updated 5.45 hotfix
|
||||
ActorControl = 0x00C2, // updated 5.45 hotfix
|
||||
ActorControlSelf = 0x03D5, // updated 5.45 hotfix
|
||||
ActorControlTarget = 0x0171, // updated 5.45 hotfix
|
||||
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 = 0x019B, // updated 5.45 hotfix
|
||||
UpdateHpMpTp = 0x039B, // updated 5.58
|
||||
|
||||
///////////////////////////////////////////////////
|
||||
|
||||
ChatBanned = 0xF06B,
|
||||
Playtime = 0x0302, // updated 5.45 hotfix
|
||||
Logout = 0x012A, // updated 5.45 hotfix
|
||||
CFNotify = 0x026E, // updated 5.45 hotfix
|
||||
Playtime = 0x02BE, // updated 5.58
|
||||
Logout = 0x0297, // updated 5.58
|
||||
CFNotify = 0x01AC, // updated 5.58
|
||||
CFMemberStatus = 0x0079,
|
||||
CFDutyInfo = 0x0145, // updated 5.45 hotfix
|
||||
CFDutyInfo = 0x0083, // updated 5.58
|
||||
CFPlayerInNeed = 0xF07F,
|
||||
CFPreferredRole = 0x012E, // updated 5.45 hotfix
|
||||
CFCancel = 0x0312, // updated 5.45 hotfix
|
||||
CFPreferredRole = 0x02FB, // updated 5.58
|
||||
CFCancel = 0x0135, // updated 5.58
|
||||
SocialRequestError = 0xF0AD,
|
||||
|
||||
CFRegistered = 0x01FB, // updated 5.45 hotfix
|
||||
SocialRequestResponse = 0x03A5, // updated 5.45 hotfix
|
||||
SocialMessage = 0x030C, // updated 5.45 hotfix
|
||||
SocialMessage2 = 0x00BB, // updated 5.45 hotfix
|
||||
CancelAllianceForming = 0x00C6, // updated 4.2
|
||||
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 = 0x00D0,
|
||||
LogMessage = 0x020F, // updated 5.58
|
||||
|
||||
Chat = 0x01BA, // updated 5.45 hotfix
|
||||
Chat = 0x0220, // updated 5.58
|
||||
PartyChat = 0x0065,
|
||||
|
||||
WorldVisitList = 0xF0FE, // added 4.5
|
||||
|
||||
SocialList = 0x0315, // updated 5.45 hotfix
|
||||
SocialList = 0x0396, // updated 5.58
|
||||
|
||||
ExamineSearchInfo = 0x035F, // updated 5.45 hotfix
|
||||
UpdateSearchInfo = 0x0310, // updated 5.45 hotfix
|
||||
InitSearchInfo = 0x01ED, // updated 5.45 hotfix
|
||||
ExamineSearchComment = 0x0102, // updated 4.1
|
||||
ExamineSearchInfo = 0x031F, // updated 5.58
|
||||
UpdateSearchInfo = 0x0219, // updated 5.58
|
||||
InitSearchInfo = 0x01A0, // updated 5.58
|
||||
ExamineSearchComment = 0x0315, // updated 5.58
|
||||
|
||||
ServerNoticeShort = 0x03B4, // updated 5.45 hotfix
|
||||
ServerNotice = 0x0354, // updated 5.45 hotfix
|
||||
SetOnlineStatus = 0x0166, // updated 5.45 hotfix
|
||||
ServerNoticeShort = 0x0211, // updated 5.58
|
||||
ServerNotice = 0x03B9, // updated 5.58
|
||||
SetOnlineStatus = 0x0163, // updated 5.58
|
||||
|
||||
CountdownInitiate = 0x0237, // updated 5.25
|
||||
CountdownCancel = 0x00D9, // updated 5.18
|
||||
CountdownInitiate = 0x01F9, // updated 5.58
|
||||
CountdownCancel = 0x0206, // updated 5.58
|
||||
|
||||
PlayerAddedToBlacklist = 0x033F, // updated 5.1
|
||||
PlayerRemovedFromBlacklist = 0x0385, // updated 5.1
|
||||
BlackList = 0x02BD, // updated 5.45 hotfix
|
||||
PlayerAddedToBlacklist = 0x01FE, // updated 5.58
|
||||
PlayerRemovedFromBlacklist = 0x02D6, // updated 5.58
|
||||
BlackList = 0x028A, // updated 5.58
|
||||
|
||||
LinkshellList = 0x021A, // updated 5.45 hotfix
|
||||
LinkshellList = 0x02DD, // updated 5.58
|
||||
|
||||
MailDeleteRequest = 0xF12B, // updated 5.0
|
||||
|
||||
|
@ -114,87 +114,87 @@ namespace Sapphire::Network::Packets
|
|||
|
||||
MarketTaxRates = 0x01F8, // updated 5.35 hotfix
|
||||
|
||||
MarketBoardSearchResult = 0x01D6, // updated 5.45 hotfix
|
||||
MarketBoardItemListingCount = 0x00C0, // updated 5.45 hotfix
|
||||
MarketBoardItemListingHistory = 0x01C3, // updated 5.45 hotfix
|
||||
MarketBoardItemListing = 0x016B, // updated 5.45 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 = 0x013C, // updated 4.5
|
||||
FreeCompanyInfo = 0x03D0, // updated 5.45 hotfix
|
||||
ExamineFreeCompanyInfo = 0xF13E, // updated 4.5
|
||||
FreeCompanyBoardMsg = 0x028D, // updated 5.58
|
||||
FreeCompanyInfo = 0x0346, // updated 5.58
|
||||
ExamineFreeCompanyInfo = 0x00B7, // updated 5.58
|
||||
|
||||
FreeCompanyUpdateShortMessage = 0xF157, // added 5.0
|
||||
|
||||
StatusEffectList = 0x0243, // updated 5.45 hotfix
|
||||
StatusEffectList = 0x01C5, // updated 5.58
|
||||
EurekaStatusEffectList = 0x0167, // updated 5.18
|
||||
BossStatusEffectList = 0x0312, // added 5.1
|
||||
Effect = 0x027F, // updated 5.45 hotfix
|
||||
AoeEffect8 = 0x009B, // updated 5.45 hotfix
|
||||
AoeEffect16 = 0x028C, // updated 5.45 hotfix
|
||||
AoeEffect24 = 0x02AD, // updated 5.45 hotfix
|
||||
AoeEffect32 = 0x00A7, // updated 5.45 hotfix
|
||||
PersistantEffect = 0x0244, // updated 5.45 hotfix
|
||||
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 = 0x0155, // updated 5.45 hotfix
|
||||
GCAffiliation = 0x02B1, // updated 5.58
|
||||
|
||||
PlayerSpawn = 0x01AB, // updated 5.45 hotfix
|
||||
NpcSpawn = 0x02C9, // updated 5.45 hotfix
|
||||
PlayerSpawn = 0x0249, // updated 5.58
|
||||
NpcSpawn = 0x014B, // updated 5.58
|
||||
NpcSpawn2 = 0x01CB, // ( Bigger statuseffectlist? ) updated 5.3
|
||||
ActorMove = 0x006B, // updated 5.45 hotfix
|
||||
ActorMove = 0x023D, // updated 5.58
|
||||
|
||||
ActorSetPos = 0x00C6, // updated 5.45 hotfix
|
||||
ActorSetPos = 0x0280, // updated 5.58
|
||||
|
||||
ActorCast = 0x034C, // updated 5.45 hotfix
|
||||
ActorCast = 0x02A7, // updated 5.58
|
||||
SomeCustomiseChangePacketProbably = 0x00CD, // added 5.18
|
||||
|
||||
PartyList = 0x00F5, // updated 5.45 hotfix
|
||||
PartyMessage = 0x01BC, // updated 5.45 hotfix
|
||||
HateRank = 0x0217, // updated 5.45 hotfix
|
||||
HateList = 0x00E5, // updated 5.45 hotfix
|
||||
ObjectSpawn = 0x0336, // updated 5.45 hotfix
|
||||
ObjectDespawn = 0x02D0, // updated 5.45 hotfix
|
||||
UpdateClassInfo = 0x0179, // updated 5.45 hotfix
|
||||
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 = 0x01E9, // updated 5.45 hotfix
|
||||
PlayerStats = 0x01CC, // updated 5.45 hotfix
|
||||
ActorOwner = 0x0153, // updated 5.45 hotfix
|
||||
PlayerStateFlags = 0x02DC, // updated 5.45 hotfix
|
||||
PlayerClassInfo = 0x02F0, // updated 5.45 hotfix
|
||||
CharaVisualEffect = 0x026A, // updated 5.45 hotfix
|
||||
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 = 0x024A, // updated 5.45 hotfix
|
||||
Examine = 0x0261, // updated 5.45 hotfix
|
||||
CharaNameReq = 0x0380, // updated 5.45 hotfix
|
||||
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 = 0x020E, // updated 5.21 hotfix
|
||||
RetainerInformation = 0x026B, // updated 5.45 hotfix
|
||||
RetainerSaleHistory = 0x01D3, // updated 5.58
|
||||
RetainerInformation = 0x0069, // updated 5.58
|
||||
|
||||
SetLevelSync = 0x1186, // not updated for 4.4, not sure what it is anymore
|
||||
|
||||
ItemInfo = 0x0175, // updated 5.45 hotfix
|
||||
ContainerInfo = 0x0193, // updated 5.45 hotfix
|
||||
InventoryTransactionFinish = 0x00BD, // updated 5.45 hotfix
|
||||
InventoryTransaction = 0x02EE, // updated 5.45 hotfix
|
||||
CurrencyCrystalInfo = 0x0363, // updated 5.45 hotfix
|
||||
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 = 0x02FA, // updated 5.45 hotfix
|
||||
UpdateInventorySlot = 0x017D, // updated 5.45 hotfix
|
||||
InventoryActionAck = 0x0305, // updated 5.58
|
||||
UpdateInventorySlot = 0x0200, // updated 5.58
|
||||
|
||||
HuntingLogEntry = 0x0232, // updated 5.45 hotfix
|
||||
HuntingLogEntry = 0x00C5, // updated 5.58
|
||||
|
||||
EventPlay = 0x0276, // updated 5.45 hotfix
|
||||
EventPlay4 = 0x028D, // updated 5.45 hotfix
|
||||
EventPlay8 = 0x0318, // updated 5.45 hotfix
|
||||
EventPlay16 = 0x020D, // updated 5.45 hotfix
|
||||
EventPlay32 = 0x03B5, // updated 5.45 hotfix
|
||||
EventPlay64 = 0x039E, // updated 5.45 hotfix
|
||||
EventPlay128 = 0x02F4, // updated 5.45 hotfix
|
||||
EventPlay255 = 0x009D, // updated 5.45 hotfix
|
||||
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
|
||||
|
||||
EventYield = 0x0268, // updated 5.45 hotfix
|
||||
EventYield = 0x02CB, // updated 5.55 hotfix
|
||||
//EventYield4 = 0x0000,
|
||||
//EventYield8 = 0x0000,
|
||||
//EventYield16 = 0x0000,
|
||||
|
@ -203,89 +203,89 @@ namespace Sapphire::Network::Packets
|
|||
//EventYield128 = 0x0000,
|
||||
//EventYield255 = 0x0000,
|
||||
|
||||
EventStart = 0x02DE, // updated 5.45 hotfix
|
||||
EventFinish = 0x01A3, // updated 5.45 hotfix
|
||||
EventStart = 0x01CC, // updated 5.58
|
||||
EventFinish = 0x0180, // updated 5.58
|
||||
|
||||
EventLinkshell = 0x1169,
|
||||
|
||||
QuestActiveList = 0x015A, // updated 5.45 hotfix
|
||||
QuestUpdate = 0x037B, // updated 5.45 hotfix
|
||||
QuestCompleteList = 0x0287, // updated 5.45 hotfix
|
||||
QuestActiveList = 0x035D, // updated 5.58
|
||||
QuestUpdate = 0x029A, // updated 5.58
|
||||
QuestCompleteList = 0x03C5, // updated 5.58
|
||||
|
||||
QuestFinish = 0x0066, // updated 5.45 hotfix
|
||||
MSQTrackerComplete = 0xF1D6, // updated 5.0
|
||||
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 = 0x017B, // updated 5.45 hotfix
|
||||
QuestMessage = 0x036E, // updated 5.55 hotfix
|
||||
|
||||
QuestTracker = 0x01E8, // updated 5.45 hotfix
|
||||
QuestTracker = 0x038E, // updated 5.58
|
||||
|
||||
Mount = 0x0122, // updated 5.45 hotfix
|
||||
Mount = 0x03C2, // updated 5.58
|
||||
|
||||
DirectorVars = 0x0252, // updated 5.45 hotfix
|
||||
DirectorVars = 0x01ED, // updated 5.58
|
||||
SomeDirectorUnk1 = 0x0084, // updated 5.18
|
||||
SomeDirectorUnk2 = 0xF0C1, // updated 5.18
|
||||
SomeDirectorUnk4 = 0x0071, // updated 5.45 hotfix
|
||||
SomeDirectorUnk4 = 0x01BD, // updated 5.58
|
||||
SomeDirectorUnk8 = 0x028A, // updated 5.18
|
||||
SomeDirectorUnk16 = 0x028C, // updated 5.18
|
||||
DirectorPopUp = 0xF162, // updated 5.18 - display dialogue pop-ups in duties and FATEs, for example, Teraflare's countdown
|
||||
DirectorPopUp4 = 0x0214, // updated 5.18
|
||||
DirectorPopUp8 = 0x00F8, // updated 5.18
|
||||
DirectorPopUp = 0x02E3, // updated 5.58
|
||||
DirectorPopUp4 = 0x01DC, // updated 5.58
|
||||
DirectorPopUp8 = 0x011D, // updated 5.58
|
||||
|
||||
CFAvailableContents = 0xF1FD, // updated 4.2
|
||||
|
||||
WeatherChange = 0x0167, // updated 5.45 hotfix
|
||||
PlayerTitleList = 0x00F3, // updated 5.45 hotfix
|
||||
Discovery = 0x0247, // updated 5.45 hotfix
|
||||
WeatherChange = 0x01B1, // updated 5.58
|
||||
PlayerTitleList = 0x02B4, // updated 5.58
|
||||
Discovery = 0x00B8, // updated 5.58
|
||||
|
||||
EorzeaTimeOffset = 0x00C5, // updated 5.45 hotfix
|
||||
EorzeaTimeOffset = 0x03D9, // updated 5.58
|
||||
|
||||
EquipDisplayFlags = 0x0316, // updated 5.45 hotfix
|
||||
EquipDisplayFlags = 0x0199, // updated 5.58
|
||||
|
||||
MiniCactpotInit = 0x0286, // added 5.31
|
||||
ShopMessage = 0x02FC, // updated 5.45 hotfix
|
||||
LootMessage = 0x03B8, // updated 5.45 hotfix
|
||||
ResultDialog = 0x0296, // updated 5.45 hotfix
|
||||
DesynthResult = 0x0323, // updated 5.45 hotfix
|
||||
ShopMessage = 0x0162, // updated 5.55 hotfix
|
||||
LootMessage = 0x038C, // updated 5.58
|
||||
ResultDialog = 0x00DF, // updated 5.58
|
||||
DesynthResult = 0x038F, // updated 5.58
|
||||
|
||||
/// Housing //////////////////////////////////////
|
||||
|
||||
LandSetInitialize = 0x03E2, // updated 5.45 hotfix
|
||||
LandUpdate = 0x027E, // updated 5.45 hotfix
|
||||
YardObjectSpawn = 0x010E, // updated 5.45 hotfix
|
||||
HousingIndoorInitialize = 0x01A9, // updated 5.45 hotfix
|
||||
LandPriceUpdate = 0x0379, // updated 5.45 hotfix
|
||||
LandInfoSign = 0x0398, // updated 5.45 hotfix
|
||||
LandRename = 0x00F6, // updated 5.45 hotfix
|
||||
HousingEstateGreeting = 0x037D, // updated 5.45 hotfix
|
||||
HousingUpdateLandFlagsSlot = 0x03AF, // updated 5.45 hotfix
|
||||
HousingLandFlags = 0x033B, // updated 5.45 hotfix
|
||||
HousingShowEstateGuestAccess = 0x01B3, // updated 5.45 hotfix
|
||||
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 = 0x00B5, // updated 5.45 hotfix
|
||||
HousingInternalObjectSpawn = 0x00BC, // updated 5.45 hotfix
|
||||
HousingObjectInitialize = 0x0245, // updated 5.58
|
||||
HousingInternalObjectSpawn = 0x0194, // updated 5.58
|
||||
|
||||
HousingWardInfo = 0x015E, // updated 5.45 hotfix
|
||||
HousingObjectMove = 0x03E6, // updated 5.45 hotfix
|
||||
HousingWardInfo = 0x00A4, // updated 5.58
|
||||
HousingObjectMove = 0x01AE, // updated 5.58
|
||||
|
||||
SharedEstateSettingsResponse = 0x03A4, // updated 5.45 hotfix
|
||||
SharedEstateSettingsResponse = 0x0378, // updated 5.58
|
||||
|
||||
LandUpdateHouseName = 0x0215, // updated 5.45 hotfix
|
||||
LandUpdateHouseName = 0x034B, // updated 5.58
|
||||
|
||||
LandSetMap = 0x0103, // updated 5.45 hotfix
|
||||
LandSetMap = 0x02F6, // updated 5.58
|
||||
|
||||
//////////////////////////////////////////////////
|
||||
|
||||
DuelChallenge = 0x0277, // 4.2; this is responsible for opening the ui
|
||||
PerformNote = 0x0248, // updated 5.45 hotfix
|
||||
PerformNote = 0x00BE, // updated 5.58
|
||||
|
||||
PrepareZoning = 0x01EE, // updated 5.45 hotfix
|
||||
ActorGauge = 0x018E, // updated 5.45 hotfix
|
||||
DutyGauge = 0x00D2, // updated 5.45 hotfix
|
||||
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 = 0x02C4, // updated 5.45 hotfix
|
||||
DailyQuestRepeatFlags = 0x024D, // updated 5.45 hotfix
|
||||
DailyQuests = 0x0331, // updated 5.58
|
||||
DailyQuestRepeatFlags = 0x01D1, // updated 5.58
|
||||
|
||||
/// Doman Mahjong //////////////////////////////////////
|
||||
MahjongOpenGui = 0x02A4, // only available in mahjong instance
|
||||
|
@ -294,20 +294,20 @@ namespace Sapphire::Network::Packets
|
|||
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 = 0x02C2, // actor id, name, rating and stuff..
|
||||
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 = 0x0131, // updated 5.45 hotfix
|
||||
AirshipStatus = 0x0253, // updated 5.45 hotfix
|
||||
AirshipStatusList = 0x0391, // updated 5.45 hotfix
|
||||
AirshipTimers = 0x0206, // updated 5.45 hotfix
|
||||
SubmarineExplorationResult = 0x00EB, // updated 5.45 hotfix
|
||||
SubmarineProgressionStatus = 0x0333, // updated 5.45 hotfix
|
||||
SubmarineStatusList = 0x01F2, // updated 5.45 hotfix
|
||||
SubmarineTimers = 0x013B, // updated 5.45 hotfix
|
||||
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
|
||||
};
|
||||
|
||||
/**
|
||||
|
@ -315,110 +315,109 @@ namespace Sapphire::Network::Packets
|
|||
*/
|
||||
enum ClientZoneIpcType : uint16_t
|
||||
{
|
||||
PingHandler = 0x0183, // updated 5.45 hotfix
|
||||
InitHandler = 0x01EA, // updated 5.45 hotfix
|
||||
PingHandler = 0x03A3, // updated 5.58
|
||||
InitHandler = 0x03B3, // updated 5.58
|
||||
|
||||
FinishLoadingHandler = 0x023F, // updated 5.45 hotfix
|
||||
FinishLoadingHandler = 0x0217, // updated 5.58
|
||||
|
||||
CFCommenceHandler = 0x0118, // updated 5.35 hotfix
|
||||
CFCommenceHandler = 0xF118, // updated 5.35 hotfix
|
||||
|
||||
CFCancelHandler = 0x0332, // updated 5.35 hotfix
|
||||
CFRegisterDuty = 0x033C, // updated 5.45 hotfix
|
||||
CFRegisterRoulette = 0x0121, // updated 5.45 hotfix
|
||||
PlayTimeHandler = 0x0096, // updated 5.45 hotfix
|
||||
LogoutHandler = 0x0312, // updated 5.45 hotfix
|
||||
CancelLogout = 0x0307, // updated 5.45 hotfix
|
||||
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
|
||||
|
||||
CFDutyInfoHandler = 0x0078, // updated 4.2
|
||||
SocialReqSendHandler = 0x0366, // updated 5.58
|
||||
SocialResponseHandler = 0x0311, // updated 5.58
|
||||
CreateCrossWorldLS = 0x0125, // updated 5.58
|
||||
|
||||
SocialReqSendHandler = 0x0288, // updated 5.45 hotfix
|
||||
SocialResponseHandler = 0x029B, // updated 5.45 hotfix
|
||||
CreateCrossWorldLS = 0x00AF, // updated 4.3
|
||||
|
||||
ChatHandler = 0x00A4, // updated 5.45 hotfix
|
||||
ChatHandler = 0x02F4, // updated 5.58
|
||||
PartyChatHandler = 0x0065,
|
||||
PartySetLeaderHandler = 0x02EF, // updated 5.45 hotfix
|
||||
LeavePartyHandler = 0x017E, // updated 5.45 hotfix
|
||||
KickPartyMemberHandler = 0x0070, // updated 5.45 hotfix
|
||||
DisbandPartyHandler = 0x037A, // updated 5.45 hotfix
|
||||
PartySetLeaderHandler = 0x03C2, // updated 5.58
|
||||
LeavePartyHandler = 0x028A, // updated 5.58
|
||||
KickPartyMemberHandler = 0x01D1, // updated 5.58
|
||||
DisbandPartyHandler = 0x032B, // updated 5.58
|
||||
|
||||
SocialListHandler = 0x02B0, // updated 5.45 hotfix
|
||||
SetSearchInfoHandler = 0x0111, // updated 5.45 hotfix
|
||||
ReqSearchInfoHandler = 0x03AC, // updated 5.45 hotfix
|
||||
SocialListHandler = 0x006E, // updated 5.58
|
||||
SetSearchInfoHandler = 0x010A, // updated 5.58
|
||||
ReqSearchInfoHandler = 0x0255, // updated 5.58
|
||||
ReqExamineSearchCommentHandler = 0x00E7, // updated 5.0
|
||||
|
||||
ReqRemovePlayerFromBlacklist = 0x00F1, // updated 5.0
|
||||
BlackListHandler = 0x02CD, // updated 5.45 hotfix
|
||||
PlayerSearchHandler = 0x00F4, // updated 5.0
|
||||
ReqRemovePlayerFromBlacklist = 0x015A, // updated 5.58
|
||||
BlackListHandler = 0x02C5, // updated 5.58
|
||||
PlayerSearchHandler = 0x0259, // updated 5.58
|
||||
|
||||
LinkshellListHandler = 0x0258, // updated 5.45 hotfix
|
||||
LinkshellListHandler = 0x01F0, // updated 5.58
|
||||
|
||||
MarketBoardRequestItemListingInfo = 0x0102, // updated 4.5
|
||||
MarketBoardRequestItemListings = 0x0103, // updated 4.5
|
||||
MarketBoardSearch = 0x0107, // updated 4.5
|
||||
MarketBoardRequestItemListingInfo = 0x02D3, // updated 5.58
|
||||
MarketBoardRequestItemListings = 0x00AD, // updated 5.58
|
||||
MarketBoardSearch = 0x00D6, // updated 5.58
|
||||
|
||||
ReqExamineFcInfo = 0x0113, // updated 4.1
|
||||
ReqExamineFcInfo = 0x0359, // updated 5.58
|
||||
|
||||
FcInfoReqHandler = 0x011A, // updated 4.2
|
||||
FcInfoReqHandler = 0x0078, // updated 5.58
|
||||
|
||||
FreeCompanyUpdateShortMessageHandler = 0x0123, // added 5.0
|
||||
|
||||
ReqMarketWishList = 0x012C, // updated 4.3
|
||||
ReqMarketWishList = 0x0364, // updated 5.58
|
||||
|
||||
ReqJoinNoviceNetwork = 0x0129, // updated 4.2
|
||||
|
||||
ReqCountdownInitiate = 0x025F, // updated 5.35 hotfix
|
||||
ReqCountdownCancel = 0x0244, // updated 5.25
|
||||
ReqCountdownInitiate = 0x020E, // updated 5.58
|
||||
ReqCountdownCancel = 0x03BE, // updated 5.58
|
||||
|
||||
ZoneLineHandler = 0x00BA, // updated 5.45 hotfix
|
||||
ClientTrigger = 0x0146, // updated 5.45 hotfix
|
||||
DiscoveryHandler = 0x00E3, // updated 5.35 hotfix
|
||||
ZoneLineHandler = 0x00B0, // updated 5.58
|
||||
ClientTrigger = 0x008B, // updated 5.58
|
||||
DiscoveryHandler = 0x01B4, // updated 5.58
|
||||
|
||||
PlaceFieldMarkerPreset = 0x01D3, // updated 5.45 hotfix
|
||||
PlaceFieldMarker = 0x0392, // updated 5.45 hotfix
|
||||
SkillHandler = 0x0388, // updated 5.45 hotfix
|
||||
GMCommand1 = 0x01E0, // updated 5.45 hotfix
|
||||
GMCommand2 = 0x0114, // updated 5.45 hotfix
|
||||
AoESkillHandler = 0x03A0, // updated 5.45 hotfix
|
||||
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 = 0x031A, // updated 5.45 hotfix
|
||||
UpdatePositionHandler = 0x0212, // updated 5.58
|
||||
|
||||
InventoryModifyHandler = 0x0110, // updated 5.45 hotfix
|
||||
InventoryModifyHandler = 0x014A, // updated 5.58
|
||||
|
||||
InventoryEquipRecommendedItems = 0x0186, // updated 5.45 hotfix
|
||||
InventoryEquipRecommendedItems = 0x01D7, // updated 5.58
|
||||
|
||||
ReqPlaceHousingItem = 0x0360, // updated 5.45 hotfix
|
||||
BuildPresetHandler = 0x01D7, // updated 5.45 hotfix
|
||||
ReqPlaceHousingItem = 0x0354, // updated 5.58
|
||||
BuildPresetHandler = 0x00DC, // updated 5.58
|
||||
|
||||
TalkEventHandler = 0x00C2, // updated 5.45 hotfix
|
||||
EmoteEventHandler = 0x03D5, // updated 5.45 hotfix
|
||||
WithinRangeEventHandler = 0x0171, // updated 5.45 hotfix
|
||||
OutOfRangeEventHandler = 0x019B, // updated 5.45 hotfix
|
||||
EnterTeriEventHandler = 0x027F, // updated 5.45 hotfix
|
||||
ShopEventHandler = 0x03D4, // updated 5.45 hotfix
|
||||
EventYieldHandler = 0x0230, // updated 5.45 hotfix
|
||||
ReturnEventHandler = 0x02AD, // updated 5.45 hotfix
|
||||
TradeReturnEventHandler = 0x00A7, // updated 5.45 hotfix
|
||||
TradeMultipleReturnEventHander = 0x035C, // updated 5.35 hotfix
|
||||
TalkEventHandler = 0x012D, // updated 5.58
|
||||
EmoteEventHandler = 0xF35A, // updated 5.55 hotfix
|
||||
WithinRangeEventHandler = 0x022C, // updated 5.58
|
||||
OutOfRangeEventHandler = 0x0294, // updated 5.58
|
||||
EnterTeriEventHandler = 0x00C1, // updated 5.58
|
||||
ShopEventHandler = 0x02B8, // updated 5.58
|
||||
EventYieldHandler = 0x02A0, // updated 5.55 hotfix
|
||||
ReturnEventHandler = 0x0333, // updated 5.58
|
||||
TradeReturnEventHandler = 0x0179, // updated 5.58
|
||||
TradeReturnEventHandler2 = 0x0169, // updated 5.55 hotfix
|
||||
|
||||
LinkshellEventHandler = 0x016B, // updated 4.5
|
||||
LinkshellEventHandler1 = 0x016C, // updated 4.5
|
||||
|
||||
ReqEquipDisplayFlagsChange = 0x03B0, // updated 5.45 hotfix
|
||||
ReqEquipDisplayFlagsChange = 0x01AD, // updated 5.58
|
||||
|
||||
LandRenameHandler = 0x0187, // updated 5.45 hotfix
|
||||
HousingUpdateHouseGreeting = 0x0367, // updated 5.45 hotfix
|
||||
HousingUpdateObjectPosition = 0x0265, // updated 5.45 hotfix
|
||||
HousingEditExterior = 0x0297, // updated 5.45 hotfix
|
||||
LandRenameHandler = 0x0083, // updated 5.58
|
||||
HousingUpdateHouseGreeting = 0x031A, // updated 5.58
|
||||
HousingUpdateObjectPosition = 0x010E, // updated 5.58
|
||||
HousingEditAppearance = 0x00D7, // updated 5.55 hotfix
|
||||
|
||||
SetSharedEstateSettings = 0x0146, // updated 5.45 hotfix
|
||||
SetSharedEstateSettings = 0x0342, // updated 5.58
|
||||
|
||||
UpdatePositionInstance = 0x034E, // updated 5.45 hotfix
|
||||
UpdatePositionInstance = 0x01A3, // updated 5.58
|
||||
|
||||
PerformNoteHandler = 0x0336, // updated 5.45 hotfix
|
||||
PerformNoteHandler = 0x015E, // updated 5.58
|
||||
|
||||
WorldInteractionHandler = 0x02E4, // updated 5.45 hotfix
|
||||
Dive = 0x00F1, // updated 5.45 hotfix
|
||||
WorldInteractionHandler = 0x03CE, // updated 5.58
|
||||
Dive = 0x034C, // updated 5.58
|
||||
};
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
|
|
|
@ -427,7 +427,7 @@ struct FFXIVIpcDive :
|
|||
};
|
||||
|
||||
struct FFXIVIpcHousingEditExterior :
|
||||
FFXIVIpcBasePacket< HousingEditExterior >
|
||||
FFXIVIpcBasePacket< HousingEditAppearance >
|
||||
{
|
||||
uint16_t landId;
|
||||
uint8_t unknown[6];
|
||||
|
|
|
@ -680,6 +680,7 @@ namespace Sapphire::Network::Packets::Server
|
|||
uint16_t unk; // == 0
|
||||
uint16_t modelChara;
|
||||
uint16_t rotation;
|
||||
uint16_t currentMount;
|
||||
uint16_t activeMinion;
|
||||
uint8_t spawnIndex;
|
||||
uint8_t state;
|
||||
|
@ -693,24 +694,20 @@ namespace Sapphire::Network::Packets::Server
|
|||
uint8_t classJob;
|
||||
uint8_t u26d;
|
||||
uint16_t u27a;
|
||||
uint8_t currentMount;
|
||||
uint8_t mountHead;
|
||||
uint8_t mountBody;
|
||||
uint8_t mountFeet;
|
||||
uint8_t mountColor;
|
||||
uint8_t scale;
|
||||
|
||||
//uint32_t elementalLevel; one of these two field changed to 16bit
|
||||
//uint32_t element;
|
||||
uint8_t elementData[6];
|
||||
|
||||
uint8_t unknown5_5[3];
|
||||
Common::StatusEffect effect[30];
|
||||
Common::FFXIVARR_POSITION3 pos;
|
||||
uint32_t models[10];
|
||||
char name[32];
|
||||
uint8_t look[26];
|
||||
char fcTag[6];
|
||||
uint32_t unk30;
|
||||
uint32_t unk30[2];
|
||||
};
|
||||
|
||||
/**
|
||||
|
@ -753,9 +750,10 @@ namespace Sapphire::Network::Packets::Server
|
|||
uint32_t displayFlags;
|
||||
uint16_t fateID;
|
||||
uint16_t mPCurr;
|
||||
uint16_t unknown1; // 0
|
||||
uint16_t unknown2; // 0 or pretty big numbers > 30000
|
||||
uint16_t unknown1;
|
||||
uint16_t unknown2;
|
||||
uint16_t modelChara;
|
||||
uint16_t currentMount;
|
||||
uint16_t rotation;
|
||||
uint16_t activeMinion;
|
||||
uint8_t spawnIndex;
|
||||
|
@ -770,14 +768,13 @@ namespace Sapphire::Network::Packets::Server
|
|||
uint8_t classJob;
|
||||
uint8_t u26d;
|
||||
uint16_t u27a;
|
||||
uint8_t currentMount;
|
||||
uint8_t mountHead;
|
||||
uint8_t mountBody;
|
||||
uint8_t mountFeet;
|
||||
uint8_t mountColor;
|
||||
uint8_t scale;
|
||||
uint16_t elementalLevel; // Eureka
|
||||
uint16_t element; // Eureka
|
||||
uint8_t elemental[6];
|
||||
uint8_t unknown5_5[3];
|
||||
Common::StatusEffect effect[30];
|
||||
Common::FFXIVARR_POSITION3 pos;
|
||||
uint32_t models[10];
|
||||
|
@ -789,7 +786,7 @@ namespace Sapphire::Network::Packets::Server
|
|||
uint8_t bNPCPartSlot;
|
||||
uint8_t unk32;
|
||||
uint16_t unk33;
|
||||
uint32_t unk34;
|
||||
uint32_t unk34[2];
|
||||
};
|
||||
|
||||
/**
|
||||
|
@ -1041,12 +1038,12 @@ namespace Sapphire::Network::Packets::Server
|
|||
unsigned char mountGuideMask[22];
|
||||
unsigned char u19_2;
|
||||
*/
|
||||
unsigned char unknown5_3a[176];
|
||||
unsigned char unknown5_55a[178];
|
||||
unsigned char companionName[21];
|
||||
unsigned char companionDefRank;
|
||||
unsigned char companionAttRank;
|
||||
unsigned char companionHealRank;
|
||||
unsigned char mountGuideMask[27];
|
||||
unsigned char mountGuideMask[29];
|
||||
//==
|
||||
char name[32];
|
||||
unsigned char unknownOword[16];
|
||||
|
@ -1055,11 +1052,10 @@ namespace Sapphire::Network::Packets::Server
|
|||
unsigned char aetheryte[21];
|
||||
unsigned char discovery[445];
|
||||
unsigned char howto[34];
|
||||
unsigned char minions[53];
|
||||
unsigned char minions[55];
|
||||
unsigned char chocoboTaxiMask[10];
|
||||
unsigned char watchedCutscenes[135];
|
||||
unsigned char companionBardingMask[10];
|
||||
unsigned char unknown5_45a; // companionBardingMask[11]?
|
||||
unsigned char watchedCutscenes[137];
|
||||
unsigned char companionBardingMask[11];
|
||||
unsigned char companionEquippedHead;
|
||||
unsigned char companionEquippedBody;
|
||||
unsigned char companionEquippedLegs;
|
||||
|
@ -1092,12 +1088,12 @@ namespace Sapphire::Network::Packets::Server
|
|||
unsigned char aetherCurrentMask[22];
|
||||
unsigned char u10[3];
|
||||
*/
|
||||
unsigned char unknown5_45c[294];
|
||||
unsigned char unknown5_55b[295];
|
||||
//==
|
||||
unsigned char orchestrionMask[40]; // this field may already be extended, if it is, the beginning bytes are at the end of unknown5_45c
|
||||
unsigned char orchestrionMask[40]; // this field may already be extended, if it is, the beginning bytes are at the end of unknown5_55b
|
||||
unsigned char hallOfNoviceCompletion[3];
|
||||
unsigned char animaCompletion[11];
|
||||
unsigned char unknown5_3e[33];
|
||||
unsigned char unknown5_55c[35];
|
||||
unsigned char unlockedRaids[28];
|
||||
unsigned char unlockedDungeons[18];
|
||||
unsigned char unlockedGuildhests[10];
|
||||
|
@ -1117,7 +1113,7 @@ namespace Sapphire::Network::Packets::Server
|
|||
unsigned int exploratoryMissionNextTimestamp;
|
||||
unsigned char pvpLevel;
|
||||
*/
|
||||
unsigned char unknown5_45d[8];
|
||||
unsigned char unknown5_55d[9];
|
||||
//==
|
||||
};
|
||||
|
||||
|
|
|
@ -132,7 +132,7 @@ private:
|
|||
{
|
||||
if( result.param2 == 1 )
|
||||
{
|
||||
if( player.giveQuestRewards( getId(), 0 ) )
|
||||
if( player.giveQuestRewards( getId(), result.param3 ) )
|
||||
{
|
||||
player.setQuestUI8BH( getId(), 0 );
|
||||
player.finishQuest( getId() );
|
||||
|
|
|
@ -1591,7 +1591,7 @@ uint16_t Sapphire::Entity::Player::getCurrentCompanion() const
|
|||
return m_companionId;
|
||||
}
|
||||
|
||||
uint8_t Sapphire::Entity::Player::getCurrentMount() const
|
||||
uint16_t Sapphire::Entity::Player::getCurrentMount() const
|
||||
{
|
||||
return m_mount;
|
||||
}
|
||||
|
|
|
@ -584,7 +584,7 @@ namespace Sapphire::Entity
|
|||
uint16_t getCurrentCompanion() const;
|
||||
|
||||
/*! get the current mount */
|
||||
uint8_t getCurrentMount() const;
|
||||
uint16_t getCurrentMount() const;
|
||||
|
||||
/*! set current persistent emote */
|
||||
void setPersistentEmote( uint32_t emoteId );
|
||||
|
@ -1067,8 +1067,8 @@ namespace Sapphire::Entity
|
|||
uint16_t m_activeTitle;
|
||||
uint8_t m_titleList[48];
|
||||
uint8_t m_howTo[34];
|
||||
uint8_t m_minions[40];
|
||||
uint8_t m_mountGuide[27];
|
||||
uint8_t m_minions[55];
|
||||
uint8_t m_mountGuide[29];
|
||||
uint8_t m_homePoint;
|
||||
uint8_t m_startTown;
|
||||
uint16_t m_townWarpFstFlags;
|
||||
|
@ -1076,8 +1076,8 @@ namespace Sapphire::Entity
|
|||
uint8_t m_discovery[445];
|
||||
uint32_t m_playTime;
|
||||
|
||||
uint16_t m_classArray[28];
|
||||
uint32_t m_expArray[28];
|
||||
uint16_t m_classArray[ Common::CLASSJOB_SLOTS ];
|
||||
uint32_t m_expArray[ Common::CLASSJOB_SLOTS ];
|
||||
uint8_t m_aetheryte[21];
|
||||
uint8_t m_unlocks[64];
|
||||
uint8_t m_orchestrion[40];
|
||||
|
|
|
@ -186,6 +186,9 @@ bool Sapphire::Entity::Player::load( uint32_t charId, World::SessionPtr pSession
|
|||
auto titleList = res->getBlobVector( "TitleList" );
|
||||
memcpy( reinterpret_cast< char* >( m_titleList ), titleList.data(), titleList.size() );
|
||||
|
||||
auto minions = res->getBlobVector( "Minions" );
|
||||
memcpy( reinterpret_cast< char* >( m_minions ), minions.data(), minions.size() );
|
||||
|
||||
auto mountGuide = res->getBlobVector( "Mounts" );
|
||||
memcpy( reinterpret_cast< char* >( m_mountGuide ), mountGuide.data(), mountGuide.size() );
|
||||
|
||||
|
|
|
@ -226,15 +226,7 @@ void Sapphire::World::Manager::DebugCommandMgr::set( char* data, Entity::Player&
|
|||
if( player.getLevelForClass( static_cast< Common::ClassJob > ( id ) ) == 0 )
|
||||
{
|
||||
player.setLevelForClass( 1, static_cast< Common::ClassJob > ( id ) );
|
||||
player.setClassJob( static_cast< Common::ClassJob > ( id ) );
|
||||
player.sendModel();
|
||||
player.sendItemLevel();
|
||||
player.calculateStats();
|
||||
player.sendStats();
|
||||
player.sendStatusEffectUpdate();
|
||||
player.sendStatusUpdate();
|
||||
}
|
||||
else
|
||||
player.setClassJob( static_cast< Common::ClassJob > ( id ) );
|
||||
player.sendModel();
|
||||
player.sendItemLevel();
|
||||
|
|
|
@ -90,7 +90,7 @@ Sapphire::Network::GameConnection::GameConnection( Sapphire::Network::HivePtr pH
|
|||
setZoneHandler( ClientZoneIpcType::ReqPlaceHousingItem, "ReqPlaceHousingItem", &GameConnection::reqPlaceHousingItem );
|
||||
setZoneHandler( ClientZoneIpcType::HousingUpdateObjectPosition, "HousingUpdateObjectPosition",
|
||||
&GameConnection::reqMoveHousingItem );
|
||||
setZoneHandler( ClientZoneIpcType::HousingEditExterior, "HousingEditExterior", &GameConnection::housingEditExterior );
|
||||
setZoneHandler( ClientZoneIpcType::HousingEditAppearance, "HousingEditAppearance", &GameConnection::housingEditExterior );
|
||||
|
||||
setZoneHandler( ClientZoneIpcType::TalkEventHandler, "EventHandlerTalk", &GameConnection::eventHandlerTalk );
|
||||
setZoneHandler( ClientZoneIpcType::EmoteEventHandler, "EventHandlerEmote", &GameConnection::eventHandlerEmote );
|
||||
|
@ -101,10 +101,10 @@ Sapphire::Network::GameConnection::GameConnection( Sapphire::Network::HivePtr pH
|
|||
setZoneHandler( ClientZoneIpcType::EnterTeriEventHandler, "EventHandlerEnterTeri",
|
||||
&GameConnection::eventHandlerEnterTerritory );
|
||||
|
||||
setZoneHandler( ClientZoneIpcType::ReturnEventHandler, "EventHandlerReturn", &GameConnection::eventHandlerReturn );
|
||||
setZoneHandler( ClientZoneIpcType::TradeReturnEventHandler, "EventHandlerReturn",
|
||||
setZoneHandler( ClientZoneIpcType::ReturnEventHandler, "ReturnEventHandler", &GameConnection::eventHandlerReturn );
|
||||
setZoneHandler( ClientZoneIpcType::TradeReturnEventHandler, "TradeReturnEventHandler",
|
||||
&GameConnection::eventHandlerReturn );
|
||||
setZoneHandler( ClientZoneIpcType::TradeMultipleReturnEventHander, "EventHandlerReturn", &GameConnection::eventHandlerReturn );
|
||||
setZoneHandler( ClientZoneIpcType::TradeReturnEventHandler2, "TradeReturnEventHandler2", &GameConnection::eventHandlerReturn );
|
||||
|
||||
setZoneHandler( ClientZoneIpcType::ShopEventHandler, "ShopEventHandler",
|
||||
&GameConnection::eventHandlerShop );
|
||||
|
|
|
@ -53,7 +53,7 @@ namespace Sapphire::Network::Packets::Server
|
|||
memcpy( m_data.aetheryte, player.getAetheryteArray(), sizeof( m_data.aetheryte ) );
|
||||
|
||||
// Set the class levels and exp.
|
||||
for( uint8_t i = 0; i < 25; i++ )
|
||||
for( uint8_t i = 0; i < Common::CLASSJOB_SLOTS; i++ )
|
||||
{
|
||||
m_data.levels[ i ] = player.getClassArray()[ i ];
|
||||
m_data.exp[ i ] = player.getExpArray()[ i ];
|
||||
|
|
Loading…
Add table
Reference in a new issue