From d4514df8c33f85848e4332196f45bfa61a1205f0 Mon Sep 17 00:00:00 2001
From: hexall90 <hexall90@gmail.com>
Date: Mon, 2 Oct 2017 18:43:46 +0200
Subject: [PATCH] working on everything

---
 TODO.txt                                  |   6 +-
 src/SecExp/SecExpBackwardCompatibility.tw |  32 +++-
 src/SecExp/attackGenerator.tw             |   3 +-
 src/SecExp/propagandaHub.tw               | 182 +++++++++++++++++++++-
 src/SecExp/secInit.tw                     |  11 +-
 src/SecExp/securityHQ.tw                  |   3 +-
 src/SecExp/securityReport.tw              | 150 +++++++-----------
 src/uncategorized/manageArcology.tw       |  20 ++-
 src/uncategorized/storyCaption.tw         |  63 ++++----
 9 files changed, 331 insertions(+), 139 deletions(-)

diff --git a/TODO.txt b/TODO.txt
index 392261e714f..436716c16a5 100644
--- a/TODO.txt
+++ b/TODO.txt
@@ -4,4 +4,8 @@
 -add fortifications
 -add casualties to the counters
 -add upkeep costs
--add security/authority and crime choices to game creation
\ No newline at end of file
+-add security/authority and crime choices to game creation
+-add random crimes to report and more detailed ones as events
+-rewrite attackoption to reflect new recon system
+-more foci for the propaganda machine?
+-min rep for upgrades
\ No newline at end of file
diff --git a/src/SecExp/SecExpBackwardCompatibility.tw b/src/SecExp/SecExpBackwardCompatibility.tw
index b6f8a904cff..3f6352b73d1 100644
--- a/src/SecExp/SecExpBackwardCompatibility.tw
+++ b/src/SecExp/SecExpBackwardCompatibility.tw
@@ -2,7 +2,7 @@
 
 /* base stats */
 <<if ndef $authority>>
-	<<set $authority = 1000>>
+	<<set $authority = 0>>
 <</if>>
 <<if ndef $security>>
 	<<set $security = 50>>
@@ -87,7 +87,35 @@
 	<<set $readinessUpgrades = {
 	earlyWarn: 0,
 	rapidPlatforms: 0,
-	pathways: 0}>>
+	pathways: 0
+	rapidVehicles: 0}>>
+<</if>>
+<<if ndef $propHub>>
+	<<set $propHub = 0>>
+<</if>>
+<<if ndef $propCampaign>>
+	<<set $propCampaign = 0>>
+<</if>>
+<<if ndef $propFocus>>
+	<<set $propFocus = "none">>
+<</if>>
+<<if ndef $miniTruth>>
+	<<set $miniTruth = 0>>
+<</if>>
+<<if ndef $fakeNews>>
+	<<set $fakeNews = 0>>
+<</if>>
+<<if ndef $controlLeaks>>
+	<<set $controlLeaks = 0>>
+<</if>>
+<<if ndef $secretService>>
+	<<set $secretService = 0>>
+<</if>>
+<<if ndef $blackOps>>
+	<<set $blackOps = 0>>
+<</if>>
+<<if ndef $marketInfiltration>>
+	<<set $marketInfiltration = 0>>
 <</if>>
 
 /* armed forces stats */
diff --git a/src/SecExp/attackGenerator.tw b/src/SecExp/attackGenerator.tw
index 21401910dd5..d42b8900763 100644
--- a/src/SecExp/attackGenerator.tw
+++ b/src/SecExp/attackGenerator.tw
@@ -19,8 +19,7 @@
 		<<set _attackChance += 5>>
 	<</if>>
 <</if>>
-/* testing */
-<<set _attackChance = 100>>
+/* testing <<set _attackChance = 100>> */
 
 /* Rolls to see if attack happens this week */
 /* raiders are attracted by low security */
