• We have updated our Community Code of Conduct. Please read through the new rules for the forum that are an integral part of Paradox Interactive’s User Agreement.

Jedrek

Chronicler of the Light
61 Badges
Aug 21, 2006
1.272
41
  • Europa Universalis IV: Rights of Man
  • Magicka: Wizard Wars Founder Wizard
  • Crusader Kings II: Way of Life
  • Europa Universalis IV: Common Sense
  • Crusader Kings II: Horse Lords
  • Europa Universalis IV: Cossacks
  • Crusader Kings II: Conclave
  • Europa Universalis IV: Mare Nostrum
  • Stellaris
  • Stellaris: Galaxy Edition
  • Stellaris: Galaxy Edition
  • Hearts of Iron IV: Cadet
  • Crusader Kings II: Reapers Due
  • Europa Universalis IV: El Dorado
  • Stellaris: Leviathans Story Pack
  • Hearts of Iron IV: Together for Victory
  • Stellaris - Path to Destruction bundle
  • Europa Universalis IV: Mandate of Heaven
  • Europa Universalis IV: Third Rome
  • Surviving Mars
  • Hearts of Iron IV: Death or Dishonor
  • Stellaris: Synthetic Dawn
  • Europa Universalis IV: Cradle of Civilization
  • Hearts of Iron IV: Expansion Pass
  • Stellaris: Apocalypse
  • Hearts of Iron IV: No Step Back
  • Europa Universalis IV: Art of War
  • Crusader Kings II: Charlemagne
  • Crusader Kings II: Legacy of Rome
  • Crusader Kings II: The Old Gods
  • Crusader Kings II: Rajas of India
  • Crusader Kings II: The Republic
  • Crusader Kings II: Sons of Abraham
  • Crusader Kings II: Sword of Islam
  • Darkest Hour
  • Europa Universalis III
  • Europa Universalis III: Chronicles
  • Divine Wind
  • Europa Universalis IV
  • Crusader Kings II
  • Europa Universalis IV: Conquest of Paradise
  • Europa Universalis IV: Wealth of Nations
  • Europa Universalis IV: Call to arms event
  • Heir to the Throne
  • Magicka
  • Europa Universalis IV: Res Publica
  • Victoria: Revolutions
  • Victoria 2
  • Victoria 2: A House Divided
  • Victoria 2: Heart of Darkness
Hi

I've spent a couple of days coding new events for the Soviet Great Purge. My general aim is to give the Soviet history a bit of flexibility - from a historical Purge (which would have about 90% chances of happening), through performing a partial purge (for example, saving some officers that would normally die), up to avoiding it completely, saving people like Bukharin or Rykov, thus creating a completely different Soviet Union.

So far I've written the following events:
-> 3 civil purges (Trial of the Sixteen, Trial of the Seventeen, Trial of the Twenty-One). Party Purges remove newly added ministers (like Bukharin, Rykov or Mironov), reduce dissent and lead to further events purge events. The last Purge gives the player a chance to save Yagoda from execution - leading to him becoming the leader of all-powerful NKVD in Beria's place. The first event fires regardless of situation, but chances of further trials happening is dependant on the decision (if abandoned, the Purge is unlikely to show up again).
-> 2 variants of the military Purge - the historical one (Which is basically a copypaste version of vanilla one) and a limited one, which gives far greater dissent reduction, saves around 33% of officers. Additional feature is a reduction in both morale and organisation of army/naval/air forces.
-> Further Purge events - they reduce IC, army morale and organisation, kill manpower, increase buildcosts & time, reduce research speed and eliminate random officers. Their frequency is dependant on the intensity of the Purge.
-> Recovery events. They fire from 1939 onwards, eliminating all the penalties given by Purge events, except for irreversable loses (manpower and officers).
-> Every event has an alternative resolution, that increases dissent.

I'm planning to add the following events:
-> Removal of Yezhov - basically yet another Purge event, this time replacing Yezhov with Beria. Could be avoided - and would lead to Yezhov soldifying his power as chief of the NKVD.
-> Powerful NKVD - Would trigger once one of the Purgemasters (Yagoda, Yezhov or Beria) would soldify their power. Would reduce dissent, give slight intelligence bonuses, maybe sporadical blueprints (something like 1% chance per month). The effect would be removed once the chief of NKVD is removed.

Now, the logic behind dissent reduction. I believe in totalitarian governments dissent should reflect resistance towards the central authority. Thus, increasing it by the Purge is not a correct way. I decided to reduce dissent, with other effects reflecting what dissent does (IC reduction, loss of army effectiveness). Thus, the Purges would result in the Soviet Union being heavily handicapped in all areas, but with 0% dissent.

