Losa10/PreTrain-HOI4-Modding-Assistant huggingface dataset:
### Entity: Event
Component: BBA_italo_ethiopian_war_events.14
Constructs: is_triggered_only, ai_chance, has_war, limit, has_government, has_war_with, is_major, add_opinion_modifier
Source: game
File: events/BBA_ItaloEthiopianWar.txt

Code:
country_event = {
	id = BBA_italo_ethiopian_war_events.14
	title = BBA_italo_ethiopian_war_events.14.t
	desc = BBA_italo_ethiopian_war_events.14.desc
	picture = GFX_report_event_generic_rally2
	is_triggered_only = yes
	trigger = {
		is_league_of_nations_member = yes
		NOT = {
			has_war_with = ETH
		}
	}
	immediate = {

	}
	option = {
		name = BBA_italo_ethiopian_war_events.14.a
		trigger = {
			NOT = {
				is_in_faction_with = ITA
			}
			has_opinion = {
				target = ITA
				value = < 0
			}
			has_war = no
		}
		ai_chance = {
			base = 10
			modifier = {
				factor = 0.5
				is_major = no
			} {
				factor = 0.5
				has_opinion = {
					target = ITA
					value = > 0
				}
			} {
				factor = 0
				has_opinion = {
					target = ITA
					value = > 75
				}
			} {
				factor = 2
				has_opinion = {
					target = ITA
					value = < -50
				}
			} {
				factor = 0.25
				any_owned_state = {
					is_on_continent = asia
					is_capital = yes
				}
			} {
				factor = 1.5
				has_government = democratic
			} {
				factor = 0.1
				has_government = ITA
			} {
				factor = 0.1
				has_war_support = < 0.1
			} {
				factor = 0
				OR = {
					has_idea = SWI_swiss_neutrality neutrality_idea
				}
			}
		}
		add_relation_modifier = {
			target = ETH
			modifier = ETH_league_of_nations_volunteer_resolution
		}
		add_relation_rule_override = {
			target = ETH
			can_send_volunteers = yes
		}
		set_country_flag = ETH_support_for_ethiopia_flag
		ITA = {
			add_opinion_modifier = {
				target = ROOT
				modifier = supporting_ethiopia_modifier_ITA
			}
		}
		ETH = {
			add_opinion_modifier = {
				target = ROOT
				modifier = supporting_ethiopia_modifier_ETH
			}
		}
		hidden_effect = {
			IF = {
				limit = {
					ROOT = {
						is_major = yes
					}
				}
				ETH = {
					country_event = {
						id = BBA_italo_ethiopian_war_events.16
						hours = 4
						random_hours = 4
					}
				}
			}
		}
	} {
		name = BBA_italo_ethiopian_war_events.14.b
		trigger = {
			NOT = {
				is_in_faction_with = ITA
			}
			has_war = no
		}
		ai_chance = {
			base = 10
			modifier = {
				factor = 0.5
				is_major = yes
			} {
				factor = 0.5
				has_opinion = {
					target = ITA
					value = > 0
				}
			} {
				factor = 0
				has_opinion = {
					target = ITA
					value = > 75
				}
			} {
				factor = 0.5
				has_war_support = < 0.1
			} {
				factor = 0
				has_idea = SWI_swiss_neutrality
# ... (truncated)
### Entity: Character
Component: MOR_ahmed_balafrej
Constructs: has_autonomy_state
Source: game
File: common/characters/MOR.txt

Code:
MOR_ahmed_balafrej = {
	name = Ahmed Balafrej
	portraits = {
		army = {
			small = gfx/interface/ideas/idea_generic_democratic_arab.dds
		}
	}
	advisor = {
		slot = political_advisor
		idea_token = MOR_ahmed_balafrej
		traits = {
			democratic_reformer
		}
		available = {
			NOT = {
				has_autonomy_state = autonomy_supervised_state
			}
		}
		ai_will_do = {
			factor = 0
		}
	}
}
### Entity: Order of Battle
Component: 15. Kuva-yi Milliye Tugayi
Constructs: division_template
Source: game
File: history/units/TUR_Civil_War_communist.txt

Code:
division = {
	name = 15. Kuva-yi Milliye Tugayi
	location = 6808
	division_template = Kuva-yi Milliye Tugayi
}
### Entity: Scripted Effect
Component: ITA_replace_designers_by_improved_version_south
Constructs: limit, has_dlc, every_military_industrial_organization, is_military_industrial_organization, complete_mio_trait, has_idea, swap_ideas, remove_idea
Source: game
File: common/scripted_effects/ITA_scripted_effects.txt

Code:
ITA_replace_designers_by_improved_version_south = {
	if = {
		limit = {
			has_dlc = Arms Against Tyranny
		}
		every_military_industrial_organization = {
			limit = {
				OR = {
					is_military_industrial_organization = ITA_navalmeccanica_organization ITA_cantiere_navale_di_ancona_organization ITA_cantieri_navali_tosi_organization ITA_imam_organization
				}
			}
			complete_mio_trait = ITA_mio_trait_new_industrialization_program
		}
	} {
		limit = {
			has_idea = ITA_terni_industria_ed_elettricita
		}
		swap_ideas = {
			remove_idea = ITA_terni_industria_ed_elettricita
			add_idea = ITA_terni_industria_ed_elettricita_improved
		}
	}
	else = {
		if = {
			limit = {
				has_idea = ITA_navalmeccanica
			}
			swap_ideas = {
				remove_idea = ITA_navalmeccanica
				add_idea = ITA_navalmeccanica_improved
			}
		} {
			limit = {
				has_idea = ITA_imam
			}
			swap_ideas = {
				remove_idea = ITA_imam
				add_idea = ITA_imam_improved
			}
		}
		else_if = {
			limit = {
				has_idea = ITA_cantiere_navale_di_ancona
			}
			swap_ideas = {
				remove_idea = ITA_cantiere_navale_di_ancona
				add_idea = ITA_cantiere_navale_di_ancona_improved
			}
		} {
			limit = {
				has_idea = ITA_cantieri_navali_tosi
			}
			swap_ideas = {
				remove_idea = ITA_cantieri_navali_tosi
				add_idea = ITA_cantieri_navali_tosi_improved
			}
		}
	}
	else_if = {
		limit = {
			has_idea = ITA_astaldi
		}
		swap_ideas = {
			remove_idea = ITA_astaldi
			add_idea = ITA_astaldi_improved
		}
	}
}
### Entity: Idea
Component: cgt
Constructs: has_war_with, has_dlc, research_bonus
Source: game
File: common/ideas/turkey.txt

Code:
cgt = {
	picture = tur_cgt
	allowed = {
		original_tag = TUR
		has_dlc = Battle for the Bosporus
	}
	available = {
		NOT = {
			has_war_with = FRA
		}
	}
	research_bonus = {
		naval_equipment = 0.15
	}
	traits = {
		battlefleet_designer
	}
}
### Entity: Character
Component: crown_regent
Constructs: stability_factor
Source: game
File: common/country_leader/00_traits.txt

Code:
crown_regent = {
	random = no
	stability_factor = 0.15
	political_power_factor = -0.15
}
### Entity: Wiki Documentation
Construct: html
Source: wiki
File: wiki/Special%3AWhatLinksHere/Template%3AMainTemplate.html

Doc:
What links here
Page:&#160; Namespace:&#160;
all
(Main)
Talk
User
User talk
Hearts of Iron 4 Wiki
Hearts of Iron 4 Wiki talk
File
File talk
MediaWiki
MediaWiki talk
Template
Template talk
Help
Help talk
Category
Category talk
Beta
Beta talk
&#160;&#160;Invert selection

Filters
Hide transclusions | Hide links | Hide redirects

The following pages link to Template:MainTemplate:

View (previous 50 | next 50) (20 | 50 | 100 | 250 | 500)Hearts of Iron 4 Wiki (transclusion) ‎ (← links | edit)

Beta:Main (transclusion) ‎ (← links | edit)

View (previous 50 | next 50) (20 | 50 | 100 | 250 | 500)
Retrieved from "http://www.hoi4wiki.com/Special:WhatLinksHere/Template:MainTemplate"
### Entity: National Focus
Tree: sov_focus
Component: SOV_improve_western_railnetworks
Constructs: prerequisite, limit, completion_reward, is_historical_focus_on, complete_tooltip, random_state, has_state_flag, add_building_construction
Source: game
File: common/national_focus/soviet_old.txt

Code:
focus = {
	id = SOV_improve_western_railnetworks
	icon = GFX_cold_railway
	prerequisite = {
		focus = SOV_finish_the_five_year_plan_old
	}
	x = -4
	y = 1
	cost = 5
	ai_will_do = {
		factor = 30
		modifier = {
			is_historical_focus_on = no
			factor = 20
		}
	}
	available_if_capitulated = yes
	bypass = {
		custom_trigger_tooltip = {
			tooltip = infrastructure_effort_tt
			all_owned_state = {
				free_building_slots = {
					building = infrastructure
					size = < 1
				}
			}
		}
	}
	complete_tooltip = {
		random_state = {
			limit = {
				has_state_flag = SOV_western_rail_1
			}
			add_building_construction = {
				type = infrastructure
				level = 1
				instant_build = yes
			}
		} {
			limit = {
				has_state_flag = SOV_western_rail_2
			}
			add_building_construction = {
				type = infrastructure
				level = 1
				instant_build = yes
			}
		} {
			limit = {
				has_state_flag = SOV_western_rail_3
			}
			add_building_construction = {
				type = infrastructure
				level = 1
				instant_build = yes
			}
		} {
			limit = {
				has_state_flag = SOV_western_rail_4
			}
			add_building_construction = {
				type = infrastructure
				level = 1
				instant_build = yes
			}
		} {
			limit = {
				has_state_flag = SOV_western_rail_5
			}
			add_building_construction = {
				type = infrastructure
				level = 1
				instant_build = yes
			}
		} {
			limit = {
				has_state_flag = SOV_western_rail_6
			}
			add_building_construction = {
				type = infrastructure
				level = 1
				instant_build = yes
			}
		} {
			limit = {
				has_state_flag = SOV_western_rail_7
			}
			add_building_construction = {
				type = infrastructure
				level = 1
				instant_build = yes
			}
		}
	}
	completion_reward = {
		if = {
			limit = {
				has_idea = SOV_poor_railnetworks_0
			}
			swap_ideas = {
				remove_idea = SOV_poor_railnetworks_0
				add_idea = SOV_poor_railnetworks_1
			}
			else = {
				if = {
					limit = {
						has_idea = SOV_poor_railnetworks_1
					}
					swap_ideas = {
						remove_idea = SOV_poor_railnetworks_1
						add_idea = SOV_poor_railnetworks_2
					}
				}
			}
		}
		build_railway = {
			path = {
				9330 3356 6279 6230 6398 6341 413 3527 11475 11412 6591 3540 3519 11459 11450 11434 9417
			}
		} {
			path = {
				3529 9504 533 9516 509 500 11459
			}
		} {
			path = {
				9504 3582 9436 11485 3539 9564 11408
			}
		} {
			path = {
				3529 11474 520 6516 6486 
# ... (truncated)
### Entity: Event
Component: poland.155
Constructs: is_triggered_only, limit, add_political_power, is_controlled_by, add_resource
Source: game
File: events/r56_Poland.txt

Code:
country_event = {
	id = poland.155
	title = poland.155.t
	desc = poland.155.d
	picture = GFX_report_event_french_british_officers
	is_triggered_only = yes
	option = {
		name = poland.155.a
		if = {
			limit = {
				OR = {
					546 = {
						is_controlled_by = ENG
					} {
						is_controlled_by = POL
					}
				}
			}
			effect_tooltip = {
				POL = {
					add_political_power = -200
					transfer_state = 546
					add_resource = {
						type = chromium
						amount = 5
						state = 546
					} {
						type = tungsten
						amount = 7
						state = 546
					}
				}
			}
		}
	}
}
### Entity: Event
Component: south_american_events.18
Constructs: is_triggered_only, limit, remove_ideas, every_country, owns_state, has_war_with, has_idea, is_ally_with
Source: game
File: events/TOA_Generic_Events.txt

Code:
country_event = {
	id = south_american_events.18
	title = south_american_events.18.t
	desc = south_american_events.18.desc
	picture = GFX_report_event_generic_sign_treaty1
	is_triggered_only = yes
	option = {
		name = south_american_events.18.a
		every_country = {
			limit = {
				has_idea = PRU_amazonian_war
			}
			remove_ideas = PRU_amazonian_war
		} {
			limit = {
				OR = {
					AND = {
						owns_state = 490
						has_war_with = PRU
					} {
						is_ally_with = ECU
						has_war_with = PRU
					} {
						is_subject_of = ECU
						has_war_with = PRU
					} {
						has_subject = ECU
						has_war_with = PRU
					}
				}
			}
			white_peace = PRU
		}
		IF = {
			limit = {
				490 = {
					is_core_of = ECU
				}
			}
			490 = {
				remove_core_of = ECU
			}
		}
		PRU = {
			transfer_state = 490
		}
	}
}
### Entity: Character
Component: GER_minister_of_agriculture
Constructs: industrial_capacity_factory
Source: game
File: common/country_leader/00_traits.txt

Code:
GER_minister_of_agriculture = {
	random = no
	sprite = 13
	out_of_supply_factor = -0.1
	monthly_population = 0.1
	industrial_capacity_factory = 0.05
	industrial_capacity_dockyard = 0.05
}
### Entity: National Focus
Tree: spr_focus
Component: SPR_fortify_the_coastlines
Constructs: every_owned_state, prerequisite, limit, completion_reward, is_core_of, is_in_home_area, is_coastal, is_controlled_by
Source: game
File: common/national_focus/spain.txt

Code:
focus = {
	id = SPR_fortify_the_coastlines
	available = {
		NOT = {
			any_state = {
				is_core_of = ROOT
				is_in_home_area = yes
				is_coastal = yes
				NOT = {
					is_controlled_by = ROOT
				}
			}
		}
	}
	bypass = {

	}
	prerequisite = {
		focus = SPR_fortify_the_pyrenees
	}
	icon = GFX_focus_generic_coastal_fort
	x = 1
	y = 1
	relative_position_id = SPR_fortify_the_pyrenees
	cost = 10
	available_if_capitulated = yes
	completion_reward = {
		custom_effect_tooltip = SPR_fortify_the_coastlines_tt_1 SPR_fortify_the_coastlines_tt_2
		hidden_effect = {
			171 = {
				add_building_construction = {
					type = coastal_bunker
					province = {
						all_provinces = yes
						limit_to_coastal = yes
					}
					level = 1
					instant_build = yes
				}
			}
			790 = {
				add_building_construction = {
					type = coastal_bunker
					province = {
						all_provinces = yes
						limit_to_coastal = yes
					}
					level = 1
					instant_build = yes
				}
			}
			792 = {
				add_building_construction = {
					type = coastal_bunker
					province = {
						all_provinces = yes
						limit_to_coastal = yes
					}
					level = 1
					instant_build = yes
				}
			}
			every_owned_state = {
				limit = {
					is_controlled_by = ROOT
					is_core_of = ROOT
					is_in_home_area = yes
				}
				add_building_construction = {
					type = coastal_bunker
					province = {
						all_provinces = yes
						limit_to_naval_base = yes
					}
					level = 2
					instant_build = yes
				} {
					type = bunker
					province = {
						all_provinces = yes
						limit_to_naval_base = yes
					}
					level = 1
					instant_build = yes
				}
			}
		}
	}
}
### Entity: Modifier Reference
Construct: weekly_convoys_war_support
Source: vanilla_docs
File: documentation/modifiers_documentation.md

Doc:
## weekly_convoys_war_support

* Number with 2 decimal places
* **Categories**: country
### Entity: Faction
Component: faction_goal_fortify_dardanelles
Constructs: limit, complete_effect, add_faction_power_projection, every_faction_member, add_faction_initiative, add_building_construction, has_navy_size
Source: game
File: common/factions/goals/faction_goals_short_term.txt

Code:
faction_goal_fortify_dardanelles = {
	name = fortify_dardanelles_goal_name
	description = fortify_dardanelles_goal_desc
	category = short_term
	group = FOCUS_FILTER_CONSOLIDATION
	allowed = {

	}
	visible = {
		OR = {
			340 = {
				is_controlled_by_ROOT_or_ally = yes
			}
			341 = {
				is_controlled_by_ROOT_or_ally = yes
			}
		}
	}
	available = {
		340 = {
			is_controlled_by_ROOT_or_ally = yes
		}
		341 = {
			is_controlled_by_ROOT_or_ally = yes
		}
	}
	completed = {
		custom_trigger_tooltip = {
			tooltip = fortify_dardanelles_tooltip
			340 = {
				any_province_building_level = {
					province = {
						id = 6864
					}
					building = coastal_bunker
					level = > 0
				} {
					province = {
						id = 6864
					}
					building = bunker
					level = > 0
				}
			}
			341 = {
				any_province_building_level = {
					province = {
						id = 849
					}
					building = coastal_bunker
					level = > 0
				} {
					province = {
						id = 849
					}
					building = bunker
					level = > 0
				}
			}
			OR = {
				AND = {
					divisions_in_state = {
						state = 797
						size = > 0
					} {
						state = 341
						size = > 0
					}
				}
				any_allied_country = {
					divisions_in_state = {
						state = 797
						size = > 0
					} {
						state = 341
						size = > 0
					}
				}
			}
		}
	}
	complete_effect = {
		add_faction_power_projection = 100
		custom_effect_tooltip = generic_skip_one_line_tt TARGET_STATE_CONTROLLERS
		every_faction_member = {
			visible_when_empty = yes
			limit = {
				OR = {
					controls_state = 340 341
				}
			}
			add_faction_initiative = 1
		}
		340 = {
			add_building_construction = {
				type = anti_air_building
				level = 1
				instant_build = yes
			} {
				type = coastal_bunker
				level = 1
				province = 6864
				instant_build = yes
			} {
				type = bunker
				level = 1
				province = 6864
				instant_build = yes
			}
		}
		341 = {
			add_building_construction = {
				type = anti_air_building
				level = 1
				instant_build = yes
			} {
				type = naval_base
				level = 1
				instant_build = yes
				province = 849
			} {
				type = coastal_bunker
				level = 1
				province = 849
				instant_build = yes
			} {
				type = bunker
				level = 1
				province = 849
				instant_build = yes
			}
		}
	}
	ai_will_do = {
		base = 1
		modifier = {
			add = 1
			has_navy_size = {
				size = > 20
				type = capital_ship
			}
		}
# ... (truncated)
### Entity: AI Strategy
Component: GRE_befriend_balkan_countries_TUR
Constructs: has_completed_focus, has_war_with, has_dlc, has_opinion, has_capitulated, is_subject
Source: game
File: common/ai_strategy/GRE.txt

Code:
GRE_befriend_balkan_countries_TUR = {
	allowed = {
		original_tag = GRE
		has_dlc = Battle for the Bosporus
	}
	enable = {
		focus_progress = {
			focus = GRE_bedrock_of_balkan_financial_stability
			progress = > 0.01
		}
		TUR = {
			has_opinion = {
				target = ROOT
				value = < 50
			}
			has_capitulated = no
			is_subject = no
		}
		OR = {
			NOT = {
				country_exists = BUL
			}
			has_war_with = BUL
			BUL = {
				OR = {
					has_opinion = {
						target = ROOT
						value = > 60
					}
					has_capitulated = yes
					is_subject = yes
				}
			}
		}
	}
	abort = {
		OR = {
			NOT = {
				country_exists = TUR
			}
			has_war_with = TUR
			TUR = {
				OR = {
					has_opinion = {
						target = ROOT
						value = > 80
					}
					has_capitulated = yes
					is_subject = yes
				}
			}
			has_completed_focus = GRE_bedrock_of_balkan_financial_stability
		}
	}
	ai_strategy = {
		type = diplo_action_desire
		id = TUR
		target = improve_relation
		value = 200
	}
}
### Entity: AI Strategy
Component: EAI_DIPLO_lend_lease_to_L20
Constructs: check_variable, send_lend_lease_desire
Source: game
File: common/ai_strategy/EAI_COUNTRY_diplomacy_lend_lease_strategies.txt

Code:
EAI_DIPLO_lend_lease_to_L20 = {
	enable = {
		NOT = {
			check_variable = {
				EAI_lend_lease_targets^20 = 0
			}
		}
	}
	abort_when_not_enabled = yes
	ai_strategy = {
		type = send_lend_lease_desire
		id = L20
		value = 5000
	} {
		type = support
		id = L20
		value = 5000
	} {
		type = diplo_action_desire
		id = L20
		target = lend_lease
		value = 2000
	}
}
### Entity: Modifier Reference
Construct: critical_receive_chance
Source: vanilla_docs
File: documentation/modifiers_documentation.md

Doc:
## critical_receive_chance

* Number with 1 decimal places
* **Categories**: naval, unit_leader, country
### Entity: AI Strategy
Component: HUN_heavy_tank_artillery
Constructs: has_war, has_tech
Source: game
File: common/ai_equipment/HUN_tank.txt

Code:
HUN_heavy_tank_artillery = {
	category = land
	blocked_for = {

	}
	available_for = {
		HUN
	}
	roles = {
		land_heavy_tank_artillery
	}
	priority = {
		factor = 500
	}
	heavy_tank_artillery_1 = {
		priority = {
			factor = 100
		}
		enable = {
			has_tech = interwar_artillery
		}
		history = yes
		target_variant = {
			match_value = 1000
			type = heavy_tank_artillery_chassis_1
			modules = {
				main_armament_slot = tank_medium_howitzer
				turret_type_slot = tank_heavy_fixed_superstructure_turret
				suspension_type_slot = tank_bogie_suspension
				armor_type_slot = tank_riveted_armor
				engine_type_slot = tank_diesel_engine
				special_type_slot_1 = empty
				special_type_slot_2 = empty
				special_type_slot_3 = empty
				special_type_slot_4 = empty
			}
			upgrades = {
				tank_nsb_engine_upgrade = 4
				tank_nsb_armor_upgrade = {
					base = 3
					modifier = {
						add = 1
						has_war = yes
					}
				}
			}
		}
		allowed_modules = {
			tank_medium_howitzer tank_heavy_fixed_superstructure_turret tank_bogie_suspension tank_riveted_armor tank_diesel_engine
		}
	}
	heavy_tank_artillery_2 = {
		priority = {
			factor = 200
		}
		enable = {
			has_tech = interwar_artillery
		}
		history = yes
		target_variant = {
			match_value = 1500
			type = heavy_tank_artillery_chassis_2
			modules = {
				main_armament_slot = tank_medium_howitzer_2
				turret_type_slot = tank_heavy_fixed_superstructure_turret
				suspension_type_slot = tank_bogie_suspension
				armor_type_slot = tank_riveted_armor
				engine_type_slot = tank_diesel_engine
				special_type_slot_1 = extra_ammo_storage
				special_type_slot_2 = empty
				special_type_slot_3 = empty
				special_type_slot_4 = empty
			}
			upgrades = {
				tank_nsb_engine_upgrade = 5
				tank_nsb_armor_upgrade = {
					base = 4
					modifier = {
						add = 1
						has_war = yes
					}
				}
			}
		}
		allowed_modules = {
			tank_medium_howitzer_2 tank_heavy_fixed_superstructure_turret tank_bogie_suspension tank_riveted_armor tank_diesel_engine extra_ammo_storage
		}
	}
	heavy_tank_artillery_3 = {
		priority = {
			factor = 200
		}
		enable = {
			has_tech = artillery5
		}
		history = yes
		target_variant = {
			match_value = 2000
			type = heavy_tank_artillery_chassis_3
			modules = {
				main_armament_slot = tank_heavy_howitzer
				turret_type_slot = tank_heavy_fixed_superstructure_turret
				suspension_type_slot = t
# ... (truncated)
### Entity: Scripted Effect
Component: SWI_make_helvetia_war
Constructs: limit, has_idea, swap_ideas, remove_idea, add_idea
Source: game
File: common/scripted_effects/SWI_scripted_effects.txt

Code:
SWI_make_helvetia_war = {
	if = {
		limit = {
			has_idea = SWI_spirit_of_helvetia_passive_peace
		}
		swap_ideas = {
			remove_idea = SWI_spirit_of_helvetia_passive_peace
			add_idea = SWI_spirit_of_helvetia_passive_war
		}
	} {
		limit = {
			has_idea = SWI_spirit_of_helvetia_defensive_peace
		}
		swap_ideas = {
			remove_idea = SWI_spirit_of_helvetia_defensive_peace
			add_idea = SWI_spirit_of_helvetia_defensive_war
		}
	} {
		limit = {
			has_idea = SWI_spirit_of_helvetia_aggressive_peace
		}
		swap_ideas = {
			remove_idea = SWI_spirit_of_helvetia_aggressive_peace
			add_idea = SWI_spirit_of_helvetia_aggressive_war
		}
	}
}
### Entity: National Focus
Tree: chl_focus
Component: CHL_artillery_f
Constructs: prerequisite, completion_reward, add_tech_bonus
Source: game
File: common/national_focus/r56_chile.txt

Code:
focus = {
	id = CHL_artillery_f
	icon = GFX_goal_generic_army_artillery2
	x = 8
	y = 2
	cost = 10
	prerequisite = {
		focus = CHL_infantry_focus
	}
	ai_will_do = {
		factor = 1
	}
	completion_reward = {
		add_tech_bonus = {
			name = infantry_artillery_bonus
			bonus = 1
			uses = 1
			category = artillery
		}
	}
	search_filters = {
		FOCUS_FILTER_RESEARCH
	}
}
### Entity: Character
Component: GER_hans_vogel
Source: game
File: common/characters/GER.txt

Code:
GER_hans_vogel = {
	name = GER_hans_vogel
	portraits = {
		civilian = {
			large = GFX_portrait_GER_hans_vogel
			small = GFX_portrait_GER_hans_vogel_small
		}
	}
}
### Entity: National Focus
Tree: swe_focus
Component: SWE_united_kingdoms_of_sweden_and_norway
Constructs: prerequisite, completion_reward, is_subject, is_subject_of
Source: game
File: common/national_focus/sweden.txt

Code:
focus = {
	id = SWE_united_kingdoms_of_sweden_and_norway
	icon = GFX_focus_SWE_united_kingdoms_of_norway_and_sweden
	prerequisite = {
		focus = SWE_narvik_crisis
	}
	x = 0
	y = 2
	relative_position_id = SWE_narvik_crisis
	cost = 10
	available = {
		NOR = {
			exists = yes
			is_subject = no
		}
	}
	bypass = {
		OR = {
			NOR = {
				is_subject_of = ROOT
			}
			is_subject = yes
		}
	}
	search_filters = {
		FOCUS_FILTER_ANNEXATION
	}
	completion_reward = {
		NOR = {
			country_event = {
				id = AAT_Sweden.53
				hours = 4
			}
		}
		custom_effect_tooltip = if_they_accept_tt
		effect_tooltip = {
			puppet = NOR
		}
	}
}