diff --git a/src/SecExp/propagandaHub.tw b/src/SecExp/propagandaHub.tw
index 18101b28f8a..dae8d8ca087 100644
--- a/src/SecExp/propagandaHub.tw
+++ b/src/SecExp/propagandaHub.tw
@@ -1 +1,181 @@
-:: propagandaHub [nobr]
\ No newline at end of file
+:: propagandaHub [nobr]
+
+Propaganda Hub
+<hr>
+
+The propaganda hub is a surprisingly inconspicuous building, dimly lit from the outside. You are well aware however of its role and its importance. You confidently enter its unassuming doorway and calmly review the work being done here.
+
+<br>
+<br>
+
+/* classic propaganda */
+<<if $propCampaign == 0>>
+	<<link "Set up a propaganda campaign">>
+		<<set $propCampaign += 1>>
+		<<set $cash -= 5000*$upgradeMultiplierArcology>>
+		<<set $propFocus == "social engineering">>
+		<<goto "propagandaHub">>
+	<</link>>
+	<br>Set up a propaganda campaign to align your citizens with your goals.
+	<br>//Costs ¤<<print Math.trunc(5000*$upgradeMultiplierArcology)>>. Will provide the focused resource each week, but will cost reputation in upkeep.//
+<<else>>
+	You have set up a team of trained slaves and expert propagandists, ready to spread the message of your choosing to the population.
+	<br>
+	<<if $propFocus == "social engineering">>
+		Focus on social engineering
+	<<else>>
+		<<link "Focus on social engineering">>
+			<<set $propFocus = "social engineering">>
+			<<goto "propagandaHub">>
+		<</link>>
+	<</if>>
+	|
+	<<if $propFocus == "immigration">>
+		Focus on immigration
+	<<else>>
+		<<link "Focus on immigration">>
+			<<set $propFocus = "immigration">>
+			<<goto "propagandaHub">>
+		<</link>>
+	<</if>>
+	|
+	<<if $propFocus == "enslavement">>
+		Focus on enslavement
+	<<else>>
+		<<link "Focus on enslavement">>
+			<<set $propFocus = "enslavement">>
+			<<goto "propagandaHub">>
+		<</link>>
+	<</if>>
+	|
+	<<if $propFocus == "recruitment">>
+		Focus on recruitment
+	<<else>>
+		<<link "Focus on recruitment">>
+			<<set $propFocus = "recruitment">>
+			<<goto "propagandaHub">>
+		<</link>>
+	<</if>>	
+	<br>
+	<<if $propFocus == "social engineering">>
+		You are concentrating your propaganda efforts towards increasing the acceptance of your chosen future societies.
+	<<elseif $propFocus == "immigration">>
+		You are concentrating your propaganda efforts towards convincing more people to immigrate to your arcology.
+	<<elseif $propFocus == "enslavement">>
+		You are concentrating your propaganda efforts towards convincing more people to voluntarily enslave themselves.
+	<<elseif $propFocus == "recruitment">>
+		You are concentrating your propaganda efforts towards convincing more citizens to enter the militia.
+	<</if>>
+	<br>
+	<<if $propCampaign < 5>>
+		<<link "Invest more resources in the propaganda machine">>
+			<<set $propCampaign += 1>>
+			<<set $cash -= 5000 * $upgradeMultiplierArcology * ($propCampaign + 1)>>
+			<<goto "propagandaHub">>
+		<</link>>
+		<br>Invest more resources into the project to increase its effectiveness.
+		<br>//Costs ¤<<print Math.trunc(5000 * $upgradeMultiplierArcology * ($propCampaign + 1))>>. Will provide more of the focused resource each week, but increase reputation upkeep.//
+	<<else>>
+		You upgraded your propaganda machine to its limits.
+	<</if>>
+<</if>>	
+	
+<br>
+<br>
+
+/* ministry of truth */
+<<if $miniTruth == 0>>
+	<<link "Set up the authenticity department">>
+		<<set $miniTruth += 1>>
+		<<set $cash -= 5000*$upgradeMultiplierArcology>>
+		<<goto "propagandaHub">>
+	<</link>>
+	<br>Set up a department tasked with guaranteeing the authenticity of all information available in the arcology. Of course if reality is against what is best for the arcology, then it should be redacted as well.
+	<br>//Costs ¤<<print Math.trunc(5000*$upgradeMultiplierArcology)>>. Will provide authority and unlock special upgrades, but will increase upkeep.//
+<<else>>
+	<<if $miniTruth < 5>>
+		<<link "Enlarge the authenticity department">>
+			<<set $miniTruth += 1>>
+			<<set $cash -= 5000*$upgradeMultiplierArcology * ($miniTruth + 1)>>
+			<<goto "propagandaHub">>
+		<</link>>
+		<br>Invest more resources into the project to increase its effectiveness.
+		<br>//Costs ¤<<print Math.trunc(5000 * $upgradeMultiplierArcology * ($miniTruth + 1))>>. Will provide more authority each week, but increases upkeep.//
+	<<else>>
+		You have upgraded the authenticity department to its maximum.
+	<</if>>
+	<br>
+	<<if $fakeNews == 0>>
+		<<link "Install a news generator">>
+			<<set $fakeNews = 1>>
+			<<set $cash -= 10000*$upgradeMultiplierArcology>>
+			<<goto "propagandaHub">>
+		<</link>>
+		<br>Install an automatic news generator, able to fabricate thousands of plausible sounding news every day.
+		<br>//Costs ¤<<print Math.trunc(10000 * $upgradeMultiplierArcology)>>. The authenticity dept. now provides reputation as well as authority, but increases upkeep.//
+	<<else>>
+		You have installed an automatic news generator.
+	<</if>>
+	<br>
+	<<if $controlLeaks == 0>>
+		<<link "Institute controlled leaks protocols">>
+			<<set $controlLeaks = 1>>
+			<<set $cash -= 10000*$upgradeMultiplierArcology>>
+			<<goto "propagandaHub">>
+		<</link>>
+		<br>Institute a system able to release erroneous, but plausible, information about your business, leading your competitors to prepared economical traps.
+		<br>//Costs ¤<<print Math.trunc(10000 * $upgradeMultiplierArcology)>>. Will increase prosperity each week, but increases upkeep.//
+	<<else>>
+		You have instituted controlled leaks protocols, able to create fabricated leaks of sensible information.
+	<</if>>
+<</if>>
+
+<br>
+<br>
+
+/* secret police */
+<<if $secretService == 0>>
+	<<link "Set up personal secret service">>
+		<<set $secretService += 1>>
+		<<set $cash -= 10000*$upgradeMultiplierArcology>>
+		<<goto "propagandaHub">>
+	<</link>>
+	<br>Set up a department tasked with the protection of your person, as well as operations requiring a delicate approach.
+	<br>//Costs ¤<<print Math.trunc(5000*$upgradeMultiplierArcology)>>. Will provide authority and unlock special upgrades, but will increase upkeep.//
+<<else>>
+	<<if $secretService < 5>>
+		<<link "Expand the secret service">>
+			<<set $secretService += 1>>
+			<<set $cash -= 5000*$upgradeMultiplierArcology * ($secretService + 1)>>
+			<<goto "propagandaHub">>
+		<</link>>
+		<br>Invest more resources into the project to increase its effectiveness.
+		<br>//Costs ¤<<print Math.trunc(5000 * $upgradeMultiplierArcology * ($secretService + 1))>>. Will provide more authority each week, but increases upkeep.//
+	<<else>>
+		You have upgraded the secret service to its maximum.
+	<</if>>
+	<br>
+	<<if $blackOps == 0>>
+		<<link "Create a black ops team">>
+			<<set $blackOps = 1>>
+			<<set $cash -= 10000*$upgradeMultiplierArcology>>
+			<<goto "propagandaHub">>
+		<</link>>
+		<br>Create a black ops team, ready to carry out corporate sabotage and sensible operations to furhter your goals.
+		<br>//Costs ¤<<print Math.trunc(10000 * $upgradeMultiplierArcology)>>. The secret services now provide security as well a authority, but increases upkeep.//
+	<<else>>
+		You have created a black ops team.
+	<</if>>
+	<br>
+	<<if $marketInfiltration == 0>>
+		<<link "Infiltrate the black market">>
+			<<set $marketInfiltration = 1>>
+			<<set $cash -= 10000*$upgradeMultiplierArcology>>
+			<<goto "propagandaHub">>
+		<</link>>
+		<br>Establish a presence on the black market in order to manipulate it.
+		<br>//Costs ¤<<print Math.trunc(10000 * $upgradeMultiplierArcology)>>. Will provide cash each week, but will increase crime.//
+	<<else>>
+		You have infiltrated the black market and are now in partial control of it.
+	<</if>>
+<</if>>
\ No newline at end of file
diff --git a/src/SecExp/secInit.tw b/src/SecExp/secInit.tw
index 73e3a17c2d4..c575ffe1d12 100644
--- a/src/SecExp/secInit.tw
+++ b/src/SecExp/secInit.tw
@@ -1,7 +1,7 @@
 :: secInit [nobr]
 
 /* base vars */