If the player decides to abandon the Purge, the situation would change - the Left Opposition may act if Stalin loses popular support (dissent rises too high), resulting in following results:
A) Coup d'etat -> Stalin is removed, and a Leninist Government is put in place (its composition would be decided by who survives the Purge). If NKVD soldifies its place, a brief civil war would ensure with two outcomes possible - coup successful or defeated by NKVD (situation simmilar to post-Bitter Peace Russia with NKVD forming a new Stalinist government). The victor would be decided by who controls main urban centres (Moscow, Leningrad, Kiev, Stalingrad, Ural industrial centres).
B) Stalin ousted by his proteges -> Would happen if dissent rises high despite the Purge. Yagoda, Yezhov or Beria would replace Stalin as HoS and a new cabinet would be formed. Civil war would be possible, but only if Stalin purged the Red Army completely.

What do you think about my concept? Does it have any chance of entering the DH, or should I keep it as a minimod?
 
Upvote 0

MartinSWE

Colonel
134 Badges
Mar 14, 2009
1.198
206
  • Europa Universalis IV
  • Hearts of Iron IV: By Blood Alone
  • Hearts of Iron IV: No Step Back
  • Humble Paradox Bundle
  • Crusader Kings III
  • Battle for Bosporus
  • Europa Universalis 4: Emperor
  • Stellaris: Necroids
  • Stellaris: Nemesis
  • Victoria 3 Sign Up
  • Pillars of Eternity
  • Warlock: Master of the Arcane
  • Europa Universalis III Complete
  • Sword of the Stars II
  • Teleglitch: Die More Edition
  • Victoria 2
  • War of the Roses
  • 500k Club
  • Magicka: Wizard Wars Founder Wizard
  • Mount & Blade: Warband
  • Mount & Blade: With Fire and Sword
  • Hearts of Iron IV: Colonel
  • Hearts of Iron IV: Field Marshal
  • Tyranny: Archon Edition
  • Tyranny: Archon Edition
  • Stellaris: Digital Anniversary Edition
  • Stellaris: Leviathans Story Pack
  • Cities: Skylines - Mass Transit
  • Crusader Kings Complete
  • Hearts of Iron IV: Death or Dishonor
  • Age of Wonders III
  • Cities: Skylines - Green Cities
  • Crusader Kings II: Jade Dragon
  • Hearts of Iron IV: Expansion Pass
  • Stellaris: Humanoids Species Pack
  • Surviving Mars: Digital Deluxe Edition
  • Cities: Skylines - Parklife
  • Stellaris: Distant Stars
  • Shadowrun Returns
  • Shadowrun: Dragonfall
  • Surviving Mars: First Colony Edition
  • Cities: Skylines Industries
  • Imperator: Rome Deluxe Edition
  • Prison Architect
  • Surviving Mars: First Colony Edition
  • Imperator: Rome Sign Up
  • Cities: Skylines - Campus
  • Age of Wonders: Planetfall Sign Up
  • Imperator: Rome
  • Penumbra - Black Plague
I for one like your ideas since I made a post with simillar views of my own a while back. The great Purge is without a doubt one of the worst represented events, or rather event-chains as it should be, in the entire game. With this said the DH version is still much better even with the few 'bugs' (such as permanent (?) removal of General Rokossovsky) and ofc the rediculous amount of dissent.
 

Jedrek

Chronicler of the Light
61 Badges
Aug 21, 2006
1.272
41
  • Europa Universalis IV: Rights of Man
  • Magicka: Wizard Wars Founder Wizard
  • Crusader Kings II: Way of Life
  • Europa Universalis IV: Common Sense
  • Crusader Kings II: Horse Lords
  • Europa Universalis IV: Cossacks
  • Crusader Kings II: Conclave
  • Europa Universalis IV: Mare Nostrum
  • Stellaris
  • Stellaris: Galaxy Edition
  • Stellaris: Galaxy Edition
  • Hearts of Iron IV: Cadet
  • Crusader Kings II: Reapers Due
  • Europa Universalis IV: El Dorado
  • Stellaris: Leviathans Story Pack
  • Hearts of Iron IV: Together for Victory
  • Stellaris - Path to Destruction bundle
  • Europa Universalis IV: Mandate of Heaven
  • Europa Universalis IV: Third Rome
  • Surviving Mars
  • Hearts of Iron IV: Death or Dishonor
  • Stellaris: Synthetic Dawn
  • Europa Universalis IV: Cradle of Civilization
  • Hearts of Iron IV: Expansion Pass
  • Stellaris: Apocalypse
  • Hearts of Iron IV: No Step Back
  • Europa Universalis IV: Art of War
  • Crusader Kings II: Charlemagne
  • Crusader Kings II: Legacy of Rome
  • Crusader Kings II: The Old Gods
  • Crusader Kings II: Rajas of India
  • Crusader Kings II: The Republic
  • Crusader Kings II: Sons of Abraham
  • Crusader Kings II: Sword of Islam
  • Darkest Hour
  • Europa Universalis III
  • Europa Universalis III: Chronicles
  • Divine Wind
  • Europa Universalis IV
  • Crusader Kings II
  • Europa Universalis IV: Conquest of Paradise
  • Europa Universalis IV: Wealth of Nations
  • Europa Universalis IV: Call to arms event
  • Heir to the Throne
  • Magicka
  • Europa Universalis IV: Res Publica
  • Victoria: Revolutions
  • Victoria 2
  • Victoria 2: A House Divided
  • Victoria 2: Heart of Darkness
