New Population Growth Mechanic [ACCEPTED]

Implement new Growth System or keep old Growth System


  • Total voters
    27

raystuttgart

Civ4Col Modder
Joined
Jan 24, 2011
Messages
9,637
Location
Stuttgart, Germany
Somehow I really never liked the Vanilla Growth mechanic.
It is simply boring and unimmersive ...

No matter how big the Colony is as long as there is food, nothing else matters.
Drop 200 Food and boom a new settler is born ... yeah, that is fun. :rolleyes:

This post is kind of outdated because it was considering randomness.
(In hindsight that was actually a bad idea - thus a new concept was created.)

The most current concept without randomness is here.

Outdated / old concept:
Spoiler :

-----------

The main change I suggest is that Food is becomes just a precondition but Food alone does not suffice.
So yeah, it will still be needed and consumed but there are other conditions that actually trigger Growth.
  • Food --> Precondition to check if Growth is possible, but will not directly trigger Growth
  • Population + Health + (Net) Happiness --> Chance for Growth per turn in % (if enough Food)
  • Min Chance for Growth per turn (if enough Food) --> 10% (to ensure that small Cities will also grow)
  • There might be Traits, Civis or Techs that increase chances of Growth per turn
In other words:
The mechanic algorithm I suggest works a bit like "Learning by Doing".
(It uses Threshods and Chances. Thus it is not deterministic anymore.)

-----------

This would lead to the following:

1) Small Cities will grow slower. City spamming might be reduced. <---------- This I really like.
2) Unhealthy Cities will grow slower. Health more important. * <---------- This I really like.
3) Unhappy Cities will grow slower. Happiness more important. ** <---------- This I really like.
4) Generally Growth over all will be reduced. Early game more challenging. <---------- This I really like.
5) Food may become more interesting for trade, not just "Birth rate enhancer". <---------- This I really like.
6) More potential to create Traits, Civics and Techs for the future. <---------- This I really like.

* Health already influences Growth Thresholds, now it would also influence Growth chances.
** Happiness also already influences Growth Thresholds, now it would also influence Growth chances.

-----------

What about AI?:
We might need to give AI a bit easier rules because it may not focus that much on Health and Happiness.
But generally this mechanic should work for AI as well and we should be able to teach this to AI.

What about the effort to implement it?:
Considering effort this is a piece of cake. Also balancing should not be that much of an issue.
But as I said above, I would need to give AI easier rules - otherwise effort may become higher.

What about peformance?
Performance impact is basically near 0. This would be checked only if Food threshold is reached.
Also the logic in itself is so simple that it is near impossible to notice a difference in performance.

What about new players?
Well, it needs to be explained of course. (e.g. in Colopedia and Forum)
I for sure expect some false bug reports, but once we explain things it should be ok.

Will this be XML configurable?
Of course, all of the variables discussed will be in GlobalDefinesAlt.xml.
You will even be able to completely deactivate this mechanic and switch to Vanilla.

-----------

Summary:

Food bombing alone will not cause instant growth anymore.
If Population is small or city is unhealthy or unhappy you may still have to wait a few turns.

Also, there is a bit of luck involved and thus also a bit of surprise.
(I am not necessarily a fan of these deterministic systems.)

-----------

Well that is it already. :dunno:
Looking for feedback. :)
 
Last edited:
I also think it would be interesting if the new citizen was not necessarily a "Free Colonist". For instance, depending on the population makeup of the colony, a new citizen could be a slave (African or Native), converted native, indentured servant, etc.
 
In civ5 and civ6 food consumption grow exponentially (civ4 also require more food when the pop grows though). We could adopt a similar mechanic and while a colonist would still require 2 food at size one, we may set the parameters so that the food consumption at size 10 could perhaps be 3 per colonist.
Alternatively we could decouple population growth from food by having a separate "growth potential" (terrible description I know) that would determine the rate of population increase. Perhaps this worked like a timer so that every 5 turns a check would be made against the available food and then subtract the food (or subtract the food linearly I suppose) and add the pop unit. This would act as a rate limiter but also require food to be present for the actual growth to happen.

I fully agree that we have to remove the "food dump insta-growth" exploit (at one point I even thought about teaching this to the AI!) and the separate growth rate variable would take care of that. Modulation the growth rate by taking into account the health, happiness etc. could be an interesting mechanic IMHO
 
I fully agree that we have to remove the "food dump insta-growth" exploit
I agree exploits are generally bad and we should try to avoid them. This specific issue has become worse with WTP because there are buildings, which lowers food requirements for growth. However we need to make sure a fix is indeed better and it won't break any existing features. My first thought was that in my current game the gold is in the middle of the desert. It's quite literally impossible to farm on any plot within reach. As a result I ended up with a mining colony, which has food imports using the trade route system. A new growth system should not hurt the abilities to do setups like this.

Also as I recall you can only get one unit each turn. You can't just dump 1000 food in a colony and get 5 units in one round.