-<<set $authority = 1000>>
+<<set $authority = 0>>
 <<set $security = 50>>
 <<set $secRestPoint = 40>>
 <<set $crime = 20>>
@@ -46,6 +46,15 @@
 	rapidPlatforms: 0,
 	pathways: 0,
 	rapidVehicles: 0}>>
+<<set $propHub = 0>>
+<<set $propCampaign = 0>>
+<<set $propFocus = "none">>
+<<set $miniTruth = 0>>
+<<set $fakeNews = 0>>
+<<set $controlLeaks = 0>>
+<<set $secretService = 0>>
+<<set $blackOps = 0>>
+<<set $marketInfiltration = 0>>
 
 /* armed forces stats */
 <<set $targetUnit = 0>>
diff --git a/src/SecExp/securityHQ.tw b/src/SecExp/securityHQ.tw
index dfe38fba0e0..6752253c108 100644
--- a/src/SecExp/securityHQ.tw
+++ b/src/SecExp/securityHQ.tw
@@ -1,10 +1,11 @@
 :: securityHQ [nobr]
 
-<<set $nextButton = "Back", $nextLink = "Manage Arcology">>
 
 Security headquarters
 <hr>
 
+The security headquarters stand in front of you. Innumerable screens flood with light the great central room. <<if $secHelots > 0>>Some slaves see you enter and interrupt their work to greet you.<</if>> From here you can build a safe and prosperous arcology.
+<br>
 /* security level. Slaves */
 You have <span id="secHel"><<print $secHelots>></span> slaves working in the HQ. $reqHelots are required and you have <span id="hel"><<print $helots>></span> free menial slaves.
 <<if $secHelots < $reqHelots>>
