Losa10/PreTrain-HOI4-Modding-Assistant huggingface dataset:
### Entity: Event
Component: tfv_australia.81
Constructs: is_triggered_only, limit, is_puppet_of, is_faction_leader, add_to_faction, create_faction
Source: game
File: events/TFV_Australia.txt

Code:
country_event = {
	id = tfv_australia.81
	title = tfv_australia.81.t
	desc = tfv_australia.81.d
	picture = GFX_report_event_ast_transfer_singapore
	is_triggered_only = yes
	option = {
		name = tfv_australia.81.a
		if = {
			limit = {
				MAL = {
					is_puppet_of = AST
				}
			}
			JAP = {
				puppet = MAL
			}
			else = {
				JAP = {
					transfer_state = 334
				} {
					transfer_state = 673
				} {
					transfer_state = 668
				}
			}
		} {
			limit = {
				JAP = {
					is_faction_leader = yes
				}
			}
			JAP = {
				add_to_faction = AST
			}
			else = {
				create_faction = western_pacific_sphere
				add_to_faction = JAP
			}
		}
		news_event = {
			id = news.243
			hours = 6
		}
	}
}
### Entity: National Focus
Tree: fin_focus
Component: FIN_militarized_society
Constructs: has_completed_focus, prerequisite, limit, add_ideas, completion_reward, has_idea, has_dlc
Source: game
File: common/national_focus/finland.txt

Code:
focus = {
	id = FIN_militarized_society
	icon = GFX_focus_generic_limited_social_mobilization
	prerequisite = {
		focus = FIN_union_of_finnish_brothers_in_arms
	}
	x = 0
	y = 2
	relative_position_id = FIN_union_of_finnish_brothers_in_arms
	cost = 10
	available = {
		OR = {
			has_idea = all_adults_serve scraping_the_barrel
		}
	}
	search_filters = {
		FOCUS_FILTER_INDUSTRY
	}
	completion_reward = {
		add_ideas = FIN_militarized_society
		hidden_effect = {
			if = {
				limit = {
					has_dlc = No Step Back
					has_completed_focus = FIN_national_armor_focus
				}
				mark_focus_tree_layout_dirty = yes
			}
		}
	}
}
### Entity: National Focus
Tree: yug_focus
Component: YUG_defence_league
Constructs: division_template, prerequisite, limit, completion_reward, is_subject, cancel_if_invalid, set_rule, is_in_faction
Source: game
File: common/national_focus/yugoslavia.txt

Code:
focus = {
	id = YUG_defence_league
	icon = GFX_goal_generic_alliance
	prerequisite = {
		focus = YUG_defence_army_of_yugoslavia
	}
	x = 0
	y = 1
	relative_position_id = YUG_defence_army_of_yugoslavia
	cost = 10
	ai_will_do = {
		factor = 40
	}
	available = {
		is_subject = no
	}
	bypass = {

	}
	cancel_if_invalid = yes
	continue_if_invalid = no
	available_if_capitulated = no
	search_filters = {
		FOCUS_FILTER_MANPOWER
	}
	completion_reward = {
		set_rule = {
			can_create_factions = yes
		}
		if = {
			limit = {
				is_in_faction = no
			}
			IF = {
				limit = {
					has_dlc = No Compromise, No Surrender
				}
				create_faction_from_template = faction_template_yugoslav_defense_league
				add_faction_initiative = 1
			}
			ELSE = {
				create_faction_from_template = faction_template_yugoslav_defense_league
			}
		}
		set_division_template_lock = {
			division_template = Yugoslavian Defence Army
			is_locked = no
		}
		random_owned_controlled_state = {
			limit = {
				PREV = {
					has_full_control_of_state = PREV
				}
			}
			create_unit = {
				division = name = "Yugoslavian Defence Army" division_template = "Yugoslavian Defence Army" start_experience_factor = 0.9
				owner = PREV
			}
		}
		every_other_country = {
			limit = {
				capital_scope = {
					is_on_continent = europe
				}
				NOT = {
					original_tag = YUG
				}
				is_subject_of = ROOT
			}
			PREV = {
				set_autonomy = {
					target = PREV
					autonomy_state = autonomy_free
				}
			}
			if = {
				limit = {
					PREV = {
						is_faction_leader = no
					}
				}
				random_other_country = {
					limit = {
						is_in_faction_with = PREV.PREV
						is_faction_leader = yes
					}
					add_to_faction = PREV
				}
			}
			else = {
				PREV = {
					add_to_faction = PREV
				}
			}
			hidden_effect = {
				add_ai_strategy = {
					type = alliance
					id = ROOT
					value = 200
				}
			}
			set_division_template_lock = {
				division_template = Yugoslavian Defence Army
				is_locked = no
			}
			random_owned_controlled_state = {
				limit = {
					PREV = {
						has_full_control_of_state = PREV
					}
				}
				create_unit = {
					division = name = "Yugoslavian Defence Army" division_template = "Yugoslavian Defence Army" start_experience_factor = 0.9
					owner = PREV
				}
			}
		}
	}
}
### Entity: Order of Battle
Component: Nacistas Regulars Div #3
Constructs: division_template
Source: game
File: history/units/r56_chile_major_uprising.txt