Maybe the solution is to keep the current system, but add some sort of cooldown system. Growing a unit adds say 200 to the cooldown and it drops each turn based on stuff in the colony. Eventually it will be back to 100 where it will stay. This way getting 2 units at once takes 200 +(200*300%)=800 food, but then another 200 is added to the counter and the next unit will cost 200*500%=1000 food. Naturally if no food is moved in by units, the cooldown counter should go back to 100% by the time there is enough food to grow and each unit cost 200. One bonus of this system is that it will keep the current system (easy to use/understand for players) and adding a multiplier is fairly simple to code. The real question is if it will provide the wanted result.
 
Maybe the solution is to keep the current system, but add some sort of cooldown system. Growing a unit adds say 200 to the cooldown and it drops each turn based on stuff in the colony. Eventually it will be back to 100 where it will stay. This way getting 2 units at once takes 200 +(200*300%)=800 food, but then another 200 is added to the counter and the next unit will cost 200*500%=1000 food. Naturally if no food is moved in by units, the cooldown counter should go back to 100% by the time there is enough food to grow and each unit cost 200. One bonus of this system is that it will keep the current system (easy to use/understand for players) and adding a multiplier is fairly simple to code. The real question is if it will provide the wanted result.

Perhaps also increasing the food cost of each new unit based on the total number of land units would also help. For example at the beginning of the game when you have only 2 units the cost is 200, but then when you reach 50 land units the cost goes up to 250, and so on (then it could be +1/+2 food for each unit, or other values the larger the population). This would help balance the mid and late game more. as this would avoid the snowball effect, where from a certain point the player has a huge number of units that are also obtained in villages by conversion, or bought in Europe/Africa.


If necessary, perhaps, also create an effect that every turn a small amount of food is lost from the town's stockpile until the Granary/mill building is constructed and prevents food from being wasted by rotting.
 
I also think it would be interesting if the new citizen was not necessarily a "Free Colonist". For instance, depending on the population makeup of the colony, a new citizen could be a slave (African or Native), converted native, indentured servant, etc.
That is why we have this feature concept here:
 
So ok, I thought about this once more and tried to design a new "Growth System".

To trigger Growth, "Growth Points" need to be gathered in the City

"Growth Points" are gathered by this simple formula:


if (Net Food Produced > 0)
{
Growth Points
+= Food Consumed + (Net Health + Net Happiness + Net Law) / 3 + BASE_GROWTH_POINTS_PER_TURN *
}


By the way:

if (Net Health + Net Happiness + Net Law) / 3 becomes very negative it could reduce all Growth Points to 0.
(But it will be checked that the Growth Points per Turn and the overall Growth Points never become negative.)

Remark:

"Food Consumed"
and "Population" are basically almost the same considering the formula.
(It just feels a bit more realistic to use "Food Consumed" which in current balancing is still basically just "Population * 2".)

Growth Happens if these simple equations are both true:

Growth Points
>= Growth Threshold **
AND
Food Stored
>= Food Growth Threshold ***

Food Growth Threshold = Growth Threshold + City Population


------------

By the way:
There is no randomness involved, it is still deterministic.

Also in case it is not clear:
Growth
would still consume Food as it does right now.
(That why "Food Stored" > Growth Threshold is still there.)

------------

* This is going to be a setting in XML to guarantee that also small cities grow.
** This is the same Growth Threshold that we already have now.
*** So Food Stored will still be a precondition and the Food will also be used up.

------------------

So what will actually change ?

Food Stored
is just a "precondition" for growh, but growth must happen organically by "Growth Points".
Just dumping 200 Food into a City for instant growth will not work anymore because the City will still need to gather "Growth Points".

Otherwise it is as I wrote here:
1) Small Cities will grow slower. City spamming might be reduced. <---------- This I really like.
2) Unhealthy Cities will grow slower. Health more important. * <---------- This I really like.
3) Unhappy Cities will grow slower. Happiness more important. ** <---------- This I really like.
4) Generally Growth over all will be reduced. Early game more challenging. <---------- This I really like.
5) Food may become more interesting for trade, not just "Birth rate enhancer". <---------- This I really like.
6) More potential to create Traits, Civics and Techs for the future. <---------- This I really like.

-------------------

Well, I am looking for feedback. :)
I also added a poll to the this thread. :thumbsup:
 
Last edited:
Sounds excellent! Have you thought about implementing also the effects of demanded goods on growth? For example, if 50% of the specialists demand in cigars, wine, etc. is covered, it would add to growth points? A sort of "city attractiveness" mechanic related to the city supply.
 
A sort of "city attractiveness" mechanic related to the city supply.
Those factors are already considered in "Happiness" and thus also indirectly in the "Growth Points". :)
("Happiness" includes many other factors that could be considered "city attractiveness" ...)

Also I do not want to make the formula above much more complicated.
(At the moment it is still easy to understand and visualize in Mouse-Over.)
 
Last edited:
Yes.

A cooldown system, as suggested by some, feels like a cheap hack. The original idea sounds better.