diff --git a/src/SecExp/securityReport.tw b/src/SecExp/securityReport.tw
index 296d7b9c5ee..35da5dd8eef 100644
--- a/src/SecExp/securityReport.tw
+++ b/src/SecExp/securityReport.tw
@@ -13,78 +13,48 @@
 <<if $useTabs == 0>>__Arcology Management__<</if>>
 <br>
 
+<strong>Security</strong>:
 <<if $secHelots > 0>>
-	<<print $secHelots>> work tirelessly to improve the security of your arcology.
-<<elseif $secHQ == 1>>
-	Your security HQ lies empty, it's not going to help improving the security of the arcology.
+	<<print $secHelots>> work tirelessly to improve the security of your arcology
+	<<if $mercenaries >= 1 && $arcologyUpgrade.drones == 1>>
+		, while your mercenaries and security drones tirelessly patrol the arcology to keep it safe.
+	<<elseif $arcologyUpgrade.drones == 1>>
+		, while your security drones tirelessly patrol the arcology to keep it safe.
+	<<else>>
+		, while your loyal subordinates try to keep the arcology safe to the best of their abilites.
+	<</if>>
+<<else>>
+	<<if $mercenaries >= 1 && $arcologyUpgrade.drones == 1>>
+		Your mercenaries and security drones tirelessly patrol the arcology to keep it safe.
+	<<elseif $arcologyUpgrade.drones == 1>>
+		Your security drones tirelessly patrol the arcology to keep it safe.
+	<<else>>
+		Your loyal subordinates try to keep the arcology safe to the best of their abilites.
+	<</if>>
 <</if>>
 
 /* security modifiers */
 <<if $ACitizens + $ASlaves <= 2000>>
-	The small number of residents makes their job easier <<set _secGrowth += 2>>
-	<<if _immigration < 10>>
-		and the limited number of immigrants that reached the arcology this week does not have any sensible impact.<<set _secGrowth += 0.5>>
-	<<elseif _immigration < 30>>
-		, unfortunately the number of immigrants that reached the arcology this week is high enough to complicate security protocols.<<set _secGrowth -= 0.2>>
-	<<elseif _immigration < 60>>
-		, unfortunately the high number of immigrants that reached the arcology this week complicates security protocols.<<set _secGrowth -= 0.5>>
-	<<elseif _immigration < 80>>
-		, unfortunately the high number of immigrants that reached the arcology this week severely complicates security protocols.<<set _secGrowth -= 1>>
-	<<else>>
-		, unfortunately the extremely high number of immigrants that reached the arcology this week severely complicates security protocols.<<set _secGrowth -= 2>>
-	<</if>>
+	The small number of residents makes their job easier<<set _secGrowth += 2>>
 <<elseif $ACitizens + $ASlaves <= 4000>>
-	The relatively low number of residents makes their job a little easier. <<set _secGrowth += 1>>
-	<<if _immigration < 10>>
-		and the limited number of immigrants that reached the arcology this week does not have any sensible impact.<<set _secGrowth += 0.5>>
-	<<elseif _immigration < 30>>
-		, unfortunately the number of immigrants that reached the arcology this week is high enough to complicate security protocols.<<set _secGrowth -= 0.2>>
-	<<elseif _immigration < 60>>
-		, unfortunately the high number of immigrants that reached the arcology this week complicates security protocols.<<set _secGrowth -= 0.5>>
-	<<elseif _immigration < 80>>
-		, unfortunately the high number of immigrants that reached the arcology this week severely complicates security protocols.<<set _secGrowth -= 1>>
-	<<else>>
-		, unfortunately the extremely high number of immigrants that reached the arcology this week severely complicates security protocols.<<set _secGrowth -= 2>>
-	<</if>>
+	The relatively low number of residents makes their job a little easier<<set _secGrowth += 1>>
 <<elseif $ACitizens + $ASlaves <= 6000>>