Here are some example events - one of the Trials, a Purge event and the reworked military purge:

Code:
#########################################################################
#  Trial of the Sixteen
#########################################################################
event = {
	id = 2007200
	random = no
	country = SOV

	trigger = {
		headofstate = 30002 # Iosif Stalin
		atwar = no
	}

	name = "Trial of the Sixteen"
	desc = "In late thirties, Stalin started his campaign to purge the Communist Party and the Soviet society of possible political opposition. Constantly paranoid about his posotion in the hierarchy of power, Stalin did not hesitate to eliminate any opposition - real or imaginary. The so-called First Moscow Trial, also known as the Trail of Sixteen, resulted in key Bolshevik figures - including Kamenev, Smirnov and Zinovev - accused of taking part in 'Trotskyite-Zinovievite Terrorist Centre's plot and executed."
	style = 2
	picture = "news_paper"

	date = { day = 1 month = august year = 1936 }
	offset = 28
	deathdate = { day = 1 month = september year = 1936 }

	action_a = {
		name = "Execute the plotters"
		ai_chance = 95
		command = { type = dissent value = -5 }
		command = { type = sleepminister which = 30119 } # Zinovev
		command = { type = sleepminister which = 30120 }
		command = { type = sleepminister which = 30110 } # Kamenev
		command = { type = sleepminister which = 30118 } # Smirnov
		command = { type = setflag which = First_Moscow_Trial_A }
	}
	action_b = {
		name = "No need for brutality"
		ai_chance = 5
		command = { type = dissent value = 10 }
		command = { type = setflag which = First_Moscow_Trial_B }
	}
}

