Ideology modding

本页面所适用的版本可能已经过时,最后更新于1.8



意识形态 代表所选国家的所有不同政治信仰或联盟。意识形态将有助于决定国家将采取的选择和道路。

意识形态文件在 /Hearts of Iron IV/common/ideologies/*.txt.

意识形态

意识形态遵循以下格式:

ideologies = {
	
	anarchist = {
	
		types = {
			anarcho_syndicalism = { # 将意识形态分配给领导者时使用。例如,民主党有保守主义、自由主义和社会主义。 可以定义一个值(yes/no)
				can_be_randomly_selected = # 如果值为no,则在创建新的随机领导人时不会随机选择子意识形态
			}
		}
		
		dynamic_faction_names = {
			"FACTION_NAME_ANARCHIST_1" # 当一个具有这种意识形态的ai创建一个阵营时,ai使用的阵营名称
		}
		
		color = { 169 42 42 } # 代表该意识形态的RGB颜色。 这个颜色会出现在政党饼图或饼图附近。
		
		rules = { # 该意识形态的规则,值为(yes/no)
                        can_create_collaboration_government = # 创建合作政府
			can_declare_war_on_same_ideology = # 对相同意识形态发起战争;非必要
			can_force_government = # 可以在和平协议中改变意识形态;必要
			can_send_volunteers = # 派遣志愿军;必要
			can_puppet = # 可以在和平协议中傀儡一个国家;必要
			can_lower_tension = # 在和平协议中降低世界紧张度;非必要
			can_only_justify_war_on_threat_country = # 只能对一个国家正当化战争;非必要
			can_guarantee_other_ideologies = # 对其他意识形态保障独立;非必要
		}

                can_host_government_in_exile = no # 接待流亡政府
		
		war_impact_on_world_tension = # 值范围-1到1 增加或减少这个国家制造的世界紧张度
		faction_impact_on_world_tension = # 值范围-1到1 增加或减少一个该意识形态阵营对世界紧张度的影响
		
		modifiers = { # 更多意识形态规则
			generate_wargoal_tension = # 正当化战争需要的世界紧张度 (0 to 1)
			join_faction_tension = # 加入一个阵营需要的世界紧张度 (0 to 1)
			lend_lease_tension = #租借法案需要的世界紧张度 (0 to 1)
			send_volunteers_tension = # 派遣志愿军需要的世界紧张度 (0 to 1)
			guarantee_tension = # 保障国家独立所需要的世界紧张度 (0 to 1)
			take_states_cost_factor = # 更改和平协议中获取地区的战争点数花费. 0.25将使使用成本提高25% (-1 to 1)
			annex_cost_factor = # 更改和平协议中完全吞并一个国家的战争点数花费. 0.5 将使使用成本提高50% (-1 to 1)
			justify_war_goal_when_in_major_war_time = # Changes the cost of justifying a war while in a major war(改变在重大战争中为战争辩护的成本). 0.5 would 
                       decrease time by 50% (0 to 1)
			drift_defence_factor = # 意识形态的抵御力度 # 0.3 将会增加30%的意识形态抵御力度(-1 to 1)
			puppet_cost_factor = # 更改在和平协议中傀儡一个国家的战争点数花费 (-1 to 1)
		}

		can_be_boosted = # Can you boost this ideologies popularity in another country (yes/no)
		can_collaborate = #
		
		faction_modifiers = {
			faction_trade_opinion_factor = 0.50 #plus 50% trade opinion
		}
		ai_<ideology> = yes # Determines what ai this ideology will use (democratic, communism, fascism, neutral or make a new one.)
	}
}

Ai 和平协议

ai_peace影响ai政体将决定他们的战争行为。这部分内容将影响ai在一定条件下选择占领地区、吞并或傀儡,以及希望从和平协议中得到什么益处。

以上效果这些被ai政体的意识形态所影响。

和平协议效果位于 /Hearts of Iron IV/common/ai_peace/*.txt 每个意识形态都有着自己单独的文件。如果你没有创建一个单独的文件,ai只会使用 /Hearts of Iron IV/common/ai_peace/z_default.txt

在游戏中完善你的意识形态

本地化

The localisation for the ideologies is located in /Hearts of Iron IV/localisation/parties_l_<language>.txt. This file also houses the names given to the political parties in each nation.

Somewhere in your copy of the file add

<ideology>:0 "<The name you want to be displayed>"
<ideology>_noun:0 "<The ideology's noun>"
<ideology>_desc:0 "<How you would refer to a nation with that ideology>" # Ie. Democratic Regime, Fascist Dictatorship, Anarcho-Capitalist Regime

You also have to add localisation for the ideology to every country which can be a bit time consuming

AFG_anarchist:0 "Anarchist Republic of Afghanistan"
AFG_anarchist_ADJ:0 "Anarcho-Afghan"
AFG_anarchist_DEF:0 "The People's Anarchist Republic of Afghanistan"

GFX

Every nation will either need a flag for this ideology, or a generic national flag.

To assign an ideology to a flag just name it <TAG>_<ideology>.tga or create a flag for the nation to use that doesn't have a specific ideology by just naming the flag <TAG>.tga. Doing it the last way makes it easier to add flags when you have added a lot of similar ideologies.

Country history

If you want the ideology to appear in a country you will have to add it like this to a countries history file like this: In France, for example /Hearts of Iron IV/history/countries/FRA - France.txt

set_politics = {
	ruling_party = democratic
	last_election = "1932.5.1"
	election_frequency = 48
	elections_allowed = yes
}
set_popularities = { #This MUST add up to 100 otherwise the ideologies break
	democratic = 69
	fascism = 1
	communism = 30
}

France will now need a new leader

create_country_leader = {
	name = "Édouard Daladier"
	desc = "POLITICS_ÉDOUARD_DALADIER_DESC"
	picture = "Portrait_France_Edouard_Daladier.dds"
	expire = "1965.1.1"
	ideology = socialism
	traits = {
		stout_defender
	}
}

Political advisor

If you want to make it possible for you to boost the ideology through advisor you have to add this into /Hearts of Iron IV/common/country_leader/00_traits.txt

<ideology>_booster = {
	random = no
	sprite = 13
	<ideology>_drift = 0.1
	
	ai_will_do = {
		factor = 0
	}
}

Also to add localisation to this advisor go to /Hearts of Iron IV/localisation/ideas_l_<language>.txt and add something similar to:

generic_<ideology>_booster:0 "" #Whatever you want to call the person that supports the ideology. Eg. Democratic Politician, Communist Politician, Fascist Politician

If you want a country to have an advisor of this ideology you have to go to the nation's idea files in /Hearts of Iron IV/common/ideas/<nation>.txt and add:

 <name> = {
			
	allowed = {
		original_tag = "<TAG>"
	}	
	traits = { <ideology>_booster }
	
	on_add = {
		country_event = # Add an event here if you want one
	}
	
	do_effect = {
		NOT = {
			has_government = <ideology> # You can only select it if your current ideology isn't your new one
		}
	}

	ai_will_do = {
		factor = 0
	}
}