Dr kossin #31

Correct me if i'm wrong but isn't 2W1N a coast? Did you mean 2W1S? Frankly I think (if I'm right) this means you need to pick up your ghandi thread.
Same here. Pick it up! :)
 
Babylon and Egypt. So ancient, so atmospheric.
 
Round 2

I played uninspired.. but there's not much to do with this land anyway. No islands to hop to either at least, not for me.

I wanted Babylon to grow back a bit and didn't need military/barracks so I put excess hammers in the Pyramids for a few turns to get a little bit of gold.
Spoiler :


The next turn I finally had Writing and could start looking behind Hatty for neighbors. It took a few turns but a scouting warrior and a workboat made their way to the land beyond.
Spoiler :





Ugh... what a crowd. Cathy has a large area to herself as you'll see, plus some islands to herself.


There's still 1 AI to meet as of this round's end. He's intercontinental so it should be a few more turns until we meet.

As is usual, my trade chip is Aesthetics.
Spoiler :





Hatty went into war-mode but I never saw a military buildup close to me. I assume she was preparing against one of the heathens that she disliked more.

First Great Scientist made an Academy in Babylon. I tried farming another but, courtesy of GLH, ended up with a Merchant, which is not bad in itself as I might need upgrade gold at one point - as I lack IRON.

My next trade chip ended up being Code of Laws. With Organized courthouses are cheap but I have very little hammers and very little food so I haven't put them up much tbh.
Spoiler :






I pursued Liberalism and kept trading, growing cities and whipping from time to time... really nothing else happened.
Spoiler :


Slows Cathy 1 turn and boosts relations. Unfortunately she switched to Free Religion so they aren't exactly stellar.






I didn't bulb any technology. With so little food, it's hard to farm GPs and my cities need infrastructure to compete with the great land the AI has over me.
Nonetheless I make it first to Liberalism and select Astronomy.
Spoiler :


It's irritating that I can irrigate the northern part of my land.

Landmass overview - not resized
Spoiler :

My workboat will take a look at Cathy's island range starting next turn.


Techs
Spoiler :




Diplo
Spoiler :

I need to watch Cathy here. She has a nice empire and not too friendly with me =\
Plus she vassaled Hatty, she could very well turn into a runaway AI.


F1 screen
Spoiler :


Astronomy might allow me to settle a few remote islands, should there be any. In any case it was the only monopoly tech.

Cyrus has a spare iron to trade which could help mass-upgrade Trebuchets. (resource+gpt+pillage to cancel the deal)
Cannons+Muskets might take a good bit out of backwards Shaka, small Wang Kon and if I can get rolling after those 2, Cyrus... leaving Cathy for the modern era.
The landmass should be sufficient for domination so barring a weird turnout or suddenly fast teching from my targets, this should be winnable from here.

Sorry for the boring report but this kind of map isn't too appealing to me for the first half of the game... quite boring and makes me want to play something else heh.
 
I find it strange that Shaka hasn't had any military success with land like that and neighboring a wuss like Wang.

Didn't strike my eye atleast, so I'll ask: Do you have Iron? Cannons are clearly the key to unlocking this continent with weaklings like Hatty and Wang right there on the doorstep with a conveniently shaped landmass to ease conquesting to boot.
 
Nope, no iron.

It wasn't clear at all but here's what I said about it:

First Great Scientist made an Academy in Babylon. I tried farming another but, courtesy of GLH, ended up with a Merchant, which is not bad in itself as I might need upgrade gold at one point - as I lack IRON.
[...]
Cyrus has a spare iron to trade which could help mass-upgrade Trebuchets. (resource+gpt+pillage to cancel the deal)

Indeed, if I can swallow up Wang, Shaka, that will give me a fighting chance. Cyrus shouldn't be much harder either. Hatty is vassaled to Catherine and I doubt she'll break off but you never know. In any case she's easy picking as usual.
 
That seems odd the islands to cathy's east should be uninhabited if its reachable by galleys, she's a rexing beast!
 
@ Kossin:

I played this game and found I was a bit more lucky than you.

It's really bad luck that Cathy has conquered Hatty. The game would have been easier if it hadn't happen.

In your game, to conquer Wang is feasible but I don't think we can go further. In case you haven't noticed, Cathy (or say, her team) has the worst attitude towards you (Cathy to you +2, Hatty to you -1. +0.5 on average). You'll easily be her target especially when you're at war.

The war against Wang is feasible but I think we are unlike to go further.

