Originally posted by darrelljs
I don't think that is accurate. In my big science city game the number of GPP for my 40th GS was on the order of 30000. The decade increase makes it somewhat difficult to come up with a close form expression for GPP(n), the number of GPP necessary to generate your nth GP. The easiest way to do so is to break the formula up into two parts, one part to cover the current decade term, and another part to account for the previous decades.
The current decade term is fairly simple it is simply ceil(n/10)*C*(n%10), where C is the number of points required to generate the first GP (l100 for Normal, 150 for Epic, 300 for Marathon). The term ceil(n/10)*C simply reflects the multiplier for the current decade (at Normal speed it would be 100 for the 1st, 200 for the 2nd, etc.) while the term n%10 (where % is the modulo operator) accounts for the fact that the number increases linearly with the current decade multiplier. The previous decades term is a bit trickier, but can be handled if you recognize that the total can be written as a series. The simplest way to show this is to write out several decades for GPP(n):
GPP(n) = n*C, ------------------------- n <= 10
GPP(n) = 10*C + n*2*C, ------------------ 11 <= n <= 20
GPP(n) = 10*C + 20*C + n*3*C, ----------- 21 <= n <= 30
GPP(n) = 10*C + 20*C + 30*C + n*4*C --- 41 <= n <= 40
The series for the decade term is 0, 10*C, 10*C + 20*C, 10*C + 20*C + 30*C, …
This can be expressed as a difference equation d(k) = d(k-1) + 10*C*k= where k is the decade index and equals floor(n/10) and d(0) = 0. If we take the z-transform of this equation we find D(z) = D(z)*z^-1 + 10*C*z/(z-1)^2. Solving for D(z) gives 10*C*z^2/(z-1)^3. This can be re-written as 5*C*z/(z-1)^2 + 5*C*z*(z+1)/(z-1)^3 at which point the inverse z-transform is easy to take, giving 5*C*k + 5*C*k^2.
We can now combine the two terms to form an analytical expression for GPP(n):
GPP(n) = C*5*floor(n/10) + C*5*floor(n/10)^2 + ceil(n/10)*C*(n%10)
I tested this against several points calculated via spreadsheet (I went through 50 I believe) and it seems to be correct.
Darrell