Losa10/PreTrain-HOI4-Modding-Assistant huggingface dataset:
### Entity: National Focus
Tree: mon_focus
Component: MON_full_social_equality
Constructs: prerequisite, limit, add_ideas, has_government, completion_reward, has_idea, swap_ideas, remove_idea
Source: game
File: common/national_focus/mongolia.txt

Code:
focus = {
	id = MON_full_social_equality
	icon = GFX_goal_womens_rights
	x = -1
	y = 1
	relative_position_id = MON_changes_within
	cost = 10
	prerequisite = {
		focus = MON_changes_within
	}
	ai_will_do = {
		factor = 30
	}
	available = {
		NOT = {
			has_government = fascism
		}
	}
	completion_reward = {
		if = {
			limit = {
				has_idea = MON_ancom_society_currency
			}
			swap_ideas = {
				remove_idea = MON_ancom_society_currency
				add_idea = MON_ancom_society_consc_currency
			}
		} {
			limit = {
				NOT = {
					has_idea = r56i_laws_gender_traditional r56i_laws_gender_limited r56i_laws_gender_patriarchy r56i_laws_gender_equality
				} {
					has_global_flag = NATIONAL_CHARACTERS_BLOCKED
				}
			}
			custom_effect_tooltip = EFFECT_CHANGE_LAW_r56i_gender_social
			show_ideas_tooltip = r56i_laws_gender_equality
			hidden_effect = {
				add_ideas = r56i_laws_gender_equality
			}
		}
		else = {
			add_ideas = MON_ancom_society_consc
		}
	}
}
### Entity: Event
Component: poland.113
Constructs: is_triggered_only, has_completed_focus, create_country_leader, limit, fire_only_once, has_character, retire_character
Source: game
File: events/r56_Poland.txt

Code:
news_event = {
	id = poland.113
	title = poland.113.t
	desc = poland.113.d
	picture = GFX_Dmowski_Funeral
	fire_only_once = yes
	is_triggered_only = yes
	trigger = {
		POL = {
			has_character = POL_roman_dmowski
		}
	}
	immediate = {
		hidden_effect = {
			retire_character = POL_roman_dmowski
			if = {
				limit = {
					has_completed_focus = POL_The_Endecja_Movement
				}
				create_country_leader = {
					name = Tadeusz Bielecki
					picture = GFX_portrait_POL_tadeusz_bielecki
					expire = 1965.1.1
					ideology = conservatism
					traits = {
						polish_nationalist political_pragmatist dislikes_germany
					}
				}
			}
		}
	}
	option = {
		name = poland.113.e
	}
}
### Entity: State History
Component: 284
Constructs: add_core_of
Source: game
File: history/states/284-New Zealand.txt

Code:
state = {
	id = 284
	name = STATE_284
	manpower = 449918
	resources = {
		coal = 1
	}
	state_category = city
	history = {
		owner = NZL
		add_core_of = NZL
		buildings = {
			infrastructure = 3
			industrial_complex = 2
			air_base = 1
			1814 = {
				naval_base = 2
			}
		}
		victory_points = {
			1814 10
		} {
			12604 1
		}
	}
	provinces = {
		1801 1814 4804 7692 7783 7826 12604 12617
	}
	local_supplies = 0.0
}
### Entity: Modifier Reference
Component: MPL_levantine_unification
Constructs: compliance_gain
Source: game
File: common/modifiers/r56_static_modifiers.txt

Code:
MPL_levantine_unification = {
	valid_relation_trigger = {
		OR = {
			original_tag = JOR SYR LEB
		}
	}
	compliance_gain = 0.1
}
### Entity: Scripted Trigger
Component: EAI_LAW_get_low_economic_mobilisation
Source: game
File: common/scripted_triggers/EAI_COUNTRY_law_triggers.txt

Code:
EAI_LAW_get_low_economic_mobilisation = {
	EAI_LAW_wants_low_economic_mobilisation = yes
	EAI_LAW_available_low_economic_mobilisation = yes
}
### Entity: Idea
Component: GER_establish_stasi_idea
Constructs: removal_cost
Source: game
File: common/ideas/r56_germany.txt

