DhaosCollider wrote: ↑Fri Sep 15, 2023 9:00 am
Twilurk wrote: ↑Mon Nov 06, 2023 8:46 pm
Also, the Give Highest Stat Gains at Level Up appears to be wrong. It's giving too many stats. When I manually save and reload a level up, I can never get the same stat growth you have implemented. I suspect you have an off by 1 error going, as it appears the growth you have for everything is 1 larger than the game implements.
- On my side, even if I verify it with save and load, it gives constant theoretical growth values.
- What do you mean by the game implements?
I found the theoretical growth values for each character from dissect data through debugging.
And growth values are usually determined between 0 and theoretical growth values.
I have done dozens of level ups and I cannot reproduce the growth you have here. They all seem to be off by exactly 1.
You can refer to this table I made. Left is the Level 2 stats produced by using the Highest Stat Gains at the start. Then Next column is Level 3 with the Highest Stat Gains. The Third column is the compiled maximum values I got by turning off Highest Stat Gains and running dozens of level ups from 2 to 3.
You'll see that they're all effectively 1 lower than the theoretical maximum your Highest Stat Gains does. The third column (The realized maximums from all the trials I ran) matches the stat gains listed in all the guides.
This is especially clear with STM and GUTS, where your Highest Stat Gains gives _double_ the gains in STM and GUTS every level. They should have a growth of 0 - 1 every level. Your version gives 2 every level.
If you check the code for UnityEngine.Random.RandomRangeInt at
[Link] it gives the following:
public static int Range(int minInclusive, int maxExclusive);
The max value you are feeding us back is +1 larger than the possible value that actually gets returned, because it's [min - max) as the range. The real max value is Max - 1.