Losa10/PreTrain-HOI4-Modding-Assistant huggingface dataset:
### Entity: National Focus
Tree: cog_focus
Component: COG_expand_production_facilities
Constructs: prerequisite, limit, completion_reward, has_global_flag, random_core_state, is_fully_controlled_by, add_extra_state_shared_building_slots, add_building_construction
Source: game
File: common/national_focus/congo.txt

Code:
focus = {
	id = COG_expand_production_facilities
	icon = GFX_goal_generic_air_production
	x = 0
	y = 1
	prerequisite = {
		focus = COG_scouting_the_terrain
	}
	relative_position_id = COG_scouting_the_terrain
	search_filters = {
		FOCUS_FILTER_INDUSTRY
	}
	cost = 10
	bypass = {

	}
	available = {
		has_global_flag = COG_force_publique_reformed_flag
	}
	completion_reward = {
		random_core_state = {
			limit = {
				free_building_slots = {
					building = arms_factory
					size = > 1
					include_locked = yes
				}
				is_fully_controlled_by = ROOT
			}
			add_extra_state_shared_building_slots = 2
			add_building_construction = {
				type = arms_factory
				level = 2
				instant_build = yes
			}
		}
		custom_effect_tooltip = generic_skip_one_line_tt modify_COG_COG_armee_nationale_congolaise_modifier_tt
		add_to_variable = {
			COG_armee_nationale_congolaise_modifier_industrial_capacity_factory = 0.05
			tooltip = industrial_capacity_factory_tt
		}
	}
}
### Entity: Unit Template
Component: WGR_BC_HISTORICAL
Source: game
File: common/units/names_ships/WGR_ship_names.txt

Code:
WGR_BC_HISTORICAL = {
	name = NAME_THEME_HISTORICAL_BC
	for_countries = {
		WGR
	}
	type = ship
	ship_types = {
		ship_hull_heavy battleship battle_cruiser
	}
	fallback_name = Schlachtkreuzer %d
	ordered = {
		1 = {
			Von Lettow-Vorbeck
		}
		2 = {
			Lütjens
		}
	}
}
### Entity: Scripted Effect
Component: EAI_PC_sort_projects_by_sort_val
Constructs: limit, has_country_flag, set_temp_variable, check_variable, add_to_temp_variable
Source: game
File: common/scripted_effects/EAI_CONSTRUCTION_PRIORITY_effects.txt

Code:
EAI_PC_sort_projects_by_sort_val = {
	if = {
		limit = {
			has_country_flag = EAI_PC_sort_logging
		}
		log = ********** Before sorting
		for_each_loop = {
			array = projects_to_be_sorted_pos
			log = sort: pos=[?v], id=[?projects_to_be_sorted_id^i], val=[?projects_to_be_sorted_val], T=[?EAI_PC_building_type^projects_to_be_sorted_id^i], D=[?EAI_PC_build_time^projects_to_be_sorted_id^i], L=[?EAI_PC_target_state^projects_to_be_sorted_id^i.GetName]
		}
	} {
		limit = {
			has_country_flag = EAI_PC_sort_logging
		}
		log = ********** After sorting **********
		for_each_loop = {
			array = projects_to_be_sorted_pos
			log = sort: pos=[?v], id=[?projects_to_be_sorted_id^i], val=[?projects_to_be_sorted_val], T=[?EAI_PC_building_type^projects_to_be_sorted_id^i], D=[?EAI_PC_build_time^projects_to_be_sorted_id^i], L=[?EAI_PC_target_state^projects_to_be_sorted_id^i.GetName]
		}
	}
	set_temp_variable = {
		sort_project = 1
	} {
		_sort_mode = 0
	}
	while_loop_effect = {
		break = sort_project_b
		limit = {
			check_variable = {
				sort_project = < projects_to_be_sorted_id^num
			}
		}
		set_temp_variable = {
			sort_project_id = projects_to_be_sorted_id^sort_project
		} {
			sort_project_val = projects_to_be_sorted_val^sort_project
		} {
			j = sort_project
		} {
			j3 = j
		} {
			projects_to_be_sorted_id^j3 = sort_project_id
		} {
			projects_to_be_sorted_val^j3 = sort_project_val
		}
		subtract_from_temp_variable = {
			j = 1
		}
		while_loop_effect = {
			break = break_2
			limit = {
				check_variable = {
					var = j
					value = 0
					compare = greater_than_or_equals
				}
				if = {
					limit = {
						check_variable = {
							_sort_mode = 0
						}
					}
					check_variable = {
						projects_to_be_sorted_val^j = > sort_project_val
					}
				} {
					limit = {
						check_variable = {
							_sort_mode = 1
						}
					}
					check_variable = {
						projects_to_be_sorted_val^j = < sort_project_val
					}
				}
			}
			set_temp_variable = {
				j2 = j
			} {
				projects_to_be_sorted_id^j2 = projects_to_be_sorted_id^j
			} {
				projects_to_be_sorted_val^j2 = projects_to_be_sorted_val^j
			}
			add_to_temp_variable = {
				j2 = 1
			}
			subtract_from_temp_variable = {
				j = 1
			}
		}
		add_to_temp_variable = {
			j3 = 1
		} {
			sort_project = 1
		}
	}
}
### Entity: Scripted Effect
Component: EAI_XP_return_stored_army_xp
Constructs: limit, has_country_flag, set_variable
Source: game
File: common/scripted_effects/EAI_COUNTRY_xp_management_effects.txt