My opinion is that the city growth mechanic should be changed. I don't think it is a problem if the conditions are complicated and I agree it should be deterministic. The player should be able to identify if there is less than ideal conditions, of which there should be many when growing a colony. The growth points proposal would appear to satisfy this criteria, which is why I would support it.

The most important thing is ending the too easy moving of food in and out of colonies (exploit?) to spawn colonists.
 
Last edited:
The growth points proposal would appear to satisfy this criteria, which is why I would support it.
That is why I have chosen a deterministic approach in the end over an weighted randomness.
The player will be able to control and understand what is happening and it will be easier to visualize.

The most important thing is ending the too easy moving of food in and out of colonies (exploit?) to spawn colonists.
I fully agree with that. Also I consider it pretty boring and not really immersive to just consider food.
But like with so many of the changes I suggest people are afraid of more complexity being added to the mod.

-----

Well like always there are 2 conditions for this to be implemented:

1) about 66% of community being in favour (poll options 1 an 3, which is currently achieved)
2) no team member using his veto right to block it (which is currently not sure)

-----

So let us keep this poll open for a bit longer and see what happens. :dunno:
(I want to see how this develops over until maybe end of January.)
 
That is why I have chosen a deterministic approach in the end over an weighted randomness.
The player will be able to control and understand what is happening and it will be easier to visualize.


I fully agree with that. Also I consider it pretty boring and not really immersive to just consider food.
But like with so many of the changes I suggest people are afraid of more complexity being added to the mod.

-----

Well like always there are 2 conditions for this to be implemented:

1) about 66% of community being in favour (poll options 1 an 3, which is currently achieved)
2) no team member using his veto right to block it (which is currently not sure)

-----

So let us keep this poll open for a bit longer and see what happens. :dunno:
(I want to see how this develops over until maybe end of January.)
Seems like you might have a problem since so many people dislike change. I suggest lose the polls and have confidence in your vision. Since when was modding a democracy?
 
Since when was modding a democracy?
Since we are a team project and not a "one man mod" and we cannot afford to get single team members frustrated and stop contributing or even leave the team.
In a team of equals it is important that all voices are heard and decisions are made as consense without just overruling single members that may be a bit less vocal.

To clarify:
This is not "ray's mod" - even if community often falsly seems to believe simply because I am most vocal and the most active feature designer. ;)
We are about 7 contributing team members currently working on the mod. The others are just a bit more silent in public and prefer to discuss internally.
But a mod is made up of much more than just features - there are also bugs to be fixed, AI to be trained, graphics to be created, texts to be written, Maps to be created, ...
 
Y
Since we are a team project and not a "one man mod" and we cannot afford to get single team members frustrated and stop contributing or even leave the team.
In a team of equals it is important that all voices are heard and decisions are made as consense without just overruling single members that may be a bit less vocal.

To clarify:
This is not "ray's mod" - even if community often falsly seems to believe simply because I am most vocal.;)
We are about 7 contributing team members currently working on the mod. The others are just a bit more silent in public and prefer to discuss internally.
Yes you are right. I didn't mean to cause offense to WTP team members or anyone else.

My apologies.
 
This here is outdated.
It was replaced by this here.
Spoiler :

I would prefer that we also find a way to scale the required food for growth by the city size to reign in "super-cities" a bit.
Ok, what if we adjust the conditions for Growth like this? :think:
(see red)
Growth Points >= Growth Threshold ** + City Population
AND
Food Stored
>= Growth Threshold ***

So the Food required / consumed stays the same, but you simply need to aquire more Growth Points in large Cities.
(It is easier for gameplay to keep the "Yield" constant and vary the abstract Growth Points according to the Population.)

----

So it would kind of balance Growth in large Cities a bit so it does not get too extreme.
Also it is immersive and realistic from a point that Large Cities also have to fight with issues of "overpopulation".

But I would be ok with that. :dunno:
@devolution is that ok for you as well?
 
Last edited:
Sounds reasonable. There has always been movement from rural to urban so a handicap on larger cities makes sense.
 
This sounds great. One thing I'm thinking is what does it do to the role of Corn Chambers and Granaries. Should we have a separate storage limit for food - and then these buildings increase it? Rather than give you a higher starting point when someone is born.
 
One thing I'm thinking is what does it do to the role of Corn Chambers and Granaries.
They are still going to impact the "Food Kept" after Growth. There is no change needed to the effects of Corn Chambers and Granaries.
Food is still required and consumed by Growth - it is just not the only factor anymore if this concept would be implemented.

That is why this condition also still applies:
Food Stored >= Growth Threshold ***
------

I never said that Growth would not cost Food anymore - it still will. :)
Just the "triggering of Growth" will get an extra condition.

Otherwise the balancing of Food in the mod would be completely messed up.
(It would lose a lot of its gameplay value and players would hardly know what to do with all the unused Food.)

------

See here:
*** So Food Stored will still be a precondition and the Food will also be used up.

But maybe there was a misunderstanding somewhere. :dunno:
(My main intention is simply to prevent "Food bombing exploit".)
 
Last edited:
Top Bottom