Hey everybody! Me and a friend are making a joke idle game about bananas, and currently I’m implementing a banana tree that you can harvest. While I was scripting the random amount of bananas given, I came up with idea for a RNG module that would generate a set of random numbers that would have an average of your choosing.

Do you think the idea of a “Fair RNG” is a good idea, where in the end, you’ll get the same average value?

Let me know if you need any elaboration, and thank you!

I’m not following very well. Perhaps you could give an example or algorithm for your ‘fair’ RNG.

I don’t know whether to say math.random() is fair or not, but I do know you can reduce how much influence the RNG has on the experience. For example, you may want to give the player 15 bananas on average, but you don’t want the minimum and maximum banana amount to be given very often, so you could sample numbers from a Gaussian distribution centered at 15 with a standard deviation of 2 or just limit the range of a uniform sampling to 13 - 17 bananas.

The issue with that is that I want an upgrade that will increase the number of bananas you can get, but also increase the range. The method I described is kind of like Gaussian Distribution, except that when the random number generator is called, it generate a list of numbers that will have a mean of the specified number. So something like:

--Centered at 30, minimum 20, maximum 40, amount of values 6
{25, 35, 22, 38, 27, 33}

Just doing Gaussian Distribution (if I understand correctly) would still cause the same problem as just picking a random number.

A “Fair RNG” would be good, IF you actually made it fair, or actually distributes evenly. There are many instances where skill is your only chance of winning when the “RNG Gods” has chosen others