Skip to main content

On Sale: GamesAssetsToolsTabletopComics
Indie game storeFree gamesFun gamesHorror games
Game developmentAssetsComics
SalesBundles
Jobs
TagsGame Engines

Mentalup functions reapply racial bonuses. This seems to fix it:

person.stats[mental+"_base"] += 1

can you give an example in gameplay of when this is happening (for example when you use learning points to boost a mental stat)?  I have not experienced this in my playthroughs recently (thought I fixed where it had been happening prior to releasing).

It happens when using learning points to increase a stat. In my case a 92% human and 8% demon got 3 charm for +1. I tested it by starting a new game with a demon slave and learning charm, she got 11 points for every +1. I used a fresh installation I downloaded a week ago as well and it still happened.

The source of the problem is cour_get, conf_get, wit_get, and charm_get in person.gd combined with the +=. Whenever those 4 mental stats are retrieved via the setget variables rather than directly through the stats dictionary it returns the sum of the racial bonus and the base values. So the += in mentalup of slave_tab.gd, and any other similar code, will add the racial bonus to the values stored in the person. The mental stat getter functions were changed by Aric's mod in a dangerous way, and a lot of work would be needed to fix all cases.

Basically, when this code runs

person[mental] += 1

and mental is "cour", it is equivalent to

person.cour = floor(stats.cour_base + stats.cour_racial) + 1