
Originally Posted by
Darkicon
Why bother hard coding it into the client? All you have to do is add the level stats to the DB and set the max level in the config. Hard coding it is an excessive amount of work for the same result. Unless you're adding custom stuff to the game, like new classes or textures, etc., you never really need to modify the client.
Also, the level cap is 255 due to it being an unsigned 8-bit integer (0-255). You'd have to modify the core and change the data type to something like a 16-bit unsigned integer (Max = 65535) in .\src\game\Entities\Unit\Units.h as well as defining the hard max level in .\src\server\game\DataStores\DBCEnums.h as well as changing the data type for levels in the DB tables from an unsigned tinyint3 (0-255) to something like an unsigned smallint6 (Max = 65535). There's actually a lot more core components that would need to be edited like .\src\game\Entities\Player\Player.cpp. You actually need to change the data type for levels in EVERY core component it's defined in and EVERY DB table. It's way more work than it's worth.
The big downside: Stability. If you do this, you will experience core instability and errors which you will need to fix. However, you can safety stick with the default cap of 255, add the data to the DB for levelstats and not experience instability.