What's the origin of Fairmath?


#1

I’m curious about who discovered Fairmath, as it’s an interesting method for increasing and decreasing numbers on a 0-100 scale, with diminishing changes from 50.

However, when I search “Fairmath” in Google, the main results are all Choice of Games pages. I expected there to be a Wikipedia page or a math-related page explaining the origins of Fairmath. Is Fairmath an in-house term for an existing math operation, or did the Choice of Games staff invent Fairmath?


#2

Whistles whistle


#3

Thanks for the quick response! I checked the wikia earlier. While the Arithmetic Operators page does explain what Fairmath is and how it works, it doesn’t explain who originally made Fairmath, or of its use outside CoG. I’m especially curious if any other gaming developers use Fairmath.


#4

Oh, I thought you’re looking for the history of Fairmath in CScript.

I think Fairmath operator are exclusive for CScript, tho.
Besides, if there’re indeed another similar operator out there, I don’t think its developer will call it as “Fairmath.”


#5

I’m guessing the changes are based on a bell curve distribution? Not sure though, would have to ask COG :slight_smile:


#6

No! Not another probability and statistic! NOOOO!

*send help


#7

It’s hard to separate the idea of FairMath from the idea of stats. The core idea is that over the course of the game, we’d ask you questions pertaining to a stat. Sometimes we’ll want to increase the stat, sometimes decrease, sometimes by a little, sometimes by a lot. The idea of FairMath is to restrict the range of stats from 1 to 99, so you can say, “75 is pretty high!” without knowing that much about earlier choices in the game. I first encountered the algorithm in Alter Ego, but you could rediscover it yourself if you had the same problem to solve.


How do you keep track of your Fairmath?
#8

If you’re trying to find the formula:

The wiki is wrong where it says the fairmath formulas. The correct one is this (by me):

addition: round(x+((100-x)(y/100)))
subtraction: round(x-(x
(y/100)))

Where x is your starting percent and y is how much you’re changing it by.


#9

If you believe the wikia is wrong, could you make a comment on the relevant page? It needs updating if it is.


#10

I did leave a comment on the page.