Is the massive regen happening during combat or shortly after? Could it be that the rested regen is kicking in? Did you increase Character:ManaRegenMultiplier not realizing it also applied to bots?
If we step through the function, at level 10 in no gear, sitting, and with max (for their level) Meditate regen should be about
:
Code:
regen = ((((GetSkill(SkillMeditate) / 10) + (level - (level / 4))) / 4) + 4);
Pulling numbers for level 10, that's:
Code:
regen = ((((50 / 10) + (10 - (10 / 4))) / 4) + 4);
This comes out to 6, since regen is an int32 and the .5 remainder would be dropped.
After that:
Code:
regen += (itembonuses.HeroicINT / 25);
This can use either Int or Wis, and I believe should be 0 when naked (since it's referencing itembonuses, but I could be wrong about that), so regen += 0 or regen = 6 at this point.
Next:
Code:
regen = ((regen * RuleI(Character, ManaRegenMultiplier)) / 100);
Default Character:ManaRegenMultiplier is 100, so regen is unchanged.
Next:
Code:
float mana_regen_rate = RuleR(Bots, BotManaRegen);
You've set this to 4.0, so...
Code:
regen = (regen * mana_regen_rate);
This gets a bit hairy, though. The database notes state that Bots:BotManaRegen decreases regen as it's value is increased, but this code seems to suggest the opposite. In your case, this comes out to 24.
Am I missing something or is the note in the database incorrect regarding increasing BotManaRegen?