Skip to content

Instantly share code, notes, and snippets.

@cydh
Last active April 8, 2022 16:37
Show Gist options
  • Star 2 You must be signed in to star a gist
  • Fork 3 You must be signed in to fork a gist
  • Save cydh/d82a06472f12c4ec7f38ab3de22fe86b to your computer and use it in GitHub Desktop.
Save cydh/d82a06472f12c4ec7f38ab3de22fe86b to your computer and use it in GitHub Desktop.
How to change MAX LEVEL from 99 to 255 for rAthena

How to change MAX LEVEL from 99 to 255 for rAthena

Adding EXP tables for Base Level 255 from level 99

All you need is Notepad++ to change max level from 99 to 255 by editing the job_exp.txt file. Follow these quick instructions:

  1. Open job_exp.txt (pre | re) by using Notepad++
  2. Create a new blank file
  3. Makes 156 empty lines, because to add max level from 99 to 255 needs 156 more EXP entries 156 empty lines
  4. In that empty blank file at first line, click Edit menu > choose Column Editor..., or press ALT+C Open Column Editor
  5. Now select the bullet for Number to Insert
  6. As example, the last EXP for level 99 is 4,0000,000 and you want to add 70,000 EXP gap from level 100 to 255. So write 4070000 at Initial Number
  7. Then write 70000 at Increase by, press OK. Column Editor
  8. New EXP values from 100 to 255 are generated in 156 lines EXP result
  9. To make sure no extra space, you can click Edit menu > Blank Operations > Trim Trailing Space Remove trailing spaces
  10. Press CTRL+H to replace that 156 lines for EXP from level 100 to 255 becomes CSV format.
  11. At Find what, write \r\n for Dos\Windows EOL or \n for UNIX EOL.
  12. At Replace with, write , (a comma) Replace EOFs to commas
  13. Press Replace All
  14. Select all the entries, copy it Extra EXP table for level 255
  15. Paste to job_exp.txt file before the 99999999 and add extra , (comma). That 99,999,999 is the max EXP for character at max level
  16. Now change the 99 to 255 for max base level! New job_exp.txt up to level 255

Edit the src file

  1. Open src/map/map.h
  2. Find #define MAX_LEVEL Find MAX_LEVEL in src/map/map.h
  3. Change to #define MAX_LEVEL 255 so job_exp.txt is ready for Max Level 255! Change Max Level to 255
  4. Recompile the map-server.

Client does not show aura based on Max Level

You must know that client has 'hardcoded' check to marks if the player has to aura or not. By default, client will sets aura for level 99 or normal and 2nd-trans jobs, 150 for 3rd clases on older clients, 160 (Kagerou/Oboro, Rebellion, Expanded Super Novice), and 175 for latest clients. Someho you can trick the client by using 'hey, my server max level is 255, so don't set aura for char below level 255' by edit these 2 configs at conf/battle/client.conf

// Maximum allowed 'level' value that can be sent in unit packets.
// Use together with the aura_lv setting to tell when exactly to show the aura.
// NOTE: You also need to adjust the client if you want this to work.
// NOTE: Default is 99. Values above 127 will probably behave incorrectly.
// NOTE: If you don't know what this does, don't change it!!!
max_lv: 99

// Level required to display an aura.
// NOTE: This assumes that sending max_lv to the client will display the aura.
// NOTE: aura_lv must not be less than max_lv.
// Example: If max_lv is 99 and aura_lv is 150, characters with level 99~149
//          will be sent as being all level 98, and only characters with level
//          150 or more will be reported as having level 99 and show an aura.
aura_lv: 99

Remember that there is no flawless trick.

@simplyniceweb
Copy link

i changed the job level to 120 so my initial number is 3470000, 21 lines, yeah 70k gap also, is that correct?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment