Here’s the algorithms i tried, you can see the python code on GitHub: (previously used rot13 cause i wasn’t able to figure out how to do spoilers, it should really be a button in the editor pop up)
for each point i wish to assign i loop over the whole list. for each row i check whether it’s someone who succeeded or failed. then i compare each stat to my own. in the case of someone who succeeded, if their stat is higher i add 1 to a counter for that stat, if their stat is lower i reduce 1. if they failed i do the opposite (add 1 if their stat is lower, reduce 1 if their stat is higher). then i add one point to the stat which got the highest score, and loop again until i spent the last point.
this algorithm gave me the following stats at the end:
One problem with your strategy is that the stats follow a normal distribution. This means that there are more students with average stats. That’s why your algo invests in the lowest stat: because that’s the biggest delta in terms of students.
Here’s the algorithms i tried, you can see the python code on GitHub:
(previously used rot13 cause i wasn’t able to figure out how to do spoilers, it should really be a button in the editor pop up)
for each point i wish to assign i loop over the whole list.
for each row i check whether it’s someone who succeeded or failed.
then i compare each stat to my own. in the case of someone who succeeded, if their stat is higher i add 1 to a counter for that stat, if their stat is lower i reduce 1. if they failed i do the opposite (add 1 if their stat is lower, reduce 1 if their stat is higher).
then i add one point to the stat which got the highest score, and loop again until i spent the last point.
this algorithm gave me the following stats at the end:
cha: 9, str: 11, con: 14, dex: 13, int: 13, wis: 13
This is algorithm would usually just increase your lowest stat until it’s close to your other stats, which i’m not sure it’s such a great strategy.
You can do spoilers with
>!
although it’s kind of finicky.One problem with your strategy is that the stats follow a normal distribution. This means that there are more students with average stats. That’s why your algo invests in the lowest stat: because that’s the biggest delta in terms of students.
Thanks i updated my comment :)