Code:
event = {
	id = 2007202
	random = no
	country = SOV

	trigger = {
		headofstate = 30002 # Iosif Stalin
		atwar = no
		OR = {
			flag = Second_Moscow_Trial_A
			AND = {
				flag = Second_Moscow_Trial_B
				random = 45
			}
		}	
	}

	name = "Tukhachevsky Case"
	desc = "Up to late thirties, the Red Army has been a force independent of Stalin and his paranoia. In order to subdue the Red Army and turn it into an obiedient force, Stalin ordered marshal Tukhachevsky and other high-ranking officers arrested and sentenced for taking part in a 'right-wing-Trotskyist' conspiracy, as well as espionage for numerous countries, like Germany, Japan or even Latvia."
	style = 2
	picture = "news_paper"

	date = { day = 1 month = february year = 1937 }
	offset = 30
	deathdate = { day = 1 month = june year = 1937 }

	action_a = {
		name = "Purge the army of traitors"
		ai_chance = 85
		command = { type = dissent value = -8 }
		command = { trigger = { ai = no } type = ground_def_eff value = 0.6 }
		command = { type = max_organization which = land value = -5 }
		command = { type = morale which = land value = -10 }
		command = { type = max_organization which = naval value = -5 }
		command = { type = morale which = naval value = -10 }
		command = { type = max_organization which = air value = -5 }
		command = { type = morale which = air value = -10 }
		command = { type = chiefofstaff which = 30038 }
		command = { type = chiefofnavy which = 30048 }
		command = { type = chiefofair which = 30052 }
		command = { type = sleepminister which = 30007 } #Tukhachevsky
		command = { type = sleepminister which = 30009 } #Orlov
		command = { type = sleepminister which = 30053 } #Smushkevich
		command = { type = sleepminister which = 30006 } #Berzin
		command = { type = sleepminister which = 30010 } #Alksnis
		command = { type = sleepteam which = 30007 } #Tukhachevsky
		command = { type = sleepteam which = 30017 } #Alksnis
		command = { type = sleepleader which = 30040 } #   Belov  I.P.
		command = { type = sleepleader which = 30042 } #   Belov  S.I.
		command = { type = sleepleader which = 30044 } #   Berman
		command = { type = sleepleader which = 30085 } #   Deev
		command = { type = sleepleader which = 30095 } #   Dybenko
		command = { type = sleepleader which = 30097 } #   Egorov  A.I.
		command = { type = sleepleader which = 30101 } #   Eideman
		command = { type = sleepleader which = 30108 } #   Fabricius
		command = { type = sleepleader which = 30111 } # Fedko
		command = { type = sleepleader which = 30127 } # Fomin
		command = { type = sleepleader which = 30131 } #   Gaj
		command = { type = sleepleader which = 30135 } # Gamarnik
		command = { type = sleepleader which = 30152 } # Golubev  M.I.
		command = { type = sleepleader which = 30156 } # Gordon
		command = { type = sleepleader which = 30170 } # Hahanyan
		command = { type = sleepleader which = 30175 } # Horoshin
		command = { type = sleepleader which = 30192 } # Kalinovski
		command = { type = sleepleader which = 30194 } # Kaminski
		command = { type = sleepleader which = 30207 } # Kharitonov
		command = { type = sleepleader which = 30217 } # Klimovskih
		command = { type = sleepleader which = 30220 } # Kolchik
		command = { type = sleepleader which = 30229 } # Kopec
		command = { type = sleepleader which = 30232 } # Kork
		command = { type = sleepleader which = 30243 } # Kotovski
		command = { type = sleepleader which = 30255 } # Kuibyshev
		command = { type = sleepleader which = 30267 } # Kuzn
		command = { type = sleepleader which = 30272 } # Lapin
		command = { type = sleepleader which = 30315 } # Medvedovski
		command = { type = sleepleader which = 30316 } # Meklis
		command = { type = sleepleader which = 30338 } # Navrocki
		command = { type = sleepleader which = 30339 } # Nazarov
		command = { type = sleepleader which = 30403 } #   Primakov  V.M.
		command = { type = sleepleader which = 30409 } # Pshenn
		command = { type = sleepleader which = 30416 } # Putna
		command = { type = sleepleader which = 30454 } # Ryabyshev
		command = { type = sleepleader which = 30472 } # Sedyakin
		command = { type = sleepleader which = 30477 } # Serdich
		command = { type = sleepleader which = 30484 } # Sharangovich
		command = { type = sleepleader which = 30487 } # Sheklanov
		command = { type = sleepleader which = 30498 } # Shmidt
		command = { type = sleepleader which = 30523 } # Strepuhov
		command = { type = sleepleader which = 30543 } # Tukhachevsky
		command = { type = sleepleader which = 30547 } #   Uborevich
		command = { type = sleepleader which = 30550 } # Uspenski
		command = { type = sleepleader which = 30570 } # Vorozhejkin
		command = { type = sleepleader which = 30571 } # Vostrechov
		command = { type = sleepleader which = 30572 } #   Yakir
		command = { type = sleepleader which = 30602 } # Zonberg
		command = { type = sleepleader which = 30618 } # Galler
		command = { type = sleepleader which = 30654 } # Alksnis
		command = { type = sleepleader which = 30664 } # Gerasimov
		command = { type = sleepleader which = 30673 } # Kharlamov
		command = { type = sleepleader which = 30678 } # Krasovskij
		command = { type = sleepleader which = 30701 } # Sudets
		command = { type = sleepleader which = 30715 } # Vazetis
		command = { type = sleepleader which = 30716 } # Unzherov
		command = { type = sleepleader which = 30717 } # Kireev
		command = { type = sleepleader which = 30718 } # Khalatov
		command = { type = sleepleader which = 30719 } # Kashirin
		command = { type = sleepleader which = 30721 } # Dushenov
		command = { type = sleepleader which = 30722 } # Bidemann
		command = { type = sleepleader which = 30723 } # Tupikov
		command = { type = sleepleader which = 30650 } #Viktorov
		command = { type = sleepleader which = 30050 } #Blücher
		command = { type = sleepleader which = 30512 } #Smirnov
		command = { type = sleepleader which = 30007 } #Alekseev
		command = { type = sleepleader which = 30374 } #Pavlov D.G.
		command = { type = sleepleader which = 30238 } #Korobkov
		command = { type = sleepleader which = 30276 } #Laskin
		command = { type = sleepleader which = 30681 } #Loktionov
		command = { type = sleepleader which = 30353 } #Oborin
		command = { type = sleepleader which = 30687 } #Oborin
		command = { type = sleepleader which = 30407 } #Proskurov
		command = { type = sleepleader which = 30697 } #Rychagov
		command = { type = sleepleader which = 30499 } #Shtern
		command = { type = sleepleader which = 30004 } #Ahlyustin
		command = { type = sleepleader which = 30008 } #Alekseenko
		command = { type = sleepleader which = 30028 } #Baranov  S.V.
		command = { type = sleepleader which = 30057 } #Borisov
		command = { type = sleepleader which = 30059 } #Borzilov
		command = { type = sleepleader which = 30063 } #Budyho
		command = { type = sleepleader which = 30081 } #Chistyakov  V.I.
		command = { type = sleepleader which = 30084 } #Dedaev
		command = { type = sleepleader which = 30090 } #Dobroserdov
		command = { type = sleepleader which = 30098 } #Egorov  E.A.
		command = { type = sleepleader which = 30100 } #Egorov  P.G.
		command = { type = sleepleader which = 30107 } #Ershakov
		command = { type = sleepleader which = 30120 } #Filatov
		command = { type = sleepleader which = 30136 } #Garnov
		command = { type = sleepleader which = 30172 } #Hatckilevich
		command = { type = sleepleader which = 30174 } #Horolenko
		command = { type = sleepleader which = 30186 } #Ivanov  V.I.
		command = { type = sleepleader which = 30190 } #Kachalov
		command = { type = sleepleader which = 30191 } #Kachanov
		command = { type = sleepleader which = 30198 } #Karmanov
		command = { type = sleepleader which = 30199 } #Karpezo
		command = { type = sleepleader which = 30214 } #Kirillov
		command = { type = sleepleader which = 30215 } #Kirponos
		command = { type = sleepleader which = 30226 } #Kondrusev
		command = { type = sleepleader which = 30242 } #Kotlyarov
		command = { type = sleepleader which = 30258 } #Kulikov  K.E.
		command = { type = sleepleader which = 30263 } #Kurochkin P.S.
		command = { type = sleepleader which = 30269 } #Kuznetsov  A.I.
		command = { type = sleepleader which = 30275 } #Larionov
		command = { type = sleepleader which = 30277 } #Lavrinovich
		command = { type = sleepleader which = 30296 } #Magon
		command = { type = sleepleader which = 30302 } #Malinovsk
		command = { type = sleepleader which = 30324 } #Mironov  F.K.
		command = { type = sleepleader which = 30326 } #Mishanin
		command = { type = sleepleader which = 30345 } #Nikitin  I.S.
		command = { type = sleepleader which = 30381 } #Petrov  M.P.
		command = { type = sleepleader which = 30391 } #Ponedelin
		command = { type = sleepleader which = 30399 } #Potaturchev
		command = { type = sleepleader which = 30401 } #Potapov
		command = { type = sleepleader which = 30411 } #Puganov
		command = { type = sleepleader which = 30419 } #Rakutin
		command = { type = sleepleader which = 30442 } #Romanov  M.T.
		command = { type = sleepleader which = 30445 } #Roze
		command = { type = sleepleader which = 30447 } #Rubtsov
		command = { type = sleepleader which = 30491 } #Shestopalov
		command = { type = sleepleader which = 30494 } #Shishenin
		command = { type = sleepleader which = 30509 } #Skugarev
		command = { type = sleepleader which = 30521 } #Starostin
		command = { type = sleepleader which = 30548 } #Ugrimov
		command = { type = sleepleader which = 30552 } #Vashugin
		command = { type = sleepleader which = 30576 } #Zaitsev
		command = { type = sleepleader which = 30614 } #Drozd
		command = { type = sleepleader which = 30658 } #Chuvakov
		command = { type = sleepleader which = 30660 } #Ekatov
		command = { type = sleepleader which = 30720 } #Goryahov
		command = { type = sleepleader which = 30473 } #Selivanov
		command = { type = sleepleader which = 30778 } #Antonov-Ovseenko
		command = { type = sleepleader which = 30076 } #Chernov
		command = { type = sleepleader which = 30216 } #Kiselev
		command = { type = sleepleader which = 30744 } #Krylenko
		command = { type = sleepleader which = 30266 } #Kuzmin
		command = { type = sleepleader which = 30322 } #Mikeladze
		command = { type = sleepleader which = 30463 } #Rykov
		command = { type = sleepleader which = 30479 } #Shadunts
		command = { type = sleepleader which = 30538 } #Trifonov
		command = { type = sleepleader which = 30789 } #Yegorov
		command = { type = sleepleader which = 30313 } #Maslennikov
		command = { type = sleepleader which = 30765 } #Vatsetis
		command = { type = sleepleader which = 30767 } #Voskanov
		command = { type = sleepleader which = 30515 } #Sokolov
		command = { type = sleepleader which = 30776 } #Maximov
		command = { type = sleepleader which = 30528 } #Tarasov
		command = { type = sleepleader which = 30758 } #Schmidt
		command = { type = sleepleader which = 30373 } #Pavlov
		command = { type = manpowerpool value = -2 } # So far only high-ranking officers
		command = { type = belligerence which = SOV value = -2 }
		command = { type = setflag which = Military_Purge_A }
	}
	action_b = {
		name = "Purge the army, but show some mercy"
		ai_chance = 10
		command = { type = dissent value = -4 }
		command = { trigger = { ai = no } type = ground_def_eff value = 0.6 }
		command = { type = max_organization which = land value = -4 }
		command = { type = morale which = land value = -8 }
		command = { type = max_organization which = naval value = -4 }
		command = { type = morale which = naval value = -8 }
		command = { type = max_organization which = air value = -4 }
		command = { type = morale which = air value = -8 }
		command = { type = chiefofstaff which = 30038 }
		command = { type = sleepminister which = 30007 } #Tukhachevsky
		command = { type = sleepminister which = 30053 } #Smushkevich
		command = { type = sleepminister which = 30006 } #Berzin
		command = { type = sleepteam which = 30007 } #Tukhachevsky
		command = { type = sleepleader which = 30040 } #   Belov  I.P.
		command = { type = sleepleader which = 30044 } #   Berman
		command = { type = sleepleader which = 30095 } #   Dybenko
		command = { type = sleepleader which = 30101 } #   Eideman
		command = { type = sleepleader which = 30111 } # Fedko
		command = { type = sleepleader which = 30131 } #   Gaj
		command = { type = sleepleader which = 30152 } # Golubev  M.I.
		command = { type = sleepleader which = 30170 } # Hahanyan
		command = { type = sleepleader which = 30192 } # Kalinovski
		command = { type = sleepleader which = 30207 } # Kharitonov
		command = { type = sleepleader which = 30220 } # Kolchik
		command = { type = sleepleader which = 30232 } # Kork
		command = { type = sleepleader which = 30255 } # Kuibyshev
		command = { type = sleepleader which = 30272 } # Lapin
		command = { type = sleepleader which = 30316 } # Meklis
		command = { type = sleepleader which = 30339 } # Nazarov
		command = { type = sleepleader which = 30409 } # Pshenn
		command = { type = sleepleader which = 30454 } # Ryabyshev
		command = { type = sleepleader which = 30477 } # Serdich
		command = { type = sleepleader which = 30487 } # Sheklanov
		command = { type = sleepleader which = 30523 } # Strepuhov
		command = { type = sleepleader which = 30543 } # Tukhachevsky
		command = { type = sleepleader which = 30547 } #   Uborevich
		command = { type = sleepleader which = 30570 } # Vorozhejkin
		command = { type = sleepleader which = 30572 } #   Yakir
		command = { type = sleepleader which = 30618 } # Galler
		command = { type = sleepleader which = 30673 } # Kharlamov
		command = { type = sleepleader which = 30701 } # Sudets
		command = { type = sleepleader which = 30716 } # Unzherov
		command = { type = sleepleader which = 30718 } # Khalatov
		command = { type = sleepleader which = 30721 } # Dushenov
		command = { type = sleepleader which = 30723 } # Tupikov
		command = { type = sleepleader which = 30050 } #Blücher
		command = { type = sleepleader which = 30007 } #Alekseev
		command = { type = sleepleader which = 30276 } #Laskin
		command = { type = sleepleader which = 30681 } #Loktionov
		command = { type = sleepleader which = 30407 } #Proskurov
		command = { type = sleepleader which = 30499 } #Shtern
		command = { type = sleepleader which = 30008 } #Alekseenko
		command = { type = sleepleader which = 30057 } #Borisov
		command = { type = sleepleader which = 30063 } #Budyho
		command = { type = sleepleader which = 30084 } #Dedaev
		command = { type = sleepleader which = 30098 } #Egorov  E.A.
		command = { type = sleepleader which = 30107 } #Ershakov
		command = { type = sleepleader which = 30136 } #Garnov
		command = { type = sleepleader which = 30172 } #Hatckilevich
		command = { type = sleepleader which = 30186 } #Ivanov  V.I.
		command = { type = sleepleader which = 30190 } #Kachalov
		command = { type = sleepleader which = 30198 } #Karmanov
		command = { type = sleepleader which = 30199 } #Karpezo
		command = { type = sleepleader which = 30215 } #Kirponos
		command = { type = sleepleader which = 30226 } #Kondrusev
		command = { type = sleepleader which = 30258 } #Kulikov  K.E.
		command = { type = sleepleader which = 30263 } #Kurochkin P.S.
		command = { type = sleepleader which = 30275 } #Larionov
		command = { type = sleepleader which = 30277 } #Lavrinovich
		command = { type = sleepleader which = 30302 } #Malinovsk
		command = { type = sleepleader which = 30324 } #Mironov  F.K.
		command = { type = sleepleader which = 30345 } #Nikitin  I.S.
		command = { type = sleepleader which = 30381 } #Petrov  M.P.
		command = { type = sleepleader which = 30399 } #Potaturchev
		command = { type = sleepleader which = 30401 } #Potapov
		command = { type = sleepleader which = 30419 } #Rakutin
		command = { type = sleepleader which = 30442 } #Romanov  M.T.
		command = { type = sleepleader which = 30447 } #Rubtsov
		command = { type = sleepleader which = 30491 } #Shestopalov
		command = { type = sleepleader which = 30509 } #Skugarev
		command = { type = sleepleader which = 30521 } #Starostin
		command = { type = sleepleader which = 30552 } #Vashugin
		command = { type = sleepleader which = 30576 } #Zaitsev
		command = { type = sleepleader which = 30658 } #Chuvakov
		command = { type = sleepleader which = 30660 } #Ekatov
		command = { type = sleepleader which = 30473 } #Selivanov
		command = { type = sleepleader which = 30778 } #Antonov-Ovseenko
		command = { type = sleepleader which = 30216 } #Kiselev
		command = { type = sleepleader which = 30744 } #Krylenko
		command = { type = sleepleader which = 30322 } #Mikeladze
		command = { type = sleepleader which = 30463 } #Rykov
		command = { type = sleepleader which = 30538 } #Trifonov
		command = { type = sleepleader which = 30789 } #Yegorov
		command = { type = sleepleader which = 30765 } #Vatsetis
		command = { type = sleepleader which = 30767 } #Voskanov
		command = { type = sleepleader which = 30776 } #Maximov
		command = { type = sleepleader which = 30528 } #Tarasov
		command = { type = sleepleader which = 30373 } #Pavlov
		command = { type = manpowerpool value = -1 } # So far only high-ranking officers
		command = { type = belligerence which = SOV value = -1 }
		command = { type = setflag which = Military_Purge_B }
	}
	action_c = {
		name = "No need for brutality"
		ai_chance = 5
		command = { type = dissent value = 16 }
		command = { type = setflag which = Military_Purge_C }
	}
}

