• Our friends from AlphaCentauri2.info are in need of technical assistance. If you have experience with the LAMP stack and some hours to spare, please help them out and post here.

Quick Answers / 'Newbie' Questions

A monastery built 1t before SM is teched will retain its culture bonus and will even double up after 1000 years. (Will lose all other bonuses even though they will still be shown if you mouse over the monastery.)
 
A monastery built 1t before SM is teched will retain its culture bonus and will even double up after 1000 years. (Will lose all other bonuses even though they will still be shown if you mouse over the monastery.)

I didn't do one turn, but instead 6, but yeah, this is totally true. I don't know why I thought it was the case. I'm going to strike out my blatantly false post. I hate being a fountain of ignorance...
 
I didn't do one turn, but instead 6, but yeah, this is totally true. I don't know why I thought it was the case. I'm going to strike out my blatantly false post. I hate being a fountain of ignorance...
It would probably be more intuitive if an obsoleted building lost all of its effects on a city. I think this feature is meant to help with a cultural victory. (Or maybe it symbolizes the fact that obsoleted buildings might still attract visitors?)
 
So my last game was my first one on Monarch after a long break and two or three noble and prince games. I drew Mao, first thought I was isolated but actually was on a mostly jungled peninsula, settled 13 or so cities (apparently the map had low sea levels), cottaged everything because despite lacking rivers it was the only thing I could do with most of my land before... Communism workshops?, never crashed my economy, really enjoyed my hordes of cheap workers but was doing horribly in tech, even with running scientists in those 2-3 good food and otherwise plains cities. BK was bigger and far ahead, maybe because of big shrine, Isabella's land looked like Mesopotamia and her tech showed it, Zara had a 3 gold capital but other than that completely sat in the desert but still beat me to Lib. Haven't played further. I was doing MM, I completely neglected my military (nothing to fear, both my neighbors were Hindu) for the economy, I tried to get monopolies and trade, it somehow didn't help.
So I'm playing the next game, this time I'm Hammurabi. Founded 6 or 7 cities, built axes and catapults (no horses to be found anywhere) and attacked my distant neighbor RooseRushvelt. I did not play the war ideally and had two major setbacks from accidentally moving my defenders in the newly conquered cities somewhere else, but now I have his capital, most of my army (20-25 units, first I ran into trouble, then built more and suddenly I had that many) is alive and healing up, he is on the ropes. I have just Granary and Barracks in most of my cities,monuments in the oldest ones from before I founded Confusion, only 1 or 2 libraries, forges and courthouses. However, I'm still far ahead in tech (4-5 techs, nonsense like Polytheism and HBR don't count) somehow. I didn't trade a lot, I've been in war mode for quite a while, have almost been ignoring my ORG trait, have maybe 10 cottages, no scientists, no building wealth, big army, generally sloppy and not well-thought economic play... How?
 
