You can nest fairly deep... maybe 7 levels? Here's what you just said:
=IF(ranks<1,-15,IF(ranks<21,ranks*3,IF(ranks<41,60+(ranks-20)*2,100+(ranks-40)*1)))
A lookup table makes more sense if you have different types of progressions. No real point if everything has the same progression.