Code:
event = {
	id = 2007211
	random = no
	country = SOV

	trigger = {
		headofstate = 30002 # Iosif Stalin
		atwar = no
		OR = {
			AND = {
				flag = First_Moscow_Trial_A
				flag = Second_Moscow_Trial_A
				flag = Third_Moscow_Trial_A
			        random = 40
			}
			OR = {
				AND = {
					flag = First_Moscow_Trial_A
					flag = Second_Moscow_Trial_A
					NOT = { flag = Third_Moscow_Trial_A }
					random = 20
				}
				AND = {
					flag = Third_Moscow_Trial_A
					flag = Second_Moscow_Trial_A
					NOT = { flag = First_Moscow_Trial_A }
					random = 20
				}
				AND = {
					flag = First_Moscow_Trial_A
					flag = Third_Moscow_Trial_A
					NOT = { flag = Second_Moscow_Trial_A }
					random = 20
				}
			}
			OR = {
				AND = {
					flag = First_Moscow_Trial_A
					NOT = {
						flag = Second_Moscow_Trial_A
						flag = Third_Moscow_Trial_A
					}
					random = 10
				}
				AND = {
					flag = Second_Moscow_Trial_A
					NOT = {
						flag = First_Moscow_Trial_A
						flag = Third_Moscow_Trial_A
					}
					random = 10
				}
				AND = {
					flag = Third_Moscow_Trial_A
					NOT = {
						flag = Second_Moscow_Trial_A
						flag = First_Moscow_Trial_A
					}
					random = 10
				}
			}
			AND = {
				NOT = {
					flag = First_Moscow_Trial_A
					flag = Second_Moscow_Trial_A
					flag = Third_Moscow_Trial_A
				}
				random = 5
			}
		}	
	}

	name = "Industrial saboteurs accused"
	desc = "The central planning of the Soviet industry meant that it was more than easy to accuse inefficient workers of sabotage. Often, should one worker fail to accomplish the ambitious workplan, all people in the factory could have been accused of participating in a plot. The atmosphere of paranoia and fear resulted in overall drop in industrial efficiency. Mines and other resource-producing centres were unsage as well."
	style = 2
	picture = "news_paper"

	date = { day = 1 month = august year = 1936 }
	offset = 28
	deathdate = { day = 1 month = january year = 1941 }

	action_a = {
		name = "Sentence them all"
		ai_chance = 95
		command = { type = dissent value = -4 }
		command = { type = industrial_modifier which = total value = -5 }
		command = { type = build_cost which = land value = 3 }
		command = { type = build_time which = land value = 3 }
		command = { type = setflag which = Saboteurs_2 }
	}
	action_b = {
		name = "No need for brutality"
		ai_chance = 5
		command = { type = dissent value = 8 }
	}
}

