add_namespace = ASGA_SOV

country_event = {		####	start event
	id = ASGA_SOV.1
	title = ASGA_SOV.1.title
	desc = ASGA_SOV.1.desc
	picture = GFX_report_event_generic_army

	fire_only_once = yes
	
	trigger = {
		tag = SOV
		SOV = {
			or = {
				has_completed_focus = SOV_the_path_of_marxism_leninism
				has_completed_focus = SOV_beaten_but_not_defeated
				date > 1936.1.1
			}
		}
	}

	option = {		####	more general_more good
		name = ASGA_SOV.1.a

			 ######			##############		####		####	####		####
			########		####		####	#####	   #####	  ####	  ####
		   ####	 ####		####	   ####		######	  ######		###	 ###
		  ############		############		#######	 #######		  ####
		 ####	   #### 	####	  ####		#### ###### ####		  ####
		####		####	####		####	####  ####	####		  ####

		add_corps_commander_role = {		####	ASGA_SOV_afanasy_beloborodov
			character = ASGA_SOV_afanasy_beloborodov
			####	traits = { empty }
			skill = 3
			attack_skill = 4
			defense_skill = 2
			planning_skill = 3
			logistics_skill = 1
		}
		add_corps_commander_role = {		####	ASGA_SOV_aleksey_a_grechkin
			character = ASGA_SOV_aleksey_a_grechkin
			traits = { infantry_leader }
			skill = 2
			attack_skill = 2
			defense_skill = 1
			planning_skill = 2
			logistics_skill = 3
		}
		add_corps_commander_role = {		####	ASGA_SOV_aleksey_s_zhadov
			character = ASGA_SOV_aleksey_s_zhadov
			traits = { winter_specialist }
			skill = 2
			attack_skill = 2
			defense_skill = 2
			planning_skill = 3
			logistics_skill = 1
		}
		add_corps_commander_role = {		####	ASGA_SOV_aleksandr_kazankin
			character = ASGA_SOV_aleksandr_kazankin
			traits = { commando }
			skill = 2
			attack_skill = 1
			defense_skill = 2
			planning_skill = 1
			logistics_skill = 2
		}
		add_corps_commander_role = {		####	ASGA_SOV_aleksey_inauri
			character = ASGA_SOV_aleksey_inauri
			traits = { cavalry_leader }
			skill = 3
			attack_skill = 3
			defense_skill = 2
			planning_skill = 2
			logistics_skill = 2
		}
		add_corps_commander_role = {		####	ASGA_SOV_andrey_getman
			character = ASGA_SOV_andrey_getman
			traits = { panzer_leader brilliant_strategist war_hero }
			skill = 3
			attack_skill = 3
			defense_skill = 3
			planning_skill = 2
			logistics_skill = 1
		}
		add_corps_commander_role = {		####	ASGA_SOV_andrey_kravchenko
			character = ASGA_SOV_andrey_kravchenko
			traits = { panzer_leader trickster }
			skill = 3
			attack_skill = 2
			defense_skill = 3
			planning_skill = 1
			logistics_skill = 3
		}
		add_corps_commander_role = {		####	ASGA_SOV_arkady_yermakov
			character = ASGA_SOV_arkady_yermakov
			traits = { trait_reckless }
			skill = 3
			attack_skill = 4
			defense_skill = 1
			planning_skill = 2
			logistics_skill = 2
		}
		add_corps_commander_role = {		####	ASGA_SOV_daniil_kazakevich
			character = ASGA_SOV_daniil_kazakevich
			traits = { infantry_officer }
			skill = 3
			attack_skill = 3
			defense_skill = 3
			planning_skill = 1
			logistics_skill = 2
		}
		add_corps_commander_role = {		####	ASGA_SOV_dmitry_dryomin
			character = ASGA_SOV_dmitry_dryomin
			####	traits = { empty }
			skill = 2
			attack_skill = 2
			defense_skill = 2
			planning_skill = 1
			logistics_skill = 1
		}
		add_corps_commander_role = {		####	ASGA_SOV_dmitry_karbyshev
			character = ASGA_SOV_dmitry_karbyshev
			traits = { war_hero trait_engineer }
			skill = 2
			attack_skill = 3
			defense_skill = 1
			planning_skill = 3
			logistics_skill = 1
		}
		add_corps_commander_role = {		####	ASGA_SOV_filipp_rudkin
			character = ASGA_SOV_filipp_rudkin
			####	traits = { empty }
			skill = 1
			attack_skill = 1
			defense_skill = 2
			planning_skill = 1
			logistics_skill = 2
		}
		add_corps_commander_role = {		####	ASGA_SOV_frants_perkhorovich
			character = ASGA_SOV_frants_perkhorovich
			traits = { inflexible_strategist }
			skill = 3
			attack_skill = 3
			defense_skill = 3
			planning_skill = 2
			logistics_skill = 2
		}
		add_corps_commander_role = {		####	ASGA_SOV_fyodor_tolbukhin
			character = ASGA_SOV_fyodor_tolbukhin
			traits = { war_hero trait_cautious }
			skill = 2
			attack_skill = 2
			defense_skill = 3
			planning_skill = 2
			logistics_skill = 2
		}
		add_corps_commander_role = {		####	ASGA_SOV_german_tarasov
			character = ASGA_SOV_german_tarasov
			traits = { trait_reckless }
			skill = 1
			attack_skill = 1
			defense_skill = 2
			planning_skill = 1
			logistics_skill = 1
		}
		add_corps_commander_role = {		####	ASGA_SOV_amazasp_babadzhanian
			character = ASGA_SOV_amazasp_babadzhanian
			traits = { trickster brilliant_strategist }
			skill = 3
			attack_skill = 3
			defense_skill = 2
			planning_skill = 3
			logistics_skill = 1
		}
		add_corps_commander_role = {		####	ASGA_SOV_iogan_y_lombak
			character = ASGA_SOV_iogan_y_lombak
			####	traits = { empty }
			skill = 2
			attack_skill = 1
			defense_skill = 2
			planning_skill = 1
			logistics_skill = 2
		}
		add_corps_commander_role = {		####	ASGA_SOV_iosif_apanasenko
			character = ASGA_SOV_iosif_apanasenko
			####	traits = { empty }
			skill = 2
			attack_skill = 2
			defense_skill = 1
			planning_skill = 2
			logistics_skill = 1
		}
		add_corps_commander_role = {		####	ASGA_SOV_ivan_bagramyan
			character = ASGA_SOV_ivan_bagramyan
			traits = { organizer trickster }
			skill = 4
			attack_skill = 3
			defense_skill = 3
			planning_skill = 4
			logistics_skill = 2
		}
		add_corps_commander_role = {		####	ASGA_SOV_ivan_bezugly
			character = ASGA_SOV_ivan_bezugly
			traits = { commando paratrooper }
			skill = 2
			attack_skill = 3
			defense_skill = 2
			planning_skill = 3
			logistics_skill = 2
		}
		add_corps_commander_role = {		####	ASGA_SOV_ivan_bogdanov
			character = ASGA_SOV_ivan_bogdanov
			####	traits = { empty }
			skill = 1
			attack_skill = 1
			defense_skill = 1
			planning_skill = 2
			logistics_skill = 1
		}
		add_corps_commander_role = {		####	ASGA_SOV_ivan_boldin
			character = ASGA_SOV_ivan_boldin
			traits = { trait_reckless }
			skill = 2
			attack_skill = 1
			defense_skill = 3
			planning_skill = 1
			logistics_skill = 3
		}
		add_corps_commander_role = {		####	ASGA_SOV_ivan_burmakov
			character = ASGA_SOV_ivan_burmakov
			traits = { winter_specialist scavenger }
			skill = 3
			attack_skill = 3
			defense_skill = 2
			planning_skill = 3
			logistics_skill = 4
		}
		add_corps_commander_role = {		####	ASGA_SOV_ivan_galanin
			character = ASGA_SOV_ivan_galanin
			####	traits = { empty }
			skill = 2
			attack_skill = 2
			defense_skill = 2
			planning_skill = 1
			logistics_skill = 3
		}
		add_corps_commander_role = {		####	ASGA_SOV_ivan_lyudnikov
			character = ASGA_SOV_ivan_lyudnikov
			traits = { trickster winter_expert infantry_officer }
			skill = 3
			attack_skill = 4
			defense_skill = 2
			planning_skill = 3
			logistics_skill = 1
		}
		add_corps_commander_role = {		####	ASGA_SOV_ivan_nikitich_konev
			character = ASGA_SOV_ivan_nikitich_konev
			####	traits = { empty }
			skill = 4
			attack_skill = 4
			defense_skill = 3
			planning_skill = 1
			logistics_skill = 2
		}
		add_corps_commander_role = {		####	ASGA_SOV_ivan_tyulenev
			character = ASGA_SOV_ivan_tyulenev
			traits = { old_guard war_hero }
			skill = 2
			attack_skill = 2
			defense_skill = 1
			planning_skill = 3
			logistics_skill = 1
		}
		add_corps_commander_role = {		####	ASGA_SOV_ivan_zakharin
			character = ASGA_SOV_ivan_zakharin
			traits = { infantry_leader }
			skill = 3
			attack_skill = 2
			defense_skill = 4
			planning_skill = 2
			logistics_skill = 3
		}
		add_corps_commander_role = {		####	ASGA_SOV_konstantin_koroteyev
			character = ASGA_SOV_konstantin_koroteyev
			traits = { infantry_leader winter_specialist }
			skill = 3
			attack_skill = 3
			defense_skill = 3
			planning_skill = 2
			logistics_skill = 3
		}
		add_corps_commander_role = {		####	ASGA_SOV_kuzma_grebennik
			character = ASGA_SOV_kuzma_grebennik
			traits = { war_hero organizer trait_engineer }
			skill = 3
			attack_skill = 3
			defense_skill = 2
			planning_skill = 3
			logistics_skill = 2
		}
		add_corps_commander_role = {		####	ASGA_SOV_lev_mekhlis
			character = ASGA_SOV_lev_mekhlis
			####	traits = { empty }
			skill = 1
			attack_skill = 1
			defense_skill = 1
			planning_skill = 2
			logistics_skill = 1
		}
		add_corps_commander_role = {		####	ASGA_SOV_maksim_antonyuk
			character = ASGA_SOV_maksim_antonyuk
			traits = { organizer }
			skill = 3
			attack_skill = 2
			defense_skill = 3
			planning_skill = 3
			logistics_skill = 3
		}
		add_corps_commander_role = {		####	ASGA_SOV_mikhail_katukov
			character = ASGA_SOV_mikhail_katukov
			traits = { winter_specialist panzer_leader }
			skill = 3
			attack_skill = 3
			defense_skill = 2
			planning_skill = 1
			logistics_skill = 3
		}
		add_corps_commander_role = {		####	ASGA_SOV_mikhail_petrov
			character = ASGA_SOV_mikhail_petrov
			traits = { winter_specialist panzer_leader }
			skill = 2
			attack_skill = 1
			defense_skill = 3
			planning_skill = 2
			logistics_skill = 1
		}
		add_corps_commander_role = {		####	ASGA_SOV_mikhail_tikhonov
			character = ASGA_SOV_mikhail_tikhonov
			traits = { infantry_leader trait_reckless }
			skill = 3
			attack_skill = 3
			defense_skill = 4
			planning_skill = 2
			logistics_skill = 2
		}
		add_corps_commander_role = {		####	ASGA_SOV_mikhail_yefremov
			character = ASGA_SOV_mikhail_yefremov
			traits = { infantry_leader trait_reckless }
			skill = 2
			attack_skill = 2
			defense_skill = 3
			planning_skill = 1
			logistics_skill = 2
		}
		add_corps_commander_role = {		####	ASGA_SOV_nikifor_khoruzhenko
			character = ASGA_SOV_nikifor_khoruzhenko
			traits = { career_officer skilled_staffer }
			skill = 3
			attack_skill = 2
			defense_skill = 3
			planning_skill = 2
			logistics_skill = 2
		}
		add_corps_commander_role = {		####	ASGA_SOV_nikolay_mishchenko
			character = ASGA_SOV_nikolay_mishchenko
			####	traits = { empty }
			skill = 2
			attack_skill = 2
			defense_skill = 2
			planning_skill = 1
			logistics_skill = 1
		}
		add_corps_commander_role = {		####	ASGA_SOV_pavel_v_mironov
			character = ASGA_SOV_pavel_v_mironov
			traits = { winter_specialist infantry_officer }
			skill = 3
			attack_skill = 3
			defense_skill = 2
			planning_skill = 3
			logistics_skill = 2
		}
		add_corps_commander_role = {		####	ASGA_SOV_pavel_batov
			character = ASGA_SOV_pavel_batov
			traits = { war_hero trait_reckless brilliant_strategist }
			skill = 4
			attack_skill = 3
			defense_skill = 3
			planning_skill = 1
			logistics_skill = 2
		}
		add_corps_commander_role = {		####	ASGA_SOV_pavel_lagutin
			character = ASGA_SOV_pavel_lagutin
			####	traits = { empty }
			skill = 3
			attack_skill = 2
			defense_skill = 2
			planning_skill = 3
			logistics_skill = 4
		}
		add_corps_commander_role = {		####	ASGA_SOV_robert_brichenok
			character = ASGA_SOV_robert_brichenok
			traits = { bearer_of_artillery }
			skill = 2
			attack_skill = 1
			defense_skill = 3
			planning_skill = 1
			logistics_skill = 2
		}
		add_corps_commander_role = {		####	ASGA_SOV_sergey_galadzhev
			character = ASGA_SOV_sergey_galadzhev
			traits = { politically_connected }
			skill = 3
			attack_skill = 3
			defense_skill = 3
			planning_skill = 3
			logistics_skill = 3
		}
		add_corps_commander_role = {		####	ASGA_SOV_stepan_guryev
			character = ASGA_SOV_stepan_guryev
			traits = { trait_reckless }
			skill = 2
			attack_skill = 2
			defense_skill = 1
			planning_skill = 2
			logistics_skill = 1
		}
		add_corps_commander_role = {		####	ASGA_SOV_vasily_glazunov
			character = ASGA_SOV_vasily_glazunov
			traits = { commando }
			skill = 4
			attack_skill = 4
			defense_skill = 2
			planning_skill = 2
			logistics_skill = 4
		}
		add_corps_commander_role = {		####	ASGA_SOV_vasily_glagolev
			character = ASGA_SOV_vasily_glagolev
			traits = { winter_specialist }
			skill = 3
			attack_skill = 3
			defense_skill = 1
			planning_skill = 1
			logistics_skill = 3
		}
		add_corps_commander_role = {		####	ASGA_SOV_vasily_kopchov
			character = ASGA_SOV_vasily_kopchov
			traits = { panzer_leader harsh_leader trait_reckless }
			skill = 3
			attack_skill = 4
			defense_skill = 2
			planning_skill = 1
			logistics_skill = 3
		}
		add_corps_commander_role = {		####	ASGA_SOV_vasily_margelov
			character = ASGA_SOV_vasily_margelov
			traits = { trait_reckless trickster inflexible_strategist }
			skill = 3
			attack_skill = 3
			defense_skill = 4
			planning_skill = 1
			logistics_skill = 3
		}
		add_corps_commander_role = {		####	ASGA_SOV_viktor_tsyganov
			character = ASGA_SOV_viktor_tsyganov
			traits = { old_guard inflexible_strategist }
			skill = 1
			attack_skill = 1
			defense_skill = 2
			planning_skill = 2
			logistics_skill = 1
		}
		add_corps_commander_role = {		####	ASGA_SOV_viktor_zholudev
			character = ASGA_SOV_viktor_zholudev
			traits = { trait_reckless trickster guerilla_fighter }
			skill = 3
			attack_skill = 3
			defense_skill = 2
			planning_skill = 1
			logistics_skill = 2
		}

		hidden_effect = {	####	set_character/unit_leader flag for civil war
			ASGA_SOV_afanasy_beloborodov = 	{ 
				set_character_flag = ASGA_SOV_additional_generals_flag
			}
			ASGA_SOV_aleksey_a_grechkin = 	{
				set_character_flag = ASGA_SOV_additional_generals_flag
			}
			ASGA_SOV_aleksey_s_zhadov = 	{
				set_character_flag = ASGA_SOV_additional_generals_flag
			}
			ASGA_SOV_aleksandr_kazankin = 	{
				set_character_flag = ASGA_SOV_additional_generals_flag
			}
			ASGA_SOV_aleksey_inauri = 		{
				set_character_flag = ASGA_SOV_additional_generals_flag
			}
			ASGA_SOV_andrey_getman = 		{
				set_character_flag = ASGA_SOV_additional_generals_flag
			}
			ASGA_SOV_andrey_kravchenko = 	{
				set_character_flag = ASGA_SOV_additional_generals_flag
			}
			ASGA_SOV_arkady_yermakov = 		{
				set_character_flag = ASGA_SOV_additional_generals_flag
			}
			ASGA_SOV_daniil_kazakevich = 	{
				set_character_flag = ASGA_SOV_additional_generals_flag
			}
			ASGA_SOV_dmitry_dryomin = 		{
				set_character_flag = ASGA_SOV_additional_generals_flag
			}
			ASGA_SOV_dmitry_karbyshev = 	{
				set_character_flag = ASGA_SOV_additional_generals_flag
			}
			ASGA_SOV_filipp_rudkin = 		{
				set_character_flag = ASGA_SOV_additional_generals_flag
			}
			ASGA_SOV_frants_perkhorovich = 	{
				set_character_flag = ASGA_SOV_additional_generals_flag
			}
			ASGA_SOV_fyodor_tolbukhin = 	{
				set_character_flag = ASGA_SOV_additional_generals_flag
			}
			ASGA_SOV_german_tarasov = 		{
				set_character_flag = ASGA_SOV_additional_generals_flag
			}
			ASGA_SOV_amazasp_babadzhanian = {
				set_character_flag = ASGA_SOV_additional_generals_flag
			}
			ASGA_SOV_iogan_y_lombak = 		{
				set_character_flag = ASGA_SOV_additional_generals_flag
			}
			ASGA_SOV_iosif_apanasenko = 	{
				set_character_flag = ASGA_SOV_additional_generals_flag
			}
			ASGA_SOV_ivan_bagramyan = 		{
				set_character_flag = ASGA_SOV_additional_generals_flag
			}
			ASGA_SOV_ivan_bezugly = 		{
				set_character_flag = ASGA_SOV_additional_generals_flag
			}
			ASGA_SOV_ivan_bogdanov = 		{
				set_character_flag = ASGA_SOV_additional_generals_flag
			}
			ASGA_SOV_ivan_boldin = 			{
				set_character_flag = ASGA_SOV_additional_generals_flag
			}
			ASGA_SOV_ivan_burmakov = 		{
				set_character_flag = ASGA_SOV_additional_generals_flag
			}
			ASGA_SOV_ivan_galanin = 		{
				set_character_flag = ASGA_SOV_additional_generals_flag
			}
			ASGA_SOV_ivan_lyudnikov = 		{
				set_character_flag = ASGA_SOV_additional_generals_flag
			}
			ASGA_SOV_ivan_nikitich_konev = 	{
				set_character_flag = ASGA_SOV_additional_generals_flag
			}
			ASGA_SOV_ivan_tyulenev = 		{
				set_character_flag = ASGA_SOV_additional_generals_flag
			}
			ASGA_SOV_ivan_zakharin = 		{
				set_character_flag = ASGA_SOV_additional_generals_flag
			}
			ASGA_SOV_konstantin_koroteyev = {
				set_character_flag = ASGA_SOV_additional_generals_flag
			}
			ASGA_SOV_kuzma_grebennik = 		{
				set_character_flag = ASGA_SOV_additional_generals_flag
			}
			ASGA_SOV_lev_mekhlis = 			{
				set_character_flag = ASGA_SOV_additional_generals_flag
			}
			ASGA_SOV_maksim_antonyuk = 		{
				set_character_flag = ASGA_SOV_additional_generals_flag
			}
			ASGA_SOV_mikhail_katukov = 		{
				set_character_flag = ASGA_SOV_additional_generals_flag
			}
			ASGA_SOV_mikhail_petrov = 		{
				set_character_flag = ASGA_SOV_additional_generals_flag
			}
			ASGA_SOV_mikhail_tikhonov = 	{
				set_character_flag = ASGA_SOV_additional_generals_flag
			}
			ASGA_SOV_mikhail_yefremov = 	{
				set_character_flag = ASGA_SOV_additional_generals_flag
			}
			ASGA_SOV_nikifor_khoruzhenko = 	{
				set_character_flag = ASGA_SOV_additional_generals_flag
			}
			ASGA_SOV_nikolay_mishchenko = 	{
				set_character_flag = ASGA_SOV_additional_generals_flag
			}
			ASGA_SOV_pavel_v_mironov = 		{
				set_character_flag = ASGA_SOV_additional_generals_flag
			}
			ASGA_SOV_pavel_batov = 			{
				set_character_flag = ASGA_SOV_additional_generals_flag
			}
			ASGA_SOV_pavel_lagutin = 		{
				set_character_flag = ASGA_SOV_additional_generals_flag
			}
			ASGA_SOV_robert_brichenok = 	{
				set_character_flag = ASGA_SOV_additional_generals_flag
			}
			ASGA_SOV_sergey_galadzhev = 	{
				set_character_flag = ASGA_SOV_additional_generals_flag
			}
			ASGA_SOV_stepan_guryev = 		{
				set_character_flag = ASGA_SOV_additional_generals_flag
			}
			ASGA_SOV_vasily_glazunov = 		{
				set_character_flag = ASGA_SOV_additional_generals_flag
			}
			ASGA_SOV_vasily_glagolev = 		{
				set_character_flag = ASGA_SOV_additional_generals_flag
			}
			ASGA_SOV_vasily_kopchov = 		{
				set_character_flag = ASGA_SOV_additional_generals_flag
			}
			ASGA_SOV_vasily_margelov = 		{
				set_character_flag = ASGA_SOV_additional_generals_flag
			}
			ASGA_SOV_viktor_tsyganov = 		{
				set_character_flag = ASGA_SOV_additional_generals_flag
			}
			ASGA_SOV_viktor_zholudev = 		{
				set_character_flag = ASGA_SOV_additional_generals_flag
			}
		}

		ai_chance = {
			base = 100
			modifier = {
				factor = 99
				always = yes
			}
		}
	}

	option = {		####	not this time meh
		name = ASGA_SOV.1.b
		ai_chance = {
			base = 100
			modifier = {
				factor = 1
				always = yes
			}
		}
	}
}