Code:
EAI_XP_return_stored_army_xp = {
	if = {
		limit = {
			has_country_flag = EAI_xp_logging
		}
		log = [GetYear] [GetMonth] | AI | [Root.GetName] | XP: returning [?EAI_XP_stored_army_xp], army xp = [?army_experience]
	}
	army_experience = EAI_XP_stored_army_xp
	set_variable = {
		EAI_XP_stored_army_xp = 0
	}
}
### Entity: Idea
Component: AFG_foreign_trained_personnel_2
Constructs: research_bonus
Source: game
File: common/ideas/r56_afghanistan.txt

Code:
AFG_foreign_trained_personnel_2 = {
	name = AFG_foreign_trained_personnel
	picture = generic_air_payment
	allowed = {
		always = yes
	}
	allowed_civil_war = {
		always = yes
	}
	modifier = {
		experience_gain_air_factor = 0.05
	}
	research_bonus = {
		air_equipment = 0.05
	}
}
### Entity: AI Strategy
Component: RKH_got_enough_stuff_already
Constructs: has_war_with, has_war_with_major, is_subject_of, send_lend_lease_desire
Source: game
File: common/ai_strategy/RKH.txt

Code:
RKH_got_enough_stuff_already = {
	allowed = {
		tag = RKH
	}
	enable = {
		GER = {
			has_war_with_major = yes
		}
		ROOT = {
			is_subject_of = GER
			surrender_progress = < 0.01
			any_neighbor_country = {
				NOT = {
					has_war_with = ROOT
				}
			}
			stockpile_ratio = {
				archetype = infantry_equipment
				ratio = > 1
			} {
				archetype = support_equipment
				ratio = > 1
			}
		}
	}
	abort_when_not_enabled = yes
	ai_strategy = {
		type = send_lend_lease_desire
		id = GER
		value = 100
	}
}
### Entity: National Focus
Tree: ita_focus
Component: ITA_italian_hegemony
Constructs: prerequisite, limit, add_ideas, completion_reward, swap_ideas, remove_idea, add_idea, add_to_tech_sharing_group
Source: game
File: common/national_focus/italy.txt

Code:
focus = {
	id = ITA_italian_hegemony
	icon = GFX_focus_ITA_italian_hegemony
	prerequisite = {
		focus = ITA_spreading_the_eagles_wings
	}
	relative_position_id = ITA_a_greater_purpose
	x = 0
	y = 2
	cost = 10
	available = {
		num_subjects = > 0
	}
	search_filters = {
		FOCUS_FILTER_RESEARCH FOCUS_FILTER_POLITICAL FOCUS_FILTER_MANPOWER
	}
	completion_reward = {
		swap_ideas = {
			remove_idea = ITA_italian_hegemony_master_2
			add_idea = ITA_italian_hegemony_master_3
		}
		add_to_tech_sharing_group = ITA_italian_hegemony_program
		custom_effect_tooltip = ITA_italian_hegemony_subjects_tt
		if = {
			limit = {
				num_subjects = > 0
			}
			every_other_country = {
				limit = {
					is_subject_of = ROOT
				}
				add_ideas = ITA_italian_hegemony_subjects
				add_to_tech_sharing_group = ITA_italian_hegemony_program
			}
		}
		else = {
			effect_tooltip = {
				add_ideas = ITA_italian_hegemony_subjects
				add_to_tech_sharing_group = ITA_italian_hegemony_program
			}
		}
	}
}
### Entity: Character
Component: POL_wincenty_witos
Source: game
File: common/characters/POL.txt