Frankly the chance to win this game is dim. The land is OK with the GLH but Cathy is too powerful in this map. Maybe you'll find something else if you retry this map.
 
Kossin, I agree with Dingding that your chances here of winning are slim, unfortunately on diety it seems that some AI's can run away with the game. There is one possible way of winning that I see but its a huge risk and its a good chance you wont even get a chance to try it out.

Basically, if you manage to get Cathy into a war with another nation and somehow get her stack out of reach of you, you could potentially take Hatty's comparatively weakly defended cities and if you're lucky, sue for peace. This extra land plus Cathy's loss of a vassal may be your only route to victory. However, there's a lot between you and that happening. But it definately seems to me that looking at the current situation, you have no peaceful path to victory...

The only other thing that I can think of is if there are some fantastic islands or other landmasses out there that you are first to settle but again I doubt that would be enough.
 
Looks like this game varies a lot. In my game by 225AD WK got Lib. By 800AD Cathy had vassalized Cyrus+Shaka while Hatty had taken on WK.
 
That seems odd the islands to cathy's east should be uninhabited if its reachable by galleys, she's a rexing beast!
You need a border pop to get there so the galley can cross the ocean tiles. By my count she already has 4 island cities.

@ Kossin:

I played this game and found I was a bit more lucky than you.

It's really bad luck that Cathy has conquered Hatty. The game would have been easier if it hadn't happen.

In your game, to conquer Wang is feasible but I don't think we can go further. In case you haven't noticed, Cathy (or say, her team) has the worst attitude towards you (Cathy to you +2, Hatty to you -1. +0.5 on average). You'll easily be her target especially when you're at war.

The war against Wang is feasible but I think we are unlike to go further.

Frankly the chance to win this game is dim. The land is OK with the GLH but Cathy is too powerful in this map. Maybe you'll find something else if you retry this map.
Well I'm not planning on keeping Cathy angry with me but I agree the situation looks grim. I'll look at what's possible diplo-wise here.
I didn't have anything to bribe Cathy out of the war unfortunately as taking over Hatty would have made this game easy afterwards.
If I lose, oh well. It was a good try.

Kossin, I agree with Dingding that your chances here of winning are slim, unfortunately on diety it seems that some AI's can run away with the game. There is one possible way of winning that I see but its a huge risk and its a good chance you wont even get a chance to try it out.

Basically, if you manage to get Cathy into a war with another nation and somehow get her stack out of reach of you, you could potentially take Hatty's comparatively weakly defended cities and if you're lucky, sue for peace. This extra land plus Cathy's loss of a vassal may be your only route to victory. However, there's a lot between you and that happening. But it definately seems to me that looking at the current situation, you have no peaceful path to victory...

The only other thing that I can think of is if there are some fantastic islands or other landmasses out there that you are first to settle but again I doubt that would be enough.
Yes that would work, however I need Cathy at Friendly for that. Moreover I probably want to keep Cathy out of wars on the contrary as then she'll steamroll and vassal everyone.
I doubt I can get anyone to declare on her, unless Shaka gets some troop upgrades somewhere.

Looks like this game varies a lot. In my game by 225AD WK got Lib. By 800AD Cathy had vassalized Cyrus+Shaka while Hatty had taken on WK.
Every move you make alters the RNG and thus AI decisions. It's kinda stupid and makes various games impossible to really compare.
 
@ Kossin:

I played this game and found I was a bit more lucky than you.

It's really bad luck that Cathy has conquered Hatty. The game would have been easier if it hadn't happen.

In your game, to conquer Wang is feasible but I don't think we can go further. In case you haven't noticed, Cathy (or say, her team) has the worst attitude towards you (Cathy to you +2, Hatty to you -1. +0.5 on average). You'll easily be her target especially when you're at war.

Is the diplo score averaged like that? I thought that applied only when the team is being considered as the target of a DOW. But if Cathy's side is considering a DOW, then isn't Hatty's rating irrelevant?
 
Is the diplo score averaged like that? I thought that applied only when the team is being considered as the target of a DOW. But if Cathy's side is considering a DOW, then isn't Hatty's rating irrelevant?

There are two different attitudes if it concerns the teams: team attitude (the average of all the inter-relations) and player-to-player attitude.

The first one applies to tech trade/ DoW consideration, etc.
The second one applies to resource trade, change civic, change religion, etc.

If I understand correctly, Cathy will take the team attitude in the DoW decision. Anyway, it's Cautious in Kossin's game, no matter team or player attitude.
 
