Writing a BigInt class is programming 101, and in fact has been a built in class in Java since 1.1 The issue is that since it is not a primitive object it adds more overhead, and overhead can quickly add up on the client, the game server, and the database server The limit could be increased to 4,294,967,295 by using bitshifting, but that would require an overhaul of most of the game engine to handle. It could also be increased to 2^63-1 by using a long type, but that would most likely double the client and server memory requirements. I just registred for this and you beat me to it :P My best guess is that they use a long for total xp or the just sum up the other entries into a BigInt.