So my last game was my first one on Monarch after a long break and two or three noble and prince games. I drew Mao, first thought I was isolated but actually was on a mostly jungled peninsula, settled 13 or so cities (apparently the map had low sea levels), cottaged everything because despite lacking rivers it was the only thing I could do with most of my land before... Communism workshops?, never crashed my economy, really enjoyed my hordes of cheap workers but was doing horribly in tech, even with running scientists in those 2-3 good food and otherwise plains cities. BK was bigger and far ahead, maybe because of big shrine, Isabella's land looked like Mesopotamia and her tech showed it, Zara had a 3 gold capital but other than that completely sat in the desert but still beat me to Lib. Haven't played further. I was doing MM, I completely neglected my military (nothing to fear, both my neighbors were Hindu) for the economy, I tried to get monopolies and trade, it somehow didn't help.
So I'm playing the next game, this time I'm Hammurabi. Founded 6 or 7 cities, built axes and catapults (no horses to be found anywhere) and attacked my distant neighbor RooseRushvelt. I did not play the war ideally and had two major setbacks from accidentally moving my defenders in the newly conquered cities somewhere else, but now I have his capital, most of my army (20-25 units, first I ran into trouble, then built more and suddenly I had that many) is alive and healing up, he is on the ropes. I have just Granary and Barracks in most of my cities,monuments in the oldest ones from before I founded Confusion, only 1 or 2 libraries, forges and courthouses. However, I'm still far ahead in tech (4-5 techs, nonsense like Polytheism and HBR don't count) somehow. I didn't trade a lot, I've been in war mode for quite a while, have almost been ignoring my ORG trait, have maybe 10 cottages, no scientists, no building wealth, big army, generally sloppy and not well-thought economic play... How?
Based only upon your descriptions, a couple of factors are probably accounting for the differences between your two games. By attacking Roosevelt you may in fact be significantly slowing down a significant tech rival (with decent land I often find Roosevelt techs quite well). By slowing down a tech leader, you slow down everyone else who may have traded techs with him (or even just benefited from the techs-already-known research bonus). In addition, early wars can wind up enhancing your research from war booty, since it allows you to run a deficit for several turns. Also remember in the 1st game that cottages can take a long time to start paying dividends, and in the meantime you may lag in tech. And a shrine does make a big difference to the AI, I've noticed, yet in some games the AI either fails to generate GPs or misuses them (settling them/starting a GA instead of founding a shrine).
 
And that's the difference between Commerce and Gold. Hope that makes sense!

. . . if not see the visual representation of this process by clicking on my sig . . .



I've noticed, yet in some games the AI either fails to generate GPs or misuses them (settling them/starting a GA instead of founding a shrine.

I just played a game where Wang Kon built a shrine one turn after founding a religion, twice. He seemed to be keeping the Prophets around just for that purpose. Or he just pulled them out of his cyber . . .
 
Look i have never experienced barbs with nukes and I do not hell care if it is possible in the game code XML or not ! Golly You seem to be mesmerized by the code argh listen You ! There is no code to play with along ! Thw whole experience of playing the game is actually to experience the unsuspected and adapting Your strategy to it !!! Listen if You know all the secrets behid the game would it be interesting for You or not ?

:lol: Did your brain melt? There is still a lot of random components in the game that cannot be fathomed.

I have found interesting paths in the game thanks to the game code. Of course, not everyone will enjoy this, but when I find a new tactic thanks to the code, I thrill.

Like if you make a defensive pact with someone, your vassal cannot refuse any resource demands. That's something you cannot get from experience.

And I have a lot of experience in the game also pre-code era (and now also). You just don't know where are mah games.

Hint hint. Look at the "behind" of CIV4 forums. The stinky subforums...the undeserving...low, vile...ugh...I can say it aloud. It's so vile...
 
Originally Posted by Tachywaxon
In term of a turn:
1st) Commerce first (so techs are first priority)
2nd) Food second (Growth goes before and is important to know only in granary considerations)
3rd) Hammers last ( builds are compiled last)

My question:
So it goes commerce, food, growth, then hammers.
But if I grow and get and extra tile with hammers, then because I'm before the hammer step, are those hammers applied?
Does this mean when I whip and I'm going to grow immediately, I should make sure my best hammer tile is unselected, and some commerce tile is selected instead, so the City Governor will automatically pick that tile and I'll get the hammers anyway?

For example, say I have a 6f tile, a 2f4c tile, and a 2f4h (iron/copper) tile, in a 4 pop city 1 turn from 5 pop, then 2 pop whip so I have 2 pop going on 3 in 1 turn.
If I had selected the 6f and 2f4h tile, then I would have commerce applied, food and growth applied, then commerce tile selected, but commerce is past so I get nothing for it.
If I had used the 6f and 2f4c, then commerce applied (using 2f4c tile this time), then food applied and growth applied, the 2f4h selected, then hammers applied (using the 2f4h tile).
Is this correct?

Ok, found the post.

Well, it happened I stumble in right place in the code while finding for someone about nuclear plants meltdown mechanics.

Take a look:

