Confused on Fairmath


I think I have the basic premise down, but I’m not sure. If you have 40%, you have 40% to lose, but 60% to gain, correct?

So lose would look like…40 %- 40=40-(.5*40)=40-20=20?

And addition would be…40 %+ 60=40+(.5*60)=40+30=70?

Is that basically how it works? And then for extremely low variables…

10 %- 10=10-(.5*10)=10-5=5?

10 %+ 90=10+(.5*90)=10+45=55?

And extremely high…

90 %- 90=90-(.5*90)=90-45=45?

90 %+ 10=90+(.5*10)=90+5=95?

Is that how fairmath works? And what would happen when you tried to work it out in ChoiceScript? Like, if you wanted to gain/lose 20. Would the equation work 90 %+ 20 or 90 %- 20?


TOO MANY SYMBOLS :open_mouth:

Should help explain it better if you read it, but here’s how I understand it. The higher the score is on a scale of 1 - 100, the harder it is to increase using a %+ operation. The lower, the easier.

Inversely, the higher that score, the easier it is to decrease using %-, whilst lower scores are difficult to decrease.

A 50 (or close to the middle) is equally easy/difficult to increase or decrease with the same %+ or %-.

Regarding adding/subtracting a perfect 20? Don’t bother with Fairmath, just use

*set var - 20


*set var + 20


It looks as though you almost have it right, from my understanding, at least.

How it actually looks, is like this, though (for very high variables):
90 %-90 = 90-(.9*90) = 90-81 = 9
90 %+90 = 90+(.9*10) = 90+9 = 99

The same goes for low variables. You just need to replace your .5 inside the parenthesis with the actual percentage change, meaning the same number as at the beginning just after the % sign.

So adding 60% to a value of 36 would look like this:
36 %+60 = 36+(.6*64) = 36+38.4 = 74.4, which would round to 74.

I hope this helps!


@Caddmuss My thoughts exactly. And I understand the finish (getting higher on higher is hard, getting lower on higher is easy, getting lower on lower is hard, getting higher on lower is easy) but I don’t understand the formula to do it.

~after reading the link~ Now I do! VICTORY! And thanks for the link. :smiley:

(The original formula is confusing, but once you substitute with random numbers, it works.


Formula for Fairmath addition= (x %+ y) = (x + (100-x)*(y/100))

Formula for Fairmath subtraction= (x %-y) = (x-x*(y/100))

Let x=40

Let y=20

Fairmath addition = (40 %+ 20)=(40 + (100-40)*(20/100))=(40+(60)*(.2))=(40+30)=70

Fairmath subtraction = (40 %- 20)=(40 - 40*(20/100))=(40 - 40*(.2))=(40-8)=32 )


@Galador. I realize that now. Thanks. :smiley:


After actually bothering to read the link myself, here’s how it really just looks to me.

50 %+ 10 = 50 + (10% of 50) = 55. Which is simple enough for most cases for me.

@Galador, I don’t think it will actually round that value for you. There’s the round(var) function for that.

I checked. I was wrong. It did round your values. I guess it was something else that I was doing where it didn’t round.


@Caddmuss I can’t work it like that. I have to see every itty-bitty step. Lol


The following is a post I wrote about 6 months ago to explain fairmath to someone else:

The complicated thing about Fairmath is understanding that increases are based on how much you still have to gain, while decreases are based on how much you have to lose.

So if you have say a strength of 40%, then there is only 40% you can lose, but 60% you can still gain. Therefore a 50% loss from a score of 40% will be smaller than a 50% gain, because half of 40 is less than half of 60.


40+(0.50*60) = 40+30 = 70 (50% of what you don’t have, gained)

40-(0.50*40) = 40-20 = 20 (50% of what you have, lost)

The difference is even more dramatic if your score is very high or very low. Lets say you have a strength of 90%, then you have have only 10% more that you can gain, but 90% that you can lose. So losing 50% or half of that 90% you already have would be far more than gaining 50% or half of the remaining 10% you don’t yet have.


90+(0.50*10) = 90+5 = 95 (50% of what you don’t have, gained)

90-(0.50*90) = 90-45 = 45 (50% of what you have, lost)

How do you feel about Fairmath?