Bon je crois que j'ai fini par trouver.
En fait c'était un problème d'arrondi entre els fonctions round() et floor(). L'une était utilisée pour 'laffichage des sorts, l'autre pour le calcul de leurs effets, du coup, quand la magotte faisait le minimum, une chance sur deux d'obtenir un point de moins que ce qu'elle croyait être son minimum.
Voilà voilà.