Code:
void CvCity::doTurn()
{
	PROFILE("CvCity::doTurn()");

	CvPlot* pLoopPlot;
	int iI;

	if (!isBombarded())
	{
		changeDefenseDamage(-(GC.getDefineINT("CITY_DEFENSE_DAMAGE_HEAL_RATE")));
	}

	setLastDefenseDamage(getDefenseDamage());
	setBombarded(false);
	setPlundered(false);
	setDrafted(false);
	setAirliftTargeted(false);
	setCurrAirlift(0);

	AI_doTurn();

	bool bAllowNoProduction = !doCheckProduction();

	doGrowth();

	doCulture();

	doPlotCulture(false, getOwnerINLINE(), getCommerceRate(COMMERCE_CULTURE));

	doProduction(bAllowNoProduction);

	doDecay();

	doReligion();

	doGreatPeople();

	doMeltdown();

	updateEspionageVisibility(true);

	if (!isDisorder())
	{
		for (iI = 0; iI < NUM_CITY_PLOTS; iI++)
		{
			pLoopPlot = getCityIndexPlot(iI);

			if (pLoopPlot != NULL)
			{
				if (pLoopPlot->getWorkingCity() == this)
				{
					if (pLoopPlot->isBeingWorked())
					{
						pLoopPlot->doImprovement();
					}
				}
			}
		}
	}

	if (getCultureUpdateTimer() > 0)
	{
		changeCultureUpdateTimer(-1);
	}

	if (getOccupationTimer() > 0)
	{
		changeOccupationTimer(-1);
	}

	if (getHurryAngerTimer() > 0)
	{
		changeHurryAngerTimer(-1);
	}

	if (getConscriptAngerTimer() > 0)
	{
		changeConscriptAngerTimer(-1);
	}

	if (getDefyResolutionAngerTimer() > 0)
	{
		changeDefyResolutionAngerTimer(-1);
	}

	if (getHappinessTimer() > 0)
	{
		changeHappinessTimer(-1);
	}

	if (getEspionageHealthCounter() > 0)
	{
		changeEspionageHealthCounter(-1);
	}

	if (getEspionageHappinessCounter() > 0)
	{
		changeEspionageHappinessCounter(-1);
	}

	if (isOccupation() || (angryPopulation() > 0) || (healthRate() < 0))
	{
		setWeLoveTheKingDay(false);
	}
	else if ((getPopulation() >= GC.getDefineINT("WE_LOVE_THE_KING_POPULATION_MIN_POPULATION")) && (GC.getGameINLINE().getSorenRandNum(GC.getDefineINT("WE_LOVE_THE_KING_RAND"), "Do We Love The King?") < getPopulation()))
	{
		setWeLoveTheKingDay(true);
	}
	else
	{
		setWeLoveTheKingDay(false);
	}

CvCity.cpp C++ file takes care of the city mechanics in general (AI's or not).

doTurn() seems to be the exact order how a city deals its stuff. Of course, that happens before any AI movements because human builds/changes are done before the next AI starts its turn.

The order is:

  1. City defenses is healing first. Not sure why the minus thing yet. Need to see the code there is there is another minus cancelling the previous one.
    In fact, bombarding happens before the human turn. It's city defense being reduced by siege.
  2. Then there is a couple of things I'm not sure.
    Bombarding, then city plunder, which updates trade routes, something about drafting unhappiness, something about airlifting,
  3. AI_doTurn()! Why is it here? Need to take a look! AI's do their turns.
    Spoiler :
    Code:
    void CvCityAI::AI_doTurn()
    {
    	PROFILE_FUNC();
    
    	int iI;
    
    	if (!isHuman())
    	{
    		for (iI = 0; iI < GC.getNumSpecialistInfos(); iI++)
    		{
    			setForceSpecialistCount(((SpecialistTypes)iI), 0);
    		}
    	}
    	
        if (!isHuman())
    	{
    	    AI_stealPlots();
    	}
    
    	AI_updateWorkersNeededHere();
    
    	AI_updateBestBuild();
    
    	AI_updateRouteToCity();
    
    	if (isHuman())
    	{
    	    if (isProductionAutomated())
    	    {
    	        AI_doHurry();	        
    	    }
    		return;
    	}
    	
    	AI_doPanic();
    
    	AI_doDraft();
    
    	AI_doHurry();
    
    	AI_doEmphasize();
    }
  4. I think we can insert human making his/her decisions here, then push end turn. Not sure yet.
  5. Then comes the growth.
  6. Then culture (not hammers to culture processing)
  7. Production. Needs to look at the function.
  8. Hammers decay. 10 turns for units. 50 turns for buildings.
  9. Religion spreadings.
  10. GPeople spawing.
  11. Well, the meltdown to destroy the good previous items in the list.
  12. City visibility
  13. Without looking at doImprovement(), I think it's the cottage growth.
  14. getCultureUpdateTimer. Not sure what it is.
  15. If the given city is recently captured, the occupation revolt period is diminished by one turn.
  16. Anger counter from drafting is decreased by one turn.
  17. Anger counter form defying a resolution is decreased by one turn.
  18. Anger counter from whipping (I think) is diminished by one turn.
  19. "We love the king" stuff.
 
About your original question on how hammers are applied, I see we need to take a look into doProduction(...).

Spoiler :
Code:
void CvCity::doProduction(bool bAllowNoProduction)
{
	CyCity* pyCity = new CyCity(this);
	CyArgsList argsList;
	argsList.add(gDLL->getPythonIFace()->makePythonObject(pyCity));	// pass in city class
	long lResult=0;
	gDLL->getPythonIFace()->callFunction(PYGameModule, "doProduction", argsList.makeFunctionArgs(), &lResult);
	delete pyCity;	// python fxn must not hold on to this pointer 
	if (lResult == 1)
	{
		return;
	}

	if (!isHuman() || isProductionAutomated())
	{
		if (!isProduction() || isProductionProcess() || AI_isChooseProductionDirty())
		{
			AI_chooseProduction();
		}
	}

	if (!bAllowNoProduction && !isProduction())
	{
		return;
	}

	if (isProductionProcess())
	{
		return;
	}

	if (isDisorder())
	{
		return;
	}

	if (isProduction())
	{
		changeProduction(getCurrentProductionDifference(false, true));
		setOverflowProduction(0);
		setFeatureProduction(0);

		if (getProduction() >= getProductionNeeded())
		{
			popOrder(0, true, true);
		}
	}
	else
	{
		changeOverflowProduction(getCurrentProductionDifference(false, false), getProductionModifier());
	}
}

Automation Production goes first.
Then if another function uses this function and disallows for whatever reason production, then doProduction() function stops there.
Then isProductionProcess(), which is hammers processed into either research, culture or wealth and has no place in this function, thus probably handled somewhere else under "commerce" identity instead of hammers.
Then, if the city is disordered, no production. doProduction function stops.
Then, if it is actual build (or next build in queue), we put hammers into it.

And now we are looking how it works actually.

1) getCurrentProductionDifference(bool bIgnoreFood, bool bOverflow)
It says to ignore food into production, but in fact, if it is a build where food is converted into hammers (settler or worker), then it is actually calculated in a subfunction I won't show here. OF is considered.

Here's the actual formula. Don't look at it.

Code:
int iFoodProduction = ((bFoodProduction) ? std::max(0, (getYieldRate(YIELD_FOOD) - foodConsumption(true))) : 0);

	int iOverflow = ((bOverflow) ? (getOverflowProduction() + getFeatureProduction()) : 0);

	return (((getBaseYieldRate(YIELD_PRODUCTION) + iOverflow) * getBaseYieldRateModifier(YIELD_PRODUCTION, iProductionModifier)) / 100 + iFoodProduction);

Look this résumé instead:

FoodToProdCalculation= FoodRate - FoodConsumption
I did look into that FoodConsumption function which gives an argument "true".

I looked into it and found the "underground" bug that most SGOTM community already knows. VoiceOfUnreason knows it too (it's from him I first heard of this).

Code:
int CvCity::foodConsumption(bool bNoAngry, int iExtra) const
{
	return ((((getPopulation() + iExtra) - ((bNoAngry) ? angryPopulation(iExtra) : 0)) * GC.getFOOD_CONSUMPTION_PER_POPULATION()) - healthRate(bNoAngry, iExtra));
}


Looking at the function, the first argument returning true was for bNoAngry. So, for whatever reason, when training a worker or a setter, when calculating food rate into hammers, we ignore angry citizens! No more food for them (unless you got too many of them like in a recently captured AI city and under a normal build, you got not enough food to babysit them) and redistributed to the worker allowances or settler's supplies, mothaf-cka. Oops. Sorry.

I was deeply interested and tested it.

First screenshot shows three angry slackers who need MP to keep them straight and that 6 pop city cost 12 food.

Spoiler :


Now, I switch to a setter and mah gawd, where that food come from?! Oh, yes, my new policy against slacker: you don't want to work for me, then all for the hardworking workers.

Spoiler :



So basically, if the city's food rate can handles the present city pop, all angry citizens food consumption is ignored while building a worker or a settler (which I personally dub development units in SGOTM).

Keep that in mind for some pseudo-intensive micro.

So, again, the formula :food: to :hammers:
I add this:

FoodToProdCalculation= FoodRate - FoodConsumption(no food for angry citizens)

If you want to understand code-wise, which is not wise for your sanity, look in that spoiler:

Spoiler :

Code:
int CvCity::foodConsumption(bool bNoAngry, int iExtra) const
{
	return ((((getPopulation() + iExtra) - ((bNoAngry) ? angryPopulation(iExtra) : 0)) * GC.getFOOD_CONSUMPTION_PER_POPULATION()) - healthRate(bNoAngry, iExtra));
}

When we were looking into getCurrentProductionDifference, we end up with foodConsumption(true).

In foodConsumption function, there is nonetheless, two arguments, bNoAngry and iExtra. bAngry is set to true. We know it, but inside the function, iExtra is used but not specified. In fact, it is specified, but foodConsumtion has a default set of arguments in the header file, which I report here:
Code:
int foodConsumption(bool bNoAngry = false, int iExtra = 0)

In the C++ files, we overwrite these values and when arguments are not presented, we take the default ones in the header file.

So it's iExtra=0.

Thus angryPopulation(iExtra) becomes angryPopulation(0) and that means in angryPopulation function, no angry citizens when building a settler or a worker. They virtually disappear!


Then, the calculus of overflow. Pretty simple now:

Total_Overflow = Overflow (the one you see in the UI) + OrganicProduction

OrganicProduction is the production coming from features (forests, mines, hills, etc.)

At last for 1),
we calculate the final hammer value with this following formula:

((getBaseYieldRate(YIELD_PRODUCTION) + iOverflow) * getBaseYieldRateModifier(YIELD_PRODUCTION, iProductionModifier)) / 100 + iFoodProduction

Which is basically:

OverflowWithoutPrecedentBuildModifier*SumUpModifiers+FoodProduction

SumUpModifiers is the sum of all your modifiers like:
Special resources, Power, Buildings, Bureaucracy (yep, it's additive not multiplicative), plus a iExtra. I had to look back that famous iExtra and saw that a situational modifier coming from the type of build; you train a unit, build some building or wonder/project. For instance, I think units under HE modifier would enter that special modifier.
Anyways, in a nutshell, all the modifiers you see by hovering your cursor at the right place in your UI.

That ends point #1. :sad:

2) Next step is setOverflowProduction(0).

From this function:

Spoiler :
Code:
void CvCity::setOverflowProduction(int iNewValue)														
{
	m_iOverflowProduction = iNewValue;
	FAssert(getOverflowProduction() >= 0);
}

We force Overflow to be 0 now. Obvious as we already used it in the previous function. Not important step after all except for the game itself.

3) setFeatureProduction(0)

