Closed ErikMcClure closed 9 years ago
I'm super-gung-ho about increasing the pony count drastically and marking specific friendships, and if that's a direction you want to head eventually it will necessitate rebalancing anyway. I think balancing needs to be considered more long-term than short-term.
Specifically, if you want to add more ponies you have to remove the exponentials and factorials which rely on them. Exponentials belong as enhancements, which can be limited. I mentioned this on the other topic.
I think you're going to start running into problems if you increase the pony count and decouple it from friendships, because then it becomes enormously difficult to parameterize. However, we want to encourage more friendships anyway, which means most of the functions that we add should have the friendship component dominate the growth function in the long term.
Pony growth wouldn't be a problem if friendship costs became relativistically cheaper as the number of ponies increased (which is kind of what you just said I think).
Pony Clicker needs to be rebalanced in a more consistent way. In order to achieve this, there must be some way to numerically codify the growth rate of any elementary function. However, this is nontrivial, because growth rates don't work like that - they obey the Big O notation and fall into certain discrete categories based on the mathematical operations involved.
Pony Clicker is predicated on the idea of buying items with ever increasing growth rates, but in order to accurately balance the game, the growth rate increase needs to approximate a smooth curve. There are a few ways to deal with this. If we define 0 as a lower limit and pick some arbitrary higher limit (1 nonnillion?), we can take a finite segment of the growth rate curve. We could either try to measure the curvature of the curve, measure the y-intersect of the curve at our limit, or take the angle of the y-intersect from the vertical (so very fast growth would be near 0 degrees, very slow would be near 45 degrees).
Once we pick some numerical codification of the growth rate, we can map this to a curve and ensure we pick functions that follow some linear or otherwise smooth increase in growth rate. It is crucial that the functions we choose prioritize Friends over Ponies as much as possible. This ensures that it is always to the players advantage to maximize friends, which lets us parameterize ponies in terms of friends (by solving an inverted triangular number relation, which the code does right now). How buildings will be handled is still up for debate - one possible change would be for a building to only be able to benefit from itself and buildings below it. This would make it easier to do a hueristic function on guessing how many buildings the player likely owns at some point.
Once we have growth rates stretching over a known curve, we can more accurately model what the cost curve of each building must be in terms of it's growth rate and the growth rate of the buildings preceeding it. Then an initial cost curve can be chosen such that each new building roughly doubles the SPS when it is first bought (which is what cookie clicker does, or some other curve value can be chosen).
This should allow the progression of the game to be calculated over a per time basis, on the assumption of clicking the pony once per second, which can then be adjusted to fit how long we want the endgame to take, and where we would want to trigger the mirrorpocalypse (see #27 )
Thoughts? Better ideas? Good growth rate classification schemes I don't know about?