-	The relatively high number of residents makes their job a little harder. <<set _secGrowth -= -0.5>>
-	<<if _immigration < 10>>
-		, but the limited number of immigrants that reached the arcology this week does not have any sensible impact.<<set _secGrowth += 0.5>>
-	<<elseif _immigration < 30>>
-		. Furthermore, the number of immigrants that reached the arcology this week is high enough to complicate security protocols.<<set _secGrowth -= 0.2>>
-	<<elseif _immigration < 60>>
-		. Furthermore, the high number of immigrants that reached the arcology this week complicates security protocols.<<set _secGrowth -= 0.5>>
-	<<elseif _immigration < 80>>
-		. Furthermore, the high number of immigrants that reached the arcology this week severely complicates security protocols.<<set _secGrowth -= 1>>
-	<<else>>
-		. Furthermore, the extremely high number of immigrants that reached the arcology this week severely complicates security protocols.<<set _secGrowth -= 2>>
-	<</if>>
+	The relatively high number of residents makes their job a little harder<<set _secGrowth -= -0.5>>
 <<elseif $ACitizens + $ASlaves <= 8000>>
-	The high number of residents makes their job harder.<<set _secGrowth -= 1>>
-	<<if _immigration < 10>>
-		, but the limited number of immigrants that reached the arcology this week does not have any sensible impact.<<set _secGrowth += 0.5>>
-	<<elseif _immigration < 30>>
-		. Furthermore, the number of immigrants that reached the arcology this week is high enough to complicate security protocols.<<set _secGrowth -= 0.2>>
-	<<elseif _immigration < 60>>
-		. Furthermore, the high number of immigrants that reached the arcology this week complicates security protocols.<<set _secGrowth -= 0.5>>
-	<<elseif _immigration < 80>>
-		. Furthermore, the high number of immigrants that reached the arcology this week severely complicates security protocols.<<set _secGrowth -= 1>>
-	<<else>>
-		. Furthermore, the extremely high number of immigrants that reached the arcology this week severely complicates security protocols.<<set _secGrowth -= 2>>
-	<</if>>
+	The high number of residents makes their job harder<<set _secGrowth -= 1>>
 <<else>>
-	The extremely high number of residents makes their job a lot harder.<<set _secGrowth -= 2>>
-	<<if _immigration < 10>>
-		, but the limited number of immigrants that reached the arcology this week does not have any sensible impact.<<set _secGrowth += 0.5>>
-	<<elseif _immigration < 30>>
-		. Furthermore, the number of immigrants that reached the arcology this week is high enough to complicate security protocols.<<set _secGrowth -= 0.2>>
-	<<elseif _immigration < 60>>
-		. Furthermore, the high number of immigrants that reached the arcology this week complicates security protocols.<<set _secGrowth -= 0.5>>
-	<<elseif _immigration < 80>>
-		. Furthermore, the high number of immigrants that reached the arcology this week severely complicates security protocols.<<set _secGrowth -= 1>>
-	<<else>>
-		. Furthermore, the extremely high number of immigrants that reached the arcology this week severely complicates security protocols.<<set _secGrowth -= 2>>
-	<</if>>
+	The extremely high number of residents makes their job a lot harder<<set _secGrowth -= 2>>
+<</if>>
+<<if _immigration < 10>>
+	The limited number of immigrants that reached the arcology this week does not have any serious impact on the efficacy of current security measures.<<set _secGrowth += 0.5>>
+<<elseif _immigration < 30>>
+	The number of immigrants that reached the arcology this week is high enough to complicate security protocols.<<set _secGrowth -= 0.2>>
+<<elseif _immigration < 60>>
+	The high number of immigrants that reached the arcology this week complicates security protocols.<<set _secGrowth -= 0.5>>
+<<elseif _immigration < 80>>
+	The high number of immigrants that reached the arcology this week severely complicates security protocols.<<set _secGrowth -= 1>>
+<<else>>
+	The extremely high number of immigrants that reached the arcology this week severely complicates security protocols.<<set _secGrowth -= 2>>
 <</if>>
 <<if $crime < 20>>
 	Crime is a distant problem in the arcology, which makes improving security easier.<<set _secGrowth += 1>>
@@ -108,31 +78,22 @@
 <<else>>
 	The absolute authority you hold on the arcology makes the security department's work a lot easier.<<set _secGrowth += 1>>
 <</if>>
-<<if $lastAttackWeeks < 3>>
+<<if $lastAttackWeeks < 3 && $week > 3>>
 	The recent attack has a negative effect on the security of the arcology.<<set _secGrowth -= 1>>
-<<elseif $lastAttackWeeks < 5>>
+<<elseif $lastAttackWeeks < 5 && $week > 5>>
 	While some time has passed, the last attack still has a negative effect on the security of the arcology.<<set _secGrowth -= 0.5>>
 <<else>>
 	The arcology has not been attacked in a while, which has a positive effect on security.<<set _secGrowth += 0.5>>
 <</if>>
 
-<br>
-
 /* resting point */
 <<set _secRest = $secRestPoint * ($secHelots / $reqHelots)>>
 <<if _secRest < 0>>
 	<<set _secRest = 20>>
 <</if>>
