• There is NO official Otland's Discord server and NO official Otland's server list. The Otland's Staff does not manage any Discord server or server list. Moderators or administrator of any Discord server or server lists have NO connection to the Otland's Staff. Do not get scammed!

Compiling Bug Premium days

dervin13

Active Member
Joined
Apr 26, 2008
Messages
459
Solutions
1
Reaction score
28
Hi, when i try to change character and open the window to change the premium days isn't appear the real...
independent of your quantity of days it appears 32796


It's problem something here... When i change the is Premium and put 0x00 it appears always like free account... someone know how to fix it and appear the real days?
Code:
void ProtocolGameBase::sendBasicData()
{
    NetworkMessage msg;
    msg.addByte(0x9F);
    msg.addByte(player->isPremium() ? 0x01 : 0x00);
    msg.add<uint32_t>(std::numeric_limits<uint32_t>::max());
    msg.addByte(player->getVocation()->getClientId());
    msg.add<uint16_t>(0x00);
    writeToOutputBuffer(msg);
}
 
I already tried a lot of things but the only things that i get is Free Account or Gratis premium account or 32796 days .......
 
protocollogin.cpp
Code:
// Add premium days
    if (version >= 1080) {
        if (version >= 1082)
            output->addByte(0);
        output->addByte(g_config.getBoolean(ConfigManager::FREE_PREMIUM) || account.premiumDays > 0);
        output->add<uint32_t>(g_config.getBoolean(ConfigManager::FREE_PREMIUM) ? 0 : (time(nullptr) + (account.premiumDays * 86400)));
    } else {
        output->add<uint16_t>(g_config.getBoolean(ConfigManager::FREE_PREMIUM) ? 0xFFFF : account.premiumDays);
    }
 
Back
Top