1
Fork 0
mirror of https://github.com/SapphireServer/Sapphire.git synced 2025-04-26 14:37:44 +00:00

Fixed black screen on new character, fixed servernotice size, initial initui adjustments.

This commit is contained in:
Mordred 2019-01-09 23:57:49 +01:00
parent 3da3852861
commit cfabc721dd
6 changed files with 128 additions and 125 deletions

View file

@ -185,7 +185,7 @@ enum ActorControlType : uint16_t
LogMsg = 0x205, // LogMessage?
AchievementMsg = 0x206,
SetItemLevel = 0x209,
SetItemLevel = 0x207, //updated 4.5 ( 0x209 before )
ChallengeEntryCompleteMsg = 0x20B,
ChallengeEntryUnlockMsg = 0x20C,

View file

@ -158,7 +158,7 @@ struct FFXIVIpcServerNotice :
FFXIVIpcBasePacket< ServerNotice >
{
/* 0000 */ uint8_t padding;
char message[307];
char message[775];
};
struct FFXIVIpcSetOnlineStatus :
@ -783,8 +783,8 @@ struct FFXIVIpcInitUI : FFXIVIpcBasePacket< InitUI >
unsigned int fishCaught;
unsigned int useBaitCatalogId;
unsigned int unknown28;
unsigned short unknownPvp2C;
unsigned short unknown3;
unsigned __int16 unknownPvp2C;
unsigned __int16 unknown3;
unsigned int pvpFrontlineOverallCampaigns;
unsigned int unknownTimestamp34;
unsigned int unknownTimestamp38;
@ -793,122 +793,123 @@ struct FFXIVIpcInitUI : FFXIVIpcBasePacket< InitUI >
unsigned int 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 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 unknown81;
unsigned char petHotBar;
unsigned char companionRank;
unsigned char companionStars;
unsigned char companionSp;
unsigned char companionUnk86;
unsigned char companionColor;
unsigned char companionFavoFeed;
unsigned char unknown89;
unsigned char unknown8A[4];
unsigned char hasRelicBook;
unsigned char relicBookId;
unsigned char unknown90[4];
unsigned char craftingMasterMask;
unsigned char unknown95[10];
unsigned char unknown9F[2];
unsigned char unknownA1[3];
unsigned __int16 unknown50;
unsigned __int16 unknownPvp52[4];
unsigned __int16 playerCommendations;
unsigned __int16 unknown5C;
unsigned __int16 unknown5E;
unsigned __int16 pvpFrontlineWeeklyCampaigns;
unsigned __int16 enhancedAnimaGlassProgress;
unsigned __int16 unknown64[4];
unsigned __int16 pvpRivalWingsTotalMatches;
unsigned __int16 pvpRivalWingsTotalVictories;
unsigned __int16 pvpRivalWingsWeeklyMatches;
unsigned __int16 pvpRivalWingsWeeklyVictories;
unsigned __int8 maxLevel;
unsigned __int8 expansion;
unsigned __int8 unknown76;
unsigned __int8 race;
unsigned __int8 tribe;
unsigned __int8 gender;
unsigned __int8 currentJob;
unsigned __int8 currentClass;
unsigned __int8 deity;
unsigned __int8 namedayMonth;
unsigned __int8 namedayDay;
unsigned __int8 cityState;
unsigned __int8 homepoint;
unsigned __int8 unknown81;
unsigned __int8 petHotBar;
unsigned __int8 companionRank;
unsigned __int8 companionStars;
unsigned __int8 companionSp;
unsigned __int8 companionUnk86;
unsigned __int8 companionColor;
unsigned __int8 companionFavoFeed;
unsigned __int8 unknown89;
unsigned __int8 unknown8A[4];
unsigned __int8 hasRelicBook;
unsigned __int8 relicBookId;
unsigned __int8 unknown90[4];
unsigned __int8 craftingMasterMask;
unsigned __int8 unknown95[10];
unsigned __int8 unknown9F[2];
unsigned __int8 unknownA1[3];
unsigned int exp[26];
unsigned int unknown108;
unsigned int pvpTotalExp;
unsigned int unknownPvp110;
unsigned int pvpExp;
unsigned int pvpFrontlineOverallRanks[3];
unsigned __int16 levels[26];
unsigned int exploratoryMissionNextTimestamp;
unsigned short levels[26];
unsigned short unknown15C[9];
unsigned short fishingRecordsFish[26];
unsigned short fishingRecordsFishWeight[26];
unsigned short beastExp[11];
unsigned short unknown1EA[5];
unsigned short pvpFrontlineWeeklyRanks[3];
unsigned short unknownMask1FA[3];
unsigned char companionName[21];
unsigned char companionDefRank;
unsigned char companionAttRank;
unsigned char companionHealRank;
unsigned char mountGuideMask[17];
unsigned __int16 unknown15C[9];
unsigned __int16 fishingRecordsFish[26];
unsigned __int16 fishingRecordsFishWeight[26];
unsigned __int16 beastExp[11];
unsigned __int16 unknown1EA[5];
unsigned __int16 pvpFrontlineWeeklyRanks[3];
unsigned __int16 unknownMask1FA[3];
unsigned __int8 companionName[21];
unsigned __int8 companionDefRank;
unsigned __int8 companionAttRank;
unsigned __int8 companionHealRank;
unsigned __int8 mountGuideMask[17];
char name[32];
unsigned char unknownOword[16];
unsigned char unknown258;
unsigned char unlockBitmask[64];
unsigned char aetheryte[17];
unsigned char discovery[421];
unsigned char howto[33];
unsigned char minions[40];
unsigned char chocoboTaxiMask[8];
unsigned char watchedCutscenes[115];
unsigned char companionBardingMask[9];
unsigned char companionEquippedHead;
unsigned char companionEquippedBody;
unsigned char companionEquippedLegs;
unsigned char unknown519[4];
unsigned char unknownMask51D[11];
unsigned char fishingGuideMask[89];
unsigned char fishingSpotVisited[25];
unsigned char unknown59A[15];
unsigned char unknown5A9[2];
unsigned char unknownPvp5AB[2];
unsigned char pvpLevel;
unsigned char beastRank[11];
unsigned char unknown5B9[11];
unsigned char pose;
unsigned char weaponPose;
unsigned char unknownMask5C4[3];
unsigned char unknown5C9[2];
unsigned char challengeLogComplete[9];
unsigned char unknown5D4[11];
unsigned char unknownMask5DD[28];
unsigned char relicCompletion[12];
unsigned char sightseeingMask[26];
unsigned char huntingMarkMask[55];
unsigned char tripleTriadCards[30];
unsigned char unknownMask673[10];
unsigned char unknown67D;
unsigned char aetherCurrentMask[22];
unsigned char unknown694[3];
unsigned char orchestrionMask[40];
unsigned char hallOfNoviceCompleteMask[3];
unsigned char animaCompletion[11];
unsigned char unknown6CD[16];
unsigned char unknownMask6DB[11];
unsigned char unlockedRaids[28];
unsigned char unlockedDungeons[18];
unsigned char unlockedGuildhests[10];
unsigned char unlockedTrials[8];
unsigned char unlockedPvp[5];
unsigned char clearedRaids[28];
unsigned char clearedDungeons[18];
unsigned char clearedGuildhests[10];
unsigned char clearedTrials[8];
unsigned char clearedPvp[5];
unsigned __int8 unknownOword[15];
unsigned __int8 unlockBitmask[64];
unsigned __int8 aetheryte[17];
unsigned __int8 unknown258;
unsigned __int8 chocoboTaxiMask[8];
unsigned __int8 unknown11111[118];
unsigned __int8 companionBardingMask[9];
unsigned __int8 companionEquippedHead;
unsigned __int8 companionEquippedBody;
unsigned __int8 companionEquippedLegs;
unsigned __int8 unknown519[4];
unsigned __int8 unknownMask51D[11];
unsigned __int8 fishingGuideMask[89];
unsigned __int8 fishingSpotVisited[25];
unsigned __int8 unknown59A[15];
unsigned __int8 unknown5A9[2];
unsigned __int8 unknownPvp5AB[2];
unsigned __int8 beastRank[11];
unsigned __int8 pose;
unsigned __int8 weaponPose;
unsigned __int8 unknownMask5C4[3];
unsigned __int8 unknown5C9[2];
unsigned __int8 challengeLogComplete[9];
unsigned __int8 unknownMask5DD[28];
unsigned __int8 tripleTriadCards[30];
unsigned __int8 unknownMask673[10];
unsigned __int8 unknown5B9[11];
unsigned __int8 unknown5D4[11];
unsigned __int8 unknown694[3];
unsigned __int8 pvpLevel;
unsigned __int8 unknown67D;
unsigned __int8 howto[34];
unsigned __int8 minions[42];
unsigned __int8 watchedCutscenes[118];
unsigned __int8 discovery[421];
unsigned __int8 relicCompletion[12];
unsigned __int8 sightseeingMask[26];
unsigned __int8 huntingMarkMask[55];
unsigned __int8 aetherCurrentMask[22];
unsigned __int8 orchestrionMask[40];
unsigned __int8 hallOfNoviceCompleteMask[3];
unsigned __int8 animaCompletion[11];
unsigned __int8 unknown6CD[16];
unsigned __int8 unknownMask6DB[11];
unsigned __int8 unlockedRaids[28];
unsigned __int8 unlockedDungeons[18];
unsigned __int8 unlockedGuildhests[10];
unsigned __int8 unlockedTrials[8];
unsigned __int8 unlockedPvp[5];
unsigned __int8 clearedRaids[28];
unsigned __int8 clearedDungeons[18];
unsigned __int8 clearedGuildhests[10];
unsigned __int8 clearedTrials[8];
unsigned __int8 clearedPvp[5];
};