-<<if _secRest < $secRestPoint>>
+<<if _secRest < $secRestPoint && $secHQ == 1>>
 	The limited staff assigned to the HQ hampers the improvements to security achieved this week.
 <</if>>
-<<if $security < _secRest>>
-	Your security level is below its resting point. There is enough infrastructure and staff in place to improve it beyond its current level.
-<<elseif $security == _secRest>>
-	Your security level is at its resting point. There is enough infrastructure and staff in place to maintain it at its current level.
-<<else>>
-	Your security level is above its resting point. There is not enough infrastructure or staff in place to maintain it at its current level.
-<</if>>
 <<set _restGrowth = (_secRest - $security) * 0.2>>
 <<set _newSec = $security + _secGrowth + _secRest>>
 <<if _newSec < $security>>
@@ -147,30 +108,31 @@
 <br>
 <br>
 
+<strong>Crime</strong>:
 /* crime modifiers */
 <<if $week < 30>>
-	Due to the deterioration of the old world countries, crime focuses more and more on the prosperous free cities, yours included.<<set _crimeGrowth += 0.5>>
+	Due to the deterioration of the old world countries, organized crime focuses more and more on the prosperous free cities, yours included. This has a small impact on the growth of criminal activities in your arcology.<<set _crimeGrowth += 0.5>>
 <<elseif $week < 60>>
-	Due to the deterioration of the old world countries, crime focuses more and more on the prosperous free cities, yours included.<<set _crimeGrowth += 1>>
+	Due to the deterioration of the old world countries, organized crime focuses more and more on the prosperous free cities, yours included. This has a noticeable impact on the growth of criminal activities in your arcology.<<set _crimeGrowth += 1>>
 <<elseif $week < 90>>
-	Due to the deterioration of the old world countries, crime focuses more and more on the prosperous free cities, yours included.<<set _crimeGrowth += 1.5>>
+	Due to the deterioration of the old world countries, organized crime focuses more and more on the prosperous free cities, yours included. This has a moderate impact on the growth of criminal activities in your arcology.<<set _crimeGrowth += 1.5>>
 <<elseif $week < 120>>
-	Due to the deterioration of the old world countries, crime focuses more and more on the prosperous free cities, yours included.<<set _crimeGrowth += 2>>
+	Due to the deterioration of the old world countries, organized crime focuses more and more on the prosperous free cities, yours included. This has a big impact on the growth of criminal activities in your arcology.<<set _crimeGrowth += 2>>
 <<else>>
-	Due to the deterioration of the old world countries, crime focuses more and more on the prosperous free cities, yours included.<<set _crimeGrowth += 2.5>>
+	Due to the deterioration of the old world countries, organized crime focuses more and more on the prosperous free cities, yours included. This has a huge impact on the growth of criminal activities in your arcology.<<set _crimeGrowth += 2.5>>
 <</if>>
 <<if $arcologies[0].prosperity < 50>>
-	The low prosperity of the arcology facilitates criminal activities.<<set _crimeGrowth += 2>>
+	The low prosperity of the arcology facilitates criminal recruitment and organization.<<set _crimeGrowth += 2>>
 <<elseif $arcologies[0].prosperity < 80>>
-	The fairly low prosperity of the arcology facilitates criminal activities.<<set _crimeGrowth += 1>>
+	The fairly low prosperity of the arcology facilitates criminal recruitment and organization.<<set _crimeGrowth += 1>>
 <<elseif $arcologies[0].prosperity < 12>>
-	The prosperity of the arcology is not high or low enough to have significant effects on the crime level.
+	The prosperity of the arcology is not high or low enough to have significant effects on criminal recruitment and organization.
 <<elseif $arcologies[0].prosperity < 16>>
-	The prosperity of the arcology is high enough to provide its citizens a decent life, hampering criminal activities.<<set _crimeGrowth -= 0.5>>
+	The prosperity of the arcology is high enough to provide its citizens a decent life, hampering criminal recruitment and organization.<<set _crimeGrowth -= 0.5>>
 <<elseif $arcologies[0].prosperity < 18>>
-	The prosperity of the arcology is high enough to provide its citizens a decent life, significantly hampering criminal activities.<<set _crimeGrowth -= 1>>
+	The prosperity of the arcology is high enough to provide its citizens a decent life, significantly hampering criminal recruitment and organization.<<set _crimeGrowth -= 1>>
 <<else>>
-	The prosperity of the arcology is high enough to provide its citizens a very good life, significantly hampering criminal activities.<<set _crimeGrowth -= 2>>
+	The prosperity of the arcology is high enough to provide its citizens a very good life, significantly hampering criminal recruitment and organization.<<set _crimeGrowth -= 2>>
 <</if>>
 <<if $ASlaves < 1000>>
 	The low number of slaves in the arcology does not hinder the activity of law enforcement, limiting crime growth.<<set _crimeGrowth -= 1>>
