• 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!
  • 2026 staff recruitment is open! Check it out and consider applying!

TFS 0.X tfs 0.4 rev 3777 show lvl in experience and resets in level

vexler222

Active Member
Joined
Apr 22, 2012
Messages
714
Solutions
15
Reaction score
47
Hi, i have question how i can change this:
EXPERIENCE = LEVEL
LEVEL = RESETS

dqfwoz.jpg


my code

Code:
void ProtocolGame::AddPlayerStats(NetworkMessage_ptr msg)
{
    msg->put<char>(0xA0);
if (player->getPlayerInfo(PLAYERINFO_MAXHEALTH) > 0)
{
    msg->put<uint16_t>(uint16_t(player->getHealth() * 100 / player->getPlayerInfo(PLAYERINFO_MAXHEALTH)));
    msg->put<uint16_t>(100);
}
else
{
    msg->put<uint16_t>(0);
    msg->put<uint16_t>(0);
}
    msg->put<uint32_t>(uint32_t(player->getFreeCapacity() * 100));
    uint64_t experience = player->getExperience();
    if(experience > 0x7FFFFFFF) // client debugs after 2,147,483,647 exp
        msg->put<uint32_t>(0x7FFFFFFF);
    else
        msg->put<uint32_t>(experience);

    msg->put<uint16_t>(player->getPlayerInfo(PLAYERINFO_LEVEL));
    msg->put<char>(player->getPlayerInfo(PLAYERINFO_LEVELPERCENT));
if (player->getPlayerInfo(PLAYERINFO_MAXMANA) > 0)
{
    msg->put<uint16_t>(player->getPlayerInfo(PLAYERINFO_MANA) * 100 / player->getPlayerInfo(PLAYERINFO_MAXMANA));
    msg->put<uint16_t>(100);
}
else
{
    msg->put<uint16_t>(0);
    msg->put<uint16_t>(0);
}
    msg->put<char>(player->getPlayerInfo(PLAYERINFO_MAGICLEVEL));
    msg->put<char>(player->getPlayerInfo(PLAYERINFO_MAGICLEVELPERCENT));
    msg->put<char>(player->getPlayerInfo(PLAYERINFO_SOUL));
    msg->put<uint16_t>(player->getStaminaMinutes());
}
 
this is how you get a storage value:
C++:
int32_t value;
player->getStorageValue(RESETS_KEY_HERE, value);

just replace player->getPlayerInfo(PLAYERINFO_LEVEL) with value
replace experience with player->getPlayerInfo(PLAYERINFO_LEVEL)
replace player->getPlayerInfo(PLAYERINFO_LEVELPERCENT) to 0
 
Back
Top