View file

@ -56,8 +56,8 @@ private:
auto item = player.addItem( itemId, 1, false, true );
if( item )
player.equipItem( Common::GearSetSlot::Ring2, item, true );
//if( item )
// player.equipItem( Common::GearSetSlot::Ring2, item, true );
player.setOpeningSequence( 1 );
Scene00001( player );
@ -65,12 +65,13 @@ private:
player.playScene( getId(), 0, NO_DEFAULT_CAMERA | INVIS_ENPC |
CONDITION_CUTSCENE | HIDE_UI |
HIDE_HOTBAR | SILENT_ENTER_TERRI_ENV, 0, 1, callback );
HIDE_HOTBAR | SILENT_ENTER_TERRI_ENV | SILENT_ENTER_TERRI_BGM | SILENT_ENTER_TERRI_SE |
DISABLE_SKIP | DISABLE_STEALTH, 0, 1, callback );
}
void Scene00001( Entity::Player& player )
{
player.playScene( getId(), 1, NO_DEFAULT_CAMERA | HIDE_HOTBAR, 1, 0x32 );
player.playScene( getId(), 1, NO_DEFAULT_CAMERA | HIDE_HOTBAR, 0, 0 );
}
void Scene00020( Entity::Player& player )

View file

@ -81,7 +81,8 @@ private:
player.playScene( getId(), 0, NO_DEFAULT_CAMERA | INVIS_ENPC |
CONDITION_CUTSCENE | HIDE_UI |
HIDE_HOTBAR | SILENT_ENTER_TERRI_ENV, 0, 1, callback );
HIDE_HOTBAR | SILENT_ENTER_TERRI_ENV | SILENT_ENTER_TERRI_BGM | SILENT_ENTER_TERRI_SE |
DISABLE_SKIP | DISABLE_STEALTH, 0, 1, callback );
}
void Scene00001( Entity::Player& player )