^^
If I bump Cathy to Pleased, she'll consider war with the Pleased overwrite odds. Hatty is a vassal and may not consider war thus isn't included in the relations factor. It isn't a team proper as in a permanent alliance.

If I take on a vassal though, then it's the average of relations.
 
Well I'm not planning on keeping Cathy angry with me but I agree the situation looks grim. I'll look at what's possible diplo-wise here.
I didn't have anything to bribe Cathy out of the war unfortunately as taking over Hatty would have made this game easy afterwards.
If I lose, oh well. It was a good try.
In this game you probably can't bribe Cathy into peace because your land is inferior 40% of hers. She will decline the peace demand by "We'd rather win this game".

The win in this game depends largely on the luck. I played till t220 and I think it's winnable at that point. But it's really not easy.
 
There are two different attitudes if it concerns the teams: team attitude (the average of all the inter-relations) and player-to-player attitude.

The first one applies to tech trade/ DoW consideration, etc.
The second one applies to resource trade, change civic, change religion, etc.

If I understand correctly, Cathy will take the team attitude in the DoW decision. Anyway, it's Cautious in Kossin's game, no matter team or player attitude.

There's only one attitude for any player towards any other player, and this is used for all attitude calculations - it's the team attitude (if the team consists of 1 player, this is equal to the player attitude, naturally). Similarly, there's only one effective attitude value between any two players which may differ from the attitude boundaries above (mostly due to vassals), but this is used for almost nothing AFAIK - most notably the AP/UN vote relation thresholds.

As dingding said, AI attitudes towards any player is the average attitude among all of their team members, towards all of the opposing team members, their possible vassals and possible masters (if they're a vassal). So if a hypothetical team of Cathy&Peter eye their neighbors Liz&Churchill who have Washy&Lincoln as their vassals, Cathy's effective (team) attitude towards all of the 4 neighbors is the average player attitude between Cathy<->Liz, Cathy<->Churchill, Cathy<->Washy, Cathy<->Lincoln, Peter<->Liz, Peter<->Churchill, Peter<->Washy and Peter<->Lincoln, all derived from the personal + - factors. Simple, eh? Note that this is not the average attitude value, but simple (Friendly+Annoyed)/2 = Cautious arithmetic.

Now, vassals are a team of their own and not part of their masters team, so if the Russians would have vassals in the above example it would not change anything. Similarly, when calculating the attitude value, averaging over vassals is not made.

Only way to have multiple players in a single team is to start the game that way or make permanent alliances.

Feel free to make your own implications :)

Spoiler :
Code:
[B]CvTeamAI.cpp:[/B]

AttitudeTypes CvTeamAI::AI_getAttitude(TeamTypes eTeam, bool bForced) const
{
	int iAttitude;
	int iCount;
	int iI, iJ;

	FAssertMsg(eTeam != getID(), "shouldn't call this function on ourselves");

	iAttitude = 0;
	iCount = 0;

	for (iI = 0; iI < MAX_PLAYERS; iI++)
	{
		if (GET_PLAYER((PlayerTypes)iI).isAlive())
		{
			if (GET_PLAYER((PlayerTypes)iI).getTeam() == getID())
			{
				for (iJ = 0; iJ < MAX_PLAYERS; iJ++)
				{
					if (GET_PLAYER((PlayerTypes)iJ).isAlive() && iI != iJ)
					{
						TeamTypes eTeamLoop = GET_PLAYER((PlayerTypes)iJ).getTeam();
						if (eTeamLoop == eTeam || GET_TEAM(eTeamLoop).isVassal(eTeam) || GET_TEAM(eTeam).isVassal(eTeamLoop))
						{
							iAttitude += GET_PLAYER((PlayerTypes)iI).AI_getAttitude((PlayerTypes)iJ, bForced);
							iCount++;
						}
					}
				}
			}
		}
	}

	if (iCount > 0)
	{
		return ((AttitudeTypes)(iAttitude / iCount));
	}

	return ATTITUDE_CAUTIOUS;
}