Code:
GER_establish_stasi_idea = {
	removal_cost = -1
	allowed = {
		always = no
	}
	picture = generic_spy_political
	modifier = {
		resistance_damage_to_garrison = -0.1
		subversive_activites_upkeep = -0.25
	}
}
### Entity: Shared Focus
Tree: raj_focus
Component: RAJ_safeguard_the_interior_r56
Constructs: shared_focus, prerequisite, completion_reward, add_tech_bonus, swap_ideas, remove_idea, add_idea
Source: game
File: common/national_focus/r56_india_shared.txt

Code:
shared_focus = {
	id = RAJ_safeguard_the_interior_r56
	icon = GFX_focus_SWE_hedgehog_defense
	cost = 8
	ai_will_do = {
		base = 1
	}
	y = 2
	prerequisite = {
		focus = RAJ_prepare_an_autonomous_defense_r56
	}
	relative_position_id = RAJ_prepare_an_autonomous_defense_r56
	search_filters = {
		FOCUS_FILTER_MILITARY_IMPROVEMENT FOCUS_FILTER_RESEARCH
	}
	completion_reward = {
		add_tech_bonus = {
			name = RAJ_safeguard_the_interior_r56
			bonus = 0.75
			uses = 1
			category = cat_fortification
		}
		custom_effect_tooltip = generic_skip_one_line_tt
		swap_ideas = {
			remove_idea = RAJ_deterrence
			add_idea = RAJ_deterrence_2_r56
		}
	}
}
### Entity: Decision
Component: MPL_arab_revolt_category
Source: game
File: common/decisions/categories/MPL_decision_categories.txt

Code:
MPL_arab_revolt_category = {
	icon = GFX_decision_category_SOV_propaganda
	picture = GFX_decision_cat_arab_revolt
	priority = 100
	allowed = {
		original_tag = MPL
	}
}
### Entity: Character
Component: democratic_crusader
Constructs: fascism_drift, communism_drift, democratic_drift
Source: game
File: common/country_leader/00_traits.txt

Code:
democratic_crusader = {
	random = no
	sprite = 13
	fascism_drift = -0.05
	communism_drift = -0.05
	democratic_drift = 0.05
	democratic_acceptance = 40
}
### Entity: Idea
Component: BUL_anti_capitalism_est
Constructs: has_completed_focus, limit, has_government, has_country_flag, removal_cost
Source: game
File: common/ideas/bulgaria.txt

Code:
BUL_anti_capitalism_est = {
	name = BUL_anti_capitalism
	picture = eng_tackle_capitalism
	allowed = {
		original_tag = BUL
	}
	allowed_civil_war = {
		tag = BUL
		if = {
			limit = {
				has_completed_focus = BUL_the_anti_capitalist_fight
			}
			has_government = communism
		}
	}
	removal_cost = -1
	targeted_modifier = {
		tag = EST
		attack_bonus_against = 0.1
		defense_bonus_against = 0.1
	}
	cancel = {
		OR = {
			has_country_flag = BUL_anti_capitalism_ns_expired_flag BUL_toppling_giants_ns_expired_flag BUL_the_fight_against_bolshevism_ns_expired_flag
		}
	}
}
### Entity: Event
Component: WW_hungary.10
Constructs: is_triggered_only, ai_chance, add_opinion_modifier, fire_only_once, add_political_power
Source: game
File: events/WUW_Hungary.txt

Code:
country_event = {
	id = WW_hungary.10
	title = WW_hungary.10.t
	desc = WW_hungary.10.desc
	picture = GFX_report_event_hungary_parliament
	is_triggered_only = yes
	fire_only_once = yes
	option = {
		name = WW_hungary.10.a
		ai_chance = {
			factor = 100
		}
		add_political_power = 50
		add_opinion_modifier = {
			target = FROM
			modifier = medium_decrease
		}
	}
}
### Entity: Unit Template
Component: GRE_BB_HISTORICAL
Source: game
File: common/units/names_ships/GRE_ship_names.txt

