Well...
In NPCkeeper.src make few setobjproperty for every created snake/monster/etc (if in npcdesc.cfg it have EXP). As i think you woul'd like to use such system for other NPC'es.
Your snake is lvl 1 and 100 exp
but for example you would like to have few snakes with different EXP and LEVEL.
Sooooooooo...
back to NPCkeeper
Code:
var pncfg := ReadConfigFile("npcdesc");
var maxlevel := pncfg[who.npctemplate].LEVEL;
var exp:=pncfg[who.npctemplate].EXP;
var lvl:=randomint(maxlevel)+1;
setobjproperty(who,"LEVEL",lvl);
setobjproperty(who,"EXP",exp*lvl);
rename(who,who.name+" [level:"+lvl+"]";
every lvl is worth lvl*exp
it's just my idea...