int CvTeamAI::AI_getAttitudeVal(TeamTypes eTeam, bool bForced) const
{
	int iAttitudeVal;
	int iCount;
	int iI, iJ;

	FAssertMsg(eTeam != getID(), "shouldn't call this function on ourselves");

	iAttitudeVal = 0;
	iCount = 0;

	for (iI = 0; iI < MAX_PLAYERS; iI++)
	{
		if (GET_PLAYER((PlayerTypes)iI).isAlive())
		{
			if (GET_PLAYER((PlayerTypes)iI).getTeam() == getID())
			{
				for (iJ = 0; iJ < MAX_PLAYERS; iJ++)
				{
					if (GET_PLAYER((PlayerTypes)iJ).isAlive())
					{
						if (GET_PLAYER((PlayerTypes)iJ).getTeam() == eTeam)
						{
							iAttitudeVal += GET_PLAYER((PlayerTypes)iI).AI_getAttitudeVal((PlayerTypes)iJ, bForced);
							iCount++;
						}
					}
				}
			}
		}
	}

	if (iCount > 0)
	{
		return (iAttitudeVal / iCount);
	}

	return 0;
}


[B]CvPlayerAI.cpp:[/B]

AttitudeTypes CvPlayerAI::AI_getAttitude(PlayerTypes ePlayer, bool bForced) const
{
	PROFILE_FUNC();

	FAssertMsg(ePlayer != getID(), "shouldn't call this function on ourselves");

	return (AI_getAttitudeFromValue(AI_getAttitudeVal(ePlayer, bForced)));
}


int CvPlayerAI::AI_getAttitudeVal(PlayerTypes ePlayer, bool bForced) const
{
	PROFILE_FUNC();

	int iRankDifference;
	int iAttitude;
	int iI;

	FAssertMsg(ePlayer != getID(), "shouldn't call this function on ourselves");

	if (bForced)
	{
		if (getTeam() == GET_PLAYER(ePlayer).getTeam() || (GET_TEAM(getTeam()).isVassal(GET_PLAYER(ePlayer).getTeam()) && !GET_TEAM(getTeam()).isCapitulated()))
		{
			return 100;
		}

		if (isBarbarian() || GET_PLAYER(ePlayer).isBarbarian())
		{
			return -100;
		}
	}

	iAttitude = GC.getLeaderHeadInfo(getPersonalityType()).getBaseAttitude();

	iAttitude += GC.getHandicapInfo(GET_PLAYER(ePlayer).getHandicapType()).getAttitudeChange();

//	if (GC.getGameINLINE().isOption(GAMEOPTION_AGGRESSIVE_AI))
//	{
//		if (GET_PLAYER(ePlayer).isHuman())
//		{
//			iAttitude -= 2;
//		}
//	}

	if (!(GET_PLAYER(ePlayer).isHuman()))
	{
		iAttitude += (4 - abs(AI_getPeaceWeight() - GET_PLAYER(ePlayer).AI_getPeaceWeight()));
		iAttitude += std::min(GC.getLeaderHeadInfo(getPersonalityType()).getWarmongerRespect(), GC.getLeaderHeadInfo(GET_PLAYER(ePlayer).getPersonalityType()).getWarmongerRespect());
	}

	iAttitude -= std::max(0, (GET_TEAM(GET_PLAYER(ePlayer).getTeam()).getNumMembers() - GET_TEAM(getTeam()).getNumMembers()));

	iRankDifference = (GC.getGameINLINE().getPlayerRank(getID()) - GC.getGameINLINE().getPlayerRank(ePlayer));

	if (iRankDifference > 0)
	{
		iAttitude += ((GC.getLeaderHeadInfo(getPersonalityType()).getWorseRankDifferenceAttitudeChange() * iRankDifference) / (GC.getGameINLINE().countCivPlayersEverAlive() + 1));
	}
	else
	{
		iAttitude += ((GC.getLeaderHeadInfo(getPersonalityType()).getBetterRankDifferenceAttitudeChange() * -(iRankDifference)) / (GC.getGameINLINE().countCivPlayersEverAlive() + 1));
	}

	if ((GC.getGameINLINE().getPlayerRank(getID()) >= (GC.getGameINLINE().countCivPlayersEverAlive() / 2)) &&
		  (GC.getGameINLINE().getPlayerRank(ePlayer) >= (GC.getGameINLINE().countCivPlayersEverAlive() / 2)))
	{
		iAttitude++;
	}

	if (GET_TEAM(GET_PLAYER(ePlayer).getTeam()).AI_getWarSuccess(getTeam()) > GET_TEAM(getTeam()).AI_getWarSuccess(GET_PLAYER(ePlayer).getTeam()))
	{
		iAttitude += GC.getLeaderHeadInfo(getPersonalityType()).getLostWarAttitudeChange();
	}

	iAttitude += AI_getCloseBordersAttitude(ePlayer);
	iAttitude += AI_getWarAttitude(ePlayer);
	iAttitude += AI_getPeaceAttitude(ePlayer);
	iAttitude += AI_getSameReligionAttitude(ePlayer);
	iAttitude += AI_getDifferentReligionAttitude(ePlayer);
	iAttitude += AI_getBonusTradeAttitude(ePlayer);
	iAttitude += AI_getOpenBordersAttitude(ePlayer);
	iAttitude += AI_getDefensivePactAttitude(ePlayer);
	iAttitude += AI_getRivalDefensivePactAttitude(ePlayer);
	iAttitude += AI_getRivalVassalAttitude(ePlayer);
	iAttitude += AI_getShareWarAttitude(ePlayer);
	iAttitude += AI_getFavoriteCivicAttitude(ePlayer);
	iAttitude += AI_getTradeAttitude(ePlayer);
	iAttitude += AI_getRivalTradeAttitude(ePlayer);

	for (iI = 0; iI < NUM_MEMORY_TYPES; iI++)
	{
		iAttitude += AI_getMemoryAttitude(ePlayer, ((MemoryTypes)iI));
	}

	iAttitude += AI_getColonyAttitude(ePlayer);
	iAttitude += AI_getAttitudeExtra(ePlayer);

	return range(iAttitude, -100, 100);
}