Code:
GRE_BB_HISTORICAL = {
	name = NAME_THEME_HISTORICAL_BB
	for_countries = {
		GRE
	}
	type = ship
	ship_types = {
		ship_hull_heavy battleship
	}
	prefix = RHS 
	fallback_name = Thorikto %s
	unique = {
		Kilkis Athinai Thessalia Ipiros Peloponnisos
	}
}
### Entity: National Focus
Tree: sov_focus
Component: SOV_the_path_of_marxism_leninism
Constructs: has_completed_focus, limit, completion_reward, add_political_power, has_game_rule, allow_branch, has_dlc
Source: game
File: common/national_focus/soviet.txt

Code:
focus = {
	id = SOV_the_path_of_marxism_leninism
	icon = GFX_focus_SOV_the_path_of_marxism_leninism
	x = 16
	y = 0
	offset = {
		x = -8
		y = 0
		trigger = {
			has_game_rule = {
				rule = obsolete_focus_branches_visibility
				option = HIDE
			}
			has_completed_focus = SOV_beaten_but_not_defeated
		}
	}
	relative_position_id = SOV_strengthen_the_mobilization_plan
	cost = 5
	mutually_exclusive = {
		focus = SOV_beaten_but_not_defeated
	}
	allow_branch = {
		if = {
			limit = {
				has_game_rule = {
					rule = obsolete_focus_branches_visibility
					option = HIDE
				}
			}
			NOT = {
				has_completed_focus = SOV_the_hands_do
			}
		}
	}
	available = {

	}
	search_filters = {
		FOCUS_FILTER_POLITICAL FOCUS_FILTER_SOV_POLITICAL_PARANOIA
	}
	completion_reward = {
		add_political_power = 25
		SOV_paranoia_low_decrease_effect = yes
		if = {
			limit = {
				has_dlc = No Step Back
				has_game_rule = {
					rule = obsolete_focus_branches_visibility
					option = HIDE
				}
			}
			mark_focus_tree_layout_dirty = yes
		}
	}
}
### Entity: National Focus
Tree: swi_focus
Component: SWI_integrate_refugees_into_the_army
Constructs: prerequisite, has_war, has_country_flag, completion_reward, cancel_if_invalid, add_manpower
Source: game
File: common/national_focus/switzerland.txt

Code:
focus = {
	id = SWI_integrate_refugees_into_the_army
	icon = GFX_goal_generic_national_unity
	prerequisite = {
		focus = SWI_the_army_position
	}
	x = 1
	y = 1
	relative_position_id = SWI_the_army_position
	mutually_exclusive = {
		focus = SWI_prolonged_service
	}
	cost = 10
	ai_will_do = {
		factor = 1
		modifier = {
			factor = 0.2
			SWI_someone_is_about_to_be_angry = yes
		}
	}
	available = {
		power_balance_value = {
			id = SWI_centralization_bop
			value = > 0
		}
		any_other_country = {
			SWI_is_country_to_balance = yes
			has_war = yes
		}
		NOT = {
			has_country_flag = SWI_militias_turned_into_regulars
		}
	}
	bypass = {

	}
	search_filters = {
		FOCUS_FILTER_MANPOWER
	}
	cancel_if_invalid = no
	continue_if_invalid = no
	available_if_capitulated = no
	completion_reward = {
		add_manpower = 30000
		SWI_add_suspicious_prep_opinion = yes
	}
}
### Entity: Event
Component: mongol_greater_mongolia.29
Constructs: is_triggered_only, limit, set_global_flag, set_rule, random_other_country, is_in_faction_with, is_faction_leader, remove_from_faction
Source: game
File: events/Mongolia.txt

