# Stat redistribution

## Recommended Posts

Stat redistribution, to me, in I.E. character generation seems wonky.

To change from a 17 to an 18, using 3d6, you go from 1/54 to 1/216, the chance to get a 13 vs a 12 is so much less of a delta (56/216 vs 81/216), but you can use that pip to change a 17 to an 18.

So, instead, I thought, why not credit the user with the number of chances in 216 that the change takes, and charge likewise?

But, then you get diminishing returns on the downside, instead, we want the downside to continue getting stronger, instead of tapering off. So, below 11, we just stay at 2/216...

18 216 -> 236

17 54 -> 74

16 22 -> 42

15 11 -> 31

14 6 -> 26

13 4 -> 23

12 3 -> 20

11 2 -> 18

10 2 -> 16

9 1 -> 14

8 1 -> 12

7 1 -> 10

6 1 -> 8

5 1 -> 6

4 1 -> 4

3 1 -> 2

So, for instance, changing a 16 to a 15 gives you 11 pts, enough to raise an 7 to a 12. But to go the other way, you'd need to drop a 12 to a 7 to raise a 15 to a 16.

Dropping an 18 to a 17 would give you a whopping 162 points... enough to raise a number of stats to 16, or a couple to 17.

The advantage is that the probability of the roll would stay roughly the same (unless you dropped stats very low, where the probability would fall precipitously for little gain on the positive side).

Am I being a wombat again?

I think this is very easy to implement.

There is already something like this in the iwd2 version of chargen.

If you want to implement it, i'll merge it into the source.

doesn't iwd2 just make the cost equal the current stat modifier? At least for the positive ones.

I think this is very easy to implement.

There is already something like this in the iwd2 version of chargen.

If you want to implement it, i'll merge it into the source.

Sure, make me go, get an SVN client, get a compiler, RTFS and write the extension.

Sure. Why not :-) Sounds like fun! I hope your code is clean, man.

Nah, you don't need a compiler.

The CG scripts are python scripts

However, getting an SVN client sounds like a good plan, it isn't necessary to get going.

OK, it looks like the changes would be in GUICG4.py in the def RightPress() and def LeftPress() functions.

Of course, I can't really work with it until I get GemRB actually working, but, at least I know what needs to be done where.

OK, as long as I was in there, I corrected behavior to reroll instead of adjust, with a setting of the min to the max for a stat if the min would be higher than the max.

You want I should mail it to you so you can make it optional?

Oh, and the initializing screen after you push the New Game button is gone, giving you a long period as the resources are initialized with no UI. BG2 used the standard loading screen, I think.