Yeah, I realize I'm pretty much saying what kossin said 2 posts above in a needlessly complicated fashion :p
 
Well, no time for a round today. I used it to play a war round in the Deity University... and I played a bit further from turn 200 :D

Sorry, but it will be in tomorrow!
 
It's been a long time I didn't play such a difficult game like this. Won at t265:

Spoiler :
The same as Kossin, go for the GLH gambit. Build it at t68. The strategy with this gambit in maps is two tips:
1. To rush settlers ASAP even without decent number of workers. Every new cities gives you 6 commerces from traderoads and one coin from the tile itself. With ORG, that will cover the maintenance.

2. OB with Hatty and find the others ASAP for more foreign traderoads.



Two GP are generated: first GM settled in the cap; second GS accelerated Liberalism. Won Liber at t142 (640AD).

Luckily won the UoS as well which give me +30b of bonus.



Tech and situation at t150. Very lucky to have a good Diplo situation. Cathy is Jewish along with Hatty, Shaka and me, leaving two heathen Wang and Cyrus. The second one is raped by everyone so I happily joined the war as well. Finally Cathy capitulated Cyrus and she's +20 with me. Even Cyrus is -10 towards me but Cathy is already Friendly to me.





Starts colonizing the islands as soon as I Liber Astronomy. Settled 4 cities and captured 3 from the barbarians later. I find a precious Iron here.



Then it's about military expansion with Rifles and Canons. My land is really horsehockey and not productive at all. I managed to build the GT in the 2 fishes cities and draft 1 rifles per turns. I built 37 rifles finally and I think I drafted 33-34 of them. Then I needs Canons. I built 31 of them, I whipped 70%-80% of them.

Then invite Shaka to join the war. Kill Wang at t219.





I try to catch up with Cathy but she's quite fast. At the same time Hatty is going for Cultural vic. My land is still very hammer-poor, I can't wait to mass Bombers+Tanks so I plan to go to nuke Hatty and Cathy - they don't have Uranium!!!

As the Manhattan is being built, HC finished the UN and made me one of the candidates - Cathy is just one pop less than me:lol: Thanks to my colonies!

Then a diplo vic is in the bag. There's something delicate with the hidden attitude. Shaka is +11 with me but only Pleased, +8 towards HC but Friendly. I can win the Diplo without him anyway. (He's +5 with me now because he changed the religion recently.

Won it at t265, 1775AD.





In fact I had two other ways to win:

Wang built Sistine. At the time I killed Wang, I had 5 religions in my land, 20 cities, and only generated 3 GP. Democracy and Bio at hands. It won't be difficult to win a Culture vic before t300.

I had another way to win a diplo win in my game. HC built the Hindu AP. I have only to capture the AP city, made peace with him, spread Hindu to every one. It's winnable at the point if well controlled.

@ Silu

Thank you for your explanation about the attitude mechanisms!:goodjob:

@ my Gandhi tread readers:

The thread will be picked up. I should say I was not that wrong, there is no Iron/Copper on that hill but there is a Coal! :)
 

Attachments

  • AutoSave_AD-0640.CivBeyondSwordSave
    265.5 KB · Views: 45
  • AutoSave_AD-1775.CivBeyondSwordSave
    440.6 KB · Views: 42
Top Bottom