Integer generates values outside of it's allowed range

Hey all, I’m working on setting up stats for the npc in my game and the stats are tied to their physical characteristics. For right now all I got is “age” and “weight”. It’s all random gen and each npc has it’s own unique stats and hud the the numbers are bound too.

My problem is the math is not checking out and the huds are displaying numbers that shouldn’t be allowed. For example if a character is “fat” they’re agility can only be between -2 and 0. (The agility from their age modifier gets added as well) and then it is bound to the hud and displays your final number.

If you mouse over it says why it is that number. (+1 agility from age, -2 from weight)

But it’s saying numbers and maths that are incorrect and shouldn’t be allowed from the code

Any help appreciated.

EDIT: Function was pure that messed up the math for some reason.