Tear Down this Wall! - How?

Yeah this is not really hard to unlock, in every game you're guaranteed at least one Order AI
 
Yeah this is not really hard to unlock, in every game you're guaranteed at least one Order AI

At first it does seem like a difficult assignment though. ..im also guessing that the achievement doesnt have to be in deity difficulty and you can take it easy by lowering the difficulty.
 
Indeed, I get it all the time at king level. In my just-ended game as England, got all the order and autocrat AI civs to switch to freedom (except for Assyria), once I pushed thru freedom as the world ideology in the world congress (with help fr a few freedom AI civs).
 
Some AI personalities will resist switching their ideology. This is especially true if they have tenets vested in their ideology.

In addition to that, diplomacy plays a part as well. AIs will be more likely to switch if neighbors with large militaries have freedom (for example) and they don't want a war. Also, passing the freedom world ideology will help if the AI cares about getting votes in the World Congress. Lastly, if the civ is at war, it is more likely to switch if they have a lot of unhappiness because it will eliminate their penalties.
 
How to get this one
Ok, after a lot of hazzle, I finally got this achievement. My settings:

Epic game, Chieftain difficulty (you want other civs to reach industrial era before you get gray hair), pangea (irrelevant), Egypt (also irrelevant I think).
Victory conditions: Only diplomatic! Important! This ensures that the game will be long enough for you to do your stuff.

Objectives: You want the civ who is targeted to reach such low happiness that a revolt will happen. Capture his cities, build all types of food for growth and remove all happiness structures from this city and pillage all happiness resources. Grow these cities to around 20, then just give it back to the target.
Other factors may apply, as to which type he will change to, but after handing over the cities like this, hence causing a massive unhappiness in the AI empire, the change happened the following turn.
 
it's easier if there's more than one civ generating pressure. I've easily unlocked it a while ago
 
I saw this thread and read the code for when a civ changes ideologies. Here it is in both a simplified(non-programmer) form and a copy of the original source

My Description:
Spoiler :

Code:
current_unhap_frm_opinion = the current unhappiness from public opinion
pref_ideology_happiness    = the happiness the AI would gain from their EXISTING BUILDINGS if they adopted ALL THE HAPPINESS POLICIES of the PREFERRED IDEOLOGY
current_ideology_happiness = the happiness the AI would gain from their EXISTING BUILDINGS if they adopted ALL THE HAPPINESS POLICIES of their CURRENT IDEOLOGY
//note: PREFERRED IDEOLOGY means the ideology that has the most ideology pressure

//think about switching only if total happiness is less than 20 and ideology unhappiness is greater than 10 -else STOP
if net_happiness <= -20 AND curren_unhap_frm_opinion >= 10
//the "grand strategy" is the victory the ai is "going for" an AI will never consider changing to the ideology that is anti-their strategy
if "grand strategy" = DOMINATION then NEVER EVER change to FREEDOM
if "grand strategy" = DIPLOMACY  then NEVER EVER change to ORDER
if "grand strategy" = SCIENCE    then NEVER EVER change to AUTOCRACY

total_happiness_improvement = current_unhap_frm_opinion(this is alteast -10) + pref_ideology_happiness - current_ideology_happiness

if total_happiness_improvement >= 10 then switch to PREFFERED IDEOLOGY unless the PREFERRED IDEOLOGY has been ruled out by the "grand strategy"
//a quote from the source code "// Cleared all obstacles -- REVOLUTION!"

//achievement stuff
if the AI just switched from ORDER to FREEDOM
AND
if the civilization with the highest ideology pressure on the AI is the ACTIVE PLAYER then grant the ACTIVE PLAYER the achievement "Tear Down this Wall"
//in a singleplayer game the active player is the human
//in a multiplayer game the active player is the host
//BUG:To the best of my knowledge you can NEVER get the "Tear Down this Wall" achievement if you are a GUEST in a multiplayer game.


So with the above code in mind the OP should
1)Be the top civ exerting ideological pressure on the target AI and NOT in a multiplayer game(if you are playing in multiplayer you must NOT a guest)
2)Target a civ that is NOT biased to go for a domination victory(they will never change to or choose freedom no matter what)
3)Enact freedom as the world ideology
4)sell all of the AI's Monuments, Observatories, Public Schools and Research Labs(if you captured their city)
5)and buy Mints, Banks, Stock Exchanges, Water Mills, Hospitals and Medical Labs in all cities you give to the AI



If you want a copy of the method that control the AI's decision it is here:
Spoiler :

