Losa10/PreTrain-HOI4-Modding-Assistant huggingface dataset:
### Entity: National Focus
Tree: cog_focus
Component: COG_invest_in_the_textile_industry
Constructs: prerequisite, limit, add_ideas, has_government, completion_reward, cancel_if_invalid, random_owned_controlled_state, is_core_of
Source: game
File: common/national_focus/congo.txt

Code:
focus = {
	id = COG_invest_in_the_textile_industry
	icon = GFX_focus_CHL_enlarge_the_textile_industries
	prerequisite = {
		focus = COG_the_nyim_of_kuba_focus
	}
	x = -1
	y = 1
	relative_position_id = COG_the_nyim_of_kuba_focus
	search_filters = {
		FOCUS_FILTER_INDUSTRY
	}
	cost = 10
	ai_will_do = {
		factor = 10
	}
	available = {
		has_government = neutrality
	}
	bypass = {

	}
	cancel_if_invalid = no
	continue_if_invalid = yes
	available_if_capitulated = no
	completion_reward = {
		random_owned_controlled_state = {
			limit = {
				is_core_of = ROOT
				free_building_slots = {
					building = industrial_complex
					size = > 1
					include_locked = yes
				}
			}
			add_extra_state_shared_building_slots = 2
			add_building_construction = {
				type = industrial_complex
				level = 2
				instant_build = yes
			}
		}
		custom_effect_tooltip = generic_skip_one_line_tt
		add_ideas = COG_traditional_kuba_textiles
	}
}
### Entity: National Focus
Tree: ger_focus
Component: GER_operation_tannenbaum
Constructs: prerequisite, limit, has_government, has_war_with, completion_reward, cancel_if_invalid, is_subject, has_guaranteed
Source: game
File: common/national_focus/germany.txt

Code:
focus = {
	id = GER_operation_tannenbaum
	icon = GFX_focus_attack_switzerland
	prerequisite = {
		focus = GER_war_with_france
	}
	mutually_exclusive = {
		focus = GER_the_swiss_gold
	}
	x = 1
	y = 1
	relative_position_id = GER_war_with_france
	cost = 10
	will_lead_to_war_with = SWI
	cancel_if_invalid = yes
	available = {
		is_subject = no
		NOT = {
			has_guaranteed = SWI
		} {
			has_non_aggression_pact_with = SWI
		}
		SWI = {
			exists = yes
			NOT = {
				is_ally_with = ROOT
			}
		}
	}
	ai_will_do = {
		factor = 10
		modifier = {
			factor = 0
			is_historical_focus_on = yes
		} {
			factor = 0
			OR = {
				has_government = democratic communism
			}
		}
	}
	search_filters = {
		FOCUS_FILTER_ANNEXATION
	}
	completion_reward = {
		if = {
			limit = {
				NOT = {
					has_war_with = SWI
				}
			}
			create_wargoal = {
				type = annex_everything
				target = SWI
				expire = 0
			}
		} {
			limit = {
				ITA = {
					OR = {
						is_in_faction_with = ROOT
						is_subject_of = ROOT
					}
				}
			}
			ITA = {
				add_state_claim = 846
			}
		}
		add_state_claim = 845 3 151 847
		else = {
			add_state_claim = 846
		}
		custom_effect_tooltip = generic_skip_one_line_tt
		add_timed_idea = {
			idea = GER_operation_tannenbaum_ns
			days = 180
		}
	}
}
### Entity: Character
Component: NIR_ncm
Source: game
File: common/characters/NIR.txt

Code:
NIR_ncm = {
	advisor = {
		slot = navy_chief
		idea_token = NIR_ncm
		allowed = {
			original_tag = NIR
		}
		traits = {
			navy_chief_maneuver_2
		}
		ai_will_do = {
			factor = 1.0
		}
	}
	portraits = {
		army = {
			small = GFX_idea_generic_navy_europe_3
		}
	}
}
### Entity: Decision
Component: COG_congo_integration_decisions
Constructs: has_completed_focus, has_dlc
Source: game
File: common/decisions/categories/COG_decision_categories.txt

