Such late era code isn't objective evidence...
I posted EQclassic code though, and it shows the source code from the Everquest Trilogy box (which is exactly the timeline for p99)
https://github.com/erfg12/EQClassic/...tack.cpp#L2454
if(GetLevel() < 10 && max_hit > 20)
max_hit = 20;
else if(GetLevel() < 20 && max_hit > 40)
max_hit = 40;
This seems like a better source than the EQemu code that sources from live client so late. And just seems to fit what we know about EQ much more closely (which is a more broader stroke with things, they only went in and started really refining a lot of exceptions as things went on.... like even stuff like vampiric embrace for necros and SKs were the same at first and then they split it off for balancing reasons as their own versions later).