Same as previous but for organic production. If that step was done, the concept of rate wouldn't exist and each turn the rate would stack up.

4) The next is about the build screen that pops up for the human to choose.

And then, if the present build is not a build like training a unit, constructing a building, wonder or starting a project, then it simply take out overflow. Seems to be processing wealth, research or culture we are talking about.

I'm disappointed. No views on new pop working new plot yet. Need to search further perhaps...
=========================================================

Basically, we learnt that if a city can sustain present population, when building a settler or a worker, the angry citizens are not fed.
Also, we learnt when OF is transferred to a new build, it's not the OF predicted by the previous build with its own modifiers. OF is converted to base hammers by taking out previous modifiers and then new modifiers are attached to base hammers OF.
 
Also, we learnt when OF is transferred to a new build, it's not the OF predicted by the previous build with its own modifiers. OF is converted to base hammers by taking out previous modifiers and then new modifiers are attached to base hammers OF.

Does that mean the various cheeses which involve overflowing A into B basically don't work at all? Tee hee.
 
Does that mean the various cheeses which involve overflowing A into B basically don't work at all? Tee hee.

Not at all. It's just important to have lots of bonuses in B and bonuses in A are irrelevant. But if you are organized, and B is a lighthouse, you can gets tons of hammers out of overflow (or let B be a wonder with a Stone/Marble/Copper/Ivory bonus). But whipping an organized lighthouse to get lots of hammers for a non-industrious forge may turn out less well than expected.
EDIT: However, when I remember reading about overflows in the past, I believe that it USED to be that your modifiers on A mattered, which is why protective wall and stone overflows were amazing but aren't good now. I remember reading a TMIT rant about how they essentially just nerfed protective with that change, and I'm fairly certain that is exactly what was modified. But it also had something to do with gold, so I may also be a little confused.
 