Code:
POL_wincenty_witos = {
	name = POL_wincenty_witos
	portraits = {
		civilian = {
			large = GFX_POL_wincenty_witos
		}
	}
	country_leader = {
		ideology = socialism
		traits = {
			morges_champion
		}
		expire = 1965.1.1.1
		id = -1
	}
}
### Entity: Event
Component: bftb_greece.30
Constructs: is_triggered_only, ai_chance, add_war_support, is_major, add_opinion_modifier, has_guaranteed, has_war_with_major, give_guarantee
Source: game
File: events/BFTB_Greece.txt

Code:
country_event = {
	id = bftb_greece.30
	title = bftb_greece.29.t
	desc = bftb_greece.30.desc
	picture = GFX_report_event_tur_military_affair
	is_triggered_only = yes
	option = {
		name = bftb_greece.30.a
		ai_chance = {
			base = 4
			modifier = {
				any_other_country = {
					is_major = yes
					has_guaranteed = TUR
				}
				factor = 0.5
			} {
				any_other_country = {
					has_guaranteed = TUR
					strength_ratio = {
						tag = ROOT
						ratio = > 1
					}
				}
				factor = 0
			} {
				surrender_progress = > 0.1
				factor = 0
			} {
				has_war_with_major = yes
				factor = 0
			}
		}
		add_war_support = 0.05
		give_guarantee = GRE
		add_opinion_modifier = {
			target = GRE
			modifier = offered_support
		}
		FROM = {
			country_event = bftb_greece.237
		}
		hidden_effect = {
			set_country_flag = SOV_isolating_turkey
			add_opinion_modifier = {
				target = TUR
				modifier = GRE_strategic_enemy
			}
		}
	} {
		name = bftb_greece.30.b
		ai_chance = {
			base = 1
		}
		FROM = {
			country_event = bftb_greece.236
		}
	}
}
### Entity: National Focus
Tree: saf_focus
Component: SAF_support_nazification_of_south_west_africa
Constructs: prerequisite, has_war, limit, has_government, has_country_flag, completion_reward, cancel_if_invalid, add_extra_state_shared_building_slots
Source: game
File: common/national_focus/south_africa.txt

Code:
focus = {
	id = SAF_support_nazification_of_south_west_africa
	icon = GFX_goal_generic_attack_allies
	prerequisite = {
		focus = SAF_support_ossewabrandwag
	}
	mutually_exclusive = {
		focus = SAF_south_africa_first
	}
	x = 0
	y = 3
	relative_position_id = SAF_support_the_afrikaner_broederbond
	cost = 10
	ai_will_do = {
		factor = 0.45
		modifier = {
			GER = {
				has_war = yes
			}
			factor = 0
		}
	}
	available = {
		fascism = > 0.2
		if = {
			limit = {
				not = {
					has_government = fascism
				}
			}
			compare_autonomy_state = > autonomy_colony
		} {
			limit = {
				has_government = fascism
			}
			compare_autonomy_state = > autonomy_reichsprotectorate
		}
		controls_state = 541 893 894 895
		NOT = {
			has_country_flag = britain_enforced_our_loyalty
		}
	}
	bypass = {

	}
	cancel_if_invalid = yes
	continue_if_invalid = no
	available_if_capitulated = no
	search_filters = {
		FOCUS_FILTER_INDUSTRY
	}
	completion_reward = {
		541 = {
			add_extra_state_shared_building_slots = 2
			add_building_construction = {
				type = arms_factory
				level = 1
				instant_build = yes
			} {
				type = industrial_complex
				level = 1
				instant_build = yes
			} {
				type = bunker
				province = {
					id = 7770 4879
				}
				level = 2
				instant_build = yes
			} {
				type = air_base
				level = 2
				instant_build = yes
			} {
				type = naval_base
				province = {
					id = 2207
				}
				level = 1
				instant_build = yes
			}
		}
		893 = {
			add_building_construction = {
				type = bunker
				province = {
					id = 5154 5189 7605 10963
				}
				level = 2
				instant_build = yes
			}
		}
		895 = {
			add_building_construction = {
				type = bunker
				province = {
					id = 12519
				}
				level = 2
				instant_build = yes
			}
		}
	}
}
### Entity: Character
Component: LEB_alfred_naqqache
Source: game
File: common/characters/LEB.txt