@@ -182,13 +144,13 @@
 	The number of slaves in the arcology is becoming a a big issue for law enforcement, facilitating crime growth.<<set _crimeGrowth += 1.5>>
 <</if>>
 <<if $security <= 20>>
-	The security measures in place are not enough yet to effectively fight the current crime level, barely hindering its growth.
+	The security measures in place are severely limited, allowing crime to grow uncontested.
 <<elseif $security <= 50>>
-	The security measures in place are barely adequate to fight the current crime level, hardly hindering its growth.<<set _crimeGrowth -= 1>>
+	The security measures in place are of limited effect and use, giving only mixed results in their fight against crime.<<set _crimeGrowth -= 1>>
 <<elseif $security <= 75>>
-	The security measures in place are adequate to fight the current crime level, hindering its growth.<<set _crimeGrowth -= 2.5>>
+	The security measures in place are well developed and effective, making a serious dent in the profitability of criminal activity in your arcology.<<set _crimeGrowth -= 2.5>>
 <<else>>
-	The security measures in place are more than adequate to fight the current crime level, considerably hindering its growth.<<set _crimeGrowth -= 5>>
+	The security measures in place are extremely well developed and very effective, posing a serious threat even to the most powerful criminal organizations in existence.<<set _crimeGrowth -= 5>>
 <</if>>
 <<if $authority < 5000>>
 	Your low authority allows crime to grow undisturbed.<<set _crimeGrowth += 1>>
@@ -204,7 +166,7 @@
 
 /* crime cap */
 <<set _crimeCap = Math.clamp($crimeCap + $crimeCap * (($reqHelots - $secHelots) / $reqHelots),0,100)>>
-<<if _crimeCap < $crimeCap>>
+<<if _crimeCap < $crimeCap && $secHQ == 1>>
 	The limited staff assigned to the HQ allows more space for criminals to act.
 <</if>>
 <<set _newCrime = $crime + _crimeGrowth>>
@@ -218,4 +180,8 @@
 <<else>>
 	This week @@.green;crime decreased@@.
 <</if>>
-<<set $crime = _newCrime>>
\ No newline at end of file
+<<set $crime = _newCrime>>
+
+<br>
+
+<strong>Recruitment</strong>: here goes manpower gained this week.
\ No newline at end of file
diff --git a/src/uncategorized/manageArcology.tw b/src/uncategorized/manageArcology.tw
index 286a46020d5..51749054731 100644
--- a/src/uncategorized/manageArcology.tw
+++ b/src/uncategorized/manageArcology.tw
@@ -87,24 +87,32 @@ __Construction__
     You have installed the FCTV receiver and have access to the full range of FCTV's programs. Low viewership rates amongst your citizens limits the impact of FCTV on your societal goals.
 <</if>>
 
+<br>
 /* fortifications */
 
-<br><br>
-
-__Security__
-
+/* security */
+<<if $propHub == 0>>
+	<br>
+	[[Set up the propaganda Hub|Manage Arcology][$cash -= Math.trunc(5000*$upgradeMultiplierArcology), $propHub = 1]]
+	//Costs ¤<<print Math.trunc(5000*$upgradeMultiplierArcology)>>//
+<<else>>
+	<br>
+	The [[Propaganda Hub|propagandaHub]] is ready to manipulate reality on your command.
+<</if>>
 <<if $secHQ == 0>>
-<br>
+	<br>
 	[[Set up the security headquarters|Manage Arcology][$cash -= Math.trunc(5000*$upgradeMultiplierArcology), $secHQ = 1]]
 	//Costs ¤<<print Math.trunc(5000*$upgradeMultiplierArcology)>>//
 <<else>>
+	<br>
 	The [[security HQ|securityHQ]] is constantly working to protect your arcology.
 <</if>>
-<br>
 <<if $arcologyUpgrade.drones == 1 && $secBarracks == 0>>
+	<br>
 	[[Set up the barracks|Manage Arcology][$cash -= Math.trunc(5000*$upgradeMultiplierArcology), $secBarracks = 1]]
 	//Costs ¤<<print Math.trunc(5000*$upgradeMultiplierArcology)>>//
 <<else>>
+	<br>
 	The [[barracks|secBarracks]] patiently await your orders.
 <</if>>
 
diff --git a/src/uncategorized/storyCaption.tw b/src/uncategorized/storyCaption.tw
index ceac329ef70..3304b0945fc 100644
--- a/src/uncategorized/storyCaption.tw
+++ b/src/uncategorized/storyCaption.tw
@@ -199,54 +199,48 @@
 <br>@@.darkviolet;Auth@@ |
 <<set $authority = Math.clamp(Math.trunc($authority), 0, 20000)>>
 <span id="auth">
