Thanks, I will test this new code as I see what you're getting at. I was not able to replicate any issues with the code as it is though, but the updated code does look like it makes sense.
Actually that code is identical with yours, the only difference is that is a bit optimized.
Was more like a joke, than anything else.
And I'd like to be believe, that your response was also made in a joking mood.
(if you give a value a specific number, it does not matter, if you give that number in one or in two steps... The result is the same...) this comment was not for you, but for a "genius" that likes to comment.
As for the problem/bug in your code it does exist and is easier noticed if one plays as a male character.
And the idiot that responded earlier, sorry I meant genius, encountered it.
The "score multiplier recalc" almost never gets triggered (unless the mc becomes female) and this means:
1st) that exp multiplier remains static and not updated
2nd) that your script does not work as you intended (in v16.x it worked correctly)
To verify, just create a character with minimal stats and perform only fitness sessions until the exp changes by 1. Then check the xp multiplier and you'll see that has not changed at all. And unless the mc transforms to female it will never change.
You should be able to fix this easily with using some if: else: commands or by calling the score_mult command when the time or the day changes.
On the other hand, you may also want to keep this bug/behavior, since with this a loser character with only 3 total stats can stop being a looser
edit: in the previous screenshots it happened, because I created a strong character and used mutatio to drop the stats, and right after that, I triggered a hidden event.... so I thought that the xp multiplier was overwritten by the hidden bonus, but it wasn't... It remained static at the initial low number + the bonus