I understand now why xp curves on most games follow a mathematical (typically exponential) progression. Its easier to code xD
For example: xpToNextLvl = baseAmount^currentLvl * scalingFactor
So itll be a single check every xp gain event that compares current xp to the “xpToNextLvl” variable (which then only gets set whenever a level is gained).