Code:
division = {
	name = Nacistas Regulars Div #3
	location = 8229
	division_template = Nacistas Regulars
	start_equipment_factor = 0.99
	start_experience_factor = 0.1
}
### Entity: National Focus
Tree: ger_focus
Component: GER_proletarian_dictatorship
Constructs: prerequisite, add_war_support, add_stability, completion_reward, add_political_power, add_to_variable, swap_country_leader_traits, remove_trait
Source: game
File: common/national_focus/germany.txt

Code:
focus = {
	id = GER_proletarian_dictatorship
	icon = GFX_focus_GER_proletarian_dictatorship
	prerequisite = {
		focus = GER_the_peoples_victory
	}
	mutually_exclusive = {
		focus = GER_legacy_of_the_spartacus_league
	}
	x = 5
	y = 1
	relative_position_id = GER_the_peoples_victory
	cost = 5
	available = {

	}
	search_filters = {
		FOCUS_FILTER_POLITICAL FOCUS_FILTER_WAR_SUPPORT FOCUS_FILTER_STABILITY FOCUS_FILTER_POLITICAL_CHARACTER
	}
	completion_reward = {
		add_political_power = 50
		add_stability = 0.05
		add_war_support = 0.05
		custom_effect_tooltip = generic_skip_one_line_tt generic_skip_one_line_tt
		GER_add_or_modify_politburo = yes
		add_to_variable = {
			GER_politburo_defensive_war_stability_factor = 0.1
			tooltip = defensive_war_stability_factor_tt
		} {
			GER_politburo_offensive_war_stability_factor = 0.2
			tooltip = offensive_war_stability_factor_tt
		}
		GER_walter_ulbricht = {
			swap_country_leader_traits = {
				remove = GER_inflexible_communist_organizer
				add = GER_staunch_stalinist_leader
			}
		} {
			remove_trait = {
				slot = political_advisor
				trait = GER_inflexible_communist_organizer
			}
		} {
			add_trait = {
				slot = political_advisor
				trait = GER_staunch_stalinist
			}
		}
	}
}
### Entity: Order of Battle
Component: division_unit
Constructs: division_template, is_name_ordered
Source: game
File: history/units/SIA_1939.txt

Code:
division = {
	division_name = {
		is_name_ordered = yes
		name_order = 6
	}
	location = 7408
	division_template = Infantry Division
	start_experience_factor = 0.1
	start_equipment_factor = 0.7
}
### Entity: Scripted Trigger
Component: is_east_african_colony_state
Constructs: is_east_african_colony_state, is_east_african_state_tt, is_core_of
Source: game
File: common/scripted_triggers/ETH_scripted_triggers.txt

Code:
is_east_african_colony_state = {
	custom_trigger_tooltip = {
		tooltip = is_east_african_state_tt
		OR = {
			region = 17 273 274 217 216
		}
		NOT = {
			is_core_of = THIS.owner
		}
	}
}
### Entity: Character
Component: TAOG_dutch_representative
Source: game
File: common/country_leader/taog_traits.txt