-<<if $authority > 19000>>
-	@@color:rgb(148,0,211);monarch@@
+<<if $authority > 19500>>
+	@@color:rgb(148,0,211);divine will@@
+<<elseif $authority > 19000>>
+	@@color:rgb(148,0,211);sovereign@@
 <<elseif $authority > 18000>>
-	@@color:rgb(148,0,211);tyrant@@
+	@@color:rgb(148,0,211);monarch@@
 <<elseif $authority > 17000>>
-	@@color:rgb(148,0,211);dictator@@
-<<elseif $authority > 16000>>
-	@@color:rgb(148,0,211);prince@@
+	@@color:rgb(148,0,211);tyrant@@
 <<elseif $authority > 15000>>
-	@@color:rgb(148,0,211);senator@@
+	@@color:rgb(148,0,211);dictator@@
 <<elseif $authority > 14000>>
-	@@color:rgb(148,0,211);director@@
+	@@color:rgb(148,0,211);prince@@
 <<elseif $authority > 13000>>
-	@@color:rgb(148,0,211);superior@@
+	@@color:rgb(148,0,211);master@@
 <<elseif $authority > 12000>>
-	@@color:rgb(148,0,211);celebrated@@
+	@@color:rgb(148,0,211);leader@@
 <<elseif $authority > 11000>>
-	@@color:rgb(148,0,211);honored@@
+	@@color:rgb(148,0,211);director@@
 <<elseif $authority > 10000>>
-	@@color:rgb(148,0,211);acclaimed@@
+	@@color:rgb(148,0,211);overseer@@
 <<elseif $authority > 9000>>
-	@@color:rgb(148,0,211);eminent@@
-<<elseif $authority > 8250>>
-	@@color:rgb(148,0,211);prominent@@
+	@@color:rgb(148,0,211);chief@@
+<<elseif $authority > 8000>>
+	@@color:rgb(148,0,211);manager@@
 <<elseif $authority > 7000>>
-	@@color:rgb(148,0,211);distinguished@@
-<<elseif $authority > 6750>>
-	@@color:rgb(148,0,211);admired@@
+	@@color:rgb(148,0,211);principal@@
 <<elseif $authority > 6000>>
-	@@color:rgb(148,0,211);esteemed@@
-<<elseif $authority > 5250>>
-	@@color:rgb(148,0,211);respected@@
-<<elseif $authority > 4500>>
-	@@color:rgb(148,0,211);known@@
-<<elseif $authority > 3750>>
-	@@color:rgb(148,0,211);recognized@@
+	@@color:rgb(148,0,211);auxiliary@@
+<<elseif $authority > 5000>>
+	@@color:rgb(148,0,211);subordinate@@
+<<elseif $authority > 4000>>
+	@@color:rgb(148,0,211);follower@@
 <<elseif $authority > 3000>>
-	@@color:rgb(148,0,211);rumored@@
-<<elseif $authority > 2250>>
-	@@color:rgb(148,0,211);mostly harmless@@
-<<elseif $authority > 1500>>
-	@@color:rgb(148,0,211);harmless@@
-<<elseif $authority > 750>>
+	@@color:rgb(148,0,211);powerless@@
+<<elseif $authority > 2000>>
 	@@color:rgb(148,0,211);toothless@@
+<<elseif $authority > 1000>>
+	@@color:rgb(148,0,211);mostly harmless@@
 <<else>>
-	@@color:rgb(210,0,211);powerless@@
+	@@color:rgb(148,0,211);harmless@@
 <</if>>
-(<<print $Authority>>)
+($authority)
 </span>
 <br>@@.deepskyblue;Security@@ | @@.deepskyblue;<<print Math.trunc($security)>>%@@
 <br>@@.orangered;Crime@@ | @@.orangered;<<print Math.trunc($crime)>>%@@
@@ -446,6 +440,9 @@
 	<br><br>
 	<br><span id="managePenthouse"><<link "Manage Penthouse">><<set $nextButton = "Back", $nextLink = _Pass>><<goto "Manage Penthouse">><</link>></span> @@.cyan;[P]@@
 	<br><span id="managePerson"><<link "Manage Personal Affairs">><<set $nextButton = "Back", $nextLink = _Pass>><<goto "Manage Personal Affairs">><</link>></span> @@.cyan;[X]@@
+	<<if $propHub == 1>>
+		<br><<link "Manage Propaganda">><<set $nextButton = "Back", $nextLink = _Pass>><<goto "propagandaHub">><</link>>
+	<</if>>
 	<<if $secHQ == 1>>
 		<br><<link "Manage Security">><<set $nextButton = "Back", $nextLink = _Pass>><<goto "securityHQ">><</link>>
 	<</if>>
-- 
GitLab