Code:
LEB_alfred_naqqache = {
	name = LEB_alfred_naqqache
	portraits = {
		civilian = {
			large = GFX_Portrait_Arabia_Generic_2
		}
	}
	country_leader = {
		ideology = fascism_ideology
		traits = {
			LEB_great_statesman
		}
		expire = 1962.1.1.1
		id = -1
	}
}
### Entity: Idea
Component: all_arms_at_defense_army_spirit
Constructs: has_dlc, has_doctrine, equipment_bonus
Source: game
File: common/ideas/army_spirits.txt

Code:
all_arms_at_defense_army_spirit = {
	ledger = army
	visible = {
		has_dlc = No Compromise, No Surrender
	}
	available = {
		OR = {
			has_doctrine = superior_firepower tank_destroyer_force
		}
	}
	modifier = {
		tactic_tactical_withdrawal_preferred_weight_factor = 1
	}
	equipment_bonus = {
		infantry_equipment = {
			instant = yes
			hard_attack = 0.25
		}
	}
	ai_will_do = {
		factor = 1
		modifier = {
			factor = 0
			NOT = {
				has_dlc = No Compromise, No Surrender
			}
		} {
			factor = 2
			has_doctrine = tank_destroyer_force
		}
	}
}
### Entity: Character
Component: USA_jimmy_doolittle
Source: game
File: common/characters/USA.txt

Code:
USA_jimmy_doolittle = {
	name = USA_jimmy_doolittle
	portraits = {
		army = {
			small = GFX_idea_jimmy_doolittle
		}
	}
	advisor = {
		slot = high_command
		idea_token = jimmy_doolittle
		ledger = air
		allowed = {
			original_tag = USA
		}
		traits = {
			air_strategic_bombing_2
		}
		cost = 100
		ai_will_do = {
			factor = 1.0
		}
	}
}
### Entity: National Focus
Tree: vic_focus
Component: VIC_hidden_materials
Constructs: prerequisite, add_ideas, completion_reward, cancel_if_invalid
Source: game
File: common/national_focus/vichy_france.txt

Code:
focus = {
	id = VIC_hidden_materials
	icon = GFX_focus_secret_rearmament
	x = 0
	y = 1
	offset = {
		x = 0
		y = 0
	}
	prerequisite = {
		focus = VIC_rebuild_the_military
	}
	relative_position_id = VIC_rebuild_the_military
	cost = 10
	ai_will_do = {
		factor = 1
	}
	available = {

	}
	bypass = {

	}
	cancel_if_invalid = yes
	continue_if_invalid = no
	available_if_capitulated = no
	completion_reward = {
		add_ideas = {
			FRA_hidden_materials
		}
	}
}
### Entity: National Focus
Tree: prc_focus
Component: PRC_rural_region_development_two
Constructs: every_owned_state, prerequisite, limit, completion_reward, has_state_category, is_owned_by, has_dynamic_modifier, cancel_if_invalid
Source: game
File: common/national_focus/china_communist_sea.txt