Code:
TAOG_dutch_representative = {
	sprite = 13
	random = no
	custom_modifier_tooltip = INS_dutch_investment_rate_30
	ai_will_do = {
		factor = 2
	}
}
### Entity: Scripted Trigger
Component: SWI_AI_is_dem_exp
Constructs: has_country_flag, has_game_rule
Source: game
File: common/scripted_triggers/SWI_scripted_triggers.txt

Code:
SWI_AI_is_dem_exp = {
	OR = {
		has_game_rule = {
			rule = SWI_AI_BEHAVIOR
			option = SWI_EXPANSIONIST_DEMOCRATIC
		}
		has_country_flag = SWI_AI_RANDOM_EXPANSIONIST_DEMOCRATIC
	}
}
### Entity: Character
Component: WLS_acr
Source: game
File: common/characters/WLS.txt

Code:
WLS_acr = {
	advisor = {
		slot = air_chief
		idea_token = WLS_acr
		allowed = {
			original_tag = WLS
		}
		traits = {
			air_chief_reform_2
		}
		ai_will_do = {
			factor = 1.0
		}
	}
	portraits = {
		army = {
			small = GFX_idea_generic_air_europe_3
		}
	}
}
### Entity: National Focus
Tree: raj_focus
Component: RAJ_the_integrity_of_india_act
Constructs: has_completed_focus, prerequisite, limit, completion_reward, add_to_variable, has_country_leader, has_country_leader_with_trait, add_country_leader_role
Source: game
File: common/national_focus/india_goe.txt