country_event = {		####	conversion of generals
	id = ASGA_SOV.2
	title = ASGA_SOV.2.title
	desc = ASGA_SOV.2.desc
	picture = GFX_report_event_soviet_army_greeted

	fire_only_once = yes

	trigger = {
		tag = SOV
		SOV = {
			or = {
				and = {
					has_completed_focus = SOV_the_left_opposition
				}
				and = {
					has_completed_focus = SOV_the_right_opposition
				}
				and = {
					has_completed_focus = SOV_beaten_but_not_defeated
				}
			}
			has_civil_war = yes
			date > 1936.1.1
		}
	}

	option = {		####	for communist opposition
		trigger = {
			has_government = communism
			SOV = {
				or = {
					has_completed_focus = SOV_the_left_opposition
					has_completed_focus = SOV_the_right_opposition
				}
			}
			SOV = {
				is_ai = no
			}
		}
		name = ASGA_SOV.2.comm
		hidden_effect = {
			every_enemy_country = {
				every_army_leader = {
					limit = { has_character_flag = ASGA_SOV_additional_generals_flag }
					set_nationality = SOV
					remove_trait = { trait = trait_SOV_stalinist }
				}
			}
		}
	}

	option = {		####	for second white movement
		trigger = {
			has_government = neutrality
			SOV = { has_completed_focus = SOV_beaten_but_not_defeated }
			SOV = {
				is_ai = no
			}
		}
		name = ASGA_SOV.2.neut
		hidden_effect = {
			every_enemy_country = {
				every_army_leader = {
					limit = { has_character_flag = ASGA_SOV_additional_generals_flag }
					set_nationality = SOV
					remove_trait = { trait = trait_SOV_stalinist }
				}
			}
			####	maybe changing portraits too?
		}
	}

	option = {		####	no generals for AI
		trigger = {
			SOV = {
				is_ai = yes
			}
		}
		name = ASGA_SOV.2.ai
	}
}