Not at all. It's just important to have lots of bonuses in B and bonuses in A are irrelevant. But if you are organized, and B is a lighthouse, you can gets tons of hammers out of overflow (or let B be a wonder with a Stone/Marble/Copper/Ivory bonus). But whipping an organized lighthouse to get lots of hammers for a non-industrious forge may turn out less well than expected.
EDIT: However, when I remember reading about overflows in the past, I believe that it USED to be that your modifiers on A mattered, which is why protective wall and stone overflows were amazing but aren't good now. I remember reading a TMIT rant about how they essentially just nerfed protective with that change, and I'm fairly certain that is exactly what was modified. But it also had something to do with gold, so I may also be a little confused.
It's exactly as you say. With the latest patch the overflow will be modified before being applied to the current build if you had any bonuses on the previous one (so extra EXP hammers for whipping a granary will be subtracted from the overflow and then any new modifiers will be applied). With protective you could actually generate a nice chunk of overflow gold by repeatedly whipping and chopping into e.g. a wall with stone. With the latest patch most of it goes to waste and you get neither hammers nor gold.
 
uh? No one is surprised that angry citizens are intentionally not fed while building settlers/workers?
I was drastically surprised that was not a bug after all. And such a good reason to grow up to 6 pop in the capital and then whip without the angry guy being costly.