Code:
focus = {
	id = RAJ_the_integrity_of_india_act
	icon = GFX_focus_usa_voter_registration_act
	prerequisite = {
		focus = RAJ_court_the_princes RAJ_favor_the_muslim_league
	}
	x = 2
	y = 1
	relative_position_id = RAJ_favor_the_muslim_league
	cost = 10
	mutually_exclusive = {
		focus = RAJ_the_indian_parliament
	}
	search_filters = {
		FOCUS_FILTER_POLITICAL_CHARACTER
	}
	completion_reward = {
		custom_effect_tooltip = RAJ_modify_a_loyal_government_tt generic_skip_one_line_tt generic_skip_one_line_tt generic_skip_one_line_tt RAJ_stop_unrest_events_tt
		add_to_variable = {
			RAJ_a_loyal_government_resistance_target = -0.1
			tooltip = resistance_target_tt
		} {
			RAJ_a_loyal_government_resistance_damage_to_garrison = -0.25
			tooltip = resistance_damage_to_garrison_tt
		} {
			RAJ_a_loyal_government_political_power_factor = -0.15
			tooltip = political_power_factor_tt
		}
		if = {
			limit = {
				has_country_leader = {
					ruling_only = yes
					character = RAJ_freeman_freeman_thomas
				}
			}
			custom_effect_tooltip = {
				localization_key = character_becomes_leader_of_ideology_party
				CHARACTER = RAJ_freeman_freeman_thomas
				IDEOLOGY = democratic
			}
			hidden_effect = {
				if = {
					limit = {
						has_country_leader_with_trait = staunch_imperialist_alt_consult
					}
					add_country_leader_role = {
						character = RAJ_freeman_freeman_thomas
						promote_leader = yes
						country_leader = {
							ideology = conservatism
							expire = 1965.1.1
							traits = {
								seasoned_administrator staunch_imperialist_alt_consult
							}
						}
					}
				}
				else = {
					add_country_leader_role = {
						character = RAJ_freeman_freeman_thomas
						promote_leader = yes
						country_leader = {
							ideology = conservatism
							expire = 1965.1.1
							traits = {
								seasoned_administrator staunch_imperialist_alt
							}
						}
					}
				}
			}
		} {
			limit = {
				NOT = {
					has_completed_focus = RAJ_favor_the_muslim_league
				}
			}
			retire_character = RAJ_GOE_muhammad_ali_jinnah
		}
		else_if = {
			limit = {
				has_country_leader = {
					ruling_only = yes
					character = RAJ_lord_linlithgow
				}
			}
			custom_effect_tooltip = {
				localization_key = character_becomes_leader_of_ideology_party
				CHARACTER = RAJ_lord_linlithgow
				IDEOLOGY = democratic
			}
			hidden_effect = {
				if = {
					limit = {
						ha
# ... (truncated)
### Entity: Character
Component: MLT_ai2
Source: game
File: common/characters/MLT.txt

Code:
MLT_ai2 = {
	advisor = {
		slot = high_command
		idea_token = MLT_ai2
		ledger = army
		allowed = {
			original_tag = MLT
		}
		traits = {
			army_infantry_2
		}
		ai_will_do = {
			factor = 1.0
		}
	}
	portraits = {
		army = {
			small = GFX_idea_generic_army_europe_3
		}
	}
}
### Entity: Military Industrial Organization
Component: FRA_SNCAC_organization
Constructs: has_country_flag, has_dlc
Source: game
File: common/military_industrial_organization/organizations/FRA_organization.txt

Code:
FRA_SNCAC_organization = {
	name = SNCAC
	include = generic_general_aircraft_organization
	icon = GFX_idea_FRA_sncac
	allowed = {
		tag = FRA
		has_dlc = Arms Against Tyranny
	}
	visible = {
		FROM = {
			has_country_flag = FRA_SNCAC_formed
		}
	}
}
### Entity: National Focus
Tree: bhu_focus
Component: BHU_flexible_navy
Constructs: prerequisite, completion_reward, is_coastal, add_doctrine_cost_reduction
Source: game
File: common/national_focus/bhutan.txt

Code:
focus = {
	id = BHU_flexible_navy
	icon = GFX_goal_generic_build_navy
	prerequisite = {
		focus = BHU_naval_effort
	}
	mutually_exclusive = {
		focus = BHU_large_navy
	}
	relative_position_id = BHU_naval_effort
	x = -1
	y = 1
	cost = 10
	available_if_capitulated = yes
	ai_will_do = {
		factor = 1
		modifier = {
			factor = 0
			all_owned_state = {
				OR = {
					is_coastal = no
					dockyard = < 1
				}
			}
		}
	}
	completion_reward = {
		add_doctrine_cost_reduction = {
			name = sub_op_bonus
			cost_reduction = 0.5
			uses = 2
			category = submarine_doctrine
		}
	}
	search_filters = {
		FOCUS_FILTER_RESEARCH
	}
}
### Entity: Character
Component: JUNO_fascist_theologian
Constructs: stability_factor, war_support_factor, neutrality_drift, fascism_drift
Source: game
File: common/country_leader/toa_traits.txt

Code:
JUNO_fascist_theologian = {
	random = no
	sprite = 13
	political_power_factor = 0.08
	stability_factor = 0.05
	war_support_factor = 0.1
	neutrality_drift = 0.02
	fascism_drift = 0.05
	ai_will_do = {
		factor = 0
	}
}
### Entity: Event
Component: israel.51
Constructs: is_triggered_only, add_equipment_to_stockpile, add_manpower
Source: game
File: events/israel.txt

Code:
country_event = {
	id = israel.51
	title = israel.51.t
	desc = israel.51.d
	is_triggered_only = yes
	picture = GFX_report_event_czech_soldiers_02
	option = {
		name = israel.51.a
		add_equipment_to_stockpile = {
			type = infantry_equipment
			amount = 100
		}
		add_manpower = -10
		custom_effect_tooltip = ISR_lehi_down_15
		subtract_from_variable = {
			ISR_lehi_strength = 15
		}
		clamp_variable = {
			var = ISR_lehi_strength
			max = 100
			min = 0
		}
	}
}
### Entity: Scripted Effect
Component: bba_get_tac_FRA_effect
Constructs: add_equipment_to_stockpile, limit, has_country_flag, has_tech, create_equipment_variant, allow_without_tech, set_country_flag
Source: game
File: common/scripted_effects/00_scripted_effects.txt

Code:
bba_get_tac_FRA_effect = {
	if = {
		limit = {
			FRA = {
				NOT = {
					has_tech = improved_medium_airframe
				}
			}
		}
		add_equipment_to_stockpile = {
			type = medium_plane_airframe_0
			producer = FRA
			amount = tac_buy_amount
			variant_name = Amiot 143
		}
	}
	else_if = {
		limit = {
			FRA = {
				has_tech = improved_medium_airframe
				NOT = {
					has_tech = advanced_medium_airframe
				}
			}
		}
		if = {
			limit = {
				FRA = {
					NOT = {
						has_country_flag = FRA_improved_export_tac_template
					}
				}
			}
			FRA = {
				create_equipment_variant = {
					name = LeO 451
					type = medium_plane_airframe_2
					allow_without_tech = yes
					modules = {
						fixed_main_weapon_slot = medium_bomb_bay
						fixed_auxiliary_weapon_slot_1 = empty
						engine_type_slot = engine_2_2x
						special_type_slot_1 = lmg_defense_turret
						special_type_slot_2 = cannon_defense_turret
					}
					icon = GFX_FRA_tactical_bomber2_medium
				}
				set_country_flag = FRA_improved_export_tac_template
			}
		}
		add_equipment_to_stockpile = {
			type = medium_plane_airframe_2
			producer = FRA
			amount = tac_buy_amount
			variant_name = LeO 451
		}
	} {
		limit = {
			FRA = {
				has_tech = advanced_medium_airframe
			}
		}
		if = {
			limit = {
				FRA = {
					NOT = {
						has_country_flag = FRA_advanced_export_tac_template
					}
				}
			}
			FRA = {
				create_equipment_variant = {
					name = NC.150
					type = medium_plane_airframe_3
					allow_without_tech = yes
					modules = {
						fixed_main_weapon_slot = medium_bomb_bay
						fixed_auxiliary_weapon_slot_1 = medium_bomb_bay
						fixed_auxiliary_weapon_slot_2 = empty
						fixed_auxiliary_weapon_slot_3 = empty
						fixed_auxiliary_weapon_slot_4 = empty
						engine_type_slot = engine_2_3x
						special_type_slot_1 = lmg_defense_turret_2x
						special_type_slot_2 = cannon_defense_turret
					}
					icon = GFX_FRA_tactical_bomber3_medium
				}
				set_country_flag = FRA_advanced_export_tac_template
			}
		}
		add_equipment_to_stockpile = {
			type = medium_plane_airframe_3
			producer = FRA
			amount = tac_buy_amount
			variant_name = NC.150
		}
	}
}
### Entity: Character
Component: TAN_tanchak_shoma
Source: game
File: common/characters/TAN.txt

Code:
TAN_tanchak_shoma = {
	advisor = {
		slot = army_chief
		idea_token = TAN_tanchak_shoma
		allowed = {
			original_tag = TAN
		}
		traits = {
			army_chief_defensive_2
		}
		cost = 100
		ai_will_do = {
			factor = 1.0
		}
	}
	name = Tanchak Shoma
	portraits = {
		army = {
			small = GFX_idea_generic_army_asia_2
		}
	}
}
### Entity: Decision
Component: neo_assyrian_empire_category
Constructs: has_global_flag, is_controlled_by, complete_effect, set_global_flag, set_cosmetic_tag, add_state_core
Source: game
File: common/decisions/formable_nation_decisions.txt

Code:
neo_assyrian_empire_category = {
	neo_assyrian_empire_decision = {
		icon = generic_form_nation
		allowed = {
			original_tag = ASY
		}
		visible = {
			original_tag = ASY
			NOT = {
				has_global_flag = neo_assyria_formed_flag
			}
		}
		available = {
			676 = {
				is_controlled_by = ROOT
			}
			291 = {
				is_controlled_by = ROOT
			}
			1010 = {
				is_controlled_by = ROOT
			}
			675 = {
				is_controlled_by = ROOT
			}
			1011 = {
				is_controlled_by = ROOT
			}
			656 = {
				is_controlled_by = ROOT
			}
			680 = {
				is_controlled_by = ROOT
			}
			554 = {
				is_controlled_by = ROOT
			}
			677 = {
				is_controlled_by = ROOT
			}
			799 = {
				is_controlled_by = ROOT
			}
			553 = {
				is_controlled_by = ROOT
			}
			344 = {
				is_controlled_by = ROOT
			}
			350 = {
				is_controlled_by = ROOT
			}
			454 = {
				is_controlled_by = ROOT
			}
			455 = {
				is_controlled_by = ROOT
			}
			453 = {
				is_controlled_by = ROOT
			}
			446 = {
				is_controlled_by = ROOT
			}
			907 = {
				is_controlled_by = ROOT
			}
			447 = {
				is_controlled_by = ROOT
			}
			348 = {
				is_controlled_by = ROOT
			}
			345 = {
				is_controlled_by = ROOT
			}
		}
		on_map_mode = decision_view_only
		highlight_states = {
			highlight_state_targets = {
				state = 676 291 1010 675 1011 656 680 554 677 799 553 344 350 454 455 453 446 907 447 348 345
			}
		}
		complete_effect = {
			hidden_effect = {
				drop_cosmetic_tag = yes
			} {
				set_global_flag = neo_assyria_formed_flag
			}
			set_cosmetic_tag = ASY_neo_assyrian_empire
			custom_effect_tooltip = generic_skip_one_line_tt
			add_state_core = 676 291 1010 675 1011 656 680 554 677 799 553 344 350 454 455 453 446 907 447 348 345
		}
		ai_will_do = {
			base = 2000
		}
	}
}
### Entity: National Focus
Tree: den_focus
Component: DEN_Galvanise_the_German_Minority
Constructs: has_completed_focus, prerequisite, completion_reward, is_historical_focus_on, has_game_rule, add_popularity, remove_dynamic_modifier, add_dynamic_modifier
Source: game
File: common/national_focus/r56_denmark.txt

Code:
focus = {
	id = DEN_Galvanise_the_German_Minority
	icon = GFX_focus_ger_reichskommisariats
	cost = 5
	ai_will_do = {
		factor = 15
		modifier = {
			factor = 0
			is_historical_focus_on = yes
		} {
			add = 1000
			has_game_rule = {
				rule = DEN_AI_BEHAVIOR
				option = FASCIST
			}
		} {
			add = 1000
			has_game_rule = {
				rule = DEN_AI_BEHAVIOR
				option = KING_CHRISTIAN_COUP
			}
		}
	}
	available = {
		NOT = {
			has_completed_focus = DEN_Strengthen_the_Labour_Unions DEN_An_Appeal_to_the_Proletariat
		}
		den_cancel_intro_trigger = yes
	}
	mutually_exclusive = {
		focus = DEN_Initiate_Economic_Reforms
	}
	cancel = {
		has_completed_focus = DEN_King_Christian_Coup
	}
	search_filters = {
		FOCUS_FILTER_POLITICAL
	}
	prerequisite = {
		focus = DEN_Changing_Times
	}
	x = 18
	y = 1
	completion_reward = {
		custom_effect_tooltip = DEN_political_violence_dnsap_tt
		add_popularity = {
			ideology = fascism
			popularity = 0.05
		}
		964 = {
			remove_dynamic_modifier = {
				modifier = r56_german_minority
			}
			add_dynamic_modifier = {
				modifier = r56_german_minority_galvanised
			}
		}
	}
}
### Entity: AI Strategy
Component: JAP_alternate_plan_communist_tsr
Constructs: has_country_flag, has_dlc, has_game_rule
Source: game
File: common/ai_strategy_plans/JAP_alternate_strategy_plan.txt

Code:
JAP_alternate_plan_communist_tsr = {
	name = Communist Japan Plan
	desc = A red sun rises
	allowed = {
		original_tag = JAP
	}
	enable = {
		has_dlc = No Compromise, No Surrender
		OR = {
			has_country_flag = JAP_AI_RANDOM_COMMUNIST
			has_game_rule = {
				rule = JAP_ai_behavior
				option = COMMUNIST
			}
		}
	}
	abort = {

	}
	ai_national_focuses = {
		JAP_the_pacific_union_of_soviet_socialist_republics JAP_to_rival_the_comintern JAP_a_red_dawn_over_asia JAP_transformation_of_nature JAP_a_red_sun_rises_for_a_new_era JAP_the_lecture_group_ascendant JAP_sea_fate_of_the_imperial_family JAP_ministry_of_commerce_and_industry JAP_continue_takahashi_korekiyos_policies JAP_seek_yakuza_support JAP_secretly_rebuild_the_party JAP_anti_militarist_speeches_in_the_diet JAP_organize_the_student_movements JAP_raise_support_within_the_proletarian_class JAP_organize_underground_resistance JAP_mountain_village_operation_units JAP_sway_disillusioned_young_officers JAP_return_of_the_manchukuo_exiles JAP_revoke_the_peace_preservation_law JAP_organize_the_fifth_column JAP_the_imperial_defense_plan JAP_expand_kawagoe_army_arsenal JAP_rely_on_supremacy_of_the_will JAP_enact_the_national_conscription_law JAP_establish_showa_aircraft_idnsutry JAP_develop_new_fighters JAP_7075_aluminium_alloy JAP_social_and_cultural_revolution JAP_hold_a_peoples_tribunal JAP_overhaul_the_education_system JAP_sea_nationalize_the_zaibatsus JAP_a_functionalist_housing_policy JAP_redistribute_land_and_wealth JAP_ganbarou JAP_the_ie_system_and_socialism JAP_fukumotoism JAP_further_urban_investments JAP_the_first_five_year_plan JAP_form_pioneer_organizations JAP_the_modern_ashigaru JAP_raise_the_red_flag_high JAP_socialism_in_one_state JAP_extensive_navy_maneuvers JAP_reclaim_lost_territories JAP_instill_the_spirit_of_bushido JAP_extensive_army_maneuvers JAP_conquer_the_army_remnants JAP_approach_sumitomo JAP_ministry_of_colonial_affairs JAP_fund_the_riken_institute JAP_put_an_end_to_chinese_feudalism JAP_mobilize_the_proletariat JAP_the_long_march_to_victory
	}
	ideas = {
		bold_attack_spirit = 5
		tenacious_defense_spirit = 0
		meticulous_preparation_spirit = 0
		best_of_the_best_spirit = 0
		academy_scholarships_spirit = 0
		political_loyalty_spirit = 0.1
		inventive_leadership_spirit = 1
		professional_officer_corps_spirit = 1
		elevated_engineering_corps_spirit = 0
		proper_heritage_spirit = 0
		qui
# ... (truncated)
### Entity: National Focus
Tree: ita_focus
Component: ITA_self_propelled_guns
Constructs: prerequisite, limit, add_ideas, completion_reward, has_dlc, has_tech, add_tech_bonus, random_core_state
Source: game
File: common/national_focus/italy.txt

Code:
focus = {
	id = ITA_self_propelled_guns
	icon = GFX_focus_generic_self_propelled_gun
	prerequisite = {
		focus = ITA_superesercito
	} {
		focus = ITA_italian_tankettes
	}
	x = 1
	y = 1
	relative_position_id = ITA_superesercito
	cost = 10
	available = {
		if = {
			limit = {
				has_dlc = No Step Back
			}
			has_tech = basic_medium_tank_chassis
		}
	}
	search_filters = {
		FOCUS_FILTER_INDUSTRY FOCUS_FILTER_ARMY_XP
	}
	completion_reward = {
		custom_effect_tooltip = ITA_self_propelled_guns_military_industry_tt
		hidden_effect = {
			add_ideas = ITA_hidden_spg_production_ns
		}
		add_tech_bonus = {
			name = ITA_self_propelled_guns
			bonus = 0.5
			uses = 3
			category = artillery
		}
		random_core_state = {
			limit = {
				is_fully_controlled_by = ROOT
				free_building_slots = {
					building = arms_factory
					size = > 0
					include_locked = yes
				}
			}
			add_extra_state_shared_building_slots = 1
			add_building_construction = {
				type = arms_factory
				level = 1
				instant_build = yes
			}
		}
		if = {
			limit = {
				has_dlc = No Step Back
			}
			ITA_add_basic_medium_tank_templates = yes
		}
	}
}