From df35893d8f124e98f8a49f9f87bbd9c32236f055 Mon Sep 17 00:00:00 2001 From: collett Date: Tue, 7 Feb 2023 05:36:06 +0900 Subject: [PATCH] custom unlock options in PlayerSetup. --- src/world/Network/PacketWrappers/PlayerSetupPacket.h | 11 ++++++++++- src/world/Network/PacketWrappers/PlayerSpawnPacket.h | 2 ++ 2 files changed, 12 insertions(+), 1 deletion(-) diff --git a/src/world/Network/PacketWrappers/PlayerSetupPacket.h b/src/world/Network/PacketWrappers/PlayerSetupPacket.h index dc176dce..e2f24f56 100644 --- a/src/world/Network/PacketWrappers/PlayerSetupPacket.h +++ b/src/world/Network/PacketWrappers/PlayerSetupPacket.h @@ -75,7 +75,7 @@ namespace Sapphire::Network::Packets::Server // df stuff // todo: actually do this properly - // m_data.unknown70[4] = 1; // enable df + // m_data.unknown70[4] = 1; // enable df // enable all raids/guildhests/dungeons memset( m_data.unlockedDungeons, 0xFF, sizeof( m_data.unlockedDungeons ) ); @@ -83,6 +83,15 @@ namespace Sapphire::Network::Packets::Server memset( m_data.unlockedPvp, 0xFF, sizeof( m_data.unlockedPvp ) ); memset( m_data.unlockedRaids, 0xFF, sizeof( m_data.unlockedRaids ) ); memset( m_data.unlockedTrials, 0xFF, sizeof( m_data.unlockedTrials ) ); + + // uncomment to enable custom unlocks + + // everything + //memset( &m_data.unknownOword[ 0 ], 0xFF, reinterpret_cast< uint64_t >( &m_data.unknown5_55c ) - reinterpret_cast< uint64_t >( &m_data.unknownOword[ 0 ] ) ); + // or select options below + //memset( m_data.unlockBitmask, 0xFF, sizeof( m_data.unlockBitmask ) ); + //memset( m_data.mountGuideMask, 0xFF, sizeof( m_data.mountGuideMask ) ); + //memset( m_data.minions, 0xFF, sizeof( m_data.minions ) ); }; }; diff --git a/src/world/Network/PacketWrappers/PlayerSpawnPacket.h b/src/world/Network/PacketWrappers/PlayerSpawnPacket.h index 9e8df9e0..2b84da6d 100644 --- a/src/world/Network/PacketWrappers/PlayerSpawnPacket.h +++ b/src/world/Network/PacketWrappers/PlayerSpawnPacket.h @@ -149,6 +149,8 @@ namespace Sapphire::Network::Packets::Server { m_data.directorId = d->getDirectorId(); } + m_data.ownerId = 0xE0000000; + m_data.u22 = 0xE0000000; }; };