Code:
/// Should the AI look at switching ideology branches?
void CvPolicyAI::DoConsiderIdeologySwitch(CvPlayer* pPlayer)
{
	// Gather basic Ideology info
	int iCurrentHappiness = pPlayer->GetExcessHappiness();
	int iPublicOpinionUnhappiness = pPlayer->GetCulture()->GetPublicOpinionUnhappiness();
	PolicyBranchTypes ePreferredIdeology = pPlayer->GetCulture()->GetPublicOpinionPreferredIdeology();
	PolicyBranchTypes eCurrentIdeology = pPlayer->GetPlayerPolicies()->GetLateGamePolicyTree();
	PlayerTypes eMostPressure = pPlayer->GetCulture()->GetPublicOpinionBiggestInfluence();
	
	// Possible enough that we need to look at this in detail?
	if (iCurrentHappiness <= GC.getSUPER_UNHAPPY_THRESHOLD() && iPublicOpinionUnhappiness >= 10)
	{
		// How much Happiness could we gain from a switch?
		int iHappinessCurrentIdeology = GetBranchBuildingHappiness(pPlayer, eCurrentIdeology);
		int iHappinessPreferredIdeology = GetBranchBuildingHappiness(pPlayer, ePreferredIdeology);

		// Does the switch fight against our clearly preferred victory path?
		bool bDontSwitchFreedom = false;
		bool bDontSwitchOrder = false;
		bool bDontSwitchAutocracy = false;
		int iConquestPriority = pPlayer->GetGrandStrategyAI()->GetConquestPriority();
		int iDiploPriority = pPlayer->GetGrandStrategyAI()->GetUnitedNationsPriority();
		int iTechPriority = pPlayer->GetGrandStrategyAI()->GetSpaceshipPriority();
		int iCulturePriority = pPlayer->GetGrandStrategyAI()->GetCulturePriority();
		int iClearPrefPercent = GC.getIDEOLOGY_PERCENT_CLEAR_VICTORY_PREF();
		if (iConquestPriority > (iDiploPriority   * (100 + iClearPrefPercent) / 100) &&
			iConquestPriority > (iTechPriority    * (100 + iClearPrefPercent) / 100) &&
			iConquestPriority > (iCulturePriority * (100 + iClearPrefPercent) / 100))
		{
			bDontSwitchFreedom = true;
		}
		else if (iDiploPriority > (iConquestPriority * (100 + iClearPrefPercent) / 100) &&
			iDiploPriority > (iTechPriority     * (100 + iClearPrefPercent) / 100) &&
			iDiploPriority > (iCulturePriority  * (100 + iClearPrefPercent) / 100))
		{
			bDontSwitchOrder = true;
		}
		else if (iTechPriority > (iConquestPriority * (100 + iClearPrefPercent) / 100) &&
			iTechPriority > (iDiploPriority    * (100 + iClearPrefPercent) / 100) &&
			iTechPriority > (iCulturePriority  * (100 + iClearPrefPercent) / 100))
		{
			bDontSwitchAutocracy = true;
		}

		int iTotalHappinessImprovement = iPublicOpinionUnhappiness + iHappinessPreferredIdeology - iHappinessCurrentIdeology;
		if (iTotalHappinessImprovement >= 10)
		{
			if (bDontSwitchFreedom && ePreferredIdeology == GC.getPOLICY_BRANCH_FREEDOM())
			{
				return;
			}
			if (bDontSwitchAutocracy && ePreferredIdeology == GC.getPOLICY_BRANCH_AUTOCRACY())
			{
				return;
			}
			if (bDontSwitchOrder && ePreferredIdeology == GC.getPOLICY_BRANCH_ORDER())
			{
				return;
			}

			// Cleared all obstacles -- REVOLUTION!
			pPlayer->SetAnarchyNumTurns(GC.getSWITCH_POLICY_BRANCHES_ANARCHY_TURNS());
			pPlayer->GetPlayerPolicies()->DoSwitchIdeologies(ePreferredIdeology);	

			if (ePreferredIdeology == GC.getPOLICY_BRANCH_FREEDOM() && eCurrentIdeology == GC.getPOLICY_BRANCH_ORDER())
			{
				if (GET_PLAYER(eMostPressure).GetID() == GC.getGame().getActivePlayer())
				{
					gDLL->UnlockAchievement(ACHIEVEMENT_XP2_39);
				}
			}
		}
	}
}


This is my first post. Hope this info is helpful.
 
Top Bottom