UnforcedError
Settler
It's the default value for Deity.
I don't think so. If you don't share effects from wonders, you probably wouldn't share that either.
void CvTeam::testCircumnavigated()
{
CvPlot* pPlot;
CvWString szBuffer;
bool bFoundVisible;
int iX, iY;
if (isBarbarian())
{
return;
}
if (!GC.getGameINLINE().circumnavigationAvailable())
{
return;
}
if (GC.getMapINLINE().isWrapXINLINE())
{
for (iX = 0; iX < GC.getMapINLINE().getGridWidthINLINE(); iX++)
{
bFoundVisible = false;
for (iY = 0; iY < GC.getMapINLINE().getGridHeightINLINE(); iY++)
{
pPlot = GC.getMapINLINE().plotSorenINLINE(iX, iY);
if (pPlot->isRevealed(getID(), false))
{
bFoundVisible = true;
break;
}
}
if (!bFoundVisible)
{
return;
}
}
}
if (GC.getMapINLINE().isWrapYINLINE())
{
for (iY = 0; iY < GC.getMapINLINE().getGridHeightINLINE(); iY++)
{
bFoundVisible = false;
for (iX = 0; iX < GC.getMapINLINE().getGridWidthINLINE(); iX++)
{
pPlot = GC.getMapINLINE().plotSorenINLINE(iX, iY);
if (pPlot->isRevealed(getID(), false))
{
bFoundVisible = true;
break;
}
}
if (!bFoundVisible)
{
return;
}
}
}
GC.getGameINLINE().makeCircumnavigated();
if (GC.getGameINLINE().getElapsedGameTurns() > 0)
{
if (GC.getDefineINT("CIRCUMNAVIGATE_FREE_MOVES") != 0)
{
changeExtraMoves(DOMAIN_SEA, GC.getDefineINT("CIRCUMNAVIGATE_FREE_MOVES"));
for (int iI = 0; iI < MAX_PLAYERS; iI++)
{
if (GET_PLAYER((PlayerTypes)iI).isAlive())
{
if (getID() == GET_PLAYER((PlayerTypes)iI).getTeam())
{
szBuffer = gDLL->getText("TXT_KEY_MISC_YOU_CIRC_GLOBE", GC.getDefineINT("CIRCUMNAVIGATE_FREE_MOVES"));
}
else if (isHasMet(GET_PLAYER((PlayerTypes)iI).getTeam()))
{
szBuffer = gDLL->getText("TXT_KEY_MISC_SOMEONE_CIRC_GLOBE", getName().GetCString());
}
else
{
szBuffer = gDLL->getText("TXT_KEY_MISC_UNKNOWN_CIRC_GLOBE");
}
gDLL->getInterfaceIFace()->addMessage(((PlayerTypes)iI), false, GC.getEVENT_MESSAGE_TIME(), szBuffer, "AS2D_GLOBECIRCUMNAVIGATED", MESSAGE_TYPE_MAJOR_EVENT, NULL, (ColorTypes)GC.getInfoTypeForString("COLOR_HIGHLIGHT_TEXT"));
}
}
szBuffer = gDLL->getText("TXT_KEY_MISC_SOMEONE_CIRC_GLOBE", getName().GetCString());
GC.getGameINLINE().addReplayMessage(REPLAY_MESSAGE_MAJOR_EVENT, getLeaderID(), szBuffer, -1, -1, (ColorTypes)GC.getInfoTypeForString("COLOR_HIGHLIGHT_TEXT"));
}
}
}
Teams can exist from the start of the game. Same rules apply. Surely in the case of a permanent alliance the religion part isn't that important anymore.Wow. Thank you. I was really surprised at the bit about founding religions. Though wouldn't all the religions be founded by the time you can make permanent alliances?
You would win of course. Either conquest or dom (both would apply).What would happen if it is only you and one opponent left, and you make a permanent alliance. Would you win a conquest victory or not? Because there are no other civs left.
You would win of course. Either conquest or dom (both would apply).
How about when constructing ApolloProgram and/or SpaceShip? You only build one project and/or SS?
I guess not.
Common project.
They will enter a PA with you if their disposition towards you is high enough (this varies from AI to AI, again found in CIV4LeaderHeadInfos.xml). A win as a team still counts as a winBut actually it is possible to make PA with last independent AI in the game? Wouldn't be there some.. "reasons" from him (her) side to not do that.. Or AI will do that to win game too? (little funny.. I want to win, (s)he wants to win.. lets win together)
May I open up another noob question?
How do food and hammer differ in case of production?
My city has population of 2 and I'm working to pump out a worker.
Let's say, only 7turns needed to finish the production of the worker. My border expands, I moved the working tile from flood plains(+3+1
) to a forested plains hill(+3
). My production accelerated from 7turns to 5. How and why?
I thought they add up when I build a settler/worker. How come +3has lesser value than +3
?
I came to a conclusion that a forested plains(+1+2
) is much better than a grassland hill(+2
+1
) when building workers.
Ok,
I list here an abstruse list of things I see in that 6000 lines file.
- Share techs.
- Espionage complicity.
- Shared war weariness
- Something called "StolenVisibilityTimer"
- Wars
- Peaces and enforced peace treaties.
- Open Borders
- Defensive pacts
- Share wars bonuses
- War success...wow I didn't know that.
- One contact another, your partner knows it with telepathy.
- Religion founded, one city in all cities of BOTH partners is chosen as holy city.
- 50% extra cost in techs for each additional member in the team.
- Maps knowledge are shared.
- Finally, I got my hand on circumnavigation bonus is shared between members of a team.
- I don't know about wonders, but I am getting annoyed looking at this big file.
Here is the code part about circumnavigation bonus and teams. No need to see it btw, otherwise eyes might might suffer from irrecoverable wounds.
Spoiler :
I said don't look at it. Think healthy.
Spoiler :Code:void CvTeam::testCircumnavigated() { CvPlot* pPlot; CvWString szBuffer; bool bFoundVisible; int iX, iY; if (isBarbarian()) { return; } if (!GC.getGameINLINE().circumnavigationAvailable()) { return; } if (GC.getMapINLINE().isWrapXINLINE()) { for (iX = 0; iX < GC.getMapINLINE().getGridWidthINLINE(); iX++) { bFoundVisible = false; for (iY = 0; iY < GC.getMapINLINE().getGridHeightINLINE(); iY++) { pPlot = GC.getMapINLINE().plotSorenINLINE(iX, iY); if (pPlot->isRevealed(getID(), false)) { bFoundVisible = true; break; } } if (!bFoundVisible) { return; } } } if (GC.getMapINLINE().isWrapYINLINE()) { for (iY = 0; iY < GC.getMapINLINE().getGridHeightINLINE(); iY++) { bFoundVisible = false; for (iX = 0; iX < GC.getMapINLINE().getGridWidthINLINE(); iX++) { pPlot = GC.getMapINLINE().plotSorenINLINE(iX, iY); if (pPlot->isRevealed(getID(), false)) { bFoundVisible = true; break; } } if (!bFoundVisible) { return; } } } GC.getGameINLINE().makeCircumnavigated(); if (GC.getGameINLINE().getElapsedGameTurns() > 0) { if (GC.getDefineINT("CIRCUMNAVIGATE_FREE_MOVES") != 0) { changeExtraMoves(DOMAIN_SEA, GC.getDefineINT("CIRCUMNAVIGATE_FREE_MOVES")); for (int iI = 0; iI < MAX_PLAYERS; iI++) { if (GET_PLAYER((PlayerTypes)iI).isAlive()) { if (getID() == GET_PLAYER((PlayerTypes)iI).getTeam()) { szBuffer = gDLL->getText("TXT_KEY_MISC_YOU_CIRC_GLOBE", GC.getDefineINT("CIRCUMNAVIGATE_FREE_MOVES")); } else if (isHasMet(GET_PLAYER((PlayerTypes)iI).getTeam())) { szBuffer = gDLL->getText("TXT_KEY_MISC_SOMEONE_CIRC_GLOBE", getName().GetCString()); } else { szBuffer = gDLL->getText("TXT_KEY_MISC_UNKNOWN_CIRC_GLOBE"); } gDLL->getInterfaceIFace()->addMessage(((PlayerTypes)iI), false, GC.getEVENT_MESSAGE_TIME(), szBuffer, "AS2D_GLOBECIRCUMNAVIGATED", MESSAGE_TYPE_MAJOR_EVENT, NULL, (ColorTypes)GC.getInfoTypeForString("COLOR_HIGHLIGHT_TEXT")); } } szBuffer = gDLL->getText("TXT_KEY_MISC_SOMEONE_CIRC_GLOBE", getName().GetCString()); GC.getGameINLINE().addReplayMessage(REPLAY_MESSAGE_MAJOR_EVENT, getLeaderID(), szBuffer, -1, -1, (ColorTypes)GC.getInfoTypeForString("COLOR_HIGHLIGHT_TEXT")); } } }
May I open up another noob question?
How do food and hammer differ in case of production?
My city has population of 2 and I'm working to pump out a worker.
Let's say, only 7turns needed to finish the production of the worker. My border expands, I moved the working tile from flood plains(+3+1
) to a forested plains hill(+3
). My production accelerated from 7turns to 5. How and why?
I thought they add up when I build a settler/worker. How come +3has lesser value than +3
?
I came to a conclusion that a forested plains(+1+2
) is much better than a grassland hill(+2
+1
) when building workers.