Code:
country_event = {
	id = mongol_greater_mongolia.29
	title = mongol_greater_mongolia.29.t
	desc = mongol_greater_mongolia.29.d
	picture = GFX_report_event_soviet_japanese_pact
	is_triggered_only = yes
	option = {
		name = mongol_greater_mongolia.29.a
		set_global_flag = MON_ul_conference_successfull
		set_rule = {
			can_join_factions = no
		}
		random_other_country = {
			limit = {
				OR = {
					original_tag = SOV JAP CHI
				}
				is_in_faction_with = ROOT
				is_faction_leader = yes
			}
			remove_from_faction = ROOT
		}
		if = {
			limit = {
				custom_trigger_tooltip = {
					tooltip = MON_sov_influence_more_50_tt
					check_variable = {
						sov_influence_in_mon = 50
						compare = greater_than_or_equals
					}
				}
			}
			SOV = {
				give_guarantee = ROOT
			}
		} {
			limit = {
				custom_trigger_tooltip = {
					tooltip = MON_chi_influence_more_50_tt
					check_variable = {
						chi_influence_in_mon = 50
						compare = greater_than_or_equals
					}
				}
			}
			CHI = {
				give_guarantee = ROOT
			}
		} {
			limit = {
				custom_trigger_tooltip = {
					tooltip = MON_jap_influence_more_50_tt
					check_variable = {
						jap_influence_in_mon = 50
						compare = greater_than_or_equals
					}
				}
			}
			JAP = {
				give_guarantee = ROOT
			}
		} {
			limit = {
				SOV = {
					has_opinion = {
						target = ROOT
						value = > 80
					}
				}
				custom_trigger_tooltip = {
					tooltip = MON_sov_influence_more_50_tt
					check_variable = {
						sov_influence_in_mon = 50
						compare = greater_than_or_equals
					}
				}
			}
			SOV = {
				set_country_flag = MON_supported_during_ul_conference
			}
		} {
			limit = {
				CHI = {
					has_opinion = {
						target = ROOT
						value = > 80
					}
				}
				custom_trigger_tooltip = {
					tooltip = MON_chi_influence_more_50_tt
					check_variable = {
						chi_influence_in_mon = 50
						compare = greater_than_or_equals
					}
				}
			}
			CHI = {
				set_country_flag = MON_supported_during_ul_conference
			}
		} {
			limit = {
				JAP = {
					has_opinion = {
						target = ROOT
						value = > 80
					}
				}
				custom_trigger_tooltip = {
					tooltip = MON_jap_influence_more_50_tt
					check_variable = {
						jap_influence_in_mon = 50
						compare = greater_than_or_equals
					}
				}
			}
			JAP = {
				set_country_flag = MON_supported_during_ul_conference
			}
		}
		hidden_effect =
# ... (truncated)
### Entity: Event
Component: news.241
Constructs: is_triggered_only
Source: game
File: events/NewsEvents.txt

Code:
news_event = {
	id = news.241
	title = news.241.t
	desc = news.241.d
	picture = GFX_news_event_generic_rally
	major = yes
	is_triggered_only = yes
	option = {
		name = news.241.a
		trigger = {
			NOT = {
				TAG = NZL AST
			}
		}
	} {
		name = news.241.b
		trigger = {
			TAG = NZL
		}
	} {
		name = news.241.c
		trigger = {
			TAG = AST
		}
	}
}
### Entity: National Focus
Tree: pru_focus
Component: PRU_the_peruvian_industry
Constructs: prerequisite, add_stability, completion_reward, swap_ideas, remove_idea, add_idea
Source: game
File: common/national_focus/peru.txt

Code:
focus = {
	id = PRU_the_peruvian_industry
	icon = GFX_goal_generic_strenght_through_industry
	x = 1
	y = 1
	cost = 5
	prerequisite = {
		focus = PRU_implement_autarky
	}
	mutually_exclusive = {
		focus = PRU_our_natural_resources
	}
	relative_position_id = PRU_implement_autarky
	ai_will_do = {
		factor = 5
	}
	completion_reward = {
		swap_ideas = {
			remove_idea = PRU_stagnant_economy_2
			add_idea = PRU_good_economy_pi
		}
		add_stability = 0.1
	}
}
### Entity: Character
Component: HUN_hermann_pokorny
Constructs: has_dlc, has_intelligence_agency, has_done_agency_upgrade
Source: game
File: common/characters/HUN.txt

Code:
HUN_hermann_pokorny = {
	name = HUN_hermann_pokorny
	portraits = {
		civilian = {
			small = GFX_portrait_HUN_hermann_pokorny_small
		}
	}
	advisor = {
		slot = political_advisor
		idea_token = HUN_hermann_pokorny
		allowed = {
			original_tag = HUN
			has_dlc = La Resistance
		}
		available = {
			has_intelligence_agency = yes
			custom_trigger_tooltip = {
				tooltip = cyptology_tooltip_tt
				has_done_agency_upgrade = upgrade_form_department
			}
		}
		traits = {
			expert_code_cracker
		}
		ai_will_do = {
			base = 1
		}
	}
}
### Entity: Modding Documentation
Construct: goto_region
Source: vanilla_docs
File: documentation/console_commands_documentation.md

Doc:
## goto_region
* Arguments: region id

Centers to region
### Entity: National Focus
Tree: bul_focus
Component: BUL_national_railway_lines
Constructs: every_owned_state, prerequisite, limit, completion_reward, has_state_flag, add_extra_state_shared_building_slots, build_railway, has_full_control_of_state
Source: game
File: common/national_focus/bulgaria.txt

Code:
focus = {
	id = BUL_national_railway_lines
	prerequisite = {
		focus = BUL_improve_the_road_system
	}
	icon = GFX_goal_generic_construct_infrastructure
	relative_position_id = BUL_improve_the_road_system
	x = 3
	y = 2
	cost = 5
	available = {

	}
	search_filters = {
		FOCUS_FILTER_INDUSTRY
	}
	completion_reward = {
		every_owned_state = {
			limit = {
				OR = {
					has_state_flag = BUL_initial_bulgarian_state_flag BUL_historical_bulgarian_claim_flag
				}
			}
			add_extra_state_shared_building_slots = 2
		}
		if = {
			limit = {
				controls_state = 801 211
			}
			build_railway = {
				path = {
					949 3971 3952 3819 6842 9769 649 9783
				}
			}
		} {
			limit = {
				controls_state = 212
			}
			build_railway = {
				path = {
					949 3908 3937 6923
				}
			}
		} {
			limit = {
				controls_state = 212 211
			}
			build_railway = {
				path = {
					6923 9862 9888 9902
				}
			}
		} {
			limit = {
				has_full_control_of_state = 803 106
			}
			build_railway = {
				level = 2
				path = {
					949 935 907 3882
				}
			}
		}
	}
}
### Entity: Unit Template
Component: SPD_INF_03
Source: game
File: common/units/names_divisions/SPR_names_divisions.txt

Code:
SPD_INF_03 = {
	name = Popular Brigade
	for_countries = {
		SPR
	}
	can_use = {
		always = yes
	}
	division_types = {
		infantry
	}
	fallback_name = %da Brigada Popular
	ordered = {

	}
}
### Entity: Wiki Documentation
Construct: html
Source: wiki
File: wiki/File%3AH3kNus7.jpg.html

Doc:
File

File history

File usage
Size of this preview: 1,280 × 800 pixels. Other resolution: 1,680 × 1,050 pixels.
Original file &#8206;(1,680 × 1,050 pixels, file size: 267 KB, MIME type: image/jpeg)
### Entity: Event
Component: poland.31
Constructs: is_triggered_only, annex_country, set_resistance, set_compliance, add_resistance_target
Source: game
File: events/r56_Poland.txt

Code:
country_event = {
	id = poland.31
	title = poland.31.t
	desc = poland.31.d
	picture = GFX_report_event_danzig_boat
	is_triggered_only = yes
	option = {
		name = poland.31.a
		POL = {
			annex_country = {
				target = DNZ
				transfer_troops = no
			}
		}
		85 = {
			set_resistance = 40
			set_compliance = 30
			add_resistance_target = {
				amount = 30
				tooltip = clamp_down_on_danzig_tt
			}
		}
	}
}
### Entity: Idea
Component: CEL_pro_union_movement
Constructs: war_support_factor, removal_cost, neutrality_drift, is_in_faction_with, is_subject_of
Source: game
File: common/ideas/r56_celtic.txt

Code:
CEL_pro_union_movement = {
	removal_cost = -1
	picture = hol_caved_to_the_british
	allowed = {
		always = no
	}
	modifier = {
		party_popularity_stability_factor = -0.15
		war_support_factor = -0.1
		drift_defence_factor = -0.25
		political_power_factor = -0.15
		neutrality_drift = 0.03
		custom_modifier_tooltip = CEL_pro_union_movement_remove
	}
	cancel = {
		OR = {
			is_in_faction_with = ENG
			is_subject_of = ENG
			ENG = {
				is_subject_of = ROOT
			} {
				exists = no
			}
		}
	}
}
### Entity: Idea
Component: BEL_aerial_interest
Constructs: removal_cost, research_bonus
Source: game
File: common/ideas/r56_belgium.txt

Code:
BEL_aerial_interest = {
	allowed = {
		always = no
	}
	allowed_civil_war = {
		always = yes
	}
	removal_cost = -1
	research_bonus = {
		jet_technology = 0.1
	}
}
### Entity: Order of Battle
Component: division_unit
Constructs: division_template, is_name_ordered
Source: game
File: history/units/GAB_1936.txt

Code:
division = {
	division_name = {
		is_name_ordered = yes
		name_order = 1
	}
	location = 5139
	division_template = Infantry Division
	start_experience_factor = 0.5
}
### Entity: National Focus
Tree: alg_focus
Component: ALG_first_air_force
Constructs: prerequisite, completion_reward
Source: game
File: common/national_focus/algeria.txt

Code:
focus = {
	id = ALG_first_air_force
	icon = GFX_goal_ALG_coa_air_force
	prerequisite = {
		focus = ALG_armed_forces
	}
	x = 43
	y = 1
	cost = 5
	ai_will_do = {
		factor = 1
	}
	completion_reward = {
		air_experience = 25
	}
}
### Entity: State History
Component: 994
Constructs: add_core_of, add_to_array
Source: game
File: history/states/994-La Habana.txt

Code:
state = {
	id = 994
	name = STATE_994
	provinces = {
		4600 7451 7622 10374 10498 13439
	}
	manpower = 2890187
	state_category = large_city
	buildings_max_level_factor = 1.0
	history = {
		owner = CUB
		buildings = {
			infrastructure = 2
			arms_factory = 2
			industrial_complex = 2
			air_base = 1
			7622 = {
				naval_base = 3
				coastal_bunker = 1
				bunker = 1
			}
			13439 = {
				naval_base = 1
			}
		}
		add_core_of = CUB
		add_to_array = {
			state_victory_points = 7622
		} {
			state_victory_points = 10374
		}
		victory_points = {
			7622 5
		} {
			10374 2
		}
	}
	local_supplies = 1.0
}
### Entity: Event
Component: kmt.251
Constructs: is_triggered_only, ai_chance, add_core_of, create_wargoal, take_state_focus
Source: game
File: events/r56_KMT_events.txt

Code:
country_event = {
	id = kmt.251
	title = kmt.251.t
	desc = kmt.251.d
	picture = GFX_report_event_lithuania_army
	is_triggered_only = yes
	option = {
		ai_chance = {
			base = 100
		}
		name = kmt.251.a
		HOL = {
			transfer_state = 721
		}
		RAJ = {
			transfer_state = 321
		}
		321 = {
			add_core_of = RAJ
		}
		CHI = {
			transfer_state = 729
		}
	} {
		name = kmt.251.b
		hidden_effect = {
			CHI = {
				create_wargoal = {
					target = POR
					type = take_state_focus
					generator = {
						729
					}
				}
			}
		}
	}
}
### Entity: Character
Component: PER_azad_hashemi
Source: game
File: common/characters/PER.txt

Code:
PER_azad_hashemi = {
	navy_leader = {
		traits = {
			gunnery_expert
		}
		skill = 3
		attack_skill = 4
		defense_skill = 3
		maneuvering_skill = 2
		coordination_skill = 1
		legacy_id = -1
	}
	advisor = {
		cost = 100
		slot = navy_chief
		idea_token = PER_azad_hashemi
		ledger = navy
		allowed = {
			original_tag = PER
		}
		traits = {
			navy_chief_maneuver_2
		}
	}
	name = PER_azad_hashemi
	portraits = {
		army = {
			large = GFX_portrait_PER_generic_navy_1
			small = GFX_portrait_PER_generic_navy_1_small
		}
	}
}
### Entity: Idea
Component: LIE_liechtensteiner_autarky
Constructs: removal_cost
Source: game
File: common/ideas/liechtenstein.txt

Code:
LIE_liechtensteiner_autarky = {
	picture = idea_ARG_rapid_militarization
	allowed = {
		original_tag = LIE
	}
	removal_cost = -1
	modifier = {
		local_resources_factor = 0.2
		production_lack_of_resource_penalty_factor = -0.1
	}
}
### Entity: Modifier Reference
Construct: female_random_admiral_chance
Source: vanilla_docs
File: documentation/modifiers_documentation.md

Doc:
## female_random_admiral_chance

* Number with 0 decimal places
* **Categories**: naval, country
### Entity: National Focus
Tree: mon_focus
Component: MON_secure_the_transition_of_power
Constructs: prerequisite, limit, add_stability, completion_reward, add_popularity, has_character, is_field_marshal
Source: game
File: common/national_focus/mongolia.txt

Code:
focus = {
	id = MON_secure_the_transition_of_power
	icon = GFX_goal_generic_communist_secret_police
	x = 2
	y = 1
	relative_position_id = MON_deal_with_genden
	cost = 5
	prerequisite = {
		focus = MON_deal_with_genden MON_ratify_mutual_assistance_treaty
	}
	ai_will_do = {
		factor = 30
	}
	completion_reward = {
		add_stability = 0.05
		add_popularity = {
			ideology = communism
			popularity = 0.05
		}
		if = {
			limit = {
				has_character = MON_gelegdorjiin_demid
			}
			MON_gelegdorjiin_demid = {
				if = {
					limit = {
						is_field_marshal = no
					}
					promote_leader = yes
				}
			}
		} {
			limit = {
				has_character = MON_khorloogiin_choibalsan
			}
			MON_khorloogiin_choibalsan = {
				if = {
					limit = {
						is_field_marshal = no
					}
					promote_leader = yes
				}
			}
		}
	}
	search_filters = {
		FOCUS_FILTER_STABILITY FOCUS_FILTER_POLITICAL
	}
}
### Entity: National Focus
Tree: sov_focus
Component: SOV_nuke_focus
Constructs: has_completed_focus, prerequisite, limit, completion_reward, has_tech, add_tech_bonus, add_breakthrough_progress, is_fully_controlled_by
Source: game
File: common/national_focus/soviet_old.txt

Code:
focus = {
	id = SOV_nuke_focus
	icon = GFX_focus_wonderweapons
	prerequisite = {
		focus = SOV_socialist_science
	} {
		focus = SOV_rocket_focus
	}
	x = 5
	y = 4
	cost = 10
	ai_will_do = {
		factor = 500
		modifier = {
			factor = 0.005
			date = < 1942.06.06
		}
	}
	available = {
		num_of_factories = > 120
	}
	completion_reward = {
		IF = {
			limit = {
				NOT = {
					has_tech = atomic_research
				}
			}
			add_tech_bonus = {
				name = SOV_soviet_atomic_bomb_project_tech_bonus_name
				bonus = 1
				uses = 1
				ahead_reduction = 1
				category = nuclear
			}
			add_breakthrough_progress = {
				specialization = specialization_nuclear
				value = 0.5
			}
		} {
			limit = {
				588 = {
					is_fully_controlled_by = ROOT
				}
			}
			custom_effect_tooltip = SOV_soviet_atomic_bomb_project_tt
		}
		ELSE = {
			add_breakthrough_progress = {
				specialization = specialization_nuclear
				value = 0.8
			}
		}
		custom_effect_tooltip = generic_skip_one_line_tt
		hidden_effect = {
			IF = {
				limit = {
					588 = {
						is_fully_controlled_by = ROOT
						air_facility = < 1
						land_facility = < 1
						naval_facility = < 1
						nuclear_facility = < 1
					}
				}
				588 = {
					add_building_construction = {
						type = nuclear_facility
						level = 1
						instant_build = yes
						province = 7350
					}
					add_victory_points = {
						province = 7350
						value = 1
					}
				}
			}
		}
		if = {
			limit = {
				has_completed_focus = SOV_Invest_in_Engineering_old
			}
			add_timed_idea = {
				idea = SOV_engineering_push
				days = 30
			}
		}
		modify_timed_idea = {
			idea = SOV_revolutionized_industry_1
			days = 100
		} {
			idea = SOV_revolutionized_industry_2
			days = 100
		}
	}
	search_filters = {
		FOCUS_FILTER_RESEARCH
	}
}