event = {
	id = 2007233
	random = no
	country = SOV

	trigger = {
		flag = Saboteurs_2
		OR = {
			AND = {
				year = 1939
				random = 5
			}
			AND = {
				year = 1940
				random = 25
			}
			AND = {
				year = 1941
				random = 75
			}
			year = 1942
			AND = {
				OR = {
					war = { country = SOV  country = GER }
					war = { country = SOV  country = USA }
					war = { country = SOV  country = JAP }
					war = { country = SOV  country = ENG }
					war = { country = SOV  country = FRA }
				}
				random = 90
			}
		}
	}

	name = "Recovering from the Purge"
	desc = "With Party, Army and the society subdued, Stalin finally ordered the Purge to slow down. The society recovered slowly - but steadily."
	style = 2
	picture = "news_paper"

	date = { day = 1 month = january year = 1939 }
	offset = 28
	deathdate = { day = 1 month = january year = 1943 }

	action_a = {
		name = "OK"
		command = { type = industrial_modifier which = total value = 5 }
		command = { type = build_cost which = land value = -3 }
		command = { type = build_time which = land value = -3 }
		command = { type = clrflag which = Saboteurs_2 }
	}
}
 

Fernando Torres

Darkest Hour Game Designer
48 Badges
Dec 2, 2006
10.182
39
rayan-nezzar.fr
  • Rome: Vae Victis
  • Penumbra - Black Plague
  • Victoria: Revolutions
  • Europa Universalis: Rome
  • Rome Gold
  • Semper Fi
  • Sengoku
  • Ship Simulator Extremes
  • Supreme Ruler 2020
  • Supreme Ruler: Cold War
  • Victoria 2
  • Victoria 2: A House Divided
  • Europa Universalis III Complete
  • 500k Club
  • Crusader Kings II: Holy Knight (pre-order)
  • Elven Legacy Collection
  • Hearts of Iron II: Beta
  • Pride of Nations
  • Rise of Prussia
  • Mount & Blade: Warband
  • Mount & Blade: With Fire and Sword
  • Achtung Panzer
  • Hearts of Iron IV Sign-up
  • Hearts of Iron IV: Cadet
  • For The Glory
  • Hearts of Iron II: Armageddon
  • Cities in Motion
  • Crusader Kings II
  • Commander: Conquest of the Americas
  • Darkest Hour
  • Deus Vult
  • East India Company
  • East India Company Collection
  • Europa Universalis III: Chronicles
  • Europa Universalis III Complete
  • Europa Universalis IV
  • Arsenal of Democracy
  • For the Motherland
  • Hearts of Iron III
  • Heir to the Throne
  • Europa Universalis III Complete
  • Iron Cross
  • Legio
  • The Kings Crusade
  • Lost Empire - Immortals
  • Magicka
  • Majesty 2
  • March of the Eagles