Code:
focus = {
	id = PRC_rural_region_development_two
	icon = GFX_focus_PRC_rural_region_development_two
	prerequisite = {
		focus = PRC_rural_region_development
	}
	x = -1
	y = 1
	relative_position_id = PRC_rural_region_development
	cost = 10
	ai_will_do = {
		factor = 1
	}
	search_filters = {
		FOCUS_FILTER_INDUSTRY
	}
	available = {
		any_controlled_state = {
			has_state_category = rural
			is_owned_by = ROOT
			NOT = {
				has_dynamic_modifier = {
					modifier = PRC_rural_development_state_modifier_bonus
				}
			}
		}
	}
	bypass = {

	}
	cancel_if_invalid = yes
	continue_if_invalid = no
	available_if_capitulated = no
	completion_reward = {
		custom_effect_tooltip = PRC_rural_region_development_two_tt generic_skip_one_line_tt generic_skip_one_line_tt
		every_owned_state = {
			limit = {
				has_state_category = rural
				NOT = {
					has_dynamic_modifier = {
						modifier = PRC_rural_development_state_modifier_bonus
					}
				}
			}
			random_select_amount = 2
			add_building_construction = {
				type = infrastructure
				level = 1
				instant_build = yes
			}
			add_dynamic_modifier = {
				modifier = PRC_rural_development_state_modifier_bonus
			}
		}
		PRC_modify_industrial_modifier = yes
		add_to_variable = {
			PRC_industry_global_building_slots_factor = 0.05
			tooltip = global_building_slots_factor_tt
		}
	}
}
### Entity: Idea
Component: r56_LUX_beating_the_giant
Source: game
File: common/ideas/r56_luxembourg.txt

Code:
r56_LUX_beating_the_giant = {
	picture = FIN_german_threat
	targeted_modifier = {
		tag = GER
		attack_bonus_against = 0.1
		defense_bonus_against = 0.15
	}
}
### Entity: Idea
Component: EAI_DD_4/medium_tank_destroyer_chassis_bonus
Constructs: equipment_bonus, build_cost_ic
Source: game
File: common/ideas/EAI_difficulty_ideas.txt

Code:
EAI_DD_4/medium_tank_destroyer_chassis_bonus = {
	allowed = {
		always = no
	}
	equipment_bonus = {
		medium_tank_destroyer_chassis = {
			build_cost_ic = -0.1
			instant = yes
		}
	}
}
### Entity: Decision
Component: AFG_kabul_conference_category
Constructs: has_completed_focus, has_war_with, has_country_flag, fire_only_once, has_dynamic_modifier, complete_effect, set_country_flag, remove_effect
Source: game
File: common/decisions/AFG.txt

