Secrets and I worked on this a bit tonight. It looks possible, with the exception of one area:
Code:
struct LevelUpdate_Struct
{
/*00*/ uint32 level; // New level
/*04*/ uint32 level_old; // Old level
/*08*/ uint32 exp; // Current Experience
};
Looks like it sends the xp to the client :( I am compiling the server as we speak to see if it will work with changing that as well to a long long. If this does not work, I will also try not sending the exp variable in the packets to the client, I think this may cause you to have to zone to update the level, but hey can't hurt to try (heck if it works I might have done something productive for once!).