This looks somewhat unnecessarily complicated to me
If the main idea is that players start with high dissent but can get rid of some of it via the purges, then the starting dissent needs to be further increased, otherwise this would create an uber-USSR for good players
What i'd suggest is first release this as a mod for beta 1.02 and let's see how fans react
 

MartinSWE

Colonel
134 Badges
Mar 14, 2009
1.198
206
  • Europa Universalis IV
  • Hearts of Iron IV: By Blood Alone
  • Hearts of Iron IV: No Step Back
  • Humble Paradox Bundle
  • Crusader Kings III
  • Battle for Bosporus
  • Europa Universalis 4: Emperor
  • Stellaris: Necroids
  • Stellaris: Nemesis
  • Victoria 3 Sign Up
  • Pillars of Eternity
  • Warlock: Master of the Arcane
  • Europa Universalis III Complete
  • Sword of the Stars II
  • Teleglitch: Die More Edition
  • Victoria 2
  • War of the Roses
  • 500k Club
  • Magicka: Wizard Wars Founder Wizard
  • Mount & Blade: Warband
  • Mount & Blade: With Fire and Sword
  • Hearts of Iron IV: Colonel
  • Hearts of Iron IV: Field Marshal
  • Tyranny: Archon Edition
  • Tyranny: Archon Edition
  • Stellaris: Digital Anniversary Edition
  • Stellaris: Leviathans Story Pack
  • Cities: Skylines - Mass Transit
  • Crusader Kings Complete
  • Hearts of Iron IV: Death or Dishonor
  • Age of Wonders III
  • Cities: Skylines - Green Cities
  • Crusader Kings II: Jade Dragon
  • Hearts of Iron IV: Expansion Pass
  • Stellaris: Humanoids Species Pack
  • Surviving Mars: Digital Deluxe Edition
  • Cities: Skylines - Parklife
  • Stellaris: Distant Stars
  • Shadowrun Returns
  • Shadowrun: Dragonfall
  • Surviving Mars: First Colony Edition
  • Cities: Skylines Industries
  • Imperator: Rome Deluxe Edition
  • Prison Architect
  • Surviving Mars: First Colony Edition
  • Imperator: Rome Sign Up
  • Cities: Skylines - Campus
  • Age of Wonders: Planetfall Sign Up
  • Imperator: Rome
  • Penumbra - Black Plague