Code:
AFG_kabul_conference_category = {
	AFG_claim_state = {
		icon = GFX_decision_revolt
		allowed = {
			original_tag = AFG
		}
		available = {
			FROM = {
				OWNER = {
					has_war_with = ROOT
				}
				NOT = {
					has_dynamic_modifier = {
						modifier = AFG_arranged_expansion_modifier
					}
				}
				is_controlled_by_ROOT_or_ally = yes
			}
			NOT = {
				has_country_flag = AFG_expansion_claim_in_progress
			}
		}
		visible = {
			has_completed_focus = AFG_kabul_conference
			FROM = {
				NOT = {
					has_dynamic_modifier = {
						modifier = AFG_arranged_expansion_modifier
					}
				}
			}
		}
		state_target = asia
		target_trigger = {
			FROM = {
				OWNER = {
					has_war_with = ROOT
				}
				OR = {
					region = 190 251 296 254 153 146 231 31 230 290 141 145 252 268 269 267 270 136 291 297 298
				}
			}
		}
		on_map_mode = map_only
		cost = 30
		fire_only_once = no
		days_remove = 30
		complete_effect = {
			hidden_effect = {
				set_country_flag = AFG_expansion_claim_in_progress
			}
		}
		remove_effect = {
			hidden_effect = {
				clr_country_flag = AFG_expansion_claim_in_progress
			}
			FROM = {
				add_dynamic_modifier = {
					modifier = AFG_arranged_expansion_modifier
				}
			}
		}
		cancel_trigger = {
			FROM = {
				is_not_controlled_by_ROOT_or_ally = yes
			}
		}
		cancel_effect = {
			hidden_effect = {
				clr_country_flag = AFG_expansion_claim_in_progress
			}
		}
	}
	AFG_claim_state_middle_east = {
		icon = GFX_decision_revolt
		allowed = {
			original_tag = AFG
		}
		available = {
			FROM = {
				OWNER = {
					has_war_with = ROOT
				}
				NOT = {
					has_dynamic_modifier = {
						modifier = AFG_arranged_expansion_modifier
					}
				}
				is_controlled_by_ROOT_or_ally = yes
			}
			NOT = {
				has_country_flag = AFG_expansion_claim_in_progress
			}
		}
		visible = {
			has_completed_focus = AFG_kabul_conference
			FROM = {
				NOT = {
					has_dynamic_modifier = {
						modifier = AFG_arranged_expansion_modifier
					}
				}
			}
		}
		state_target = middle_east
		target_trigger = {
			FROM = {
				OWNER = {
					has_war_with = ROOT
				}
				OR = {
					region = 291 241 116 240 239 28 196 237 236 238 297 298
				}
			}
		}
		on_map_mode = map_only
		cost = 30
		fire_only_once = no
		days_remove = 30
		complete_effect = {
			hidden_effect = {
				set_country_flag = AFG_expansion_claim_in_progress
			}
		}
		remove_effect = {
			h
# ... (truncated)
### Entity: Character
Component: FRI_pierre_andre_michel_pages
Source: game
File: common/characters/FRI.txt

Code:
FRI_pierre_andre_michel_pages = {
	name = FRI_pierre_andre_michel_pages
	portraits = {
		army = {
			small = GFX_idea_generic_political_advisor_europe_3
		}
	}
	advisor = {
		slot = political_advisor
		idea_token = FRI_pierre_andre_michel_pages
		allowed = {
			original_tag = FRI
		}
		traits = {
			quartermaster_general
		}
	}
}
### Entity: Order of Battle
Component: Soft Taco
Constructs: division_template
Source: game
File: history/units/r56w_WHY.txt

Code:
division = {
	name = Soft Taco
	location = 3513
	division_template = Taco Bell Value Pack
	start_experience_factor = 0.75
}
### Entity: Event
Component: quebec_commie.13
Constructs: is_triggered_only, add_war_support, add_stability, add_political_power, create_wargoal, annex_everything
Source: game
File: events/Quebec.txt

Code:
country_event = {
	id = quebec_commie.13
	title = quebec_commie.13.t
	desc = quebec_commie.13.d
	picture = GFX_report_event_finnish_soldiers_snow
	is_triggered_only = yes
	option = {
		name = quebec_commie.13.a
		create_wargoal = {
			type = annex_everything
			target = FROM
		}
	} {
		name = quebec_commie.23.b
		add_stability = -0.05
		add_war_support = -0.05
		add_political_power = -50
	}
}
### Entity: National Focus
Tree: ukr_focus
Component: UKR_kharkiv_aviation_factory
Constructs: prerequisite, limit, completion_reward, has_dlc, add_tech_bonus, bomber_bonus, fighter_bonus, random_owned_controlled_state
Source: game
File: common/national_focus/ukraine.txt

Code:
focus = {
	id = UKR_kharkiv_aviation_factory
	icon = GFX_goal_generic_air_heavy_fighter_new
	prerequisite = {
		focus = UKR_look_to_the_skies
	}
	relative_position_id = UKR_look_to_the_skies
	x = 0
	y = 1
	cost = 10
	available_if_capitulated = yes
	ai_will_do = {
		factor = 1
	}
	available = {
		controls_state = 221
	}
	completion_reward = {
		if = {
			limit = {
				has_dlc = By Blood Alone
			}
			add_tech_bonus = {
				name = bomber_bonus
				bonus = 1
				uses = 1
				category = heavy_air
			} {
				name = fighter_bonus
				bonus = 1
				uses = 1
				category = medium_air
			}
		}
		else = {
			add_tech_bonus = {
				name = fighter_bonus
				bonus = 1
				uses = 1
				category = cat_heavy_fighter
			} {
				name = bomber_bonus
				bonus = 1
				uses = 1
				category = heavy_air
			}
		}
		air_experience = 5
		random_owned_controlled_state = {
			prioritize = {
				221
			}
			limit = {
				ROOT = {
					has_full_control_of_state = PREV
				}
				free_building_slots = {
					building = arms_factory
					size = > 1
					include_locked = yes
				}
			}
			add_extra_state_shared_building_slots = 1
			add_building_construction = {
				type = arms_factory
				level = 1
				instant_build = yes
			}
		}
	}
	search_filters = {
		FOCUS_FILTER_RESEARCH
	}
}
### Entity: Decision
Component: GER_mitteleuropa_allied_trade_cat
Constructs: has_completed_focus
Source: game
File: common/decisions/categories/GER_decision_categories.txt

Code:
GER_mitteleuropa_allied_trade_cat = {
	icon = GFX_decision_category_generic_trade
	allowed = {
		original_tag = GER
	}
	priority = 6
	visible = {
		has_completed_focus = GER_trade_agreements
	}
}
### Entity: National Focus
Tree: bel_focus
Component: BEL_the_new_ruhr
Constructs: prerequisite, limit, completion_reward, is_owned_and_controlled_by, random_owned_controlled_state, is_core_of, is_fully_controlled_by, add_extra_state_shared_building_slots
Source: game
File: common/national_focus/belgium.txt

Code:
focus = {
	id = BEL_the_new_ruhr
	icon = GFX_focus_BEL_the_new_ruhr
	prerequisite = {
		focus = BEL_the_walloon_legion
	}
	relative_position_id = BEL_the_walloon_legion
	search_filters = {
		FOCUS_FILTER_INDUSTRY
	}
	x = 0
	y = 2
	cost = 10
	available = {
		fascism = > 0.9
		980 = {
			is_owned_and_controlled_by = BEL
		}
	}
	completion_reward = {
		random_owned_controlled_state = {
			limit = {
				is_core_of = BEL
				is_fully_controlled_by = BEL
				NOT = {
					state = 980
				}
				free_building_slots = {
					building = industrial_complex
					size = > 1
					include_locked = yes
				}
			}
			add_extra_state_shared_building_slots = 2
			add_building_construction = {
				type = industrial_complex
				level = 2
				instant_build = yes
			}
		} {
			limit = {
				is_core_of = BEL
				is_fully_controlled_by = BEL
				NOT = {
					state = 980
				}
				free_building_slots = {
					building = arms_factory
					size = > 1
					include_locked = yes
				}
			}
			add_extra_state_shared_building_slots = 2
			add_building_construction = {
				type = arms_factory
				level = 2
				instant_build = yes
			}
		}
		IF = {
			limit = {
				980 = {
					is_core_of = ROOT
					is_fully_controlled_by = ROOT
					free_building_slots = {
						building = industrial_complex
						size = > 1
						include_locked = yes
					}
				}
			}
			980 = {
				add_extra_state_shared_building_slots = 2
				add_building_construction = {
					type = industrial_complex
					level = 2
					instant_build = yes
				}
			}
		} {
			limit = {
				980 = {
					is_core_of = ROOT
					is_fully_controlled_by = ROOT
					free_building_slots = {
						building = arms_factory
						size = > 1
						include_locked = yes
					}
				}
			}
			980 = {
				add_extra_state_shared_building_slots = 2
				add_building_construction = {
					type = arms_factory
					level = 2
					instant_build = yes
				}
			}
		}
		980 = {
			increase_state_category = yes
		}
	}
}
### Entity: AI Strategy
Component: EAI_PROD_ARMY_GB_armor_army_production_strategy
Constructs: has_country_flag
Source: game
File: common/ai_strategy/EAI_PRODUCTION_division_strategies.txt

Code:
EAI_PROD_ARMY_GB_armor_army_production_strategy = {
	enable = {
		has_country_flag = EAI_GB_armor_army_production_strategy
	}
	abort_when_not_enabled = yes
	ai_strategy = {
		type = role_ratio
		id = armor
		value = 35
	}
}
### Entity: Event
Component: belgium.112
Constructs: is_triggered_only
Source: game
File: events/BEL_additional_events.txt

Code:
country_event = {
	id = belgium.112
	title = belgium.112.t
	desc = belgium.112.desc
	picture = GFX_report_event_generic_bombers
	is_triggered_only = yes
	option = {
		name = belgium.112.a
	}
}