View file

@ -66,7 +66,8 @@ private:
player.playScene( getId(), 0, NO_DEFAULT_CAMERA | INVIS_ENPC |
CONDITION_CUTSCENE | HIDE_UI |
HIDE_HOTBAR | SILENT_ENTER_TERRI_ENV, 0, 1, callback );
HIDE_HOTBAR | SILENT_ENTER_TERRI_ENV | SILENT_ENTER_TERRI_BGM | SILENT_ENTER_TERRI_SE |
DISABLE_SKIP | DISABLE_STEALTH, 0, 1, callback );
}
void Scene00001( Entity::Player& player )

View file

@ -1694,19 +1694,18 @@ void Sapphire::Entity::Player::sendTitleList()
void
Sapphire::Entity::Player::sendZoneInPackets( uint32_t param1, uint32_t param2 = 0, uint32_t param3 = 0, uint32_t param4 = 0,
bool shouldSetStatus = false )
bool shouldSetStatus = false )
{
auto zoneInPacket = makeActorControl143( getId(), ZoneIn, param1, param2, param3, param4 );
auto SetStatusPacket = makeActorControl142( getId(), SetStatus, static_cast< uint8_t >( Common::ActorStatus::Idle ) );
if( !getGmInvis() )
sendToInRangeSet( zoneInPacket, true );
sendToInRangeSet( zoneInPacket );
if( shouldSetStatus )
sendToInRangeSet( SetStatusPacket );
else
queuePacket( zoneInPacket );
if( shouldSetStatus )
queuePacket( SetStatusPacket );
sendToInRangeSet( SetStatusPacket, true );
queuePacket( zoneInPacket );
setZoningType( Common::ZoneingType::None );
unsetStateFlag( PlayerStateFlag::BetweenAreas );