Or for another city with 4 happy max, grow as fast as possible (2 strong food resources) up to pop 6 and whip those angry guys without them costing except the moment of growth between pop 5 and 6. But if done fast, their consumption will be lower than slowly.
 
uh? No one is surprised that angry citizens are intentionally not fed while building settlers/workers?
I was drastically surprised that was not a bug after all. And such a good reason to grow up to 6 pop in the capital and then whip without the angry guy being costly.

Or for another city with 4 happy max, grow as fast as possible (2 strong food resources) up to pop 6 and whip those angry guys without them costing except the moment of growth between pop 5 and 6. But if done fast, their consumption will be lower than slowly.

haha, sorry tachy. Oddly enough, I kind of already knew this. I hadn't figured out all the quirks (namely that if you're starving already it doesn't work) as I had seen it before. when I saw it, I remember thinking "where the hell did that food come from?" But the starving cases, where it does not work, had thrown me off the exact nature of this bug/whatever it is.
 
uh? No one is surprised that angry citizens are intentionally not fed while building settlers/workers?
I was drastically surprised that was not a bug after all. And such a good reason to grow up to 6 pop in the capital and then whip without the angry guy being costly.

Or for another city with 4 happy max, grow as fast as possible (2 strong food resources) up to pop 6 and whip those angry guys without them costing except the moment of growth between pop 5 and 6. But if done fast, their consumption will be lower than slowly.
I noticed this behaviour a few years back, always assumed it was a bug. Great whipping advice, though :)
 
