Losa10/PreTrain-HOI4-Modding-Assistant huggingface dataset:
### Entity: Idea
Component: BAY_ent
Source: game
File: common/ideas/bavaria.txt

Code:
BAY_ent = {
	picture = generic_army_europe_2
	allowed = {
		original_tag = BAY
	}
	traits = {
		army_entrenchment_2
	}
	ai_will_do = {
		factor = 1
	}
}
### Entity: National Focus
Tree: ast_focus
Component: AST_walls_and_whispers
Constructs: prerequisite, limit, add_ideas, completion_reward, random_owned_state, is_coastal, is_fully_controlled_by, add_building_construction
Source: game
File: common/national_focus/australia_taog.txt

Code:
focus = {
	id = AST_walls_and_whispers
	icon = GFX_focus_generic_secret_service_agency
	prerequisite = {
		focus = AST_until_the_tide_of_battle_swings
	}
	relative_position_id = AST_until_the_tide_of_battle_swings
	x = -2
	y = 1
	cost = 10
	available = {

	}
	bypass = {

	}
	available_if_capitulated = no
	completion_reward = {
		random_owned_state = {
			limit = {
				is_coastal = yes
				is_fully_controlled_by = ROOT
			}
			prioritize = {
				979 12237
			}
			add_building_construction = {
				type = coastal_bunker
				level = 3
				province = {
					all_provinces = yes
					limit_to_victory_point = > 0
					limit_to_coastal = yes
				}
			}
		} {
			limit = {
				is_coastal = yes
				is_fully_controlled_by = ROOT
			}
			prioritize = {
				979 10251
			}
			add_building_construction = {
				type = coastal_bunker
				level = 3
				province = {
					all_provinces = yes
					limit_to_victory_point = > 0
					limit_to_coastal = yes
				}
			}
		} {
			limit = {
				is_coastal = yes
				is_fully_controlled_by = ROOT
			}
			prioritize = {
				737 7251
			}
			add_building_construction = {
				type = coastal_bunker
				level = 3
				province = {
					all_provinces = yes
					limit_to_victory_point = > 0
					limit_to_coastal = yes
				}
			}
		} {
			limit = {
				is_coastal = yes
				is_fully_controlled_by = ROOT
			}
			prioritize = {
				523 4329
			}
			add_building_construction = {
				type = coastal_bunker
				level = 3
				province = {
					all_provinces = yes
					limit_to_victory_point = > 0
					limit_to_coastal = yes
				}
			}
		} {
			limit = {
				is_fully_controlled_by = ROOT
			}
			prioritize = {
				737 10206
			}
			add_building_construction = {
				type = bunker
				level = 3
				province = {
					all_provinces = yes
					limit_to_victory_point = > 0
				}
			}
		} {
			limit = {
				is_fully_controlled_by = ROOT
			}
			prioritize = {
				737 1286
			}
			add_building_construction = {
				type = bunker
				level = 3
				province = {
					all_provinces = yes
					limit_to_victory_point = > 0
				}
			}
		}
		custom_effect_tooltip = generic_skip_one_line_tt generic_skip_one_line_tt
		IF = {
			limit = {
				has_dlc = La Resistance
			}
			IF = {
				limit = {
					has_intelligence_agency = no
				}
				create_intelligence_agency = {
					name = Central Bureau
					icon = GFX_intelligence_agency_logo_generic_5
				}
			}
			ELSE = {
				gain_r
# ... (truncated)
### Entity: Country History
Country: ADO
Component: ADO_technology
Constructs: set_technology
Source: game
File: history/countries/ADO - Andorra.txt

Code:
# Starting Technologies for ADO
set_technology = {
	infantry_weapons = 1
	tech_support = 1
	tech_recon = 1
	tech_engineers = 1
	gw_artillery = 1
}
### Entity: State History
Component: 444
Constructs: add_core_of, add_to_array
Source: game
File: history/states/444-Karachi.txt

Code:
state = {
	id = 444
	name = STATE_444
	manpower = 342781
	state_category = pastoral
	history = {
		victory_points = {
			8066 1
		} {
			12774 1
		}
		owner = RAJ
		buildings = {
			infrastructure = 1
		}
		add_core_of = PAK
		add_to_array = {
			state_victory_points = 8066
		} {
			state_victory_points = 12774
		}
	}
	provinces = {
		1179 5043 5075 7917 8013 8066 12761 12774
	}
	local_supplies = 0.0
}
### Entity: National Focus
Tree: sov_focus
Component: SOV_world_revolution_old
Constructs: prerequisite, has_war, limit, add_ideas, has_government, every_country, add_opinion_modifier, completion_reward
Source: game
File: common/national_focus/soviet_old.txt

Code:
focus = {
	id = SOV_world_revolution_old
	text = SOV_world_revolution
	icon = GFX_goal_spread_communism
	prerequisite = {
		focus = SOV_permanent_revolution
	}
	relative_position_id = SOV_permanent_revolution
	x = 2
	y = 1
	cost = 5
	ai_will_do = {
		factor = 1
	}
	available = {
		is_puppet = no
	}
	bypass = {

	}
	completion_reward = {
		hidden_effect = {
			news_event = {
				id = r56.soviet.29
				days = 1
			}
			every_country = {
				IF = {
					limit = {
						NOT = {
							has_government = communism
						}
					}
					add_timed_idea = {
						idea = comintern_influence
						days = 365
					}
					add_opinion_modifier = {
						target = SOV
						modifier = medium_decrease
					}
				}
			}
		} {
			every_other_country = {
				limit = {
					exists = yes
					NOT = {
						has_government = ROOT
						is_in_faction_with = ROOT
					}
				}
				ROOT = {
					add_ai_strategy = {
						type = antagonize
						id = PREV
						value = 250
					} {
						type = declare_war
						id = PREV
						value = 25
					} {
						type = conquer
						id = PREV
						value = 10
					}
				}
			} {
				limit = {
					exists = yes
					has_government = ROOT
					has_war = no
					is_in_faction = no
				}
				ROOT = {
					add_ai_strategy = {
						type = alliance
						id = PREV
						value = 250
					} {
						type = befriend
						id = PREV
						value = 25
					}
				}
			}
		}
		add_named_threat = {
			threat = 5
			name = SOV_world_revolution_t
		}
		if = {
			limit = {
				has_dlc = La Resistance
				NOT = {
					has_intelligence_agency = yes
				}
			}
			create_intelligence_agency = yes
		} {
			limit = {
				has_dlc = La Resistance
			}
			add_ideas = SOV_world_revolution_idea_LaR
		}
		else = {
			add_ideas = SOV_world_revolution_idea
		}
		custom_effect_tooltip = SOV_world_revolution_tt
	}
	search_filters = {
		FOCUS_FILTER_ANNEXATION FOCUS_FILTER_ESPIONAGE
	}
}
### Entity: Order of Battle
Component: Flotta Sommergibili
Source: game
File: history/units/ITA_1939_naval_mtg.txt

Code:
fleet = {
	name = Flotta Sommergibili
	naval_base = 6973
	task_force = {
		name = I Gruppo Sommergibili
		location = 6973
		ship = {
			name = RSmg Pietro Calvi
			definition = submarine
			equipment = {
				ship_hull_submarine_2 = {
					amount = 1
					owner = ITA
					version_name = Calvi Class
				}
			}
		} {
			name = RSmg Giuseppe Finzi
			definition = submarine
			equipment = {
				ship_hull_submarine_2 = {
					amount = 1
					owner = ITA
					version_name = Calvi Class
				}
			}
		} {
			name = RSmg Enrico Tazzoli
			definition = submarine
			equipment = {
				ship_hull_submarine_2 = {
					amount = 1
					owner = ITA
					version_name = Calvi Class
				}
			}
		} {
			name = RSmg Ettore Fieramosca
			definition = submarine
			equipment = {
				ship_hull_submarine_1 = {
					amount = 1
					owner = ITA
					version_name = Bandiera Class
				}
			}
		} {
			name = RSmg Veniero
			definition = submarine
			equipment = {
				ship_hull_submarine_2 = {
					amount = 1
					owner = ITA
					version_name = Marcello Class
				}
			}
		} {
			name = RSmg Mocenigo
			definition = submarine
			equipment = {
				ship_hull_submarine_2 = {
					amount = 1
					owner = ITA
					version_name = Marcello Class
				}
			}
		} {
			name = RSmg Glauco
			definition = submarine
			equipment = {
				ship_hull_submarine_2 = {
					amount = 1
					owner = ITA
					version_name = Sirena Class
				}
			}
		} {
			name = RSmg Otaria
			definition = submarine
			equipment = {
				ship_hull_submarine_2 = {
					amount = 1
					owner = ITA
					version_name = Sirena Class
				}
			}
		} {
			name = RSmg Berillo
			definition = submarine
			equipment = {
				ship_hull_submarine_2 = {
					amount = 1
					owner = ITA
					version_name = Calvi Class
				}
			}
		} {
			name = RSmg Onice
			definition = submarine
			equipment = {
				ship_hull_submarine_2 = {
					amount = 1
					owner = ITA
					version_name = Calvi Class
				}
			}
		} {
			name = RSmg Gemma
			definition = submarine
			equipment = {
				ship_hull_submarine_2 = {
					amount = 1
					owner = ITA
					version_name = Calvi Class
				}
			}
		} {
			name = RSmg Iride
			definition = submarine
			equipment = {
				ship_hull_submarine_2 = {
					amount = 1
					owner = ITA
					version_name = Calvi Class
				}
			}
		} {
			name = RSmg Argo
			definition = submarine
			equipment = {
				ship_hull_submarine_2 = {
					
# ... (truncated)
### Entity: National Focus
Tree: ast_focus
Component: AST_demand_resources
Constructs: prerequisite, completion_reward
Source: game
File: common/national_focus/australia_taog.txt

Code:
focus = {
	id = AST_demand_resources
	icon = GFX_focus_GER_south_east_asian_natural_wealth
	prerequisite = {
		focus = AST_equal_training
	}
	relative_position_id = AST_equal_training
	x = 1
	y = 1
	cost = 5
	available = {
		threat = > 0.8
	}
	bypass = {

	}
	available_if_capitulated = no
	completion_reward = {
		custom_effect_tooltip = AST_demand_resources_tt
	}
	search_filters = {
		FOCUS_FILTER_INDUSTRY
	}
}
### Entity: Order of Battle
Component: 1. Wisconsin Volunteers
Constructs: division_template
Source: game
File: history/units/USB_defense_force.txt

Code:
division = {
	name = 1. Wisconsin Volunteers
	location = 12357
	division_template = Local Defense Volunteers
}
### Entity: State History
Component: 385
Constructs: add_core_of
Source: game
File: history/states/385-Oregon.txt

Code:
state = {
	id = 385
	name = STATE_385
	manpower = 953785
	state_category = town
	history = {
		owner = USA
		buildings = {
			infrastructure = 3
			industrial_complex = 1
			air_base = 6
			12211 = {
				naval_base = 3
			}
		}
		add_core_of = USA
		victory_points = {
			3513 1
		}
	}
	provinces = {
		505 528 1414 3471 3513 4274 4328 4347 4380 4826 7398 7721 7865 10151 10183 10305 10625 11495 11733 12183 12211 12281 12553
	}
	local_supplies = 0.0
}
### Entity: AI Strategy
Component: default_market_stockpile_management_if_at_war
Constructs: has_war
Source: game
File: common/ai_strategy/default.txt

Code:
default_market_stockpile_management_if_at_war = {
	enable = {
		has_war = yes
	}
	abort_when_not_enabled = yes
	ai_strategy = {
		type = equipment_market_for_sale_threshold
		id = infantry
		value = 20000
	} {
		type = equipment_market_for_sale_threshold
		id = support
		value = 6000
	} {
		type = equipment_market_for_sale_threshold
		id = artillery
		value = 1000
	} {
		type = equipment_market_for_sale_threshold
		id = fighter
		value = 200
	} {
		type = equipment_market_for_sale_threshold
		id = motorized
		value = 1000
	} {
		type = equipment_market_for_sale_threshold
		id = train
		value = 50
	} {
		type = equipment_market_for_sale_threshold
		id = convoy
		value = 50
	}
}
### Entity: National Focus
Tree: cog_focus
Component: COG_invite_the_general_labour_federation_of_belgium
Constructs: prerequisite, has_government, completion_reward, has_idea, swap_ideas, remove_idea, add_idea
Source: game
File: common/national_focus/congo.txt

Code:
focus = {
	id = COG_invite_the_general_labour_federation_of_belgium
	icon = GFX_focus_SOV_breadbasket_of_the_union
	x = 0
	y = 2
	prerequisite = {
		focus = COG_encourage_unionism
	}
	relative_position_id = COG_encourage_unionism
	search_filters = {
		FOCUS_FILTER_INDUSTRY FOCUS_FILTER_HISTORICAL
	}
	cost = 5
	bypass = {

	}
	available = {
		has_idea = COG_unionism_idea
		NOT = {
			has_government = fascism
		}
	}
	completion_reward = {
		swap_ideas = {
			remove_idea = COG_unionism_idea
			add_idea = COG_unionism_idea_2
		}
	}
}
### Entity: Idea
Component: IVO_nt
Source: game
File: common/ideas/ivory coast.txt

Code:
IVO_nt = {
	ledger = navy
	picture = generic_navy_african_3
	allowed = {
		original_tag = IVO
	}
	traits = {
		naval_theorist
	}
}
### Entity: Idea
Component: idea_RAJ_siege_batteries
Constructs: removal_cost, equipment_bonus
Source: game
File: common/ideas/british_raj_goe.txt

Code:
idea_RAJ_siege_batteries = {
	name = RAJ_siege_batteries
	allowed = {
		original_tag = RAJ
	}
	picture = generic_artillery_regiments
	allowed_civil_war = {
		always = yes
	}
	removal_cost = -1
	equipment_bonus = {
		infantry_equipment = {
			hard_attack = 0.1
		}
		artillery = {
			hard_attack = 0.1
		}
	}
}
### Entity: Scripted Effect
Component: EAI_PC_set_global_variables
Constructs: limit, every_country, has_country_flag, set_variable, add_to_array, add_dynamic_modifier
Source: game
File: common/scripted_effects/EAI_CONSTRUCTION_PRIORITY_effects.txt

Code:
EAI_PC_set_global_variables = {
	if = {
		limit = {
			has_country_flag = EAI_PC_trace_functions
		}
		log = EAI_PC_set_global_variables > THIS=[this.getname] PREV=[prev.getname]
	}
	set_variable = {
		global.EAI_PC_MAX_FORT_LEVEL = 5
	} {
		global.EAI_PC_INF = 1
	} {
		global.EAI_PC_AIR = 2
	} {
		global.EAI_PC_AA = 3
	} {
		global.EAI_PC_RADAR = 4
	} {
		global.EAI_PC_MIC = 5
	} {
		global.EAI_PC_CIC = 6
	} {
		global.EAI_PC_NIC = 7
	} {
		global.EAI_PC_REF = 8
	} {
		global.EAI_PC_SILO = 9
	} {
		global.EAI_PC_MTC = 10
	} {
		global.EAI_PC_BUNKER = 11
	} {
		global.EAI_PC_CBUNKER = 12
	} {
		global.EAI_PC_LFACILITY = 13
	} {
		global.EAI_PC_NFACILITY = 14
	} {
		global.EAI_PC_AFACILITY = 15
	} {
		global.EAI_PC_BFACILITY = 16
	} {
		global.EAI_PC_RSITE = 17
	} {
		global.EAI_PC_NBASE = 18
	} {
		global.EAI_PC_RAIL = 19
	} {
		global.EAI_PC_HUB = 20
	} {
		global.EAI_PC_BUILDING_COST^global.EAI_PC_INF = 6000
	} {
		global.EAI_PC_BUILDING_COST^global.EAI_PC_AIR = 1250
	} {
		global.EAI_PC_BUILDING_COST^global.EAI_PC_AA = 2500
	} {
		global.EAI_PC_BUILDING_COST^global.EAI_PC_RADAR = 3375
	} {
		global.EAI_PC_BUILDING_COST^global.EAI_PC_MIC = 7200
	} {
		global.EAI_PC_BUILDING_COST^global.EAI_PC_CIC = 10800
	} {
		global.EAI_PC_BUILDING_COST^global.EAI_PC_NIC = 6400
	} {
		global.EAI_PC_BUILDING_COST^global.EAI_PC_REF = 14500
	} {
		global.EAI_PC_BUILDING_COST^global.EAI_PC_SILO = 5000
	} {
		global.EAI_PC_BUILDING_COST^global.EAI_PC_MTC = 9000
	} {
		global.EAI_PC_BUILDING_COST^global.EAI_PC_BUNKER = 500
	} {
		global.EAI_PC_BUILDING_COST^global.EAI_PC_CBUNKER = 500
	} {
		global.EAI_PC_BUILDING_COST^global.EAI_PC_LFACILITY = 12000
	} {
		global.EAI_PC_BUILDING_COST^global.EAI_PC_NFACILITY = 12000
	} {
		global.EAI_PC_BUILDING_COST^global.EAI_PC_AFACILITY = 12000
	} {
		global.EAI_PC_BUILDING_COST^global.EAI_PC_BFACILITY = 15000
	} {
		global.EAI_PC_BUILDING_COST^global.EAI_PC_RSITE = 6400
	} {
		global.EAI_PC_BUILDING_COST^global.EAI_PC_NBASE = 5000
	} {
		global.EAI_PC_BUILDING_COST^global.EAI_PC_RAIL = 170
	} {
		global.EAI_PC_BUILDING_COST^global.EAI_PC_HUB = 20000
	} {
		global.EAI_PC_BUILDING_EXTRA_COST^global.EAI_PC_BUNKER = 500
	} {
		global.EAI_PC_BUILDING_EXTRA_COST^global.EAI_PC_CBUNKER = 500
	} {
		global.EAI_PC_BUILDING_EXTRA_COST^global.EAI_PC_NBASE = 1000
	} {
		global.EAI_PC_BUILDING_EXTRA_COST^global.EAI_PC_RAIL = 130
	}
	add_to_array = {
		
# ... (truncated)
### Entity: National Focus
Tree: sov_focus
Component: SOV_foster_flying_clubs
Constructs: prerequisite, completion_reward, add_to_variable
Source: game
File: common/national_focus/soviet.txt

Code:
focus = {
	id = SOV_foster_flying_clubs
	icon = GFX_focus_SOV_flying_clubs
	prerequisite = {
		focus = SOV_transpolar_flights
	}
	x = 1
	y = 1
	relative_position_id = SOV_transpolar_flights
	cost = 10
	available = {

	}
	search_filters = {
		FOCUS_FILTER_AIR_XP
	}
	completion_reward = {
		add_to_variable = {
			SOV_soviet_airforce_air_accidents_factor = -0.25
		} {
			SOV_soviet_airforce_air_ace_generation_chance_factor = 0.25
		} {
			SOV_soviet_airforce_air_weather_penalty = -0.1
		} {
			SOV_soviet_airforce_air_training_xp_gain_factor = 0.1
		}
		custom_effect_tooltip = SOV_foster_flying_clubs_ns_tt
		air_experience = 25
	}
}
### Entity: Scripted Effect
Component: EAI_difficulty_dynamic_desperate_defense
Constructs: limit, has_country_flag, has_variable, has_capitulated, check_variable, set_country_flag
Source: game
File: common/scripted_effects/EAI_DIFFICULTY_update.txt

Code:
EAI_difficulty_dynamic_desperate_defense = {
	if = {
		limit = {
			has_variable = global.EAI_dynamic_desperate_defense
			NOT = {
				has_variable = EAI_desperate_defense
				has_country_flag = EAI_disable_dynamic_desperate_defense
			}
		}
		if = {
			limit = {
				has_capitulated = no
				surrender_progress = > 0
				EAI_DIFFICULTY_dynamic_bonus_trigger = yes
			}
			if = {
				limit = {
					has_country_flag = EAI_difficulty_logging
				}
				log = [GetYear] [GetMonth] | DIFFICULTY | [Root.GetName] | DD: updating dynamic
			} {
				limit = {
					check_variable = {
						global.EAI_dynamic_desperate_defense = 1
					}
				}
				EAI_desperate_defense_setting_1 = yes
			}
			set_country_flag = EAI_dynamic_desperate_defense_active
			else_if = {
				limit = {
					check_variable = {
						global.EAI_dynamic_desperate_defense = 2
					}
				}
				EAI_desperate_defense_setting_2 = yes
			} {
				limit = {
					check_variable = {
						global.EAI_dynamic_desperate_defense = 3
					}
				}
				EAI_desperate_defense_setting_3 = yes
			}
		}
		else_if = {
			limit = {
				has_country_flag = EAI_dynamic_desperate_defense_active
			}
			if = {
				limit = {
					has_country_flag = EAI_difficulty_logging
				}
				log = [GetYear] [GetMonth] | DIFFICULTY | [Root.GetName] | DD: removing dynamic
			}
			EAI_DIFFICULTY_clear_active_desperate_defense = yes
		}
	}
}
### Entity: AI Strategy
Component: ENG_raids
Source: game
File: common/ai_strategy/ENG.txt

Code:
ENG_raids = {
	allowed = {
		original_tag = ENG
	}
	enable = {
		always = yes
	}
	abort_when_not_enabled = yes
	ai_strategy = {
		type = raid_target_country
		id = GER
		value = 200
	}
}
### Entity: Modifier Reference
Component: CHL_from_support_chile_static_modifier
Constructs: send_volunteers_tension, send_volunteer_divisions_required, send_volunteer_factor
Source: game
File: common/modifiers/00_static_modifiers.txt

Code:
CHL_from_support_chile_static_modifier = {
	send_volunteers_tension = -0.6
	send_volunteer_divisions_required = -0.9
	send_volunteer_factor = 0.6
}
### Entity: Event
Component: india.3
Constructs: is_triggered_only, limit, has_country_flag, random_owned_state, has_state_flag, is_owned_by, is_core_of, set_variable
Source: game
File: events/India.txt

Code:
country_event = {
	id = india.3
	hidden = yes
	is_triggered_only = yes
	immediate = {
		if = {
			limit = {
				tag = RAJ
				has_country_flag = election_enabled
			}
			random_owned_state = {
				limit = {
					NOT = {
						has_state_flag = princely_state player_running
						state = 423 431 445
					}
					is_owned_by = RAJ
					is_core_of = RAJ
				}
				RAJ = {
					set_variable = {
						enemy_campaign_state = PREV.id
					}
				}
				set_state_flag = raj_enemy_op enemy_campaign_running
			}
			if = {
				limit = {
					has_country_flag = inc_support
				}
				random_list = {
					50 = {
						RAJ = {
							set_country_flag = upa_operation
							activate_mission = upa_enemy_operation
						}
					} {
						RAJ = {
							set_country_flag = ifb_operation
							activate_mission = ifb_enemy_operation
						}
					}
				}
			} {
				limit = {
					has_country_flag = upa_support
				}
				random_list = {
					50 = {
						RAJ = {
							set_country_flag = inc_operation
							activate_mission = inc_enemy_operation
						}
					} {
						RAJ = {
							set_country_flag = ifb_operation
							activate_mission = ifb_enemy_operation
						}
					}
				}
			} {
				limit = {
					has_country_flag = ifb_support
				}
				random_list = {
					50 = {
						RAJ = {
							set_country_flag = inc_operation
							activate_mission = inc_enemy_operation
						}
					} {
						RAJ = {
							set_country_flag = upa_operation
							activate_mission = upa_enemy_operation
						}
					}
				}
			}
		}
	}
}
### Entity: Event
Component: egypt.63
Constructs: is_triggered_only, add_equipment_to_stockpile, add_opinion_modifier
Source: game
File: events/egypt.txt

Code:
country_event = {
	id = egypt.63
	picture = GFX_report_event_generic_rifles
	title = egypt.63.t
	desc = egypt.63.d
	is_triggered_only = yes
	option = {
		name = egypt.63.a
		add_equipment_to_stockpile = {
			type = infantry_equipment
			amount = 2000
			producer = EGY
		} {
			type = artillery_equipment
			amount = 100
			producer = EGY
		}
		add_opinion_modifier = {
			target = EGY
			modifier = RAJ_Weapon_Shipments
		}
	}
}
### Entity: AI Strategy
Component: EAI_PROD_NAVY_FIB_SS_navy_production_strategy
Constructs: has_country_flag
Source: game
File: common/ai_strategy/EAI_PRODUCTION_navy_strategies.txt

Code:
EAI_PROD_NAVY_FIB_SS_navy_production_strategy = {
	enable = {
		has_country_flag = EAI_FIB_SS_navy_production_strategy
	}
	abort_when_not_enabled = yes
	ai_strategy = {
		type = role_ratio
		id = naval_submarine
		value = 8
	}
}
### Entity: National Focus
Tree: fri_focus
Component: FRI_focus_on_the_vietnamese_ports
Constructs: prerequisite, completion_reward, add_building_construction, random_owned_controlled_state, add_extra_state_shared_building_slots
Source: game
File: common/national_focus/FrenchIndochina.txt

Code:
focus = {
	id = FRI_focus_on_the_vietnamese_ports
	icon = GFX_goal_generic_construct_naval_dockyard
	cost = 10
	prerequisite = {
		focus = FRI_the_indochinese_merchant_marine
	} {
		focus = FRI_expand_the_fort_bayard_infrastructures
	}
	mutually_exclusive = {
		focus = FRI_the_french_hong_kong
	}
	x = 2
	y = 2
	relative_position_id = FRI_invite_investors_to_kouang_tcheou_wan
	completion_reward = {
		navy_experience = 25
		671 = {
			add_building_construction = {
				type = naval_base
				province = 1185
				level = 4
				instant_build = yes
			}
		}
		286 = {
			add_building_construction = {
				type = naval_base
				province = 4401
				level = 4
				instant_build = yes
			}
		}
		random_owned_controlled_state = {
			prioritize = {
				671
			}
			add_extra_state_shared_building_slots = 2
			add_building_construction = {
				type = dockyard
				level = 2
				instant_build = yes
			}
		}
	}
	search_filters = {
		FOCUS_FILTER_INDUSTRY
	}
}
### Entity: Event
Component: lar_france_french_union.3
Constructs: is_triggered_only, every_owned_state, limit, is_subject_of, set_autonomy, is_controlled_by, is_core_of, add_resistance_target
Source: game
File: events/LaR_France.txt

Code:
country_event = {
	id = lar_france_french_union.3
	title = lar_france_french_union.3.t
	desc = lar_france_french_union.3.desc
	picture = GFX_report_event_ghandi_women
	is_triggered_only = yes
	option = {
		name = lar_france_french_union.3.a
		if = {
			limit = {
				ALG = {
					exists = yes
					is_subject_of = ROOT
				}
			}
			OVERLORD = {
				set_autonomy = {
					target = ALG
					autonomy_state = autonomy_free
				}
			}
		} {
			limit = {
				TUN = {
					exists = yes
					is_subject_of = ROOT
				}
			}
			OVERLORD = {
				set_autonomy = {
					target = TUN
					autonomy_state = autonomy_free
				}
			}
		} {
			limit = {
				MOR = {
					exists = yes
					is_subject_of = ROOT
				}
			}
			OVERLORD = {
				set_autonomy = {
					target = MOR
					autonomy_state = autonomy_free
				}
			}
		}
		every_owned_state = {
			limit = {
				is_controlled_by = ROOT
				NOT = {
					is_core_of = ROOT
				}
				OR = {
					is_core_of = ALG TUN MOR
				}
			}
			add_resistance_target = {
				amount = 55
				tooltip = LAR_fra_voted_independence_tt
			}
		}
	}
}
### Entity: Character
Component: NOR_jacob_ager_laurantzon
Source: game
File: common/characters/NOR.txt

Code:
NOR_jacob_ager_laurantzon = {
	name = NOR_jacob_ager_laurantzon
	portraits = {
		army = {
			large = GFX_portrait_NOR_jacob_ager_laurantzon
			small = GFX_portrait_NOR_jacob_ager_laurantzon_small
		}
	}
	allowed_civil_war = {
		NOR_char_cw_fascist = yes
	}
	corps_commander = {
		traits = {
			trait_reckless
		}
		skill = 1
		attack_skill = 1
		defense_skill = 1
		planning_skill = 1
		logistics_skill = 1
		legacy_id = -1
	}
}