This looks somewhat unnecessarily complicated to me
If the main idea is that players start with high dissent but can get rid of some of it via the purges, then the starting dissent needs to be further increased, otherwise this would create an uber-USSR for good players
What i'd suggest is first release this as a mod for beta 1.02 and let's see how fans react

Another alternative would be to use the regular DH purge but remove or atleast reduce the Dissent and instead add penalties on research speed and organisation (biggest blow from the purges was the mass arrests/killings of officers and interference/arrests of research teams and innovators). These penalties should last until the End of the Winter War after which Stalin realized just how bad the situation was and began the huge reformation of the Army and ordered Beria to lessen the opression from the Purge. An added bonus with giving the USSR an organisation penalty that is in effect during the Winter War is that it will make their losses bigger and perhaps even give Finland a chance to stand up like they did IRL.

Rokossovsky should also be awoken in the End of the Winter War Event since he was historically released from NKVD captivity in early 1940.
 
Last edited:

benden

Captain
24 Badges
Oct 4, 2006
323
0
  • Hearts of Iron IV Sign-up
  • BATTLETECH: Heavy Metal
  • BATTLETECH: Season pass
  • BATTLETECH: Flashpoint
  • Shadowrun: Dragonfall
  • Shadowrun Returns
  • Hearts of Iron IV: Expansion Pass
  • Hearts of Iron IV: Death or Dishonor
  • BATTLETECH
  • Hearts of Iron IV: Together for Victory
  • Hearts of Iron IV: Colonel
  • Hearts of Iron IV: Cadet
  • Arsenal of Democracy
  • Pillars of Eternity
  • 500k Club
  • Darkest Hour
  • Crusader Kings II: Sword of Islam
  • Crusader Kings II: Sunset Invasion
  • Crusader Kings II: Sons of Abraham
  • Crusader Kings II: The Republic
  • Crusader Kings II: Rajas of India
  • Crusader Kings II: The Old Gods
  • Crusader Kings II: Legacy of Rome
  • Crusader Kings II
In the Road to Victory mod we had Marshall Vasily Blücher slept as historically in the Battle of Chasan Lake SOV event...
Rework the Great Purge events if you wish, but especially don't forget to release from gulag/wake the historically imprisonned/slept generals when Great Patriotic War begins!