City growth rate formula
Posted: Fri Jul 01, 2011 11:09 pm
Can someone help me verify this. The strategy guide page 196 states the city growth formula to be:
Base Growth Rate = (Max Size - Current Size + 1) / 2 (rounding up)
Actual Growth Rate = (Base Growth Rate * 10) + applicable mods from granary, farmer's market and race
Now, they also state an example of a city max 22 current size 12, saying this would be
(22 - 12 + 1) / 2 = 4.5, rounded up to 5.
That's just wrong, (22 - 12 + 1) / 2 = 5.5 not 4.5. Having tested this a bit by trying some cities in the original MoM using races with no growth modifier (like high men), with no granary and no farmer's market, constructing something other than Housing, I believe the example is right and the formula is wrong. I think its actually -1 not +1, so
Base Growth Rate = (Max Size - Current Size + 1) / 2 (rounding up)
The example is then (22 - 12 - 1) / 2 = 4.5, so is then correct.
If anyone can test this out a bit to verify what I found that would be a great help :) I spotted this by writing unit tests against the Java code. I think the old Delphi MoM IME code is also wrong, because I just wrote it like the formula said and assumed it was right.
Thanks :)
Base Growth Rate = (Max Size - Current Size + 1) / 2 (rounding up)
Actual Growth Rate = (Base Growth Rate * 10) + applicable mods from granary, farmer's market and race
Now, they also state an example of a city max 22 current size 12, saying this would be
(22 - 12 + 1) / 2 = 4.5, rounded up to 5.
That's just wrong, (22 - 12 + 1) / 2 = 5.5 not 4.5. Having tested this a bit by trying some cities in the original MoM using races with no growth modifier (like high men), with no granary and no farmer's market, constructing something other than Housing, I believe the example is right and the formula is wrong. I think its actually -1 not +1, so
Base Growth Rate = (Max Size - Current Size + 1) / 2 (rounding up)
The example is then (22 - 12 - 1) / 2 = 4.5, so is then correct.
If anyone can test this out a bit to verify what I found that would be a great help :) I spotted this by writing unit tests against the Java code. I think the old Delphi MoM IME code is also wrong, because I just wrote it like the formula said and assumed it was right.
Thanks :)