Code:
COG_congo_integration_decisions = {
	icon = GFX_decision_category_saf_anti_colonialist_crusade
	priority = 50
	picture = GFX_decision_cat_picture_soviet_comecon
	visible_when_empty = no
	allowed = {
		original_tag = COG
	}
	visible = {
		has_dlc = Gotterdammerung
		has_completed_focus = COG_declaration_of_congolese_unity
	}
}
### Entity: Shared Focus
Tree: raj_focus
Component: RAJ_Establish_the_Planning_Commission
Constructs: shared_focus, has_completed_focus, limit, has_government, completion_reward, has_focus_autohide_rule_trigger_r56, has_focus_tree, allow_branch
Source: game
File: common/national_focus/r56_india_shared.txt

Code:
shared_focus = {
	id = RAJ_Establish_the_Planning_Commission
	icon = GFX_goal_generic_state_economy
	cost = 10
	mutually_exclusive = {
		focus = RAJ_Foster_Private_Investment RAJ_Reform_the_Colonial_Economy
	}
	x = 47
	y = 0
	offset = {
		x = -30
		y = 0
		trigger = {
			has_focus_autohide_rule_trigger_r56 = yes
			has_completed_focus = RAJ_Linlithgows_Reign
		}
	} {
		x = -10
		y = 0
		trigger = {
			has_focus_autohide_rule_trigger_r56 = yes
			has_completed_focus = RAJ_Provincial_Elections
		}
	} {
		x = -15
		y = 0
		trigger = {
			has_focus_autohide_rule_trigger_r56 = yes
			OR = {
				has_completed_focus = RAJ_Democracy_and_Socialism RAJ_India_United_under_Britain
			}
		}
	} {
		x = -20
		y = 0
		trigger = {
			has_focus_autohide_rule_trigger_r56 = yes
			has_completed_focus = RAJ_A_Society_of_All_Classes
		}
	} {
		x = -23
		y = 0
		trigger = {
			has_focus_tree = r56_indian_revolt_focus
		}
	} {
		x = -40
		y = 0
		trigger = {
			has_focus_tree = r56_india_generic
		}
	}
	search_filters = {
		FOCUS_FILTER_INDUSTRY
	}
	ai_will_do = {
		factor = 50
	}
	allow_branch = {
		if = {
			limit = {
				has_focus_autohide_rule_trigger_r56 = yes
			}
			NOT = {
				has_completed_focus = RAJ_India_United_under_Britain RAJ_Foster_Private_Investment
			}
		}
	}
	available = {
		if = {
			limit = {
				has_focus_tree = r56_india
			}
			OR = {
				has_completed_focus = RAJ_A_Society_of_All_Classes RAJ_Nehrus_Vision_for_India
			}
		}
		else = {
			OR = {
				has_government = communism democratic fascism
			}
		}
	}
	completion_reward = {
		mark_focus_tree_layout_dirty_r56 = yes
		random_owned_controlled_state = {
			limit = {
				NOT = {
					has_dynamic_modifier = {
						modifier = princely_state_mod
					}
				}
			}
			prioritize = {
				439 430
			}
			add_extra_state_shared_building_slots = 3
		} {
			limit = {
				NOT = {
					has_dynamic_modifier = {
						modifier = princely_state_mod
					}
				}
			}
			prioritize = {
				429 436
			}
			add_extra_state_shared_building_slots = 3
		} {
			limit = {
				NOT = {
					has_dynamic_modifier = {
						modifier = princely_state_mod
					}
				}
			}
			prioritize = {
				423 425 424
			}
			add_extra_state_shared_building_slots = 2
		} {
			limit = {
				NOT = {
					has_dynamic_modifier = {
						modifier = princely_state_mod
					}
				}
			}
			prioritize = {
				432 430
			}
			add_extra_state_shared_building
# ... (truncated)
### Entity: National Focus
Tree: aus_focus
Component: AUS_emergency_measaures
Constructs: prerequisite, completion_reward, add_timed_idea
Source: game
File: common/national_focus/austria.txt

Code:
focus = {
	id = AUS_emergency_measaures
	icon = GFX_focus_generic_national_security
	prerequisite = {
		focus = AUS_ban_dnsap
	} {
		focus = AUS_renounce_the_treaties
	}
	mutually_exclusive = {

	}
	x = 0
	y = 2
	relative_position_id = AUS_rally_the_people
	search_filters = {
		FOCUS_FILTER_INDUSTRY
	}
	cost = 10
	ai_will_do = {
		factor = 10
	}
	available = {

	}
	bypass = {

	}
	available_if_capitulated = no
	completion_reward = {
		add_timed_idea = {
			idea = AUS_emergency_measures
			days = 720
		}
	}
}
### Entity: National Focus
Tree: mal_focus
Component: MAL_the_workers_1
Constructs: prerequisite, completion_reward, swap_ideas, remove_idea, add_idea, create_corps_commander
Source: game
File: common/national_focus/malaysia.txt

Code:
focus = {
	id = MAL_the_workers_1
	icon = GFX_focus_AST_war_japan
	ai_will_do = {
		factor = 2
	}
	x = 25
	y = 3
	mutually_exclusive = {

	}
	prerequisite = {
		focus = MAL_the_workers
	}
	cost = 10
	available_if_capitulated = yes
	completion_reward = {
		swap_ideas = {
			remove_idea = MAL_political_idea
			add_idea = MAL_political_idea_communism_1
		}
		create_corps_commander = {
			name = Lim Bo Seng
			picture = Portrait_Lim_Bo_Seng.dds
			traits = {

			}
			skill = 3
			attack_skill = 2
			defense_skill = 1
			planning_skill = 3
			logistics_skill = 4
			id = 1115
		}
	}
	search_filters = {
		FOCUS_FILTER_MANPOWER
	}
}
### Entity: Military Industrial Organization
Component: generic_escort_ship_organization
Constructs: has_dlc, production_bonus, equipment_bonus, naval_speed
Source: game
File: common/military_industrial_organization/organizations/00_generic_organization.txt

Code:
generic_escort_ship_organization = {
	icon = GFX_idea_generic_naval_manufacturer_1
	allowed = {
		NOT = {
			OR = {
				original_tag = GER ENG SOV FRA ITA JAP USA BEL CAN SWE HUN CZE ROM YUG POR GRE TUR LAT EST RKH
			}
		} {
			OR = {
				original_tag = SPR SPA SPB SPC SPD
			}
		} {
			AND = {
				original_tag = POL
				OR = {
					has_dlc = Poland: United and Ready No Step Back
				}
			}
		} {
			AND = {
				OR = {
					original_tag = AST NZL RAJ
				}
				has_dlc = Together for Victory
			}
		} {
			AND = {
				OR = {
					original_tag = CHI PRC MAN SHX XSM GXC YUN SIK MEN
				}
				has_dlc = Waking the Tiger
			}
		} {
			AND = {
				OR = {
					original_tag = MEX HOL
				}
				has_dlc = Man the Guns
			}
		} {
			AND = {
				original_tag = BUL
				has_dlc = Battle for the Bosporus
			}
		} {
			AND = {
				OR = {
					original_tag = EST LAT
				}
				has_dlc = No Step Back
			}
		} {
			AND = {
				OR = {
					original_tag = ETH SWI
				}
				has_dlc = By Blood Alone
			}
		} {
			AND = {
				OR = {
					original_tag = FIN NOR DEN SWE ICE
				}
				has_dlc = Arms Against Tyranny
			}
		} {
			AND = {
				OR = {
					original_tag = BRA CHL ARG
				}
				has_dlc = Trial of Allegiance
			}
		} {
			AND = {
				OR = {
					original_tag = AUS COG
				}
				has_dlc = Gotterdammerung
			}
		} {
			AND = {
				OR = {
					original_tag = AFG PER IRQ
				}
				has_dlc = Graveyard of Empires
			}
		} {
			AND = {
				OR = {
					original_tag = PHI SND HBC XIC GDC SIC NXM GSM KHM
				}
				has_dlc = No Compromise, No Surrender
			}
		} {
			AND = {
				OR = {
					original_tag = INS SIA
				}
				has_dlc = Thunder at Our Gates
			}
		}
	}
	equipment_type = {
		screen_ship
	}
	research_categories = {
		mio_cat_tech_all_screen_ship_and_modules
	}
	tree_header_text = {
		text = mio_header_systems
		x = 1
	} {
		text = mio_header_weapons
		x = 5
	}
	initial_trait = {
		name = generic_mio_initial_trait_escort_fleet
		organization_modifier = {
			military_industrial_organization_research_bonus = 0.05
		}
		production_bonus = {
			production_capacity_factor = 0.05
		}
	}
	trait = {
		token = generic_mio_trait_submarine_hunters
		name = generic_mio_trait_submarine_hunters
		icon = GFX_generic_mio_trait_icon_sub_attack
		position = {
			x = 1
			y = 0
		}
		equipment_bonus = {
			sub_detection = 0.05
			sub_attack = 0.05
		}
	} {
		token = generic_mio_trait_high_speed_min
# ... (truncated)
### Entity: Scripted Effect
Component: EAI_PR_STRATEGIES_SOV
Constructs: has_completed_focus, has_war, limit, set_temp_variable, has_tech, is_researching_technology, has_opinion_modifier, add_to_array
Source: game
File: common/scripted_effects/EAI_RESEARCH_PRIORITY_strategies.txt

Code:
EAI_PR_STRATEGIES_SOV = {
	if = {
		limit = {
			OR = {
				EAI_LARM_tech_focus = yes
				EAI_MARM_tech_focus = yes
				EAI_HARM_tech_focus = yes
			}
			EAI_STRATEGY_CHL_mass_infantry_prioritize_tanks = yes
		}
		set_temp_variable = {
			prio_cat = @PR_TOP_PRIORITY
		}
		multiply_temp_variable = {
			prio_cat = 2
		}
		if = {
			limit = {
				EAI_LARM_tech_focus = yes
				NOT = {
					has_tech = advanced_light_tank_chassis
					is_researching_technology = advanced_light_tank_chassis
				}
			}
			if = {
				limit = {
					has_opinion_modifier = sov_ger_treaty
				}
				add_to_array = {
					EAI_priority_research_block_techs = token:armor_tech_1
				} {
					EAI_priority_research_block_techs = token:armor_tech_2
				} {
					EAI_priority_research_block_techs = token:engine_tech_1
				} {
					EAI_priority_research_block_techs = token:engine_tech_2
				}
			} {
				limit = {
					set_temp_variable = {
						_prio_tech = token:improved_light_tank_chassis
					} {
						_prio_val = prio_cat
					}
					OR = {
						date = > 1938.1.1
						has_war = yes
					}
				}
				EAI_PR_add_to_priority_research_queue = yes
			} {
				limit = {
					set_temp_variable = {
						_prio_tech = token:advanced_light_tank_chassis
					} {
						_prio_val = prio_cat
					}
					OR = {
						date = > 1940.6.1
						has_opinion_modifier = sov_ger_treaty
					}
				}
				EAI_PR_add_to_priority_research_queue = yes
			}
		} {
			limit = {
				EAI_MARM_tech_focus = yes
				NOT = {
					has_tech = improved_medium_tank_chassis
					is_researching_technology = improved_medium_tank_chassis
				}
			}
			if = {
				limit = {
					has_opinion_modifier = sov_ger_treaty
				}
				add_to_array = {
					EAI_priority_research_block_techs = token:armor_tech_1
				} {
					EAI_priority_research_block_techs = token:armor_tech_2
				} {
					EAI_priority_research_block_techs = token:engine_tech_1
				} {
					EAI_priority_research_block_techs = token:engine_tech_2
				}
			} {
				limit = {
					set_temp_variable = {
						_prio_tech = token:basic_medium_tank_chassis
					} {
						_prio_val = prio_cat
					}
					OR = {
						date = > 1938.1.1
						has_war = yes
					}
				}
				EAI_PR_add_to_priority_research_queue = yes
			} {
				limit = {
					set_temp_variable = {
						_prio_tech = token:improved_medium_tank_chassis
					} {
						_prio_val = prio_cat
					}
					OR = {
						date = > 1938.6.
# ... (truncated)
### Entity: Character
Component: PNG_coi
Source: game
File: common/characters/PNG.txt

Code:
PNG_coi = {
	advisor = {
		slot = political_advisor
		idea_token = PNG_coi
		allowed = {
			original_tag = PNG
		}
		traits = {
			captain_of_industry
		}
	}
	portraits = {
		army = {
			small = GFX_idea_generic_political_advisor_african_1
		}
	}
}
### Entity: Idea
Component: KOR_ryu_kong_su
Constructs: research_bonus
Source: game
File: common/ideas/korea.txt

Code:
KOR_ryu_kong_su = {
	picture = generic_tank_manufacturer_3
	allowed = {
		or = {
			original_tag = KOR NKR
		}
	}
	available = {
		controls_state = 918
	}
	research_bonus = {
		armor = 0.15
	}
	traits = {
		fast_tank_manufacturer
	}
}
### Entity: Modding Documentation
Construct: days_mission_timeout
Source: vanilla_docs
File: documentation/dynamic_variables_documentation.md

Doc:
### days_mission_timeout
* description: timeout in days for a specific timed mission, mission type token is defined in target. example: days_mission_timeout@GER_mefo_bills_mission
### Entity: National Focus
Tree: pak_focus
Component: PAK_Dicipline_Training
Constructs: prerequisite, completion_reward, every_army_leader, add_logistics
Source: game
File: common/national_focus/pakistan.txt

Code:
focus = {
	id = PAK_Dicipline_Training
	icon = GFX_goal_control_army
	cost = 10
	prerequisite = {
		focus = PAK_Radically_Different_Tactics PAK_Fall_back_on_the_Great_War
	}
	x = 46
	y = 4
	ai_will_do = {
		factor = 1
	}
	completion_reward = {
		every_army_leader = {
			add_logistics = 1
		}
	}
}
### Entity: Event
Component: AAT_Sweden_flashpoints.36
Constructs: is_triggered_only, ai_chance
Source: game
File: events/AAT_Sweden.txt

Code:
country_event = {
	id = AAT_Sweden_flashpoints.36
	title = AAT_Sweden_flashpoints.36.t
	desc = AAT_Sweden_flashpoints.36.desc
	picture = GFX_report_event_german_reichstag_gathering
	is_triggered_only = yes
	option = {
		name = AAT_Sweden_flashpoints.36.a
		ai_chance = {
			base = 10
		}
	}
}
### Entity: Modifier Reference
Component: KMT_the_kuomintang_natl_revolution
Constructs: research_speed_factor, stability_factor, war_support_factor, remove_trigger, neutrality_drift, democratic_drift, communism_drift, fascism_drift
Source: game
File: common/dynamic_modifiers/r56_china_and_co_dm.txt

Code:
KMT_the_kuomintang_natl_revolution = {
	remove_trigger = {

	}
	enable = {
		always = yes
	}
	icon = GFX_idea_chi_warlord_integration4
	political_power_factor = KMT_pp
	drift_defence_factor = 0.1
	neutrality_drift = KMT_n
	democratic_drift = KMT_d
	communism_drift = KMT_c
	fascism_drift = KMT_f
	stability_factor = KMT_stab
	war_support_factor = KMT_ws
	consumer_goods_factor = KMT_cons
	production_factory_max_efficiency_factor = KMT_cap
	research_speed_factor = KMT_r
	production_factory_start_efficiency_factor = KMT_base
	army_core_defence_factor = KMT_cdef
	army_core_attack_factor = KMT_catt
}
### Entity: Idea
Component: EAI_DD_15/light_tank_destroyer_chassis_bonus
Constructs: equipment_bonus, build_cost_ic
Source: game
File: common/ideas/EAI_difficulty_ideas.txt

Code:
EAI_DD_15/light_tank_destroyer_chassis_bonus = {
	allowed = {
		always = no
	}
	equipment_bonus = {
		light_tank_destroyer_chassis = {
			build_cost_ic = -0.375
			instant = yes
		}
	}
}
### Entity: National Focus
Tree: cze_focus
Component: CZE_handle_the_communist_power_grab
Constructs: prerequisite, has_government, has_country_flag, completion_reward, allow_branch, is_subject_of
Source: game
File: common/national_focus/r56_czechoslovakia.txt

Code:
focus = {
	id = CZE_handle_the_communist_power_grab
	icon = GFX_focus_usa_voter_registration_act
	x = 2
	y = 2
	relative_position_id = CZE_boycott_press_law
	cost = 10
	allow_branch = {
		has_country_flag = yalta_unlock_focuses
	}
	prerequisite = {
		focus = CZE_boycott_press_law
	}
	mutually_exclusive = {
		focus = CZE_strengthen_communism
	}
	available = {
		is_subject_of = SOV
		NOT = {
			has_government = communism
		}
	}
	search_filters = {
		FOCUS_FILTER_POLITICAL
	}
	completion_reward = {
		country_event = cold_war.6
	}
}
### Entity: Scripted Effect
Component: IRQ_create_arab_free_legion_div
Constructs: division_template, create_unit
Source: game
File: common/scripted_effects/IRQ_scripted_effects.txt

Code:
IRQ_create_arab_free_legion_div = {
	create_unit = {
		division = division_template = "Arab Free Legion" start_experience_factor = 0.05 start_equipment_factor = 1
		owner = IRQ
		count = 1
	}
}
### Entity: Idea
Component: NIU_memories_from_ww1
Constructs: war_support_factor, has_army_size, removal_cost, conscription_factor
Source: game
File: common/ideas/niue.txt

Code:
NIU_memories_from_ww1 = {
	picture = ENG_the_war_to_end_all_wars
	allowed = {
		always = yes
	}
	allowed_civil_war = {
		always = yes
	}
	cancel = {
		has_army_size = {
			size = > 0
		}
	}
	removal_cost = -1
	modifier = {
		conscription_factor = -0.5
		war_support_factor = -0.35
	}
}
### Entity: Idea
Component: AUS_streamline_cruiser_production_idea
Constructs: removal_cost, equipment_bonus, build_cost_ic
Source: game
File: common/ideas/austria.txt

Code:
AUS_streamline_cruiser_production_idea = {
	allowed = {
		tag = AUS
	}
	removal_cost = -1
	picture = AUS_streamline_cruiser_production_idea
	equipment_bonus = {
		ship_hull_cruiser = {
			build_cost_ic = -0.025
			instant = yes
		}
		ship_hull_heavy = {
			build_cost_ic = -0.025
			instant = yes
		}
	}
}
### Entity: Event
Component: BBA_ethiopia_exile_events.51
Constructs: is_triggered_only, ai_chance, add_opinion_modifier
Source: game
File: events/BBA_Ethiopia.txt

Code:
country_event = {
	id = BBA_ethiopia_exile_events.51
	title = BBA_ethiopia_exile_events.51.t
	desc = BBA_ethiopia_exile_events.51.desc
	is_triggered_only = yes
	picture = GFX_report_event_german_volunteers
	option = {
		name = BBA_ethiopia_exile_events.51.a
		ai_chance = {
			base = 10
		}
		add_opinion_modifier = {
			target = GER
			modifier = ETH_false_flag_border_incident
		}
	}
}
### Entity: Event
Component: SEA_japan_foreign_policy.98
Constructs: is_triggered_only, add_ideas, add_opinion_modifier
Source: game
File: events/SEA_Japan.txt

Code:
country_event = {
	id = SEA_japan_foreign_policy.98
	title = SEA_japan_foreign_policy.98.t
	desc = SEA_japan_foreign_policy.98.desc
	picture = GFX_report_event_generic_read_write
	is_triggered_only = yes
	option = {
		name = SEA_japan_foreign_policy.98.a
		effect_tooltip = {
			FROM = {
				add_ideas = JAP_customs_union_trade_idea
				add_opinion_modifier = {
					target = ROOT
					modifier = JAP_trading_partners
				}
			}
		}
	}
}
### Entity: National Focus
Tree: dnz_focus
Component: DNZ_modernize_the_police
Constructs: add_equipment_to_stockpile, add_stability, completion_reward, add_tech_bonus
Source: game
File: common/national_focus/Danzig.txt

Code:
focus = {
	id = DNZ_modernize_the_police
	icon = GFX_goal_generic_secret_police
	x = 3
	y = 0
	cost = 10
	completion_reward = {
		add_stability = 0.05
		add_equipment_to_stockpile = {
			type = infantry_equipment
			amount = 100
			producer = GER
		}
		custom_effect_tooltip = generic_skip_one_line_tt
		add_tech_bonus = {
			name = mp_tech_bonus_name
			bonus = 1
			uses = 1
			category = military_police_tech
		}
	}
	search_filters = {
		FOCUS_FILTER_RESEARCH FOCUS_FILTER_STABILITY
	}
}
### Entity: National Focus
Tree: lit_focus
Component: LIT_ventoji_shipyards
Constructs: prerequisite, completion_reward, is_owned_by, has_full_control_of_state, has_tech, add_extra_state_shared_building_slots, add_building_construction
Source: game
File: common/national_focus/r56_lithuania.txt

Code:
focus = {
	id = LIT_ventoji_shipyards
	icon = GFX_goal_generic_construct_naval_dockyard
	prerequisite = {
		focus = LIT_expansion_of_naval_facilities
	}
	mutually_exclusive = {
		focus = LIT_klaipda_shipyards
	}
	x = 1
	y = 1
	relative_position_id = LIT_expansion_of_naval_facilities
	cost = 15
	available_if_capitulated = yes
	ai_will_do = {
		factor = 2
	}
	available = {
		189 = {
			is_owned_by = LIT
		}
		has_full_control_of_state = 189
		has_tech = advanced_machine_tools
	}
	completion_reward = {
		189 = {
			add_extra_state_shared_building_slots = 2
			add_building_construction = {
				type = dockyard
				level = 2
				instant_build = yes
			} {
				type = naval_base
				level = 1
				province = 6314
				instant_build = yes
			} {
				type = infrastructure
				level = 2
				instant_build = yes
			}
		}
	}
	search_filters = {
		FOCUS_FILTER_INDUSTRY
	}
}
### Entity: AI Strategy
Component: PRC_TSR_historical_plan
Constructs: has_government, has_country_flag, is_major, has_dlc, is_historical_focus_on, has_game_rule
Source: game
File: common/ai_strategy_plans/PRC_TSR_historical_strategy_plan.txt

Code:
PRC_TSR_historical_plan = {
	name = Communist China historical plan No Compromise, No Surrender
	desc = Historical behavior for Communist China
	allowed = {
		original_tag = PRC
		has_dlc = No Compromise, No Surrender
	}
	enable = {
		OR = {
			AND = {
				is_historical_focus_on = yes
				has_game_rule = {
					rule = PRC_ai_behavior
					option = DEFAULT
				}
			}
			has_country_flag = PRC_AI_RANDOM_HISTORICAL
			has_game_rule = {
				rule = PRC_ai_behavior
				option = HISTORICAL
			}
		}
	}
	abort = {
		has_game_rule = {
			rule = PRC_ai_behavior
			option = DEFAULT
		}
		OR = {
			JAP = {
				has_government = communism
			}
			USA = {
				has_government = communism
			}
			NOT = {
				any_other_country = {
					has_government = communism
					is_major = yes
				}
			}
		}
	}
	ai_national_focuses = {
		PRC_put_an_end_to_the_sufan PRC_know_the_enemy PRC_long_march_to_recovery PRC_the_westward_expedition PRC_rally_the_industry PRC_expedite_land_revolution PRC_reestablish_the_state_bank PRC_master_the_terrain PRC_red_army_reborn PRC_develop_yanan_soviet PRC_CSCEC_mils PRC_burn_the_paper_tigers PRC_usurp_control_over_yanan PRC_eight_points_for_attention PRC_guide_central_committee PRC_rally_the_peasants PRC_leadership_of_mao PRC_on_guerilla_warfare PRC_request_for_aid PRC_ban_special_goods_trade PRC_establish_friendly_bases PRC_asymmetric_warfare PRC_propaganda_efforts PRC_three_rules_of_discipline PRC_secure_the_peoples_support PRC_raid_weapon_depots PRC_dissent_in_the_united_front PRC_empower_the_guerillas PRC_rural_recruitment PRC_holding_half_the_sky PRC_strengthen_the_central_party_school PRC_yanan_rectification_movement PRC_establish_yanan_university PRC_form_central_social_affairs_department PRC_hundred_regiments_offensive PRC_equipment_from_copper_coins PRC_promote_paper_bills PRC_to_steal_an_army PRC_rural_survey PRC_great_production_movement PRC_agricultural_reform PRC_revolutionary_war_of_the_masses PRC_lessons_learnt PRC_restore_territorial_integrity PRC_prepare_for_the_inevitable PRC_towards_one_china PRC_enforce_maoism PRC_the_peoples_republic PRC_industrialization_efforts
	}
	research = {

	}
	ideas = {

	}
	ai_strategy = {
		type = alliance
		id = JAP
		value = -500
	}
	weight = {
		factor = 1.0
		modifier = {
			factor = 1.0
		}
	}
	focus_factors = {
		PRC_peaceful_reunification = 0
		PRC_reform_the_republic = 0
		PRC_asian_democratic_union 
# ... (truncated)