Specifically, I'm looking for a way to maximize Speed within the confines of the vanilla game's allowable stats, and it seems like it could be done by only modifying a few values in code.
Recruiting a level 2 Assassin with 146 speed that I can nurture up to level 50 with 290 speed? Or recruiting a level 2 Ninja with 141 speed that could be leveled to 285? That's my goal!
I should also say that I've never done any game hacking before, so apologies in advance. But I have looked at enough in-depth guides that I understand how a new recruit's stats are generated.
Generally speaking, stats have a base (level 1) value which can vary from 95% to 115%. For example, a Ninja has a base speed of 120, but that can vary from 114 to 138. The actual process of getting base stats is as follows...
x = [Base Stat / 20]
r is a Random Number from 0 to 2X
y = (r 1+ r 2- r3 - r4) / 2
Final Base Stat = Base Stat + X + Y
So for an assassin with 125 Base Speed.
x = 125 / 20 = 6.25 which is rounded to 6 since it only uses the integer.
r is 0 to 2x or 0 to 12, each with an equal chance of being generated.
Best case for y is (12 + 12 - 0 - 0) / 2 or 12.
So the best level 1 starting speed for an assassin is 143. But the chances of actually getting that are extremely low, 1 in 28561 to be exact since the four random numbers have been perfect.
TL;DR
Is there a way to modify the four random numbers that go into generating a new recruit's starting stats? The perfect sequence would be 12, 12, 0, 0.
Recruiting a level 2 Assassin with 146 speed that I can nurture up to level 50 with 290 speed? Or recruiting a level 2 Ninja with 141 speed that could be leveled to 285? That's my goal!
I should also say that I've never done any game hacking before, so apologies in advance. But I have looked at enough in-depth guides that I understand how a new recruit's stats are generated.
Generally speaking, stats have a base (level 1) value which can vary from 95% to 115%. For example, a Ninja has a base speed of 120, but that can vary from 114 to 138. The actual process of getting base stats is as follows...
x = [Base Stat / 20]
r is a Random Number from 0 to 2X
y = (r 1+ r 2- r3 - r4) / 2
Final Base Stat = Base Stat + X + Y
So for an assassin with 125 Base Speed.
x = 125 / 20 = 6.25 which is rounded to 6 since it only uses the integer.
r is 0 to 2x or 0 to 12, each with an equal chance of being generated.
Best case for y is (12 + 12 - 0 - 0) / 2 or 12.
So the best level 1 starting speed for an assassin is 143. But the chances of actually getting that are extremely low, 1 in 28561 to be exact since the four random numbers have been perfect.
TL;DR
Is there a way to modify the four random numbers that go into generating a new recruit's starting stats? The perfect sequence would be 12, 12, 0, 0.