traius said:
But if I grow and get and extra tile with hammers, then because I'm before the hammer step, are those hammers applied?

Under VoiceOfUnreason's lead quoted hereunder:

VoiceOfUnreason said:
I think it is because production yields are recalculated each time the city configuration changes, not during doTurn.

I got the concept and finally the answer.

I think the C++ files functions are themselves read in order just like we read a book from top to bottom.

doTurn() really deals about incoming hammers and other stuff, but it deals the "feature" organic hammers BEFORE the new pop arrives.

A couple functions later after doTurn(), updateYield() arrives and establishes the city yield in food, hammers and commerce.

In that function, it calls another identically named but located in CvPlot.cpp and there we see it sets the new city output.

So basically, when doTurn() was running, it was running the city output before the new city output. The growth happens in abstract, but that function never called updateYield(), which means you had simply higher pop, updated granary and food bar, but nothing from the new pop.



Spoiler :
Code:
void CvCity::updateYield()
{
	CvPlot* pLoopPlot;
	int iI;

	for (iI = 0; iI < NUM_CITY_PLOTS; iI++)
	{
		pLoopPlot = getCityIndexPlot(iI);

		if (pLoopPlot != NULL)
		{
			pLoopPlot->updateYield();
		}
	}
}

==================

Does this mean when I whip and I'm going to grow immediately, I should make sure my best hammer tile is unselected, and some commerce tile is selected instead, so the City Governor will automatically pick that tile and I'll get the hammers anyway?

For example, say I have a 6f tile, a 2f4c tile, and a 2f4h (iron/copper) tile, in a 4 pop city 1 turn from 5 pop, then 2 pop whip so I have 2 pop going on 3 in 1 turn.
If I had selected the 6f and 2f4h tile, then I would have commerce applied, food and growth applied, then commerce tile selected, but commerce is past so I get nothing for it.
If I had used the 6f and 2f4c, then commerce applied (using 2f4c tile this time), then food applied and growth applied, the 2f4h selected, then hammers applied (using the 2f4h tile).
Is this correct?

The sad part is no practical use from what I say. If you whip, I am sure there is a function that calls updateYield() and make the update, so you won't gain anything from the regrowth. It was coded as intended.

Case closed.
 
From your point of view. Sometimes, I prefer to wander in the code mysteries than play the actual game. Wonder if this personal fad will ever fade...tried to force myself to play some game (that Nappy GOTM) for 3 hours, but still my nose is stuck in C++ files. :eek:

Not gonna improve if I keep this pace!
 
uh? No one is surprised that angry citizens are intentionally not fed while building settlers/workers?
I was drastically surprised that was not a bug after all. And such a good reason to grow up to 6 pop in the capital and then whip without the angry guy being costly.

Or for another city with 4 happy max, grow as fast as possible (2 strong food resources) up to pop 6 and whip those angry guys without them costing except the moment of growth between pop 5 and 6. But if done fast, their consumption will be lower than slowly.

No...
 
Greetings, and apologies if this has already been answered elsewhere.

Is there a way to link two or more military units so that moving one moves both of them? I thought this was what people meant by unit stacking, but I'm completely new and I haven't found a way to do this so far, so maybe they meant something else. I want to have two warrior units move at the same time.

Also, assuming there is a way to do this, does it result in the two units' combat strength being added together, or is it not that simple?

Thanks!
 
Back
Top Bottom