AnatolyEE wrote:For newer blocks:
(TotalMagicItemsReceived * 2) / random(2, 15) > 0.5
Let's assume that random(2, 15) is uniformly distributed among integers, in which case each integer has 1/13 of a chance of being picked.
What then, are the odds, of getting magic after you've collected a certain number of magic items? We'll call this variable r instead of TotalMagicItemsRecieved just because.
If r=0, then you never get magic, since (2r) = 0
For r=1, then your odds are still 0, since the highest value you can have is r/2 = 0.5, which is not less than 0.5.
For r=2, your odds increase. (2r)=4 now, and now you can have random(2,15) pick any value less than 8 and be able to get a magic block. This is a little under 6/13 of your values.
See how quickly your odds rise based on one coin? You went from 0% to nearly 50% chance (upon collecting any coin) for magic.
AnatolyEE wrote:For + energy:
(TotalEnergy * 5 + GameLoginStreak * 150) - random(1, 10) * 850 > ~ 1500
This one grossly increases your chances for magic with a login streak, and again favors rewarding magic to people who already have lots of energy and magic.
Let's break down the rate of growth of each of your composite functions, replacing TotalEnergy with E and GameLoginStreak with G.
Broken down into composite functions you have f(E,G) = 5E + 150G, and this quantity is reduced by some number between 850 and 8500.
We have to do a small bit of multivariable calculus (sounds scarier than what's really being done) to analyze the growth rates of these functions, but the idea is that f(E,G) grows with the amount of energy or time spent in-game.
▼Relating Growth Rates of f(E,G) and rand(1,10)*850 with some math
∂f/∂E = 5+150G (G is constant)
∂f/∂G = 5E +150 (E is constant)
As you add more energy and more login streak, this grows, while rand(1,10)*850 will always be between 850 and 8500.
What this all means is that the more energy you add, the closer magic will appear to reach 100% chance, which is stupid.
AnatolyEE wrote:For + Total Energy:
(TotalEnergy * 2 - CurrentEnergyCount * 10) - random(1, 1000) > -200 and random(-100, 50) > 5
Two things need to be true here:
random(-100, 50) > 5, which has about a 44/150 chance of being true. For the sake of simplicity I'll round up to 30% (or 3/10) per coin.
and
(TotalEnergy * 2 - CurrentEnergyCount * 10) - random(1, 1000) > -200
This underlined formula favors high total energy and low current energy, so it would work best if you spent all your energy in the shop and collected coins.
The same criticisms as the + energy formula apply, you'll always be subtracting a smaller number, and as you add more total energy, this formula is more than -200 close to 100% of the time. Even with the random(-100, 50) > 5 statement, we're still talking about a 30% chance of magic per coin.
AnatolyEE wrote:For Energy Refill:
CurrentEnergyCount < 5 and random(1, 10) > 8 and random(1, 15) < 3
Odds of each one being true:
CurrentEnergyCount < 5 (nearly 100% of the time, is 100% after 13 minutes of not spending energy)
random(1, 10) > 8 (20% = 2/10)
random(1, 15) < 3 (3/15, 1/5, also 20%)
20% * 20% * 100% gives us the probability of all of these being true, which brings me to a grand total of 4% per coin. Which isn't horrible, but I have to again emphasize the fact that this is happening every time anyone ever collects a coin. That's a lot of magic.