From 35bb9b78279a214cb35855c39fecb9880974817b Mon Sep 17 00:00:00 2001 From: Rey Date: Tue, 8 Feb 2022 23:07:59 -0600 Subject: [PATCH] Playersetup works now. Doesn't crash. Gear is displayed. --- src/common/Network/PacketDef/Ipcs.h | 2 +- .../Network/PacketDef/Zone/ServerZoneDef.h | 285 +++++++++--------- 2 files changed, 143 insertions(+), 144 deletions(-) diff --git a/src/common/Network/PacketDef/Ipcs.h b/src/common/Network/PacketDef/Ipcs.h index ec55e9a4..ecea0f20 100644 --- a/src/common/Network/PacketDef/Ipcs.h +++ b/src/common/Network/PacketDef/Ipcs.h @@ -156,7 +156,7 @@ namespace Sapphire::Network::Packets ObjectDespawn = 0x0137, // updated 6.08 UpdateClassInfo = 0x00FE, // updated 6.08 SilentSetClassJob = 0xF18E, // updated 5.0 - seems to be the case, not sure if it's actually used for anything - PlayerSetup = 0x02C7, // updated 6.08 + PlayerSetup = 0x02C6, // updated 6.08 PlayerStats = 0x0295, // updated 5.58 hotfix ActorOwner = 0x0261, // updated 6.08 PlayerStateFlags = 0x03CF, // updated 6.08 (or 0x00CB) diff --git a/src/common/Network/PacketDef/Zone/ServerZoneDef.h b/src/common/Network/PacketDef/Zone/ServerZoneDef.h index 87621e20..c9f24fc0 100644 --- a/src/common/Network/PacketDef/Zone/ServerZoneDef.h +++ b/src/common/Network/PacketDef/Zone/ServerZoneDef.h @@ -950,151 +950,150 @@ namespace Sapphire::Network::Packets::Server // plain C types for a bit until the packet is actually fixed. // makes conversion between different editors easier. uint64_t contentId; - uint64_t unknown8; - unsigned int unknownC; - unsigned int charId; - unsigned int restedExp; - unsigned int companionCurrentExp; - unsigned int unknown1C; - unsigned int fishCaught; - unsigned int useBaitCatalogId; - unsigned int unknown28; - unsigned short unknownPvp2C; - unsigned short unknown2E; - unsigned int pvpFrontlineOverallCampaigns; - unsigned int unknownTimestamp34; - unsigned int unknownTimestamp38; - unsigned int unknown3C; - unsigned int unknown40; - unsigned int unknown44; + uint64_t crest; + uint32_t charId; + uint32_t restedExp; + uint32_t companionCurrentExp; + uint32_t unknown1C; + uint32_t fishCaught; + uint32_t useBaitCatalogId; + uint32_t unknown28; + uint16_t unknownPvp2C; + uint16_t unknown2E; + uint32_t pvpFrontlineOverallCampaigns; + uint32_t unknownTimestamp34; + uint32_t unknownTimestamp38; + uint32_t unknown3C; + uint32_t unknown40; + uint32_t unknown44; float companionTimePassed; - unsigned int unknown4C; - unsigned short unknown50; - unsigned short unknownPvp52[4]; - unsigned short playerCommendations; - unsigned short unknown5C; - unsigned short unknown5E; - unsigned short pvpFrontlineWeeklyCampaigns; - unsigned short enhancedAnimaGlassProgress; - unsigned short unknown64[4]; - unsigned short pvpRivalWingsTotalMatches; - unsigned short pvpRivalWingsTotalVictories; - unsigned short pvpRivalWingsWeeklyMatches; - unsigned short pvpRivalWingsWeeklyVictories; - unsigned char maxLevel; - unsigned char expansion; - unsigned char unknown76; - unsigned char unknown77; - unsigned char unknown78; - unsigned char race; - unsigned char tribe; - unsigned char gender; - unsigned char currentJob; - unsigned char currentClass; - unsigned char deity; - unsigned char namedayMonth; - unsigned char namedayDay; - unsigned char cityState; - unsigned char homepoint; - unsigned char unknown83; - unsigned char petHotBar; - unsigned char companionRank; - unsigned char companionStars; - unsigned char companionSp; - unsigned char companionUnk86; - unsigned char companionColor; - unsigned char companionFavoFeed; - unsigned char favAetheryteCount; - unsigned char unknown8C[4]; - unsigned char hasRelicBook; - unsigned char relicBookId; - unsigned char sightseeing21to80Unlock; - unsigned char sightseeingHeavenswardUnlock; - unsigned char unknown94[2]; - unsigned char craftingMasterMask; - unsigned char unknown97[9]; - unsigned char unknownA0[2]; - unsigned char unknownA2[3]; - unsigned char unknownA5[3]; - unsigned int exp[Common::CLASSJOB_SLOTS]; - unsigned int pvpTotalExp; - unsigned int unknownPvp124; - unsigned int pvpExp; - unsigned int pvpFrontlineOverallRanks[3]; - unsigned short levels[Common::CLASSJOB_SLOTS]; - - unsigned short unknown178[8]; - unsigned short fishingRecordsFishId[30]; - unsigned short fishingRecordsFishLength[30]; - unsigned short beastExp[14]; - unsigned short unknown21C[5]; - unsigned short pvpFrontlineWeeklyRanks[3]; - unsigned short unknownMask22C[7]; - unsigned char companionName[21]; - unsigned char companionDefRank; - unsigned char companionAttRank; - unsigned char companionHealRank; - unsigned char mountGuideMask[29]; - unsigned char unknown26F[4]; + uint32_t unknown4C; + uint16_t unknown50; + uint16_t unknownPvp52[4]; + uint16_t playerCommendations; + uint16_t unknown5C; + uint16_t unknown5E; + uint16_t pvpFrontlineWeeklyCampaigns; + uint16_t enhancedAnimaGlassProgress; + uint16_t unknown64[4]; + uint16_t pvpRivalWingsTotalMatches; + uint16_t pvpRivalWingsTotalVictories; + uint16_t pvpRivalWingsWeeklyMatches; + uint16_t pvpRivalWingsWeeklyVictories; + uint8_t maxLevel; + uint8_t expansion; + uint8_t unknown76; + uint8_t unknown77; + uint8_t unknown78; + uint8_t race; + uint8_t tribe; + uint8_t gender; + uint8_t currentJob; + uint8_t currentClass; + uint8_t deity; + uint8_t namedayMonth; + uint8_t namedayDay; + uint8_t cityState; + uint8_t homepoint; + uint8_t unknown83; + uint8_t petHotBar; + uint8_t companionRank; + uint8_t companionStars; + uint8_t companionSp; + uint8_t companionUnk86; + uint8_t companionColor; + uint8_t companionFavFeed; + uint8_t favAetheryteCount; + uint8_t unknown8C[4]; + uint8_t hasRelicBook; + uint8_t relicBookId; + uint8_t sightseeing21To80Unlock; + uint8_t sightseeingHeavenswardUnlock; + uint8_t unknown94[2]; + uint8_t craftingMasterMask; + uint8_t unknown97[9]; + uint8_t unknownA0[2]; + uint8_t unknownA2[3]; + uint8_t unknownA5[3]; + uint32_t exp[30]; + uint32_t pvpTotalExp; + uint32_t unknownPvp124; + uint32_t pvpExp; + uint32_t pvpFrontlineOverallRanks[3]; + uint32_t unknown138; + uint16_t levels[30]; + uint16_t unknown178[8]; + uint16_t fishingRecordsFishId[30]; + uint16_t fishingRecordsFishLength[30]; + uint16_t beastExp[14]; + uint16_t unknown21C[5]; + uint16_t pvpFrontlineWeeklyRanks[3]; + uint16_t unknownMask22C[7]; + uint8_t companionName[21]; + uint8_t companionDefRank; + uint8_t companionAttRank; + uint8_t companionHealRank; + uint8_t mountGuideMask[29]; + uint8_t unknown26F[4]; char name[32]; - unsigned char unknown293[16]; - unsigned char unknown2A3; - unsigned char unlockBitmask[64]; - unsigned char aetheryte[21]; - unsigned char favoriteAetheryteIds[4]; - unsigned char freeAetheryteId; - unsigned char discovery[464]; - unsigned char howto[35]; - unsigned char minions[56]; - unsigned char chocoboTaxiMask[10]; - unsigned char watchedCutscenes[144]; - unsigned char companionBardingMask[11]; - unsigned char companionEquippedHead; - unsigned char companionEquippedBody; - unsigned char companionEquippedLegs; - unsigned char unknown5D1[4]; - unsigned char unknownMask5D5[11]; - unsigned char fishingGuideMask[142]; - unsigned char fishingSpotVisited[38]; - unsigned char unknown694[34]; - unsigned char unknown6B6[7]; - unsigned char unknownPvp6BD[3]; - unsigned char beastRank[14]; - unsigned char unknownPvp6CE[12]; - unsigned char pose; - unsigned char pose2[4]; - unsigned char unknown6DF[3]; - unsigned char challengeLogComplete[13]; - unsigned char unknownMask6EF[8]; - unsigned char unknownMask6F7[31]; - unsigned char relicCompletion[12]; - unsigned char sightseeingMask[37]; - unsigned char huntingMarkMask[101]; - unsigned char tripleTriadCards[43]; - unsigned char unknown7D7; - unsigned char unknown7D8[14]; - unsigned char unknown7E6[36]; - unsigned char unknown80A[6]; - unsigned char orchestrionMask[64]; - unsigned char hallOfNoviceCompletion[3]; - unsigned char animaCompletion[11]; - unsigned char unknown85E[16]; - unsigned char unknown86E[4]; - unsigned char unknown872[14]; - unsigned char unknown880; - unsigned char unlockedRaids[28]; - unsigned char unlockedDungeons[18]; - unsigned char unlockedGuildhests[10]; - unsigned char unlockedTrials[11]; - unsigned char unlockedPvp[5]; - unsigned char clearedRaids[28]; - unsigned char clearedDungeons[18]; - unsigned char clearedGuildhests[10]; - unsigned char clearedTrials[11]; - unsigned char clearedPvp[5]; - unsigned char unknown911[4]; - unsigned char unknown915[2]; - unsigned char unknown917[3]; + uint8_t unknown293[16]; + uint8_t unknown2A3; + uint8_t unlockBitmask[64]; + uint8_t aetheryte[21]; + uint8_t favoriteAetheryteIds[4]; + uint8_t freeAetheryteId; + uint8_t discovery[464]; + uint8_t howto[35]; + uint8_t minions[56]; + uint8_t chocoboTaxiMask[10]; + uint8_t watchedCutscenes[144]; + uint8_t companionBardingMask[11]; + uint8_t companionEquippedHead; + uint8_t companionEquippedBody; + uint8_t companionEquippedLegs; + uint8_t unknown5D1[4]; + uint8_t unknownMask5D5[11]; + uint8_t fishingGuideMask[142]; + uint8_t fishingSpotVisited[38]; + uint8_t unknown694[34]; + uint8_t unknown6B6[7]; + uint8_t unknownPvp6BD[3]; + uint8_t beastRank[14]; + uint8_t unknownPvp6CE[12]; + uint8_t pose; + uint8_t pose2[4]; + uint8_t unknown6DF[3]; + uint8_t challengeLogComplete[13]; + uint8_t unknownMask6EF[8]; + uint8_t unknownMask6F7[31]; + uint8_t relicCompletion[12]; + uint8_t sightseeingMask[37]; + uint8_t huntingMarkMask[101]; + uint8_t tripleTriadCards[43]; + uint8_t unknown7D7; + uint8_t unknown7D8[14]; + uint8_t unknown7E6[36]; + uint8_t unknown80A[6]; + uint8_t orchestrionMask[64]; + uint8_t hallOfNoviceCompletion[3]; + uint8_t animaCompletion[11]; + uint8_t unknown85E[16]; + uint8_t unknown86E[4]; + uint8_t unknown872[14]; + uint8_t unknown880; + uint8_t unlockedRaids[28]; + uint8_t unlockedDungeons[18]; + uint8_t unlockedGuildhests[10]; + uint8_t unlockedTrials[11]; + uint8_t unlockedPvp[5]; + uint8_t clearedRaids[28]; + uint8_t clearedDungeons[18]; + uint8_t clearedGuildhests[10]; + uint8_t clearedTrials[11]; + uint8_t clearedPvp[5]; + uint8_t unknown911[4]; + uint8_t unknown915[2]; + uint8_t unknown917[3]; };