diff --git a/src/SecExp/propagandaHub.tw b/src/SecExp/propagandaHub.tw
index 411d986787ca3a337c80d99771f40c71e0571688..a1a9ac1ab4fcccfe43430dddffec28a665dbfbc4 100644
--- a/src/SecExp/propagandaHub.tw
+++ b/src/SecExp/propagandaHub.tw
@@ -1,5 +1,13 @@
 :: propagandaHub [nobr]
 
+<<if $PC.technician <= -100>>
+	<<set $PC.technician = 1.5>>
+<<elseif $PC.technician >= 100>>
+	<<set $TechnicianSkillEffect = .5>>
+<<else>>
+	<<set $TechnicianSkillEffect = 1>>
+<</if>>
+
 <<if $career == "capitalist" || $career == "celebrity" || $career == "wealth">>
 	<<set _HistoryDiscount = .5>>
 <<else>>
@@ -79,13 +87,13 @@ The propaganda hub is a surprisingly inconspicuous building, dimly lit from the
 	<<if $propCampaign < 5>>
 		<<link "Invest more resources in the propaganda machine">>
 			<<set $propCampaign += 1>>
-			<<set $cash -= 5000 * $upgradeMultiplierArcology * ($propCampaign + 1) * _HistoryDiscount*(1-(Math.max(0.99,$PC.technician)/100))>> 
+			<<set $cash -= 5000 * $upgradeMultiplierArcology * ($propCampaign + 1) * _HistoryDiscount*(($TechnicianSkillEffect))>> 
 			<<set $PC.engineering += 1, $PC.technician += 1>>
 			<<set $propHubUpkeep += $upgradeUpkeep>>
 			<<goto "propagandaHub">>
 		<</link>>
 		<br>Invest more resources into the project to increase its effectiveness.
-		<br>//Costs <<print cashFormat(Math.trunc(5000 * $upgradeMultiplierArcology * ($propCampaign + 1) * _HistoryDiscount*(1-(Math.max(0.99,$PC.technician)/100))))>>. Will provide more of the focused resource each week, but increases reputation upkeep.//
+		<br>//Costs <<print cashFormat(Math.trunc(5000 * $upgradeMultiplierArcology * ($propCampaign + 1) * _HistoryDiscount*(($TechnicianSkillEffect))))>>. Will provide more of the focused resource each week, but increases reputation upkeep.//
 	<<else>>
 		You upgraded your propaganda machine to its limits.
 	<</if>>
@@ -134,13 +142,13 @@ The propaganda hub is a surprisingly inconspicuous building, dimly lit from the
 	<<if $controlLeaks == 0>>
 		<<link "Institute controlled leaks protocols">>
 			<<set $controlLeaks = 1>>
-			<<set $cash -= 10000*$upgradeMultiplierArcology*_HistoryDiscount*(1-(Math.max(0.99,$PC.technician)/100))>>
+			<<set $cash -= 10000*$upgradeMultiplierArcology*_HistoryDiscount*(($TechnicianSkillEffect))>>
 			<<set $PC.technician += 1>>
 			<<set $propHubUpkeep += $upgradeUpkeep>>
 			<<goto "propagandaHub">>
 		<</link>>
 		<br>Institute a system able to release erroneous, but plausible, information about your business, leading your competitors to prepared financial traps.
-		<br>//Costs <<print cashFormat(Math.trunc(10000 * $upgradeMultiplierArcology * _HistoryDiscount*(1-(Math.max(0.99,$PC.technician)/100))))>>. The authenticity dept. now slightly increases prosperity each week as well as authority, but increases upkeep.//
+		<br>//Costs <<print cashFormat(Math.trunc(10000 * $upgradeMultiplierArcology * _HistoryDiscount*(($TechnicianSkillEffect))))>>. The authenticity dept. now slightly increases prosperity each week as well as authority, but increases upkeep.//
 	<<else>>
 		You have instituted controlled leaks protocols, able to create fabricated leaks of sensible information.
 	<</if>>
diff --git a/src/SecExp/riotControlCenter.tw b/src/SecExp/riotControlCenter.tw
index 4abfb6b0bcba805274c6820100167d1e0caa3610..f345f585be237ce06d69393ce27db5ab37d594db 100644
--- a/src/SecExp/riotControlCenter.tw
+++ b/src/SecExp/riotControlCenter.tw
@@ -1,5 +1,13 @@
 :: riotControlCenter [nobr]
 
+<<if $PC.technician <= -100>>
+	<<set $PC.technician = 1.5>>
+<<elseif $PC.technician >= 100>>
+	<<set $TechnicianSkillEffect = .5>>
+<<else>>
+	<<set $TechnicianSkillEffect = 1>>
+<</if>>
+
 <<set $nextButton = "Back to Arcology Management", $nextLink = "Manage Arcology", $returnTo = "Manage Arcology">>
 
 Riot Control Center
@@ -24,13 +32,13 @@ The riot control center opens its guarded doors to you. The great chamber inside
 	<<if $riotUpgrades.freeMedia < 5>>
 		<<link "Invest more resources in the free media project">>
 			<<set $riotUpgrades.freeMedia += 1>>
-			<<set $cash -= ((5000 * $upgradeMultiplierArcology * ($riotUpgrades.freeMedia + 1))*(1-(Math.max(0.99,$PC.technician)/100)))>>
+			<<set $cash -= ((5000 * $upgradeMultiplierArcology * ($riotUpgrades.freeMedia + 1))*(($TechnicianSkillEffect)))>>
 			<<set $PC.engineering += 1, $PC.technician += 1>>
 			<<set $riotUpkeep += $upgradeUpkeep>>
 			<<goto "riotControlCenter">>
 		<</link>>
 		<br>Invest more resources into the project to increase its effectiveness.
-		<br>//Costs <<print cashFormat(Math.trunc((5000 * $upgradeMultiplierArcology * ($riotUpgrades.freeMedia + 1))*(1-(Math.max(0.99,$PC.technician)/100))))>>. Will accelerate the tension decay, but will increase upkeep costs.//
+		<br>//Costs <<print cashFormat(Math.trunc((5000 * $upgradeMultiplierArcology * ($riotUpgrades.freeMedia + 1))*(($TechnicianSkillEffect))))>>. Will accelerate the tension decay, but will increase upkeep costs.//
 	<<else>>
 		You upgraded your free media scheme to its limits.
 	<</if>>
@@ -153,13 +161,13 @@ The riot control center opens its guarded doors to you. The great chamber inside
 	<<elseif $brainImplantProject < 5>>
 		<<link "Invest more resources in the brain implant project">>
 			<<set $brainImplantProject += 1>>
-			<<set $cash -= ((50000 * $upgradeMultiplierArcology * $brainImplantProject)*(1-(Math.max(0.99,$PC.technician)/100)))>> 
+			<<set $cash -= ((50000 * $upgradeMultiplierArcology * $brainImplantProject)*(($TechnicianSkillEffect)))>> 
 			<<set $PC.engineering += 1, $PC.technician += 1>>
 			<<set $riotUpkeep += $upgradeUpkeep * 100>>
 			<<goto "riotControlCenter">>
 		<</link>>
 		<br>Invest more resources into the project to increase its speed.
-		<br>//Costs <<print cashFormat(Math.trunc((50000 * $upgradeMultiplierArcology * $brainImplantProject)*(1-(Math.max(0.99,$PC.technician)/100))))>>. Will shorten the time required to complete the project.//
+		<br>//Costs <<print cashFormat(Math.trunc((50000 * $upgradeMultiplierArcology * $brainImplantProject)*(($TechnicianSkillEffect))))>>. Will shorten the time required to complete the project.//
 	<<else>>
 		You sped up the project to its maximum.
 	<</if>>
diff --git a/src/SecExp/secBarracks.tw b/src/SecExp/secBarracks.tw
index 514071edfa80dd9c491596ec31442a0b9ff1c535..7e4e54e126809aa296c289796f960e91282258f7 100644
--- a/src/SecExp/secBarracks.tw
+++ b/src/SecExp/secBarracks.tw
@@ -1,5 +1,13 @@
 :: secBarracks [nobr]
 
+<<if $PC.technician <= -100>>
+	<<set $PC.technician = 1.5>>
+<<elseif $PC.technician >= 100>>
+	<<set $TechnicianSkillEffect = .5>>
+<<else>>
+	<<set $TechnicianSkillEffect = 1>>
+<</if>>
+
 <<set $nextButton = "Back to Arcology Management", $nextLink = "Manage Arcology", $returnTo = "Manage Arcology">>
 
 The Barracks
@@ -79,11 +87,11 @@ While this a sore sight for many citiens of $arcologies[0].name, the barracks st
 <<elseif $secBarracksUpgrades.luxury == 2>>
 	<<link "Further increase the quality of life of your soldiers by providing high speed, free access to digital media">>
 		<<set $secBarracksUpgrades.luxury += 1>>
-		<<set $cash -= 10000*1-(Math.max(0.99,$PC.technician)/100)>>
+		<<set $cash -= 10000*($TechnicianSkillEffect)>>
 		<<set $secBarracksUpkeep += $upgradeUpkeep>>
 		<<goto "secBarracks">>
 	<</link>>
-	<br>//Costs <<print cashFormat(10000*1-(Math.max(0.99,$PC.technician)/100))>> and will provide a 5% bonus to morale, for a total of +15%.//
+	<br>//Costs <<print cashFormat(10000*($TechnicianSkillEffect))>> and will provide a 5% bonus to morale, for a total of +15%.//
 <<elseif $secBarracksUpgrades.luxury == 3>>
 	<<link "Further increase the quality of life of your soldiers by adding and staffing an exclusive brothel to the structure">>
 		<<set $secBarracksUpgrades.luxury += 1>>
@@ -157,7 +165,7 @@ __Security Drones__
 	<<if $secBots.troops < $secBots.maxTroops>>
 	|
 		<<link "Replenish the unit">>
-			<<set $cash -= ($secBots.maxTroops - $secBots.troops) * $secBotsCost*1-(Math.max(0.99,$PC.technician)/100)>>
+			<<set $cash -= ($secBots.maxTroops - $secBots.troops) * $secBotsCost*($TechnicianSkillEffect)>>
 			<<set $secBots.troops = $secBots.maxTroops>>
 			<<goto "secBarracks">>
 		<</link>>
@@ -165,7 +173,7 @@ __Security Drones__
 <<else>>
 	You have lost too many security drones to be able to field them again.
 	<<link "Reform the unit">>
-		<<set $cash -= $secBots.maxTroops * $secBotsCost*1-(Math.max(0.99,$PC.technician)/100)>>
+		<<set $cash -= $secBots.maxTroops * $secBotsCost*($TechnicianSkillEffect)>>
 		<<set $secBots.troops = $secBots.maxTroops>>
 		<<set $secBots.active = 1>>
 		<<goto "secBarracks">>
diff --git a/src/SecExp/securityHQ.tw b/src/SecExp/securityHQ.tw
index 6631b781eb7ea005e29b61c54af6b42d393d1a46..829d91e845d4e1a93c4d1f08a0e1f28f5a3a0c28 100644
--- a/src/SecExp/securityHQ.tw
+++ b/src/SecExp/securityHQ.tw
@@ -1,5 +1,13 @@
 :: securityHQ [nobr]
 
+<<if $PC.technician <= -100>>
+	<<set $PC.technician = 1.5>>
+<<elseif $PC.technician >= 100>>
+	<<set $TechnicianSkillEffect = .5>>
+<<else>>
+	<<set $TechnicianSkillEffect = 1>>
+<</if>>
+
 <<if $career == "mercenary" || $career == "gang" || $career == "slaver">>
 	<<set _HistoryDiscount = .5>>
 <<else>>
@@ -111,30 +119,30 @@ Considering the current upgrades the resting level for security is <<print $secR
 <br>
 
 <<if $secUpgrades.nanoCams == 0>>
-	[[Install a nano-camera system |securityHQ][$cash -= Math.trunc((5000*$upgradeMultiplierArcology*_HistoryDiscount)*(1-(Math.max(0.99,$PC.technician)/100))), $secUpgrades.nanoCams = 1, $secRestPoint += 15, $reqHelots += 5, $secHQUpkeep += $upgradeUpkeep]]
-	<br>//Costs <<print cashFormat(Math.trunc((5000*$upgradeMultiplierArcology*_HistoryDiscount)*(1-(Math.max(0.99,$PC.technician)/100))))>>. Will raise rest point of security by 10 points, but will require 5 extra slaves in the headquarters and increases upkeep.//
+	[[Install a nano-camera system |securityHQ][$cash -= Math.trunc((5000*$upgradeMultiplierArcology*_HistoryDiscount)*(($TechnicianSkillEffect))), $secUpgrades.nanoCams = 1, $secRestPoint += 15, $reqHelots += 5, $secHQUpkeep += $upgradeUpkeep]]
+	<br>//Costs <<print cashFormat(Math.trunc((5000*$upgradeMultiplierArcology*_HistoryDiscount)*(($TechnicianSkillEffect))))>>. Will raise rest point of security by 10 points, but will require 5 extra slaves in the headquarters and increases upkeep.//
 <<else>>
 	You have installed all across the arcology closed circuit nano-cameras to keep the arcology under your watchful eye.
 <</if>>
 <br>
 <<if $secUpgrades.cyberBots == 0>>
-	[[Buy cybersecurity algorithms|securityHQ][$cash -= Math.trunc((7500*$upgradeMultiplierArcology*_HistoryDiscount)*(1-(Math.max(0.99,$PC.technician)/100))), $secUpgrades.cyberBots = 1, $secRestPoint += 15, $reqHelots += 5, $secHQUpkeep += $upgradeUpkeep]]
-	<br>//Costs <<print cashFormat(Math.trunc((7500*$upgradeMultiplierArcology*_HistoryDiscount)*(1-(Math.max(0.99,$PC.technician)/100))))>>. Will raise rest point of security by 10 points, but will require 5 extra slaves in the headquarters and increases upkeep.//
+	[[Buy cybersecurity algorithms|securityHQ][$cash -= Math.trunc((7500*$upgradeMultiplierArcology*_HistoryDiscount)*(($TechnicianSkillEffect))), $secUpgrades.cyberBots = 1, $secRestPoint += 15, $reqHelots += 5, $secHQUpkeep += $upgradeUpkeep]]
+	<br>//Costs <<print cashFormat(Math.trunc((7500*$upgradeMultiplierArcology*_HistoryDiscount)*(($TechnicianSkillEffect))))>>. Will raise rest point of security by 10 points, but will require 5 extra slaves in the headquarters and increases upkeep.//
 <<else>>
 	You have bought advanced cybersecurity algorithms that will defend your arcology against hack attempts or cyber frauds.
 <</if>>
 <br>
 <<if $rep > 10000>>
 	<<if $secUpgrades.eyeScan == 0>>
-		[[Install invisible eye scanners|securityHQ][$cash -= Math.trunc((10000*$upgradeMultiplierArcology*_HistoryDiscount)*(1-(Math.max(0.99,$PC.technician)/100))), $secUpgrades.eyeScan = 1, $secRestPoint += 20, $reqHelots += 10, $secHQUpkeep += $upgradeUpkeep]]
-		<br>//Costs <<print cashFormat(Math.trunc((10000*$upgradeMultiplierArcology*_HistoryDiscount)*(1-(Math.max(0.99,$PC.technician)/100))))>>. Will raise rest point of security by 15 points, but will require 10 extra slaves in the headquarters and increases upkeep.//
+		[[Install invisible eye scanners|securityHQ][$cash -= Math.trunc((10000*$upgradeMultiplierArcology*_HistoryDiscount)*(($TechnicianSkillEffect))), $secUpgrades.eyeScan = 1, $secRestPoint += 20, $reqHelots += 10, $secHQUpkeep += $upgradeUpkeep]]
+		<br>//Costs <<print cashFormat(Math.trunc((10000*$upgradeMultiplierArcology*_HistoryDiscount)*(($TechnicianSkillEffect))))>>. Will raise rest point of security by 15 points, but will require 10 extra slaves in the headquarters and increases upkeep.//
 	<<else>>	
 		You have installed numerous hidden eye scanners that accurately register the movements of everyone inside the arcology.
 	<</if>>
 	<br>
 	<<if $secUpgrades.cryptoAnalyzer == 0>>
-		[[Buy and install crypto analyzers|securityHQ][$cash -= Math.trunc((15000*$upgradeMultiplierArcology*_HistoryDiscount)*(1-(Math.max(0.99,$PC.technician)/100))), $secUpgrades.cryptoAnalyzer = 1, $secRestPoint += 20, $reqHelots += 10, $secHQUpkeep += $upgradeUpkeep]]
-		<br>//Costs <<print cashFormat(Math.trunc((15000*$upgradeMultiplierArcology*_HistoryDiscount)*(1-(Math.max(0.99,$PC.technician)/100))))>>. Will raise rest point of security by 15 points, but will require 10 extra slaves in the headquarters and increases upkeep.//
+		[[Buy and install crypto analyzers|securityHQ][$cash -= Math.trunc((15000*$upgradeMultiplierArcology*_HistoryDiscount)*(($TechnicianSkillEffect))), $secUpgrades.cryptoAnalyzer = 1, $secRestPoint += 20, $reqHelots += 10, $secHQUpkeep += $upgradeUpkeep]]
+		<br>//Costs <<print cashFormat(Math.trunc((15000*$upgradeMultiplierArcology*_HistoryDiscount)*(($TechnicianSkillEffect))))>>. Will raise rest point of security by 15 points, but will require 10 extra slaves in the headquarters and increases upkeep.//
 	<<else>>
 		You have bought and employed sophisticated crypto analyzing software to accurately track and archive every financial movement or transaction made inside the walls of your arcology.
 	<</if>>	
@@ -163,30 +171,30 @@ Considering the current upgrades the maximum level of crime is <<print $crimeCap
 <br>
 
 <<if $crimeUpgrades.advForensic == 0>>
-	[[Install advanced forensic equipment|securityHQ][$cash -= Math.trunc((5000*$upgradeMultiplierArcology*_HistoryDiscount)*(1-(Math.max(0.99,$PC.technician)/100))), $crimeUpgrades.advForensic = 1, $crimeCap -= 10, $reqHelots += 5, $secHQUpkeep += $upgradeUpkeep, $PC.technician += 1]]
-	<br>//Costs <<print cashFormat(Math.trunc((5000*$upgradeMultiplierArcology*_HistoryDiscount)*(1-(Math.max(0.99,$PC.technician)/100))))>>. Will bring down the crime level cap by 10 points, but will require 5 extra slaves in the headquarters and increases upkeep.//
+	[[Install advanced forensic equipment|securityHQ][$cash -= Math.trunc((5000*$upgradeMultiplierArcology*_HistoryDiscount)*(($TechnicianSkillEffect))), $crimeUpgrades.advForensic = 1, $crimeCap -= 10, $reqHelots += 5, $secHQUpkeep += $upgradeUpkeep, $PC.technician += 1]]
+	<br>//Costs <<print cashFormat(Math.trunc((5000*$upgradeMultiplierArcology*_HistoryDiscount)*(($TechnicianSkillEffect))))>>. Will bring down the crime level cap by 10 points, but will require 5 extra slaves in the headquarters and increases upkeep.//
 <<else>>
 	You have installed advanced forensic equipment, able to extract every bit of precious information from any clue.
 <</if>>
 <br>
 <<if $crimeUpgrades.autoArchive == 0>>
-	[[Install auto-curating archiver|securityHQ][$cash -= Math.trunc((7500*$upgradeMultiplierArcology*_HistoryDiscount)*(1-(Math.max(0.99,$PC.technician)/100))), $crimeUpgrades.autoArchive = 1, $crimeCap -= 10, $reqHelots += 5, $secHQUpkeep += $upgradeUpkeep, $PC.technician += 1]]
-	<br>//Costs <<print cashFormat(Math.trunc((7500*$upgradeMultiplierArcology*_HistoryDiscount)*(1-(Math.max(0.99,$PC.technician)/100))))>>. Will bring down the crime level cap by 10 points, but will require 5 extra slaves in the headquarters and increases upkeep.//
+	[[Install auto-curating archiver|securityHQ][$cash -= Math.trunc((7500*$upgradeMultiplierArcology*_HistoryDiscount)*(($TechnicianSkillEffect))), $crimeUpgrades.autoArchive = 1, $crimeCap -= 10, $reqHelots += 5, $secHQUpkeep += $upgradeUpkeep, $PC.technician += 1]]
+	<br>//Costs <<print cashFormat(Math.trunc((7500*$upgradeMultiplierArcology*_HistoryDiscount)*(($TechnicianSkillEffect))))>>. Will bring down the crime level cap by 10 points, but will require 5 extra slaves in the headquarters and increases upkeep.//
 <<else>>
 	You have installed auto-curating archiver software, which will update in real time your data archives with any new relevant information on criminals residing in your arcology. 
 <</if>>
 <br>
 <<if $rep > 10000>>
 	<<if $crimeUpgrades.autoTrial == 0>>
-		[[Install automated trials software|securityHQ][$cash -= Math.trunc((10000*$upgradeMultiplierArcology*_HistoryDiscount)*(1-(Math.max(0.99,$PC.technician)/100))), $crimeUpgrades.autoTrial = 1, $crimeCap -= 15, $reqHelots += 10, $secHQUpkeep += $upgradeUpkeep, $PC.technician += 1]]
-		<br>//Costs <<print cashFormat(Math.trunc((10000*$upgradeMultiplierArcology*_HistoryDiscount)*(1-(Math.max(0.99,$PC.technician)/100))))>>. Will bring down the crime level cap by 15 points, but will require 10 extra slaves in the headquarters and increases upkeep.//
+		[[Install automated trials software|securityHQ][$cash -= Math.trunc((10000*$upgradeMultiplierArcology*_HistoryDiscount)*(($TechnicianSkillEffect))), $crimeUpgrades.autoTrial = 1, $crimeCap -= 15, $reqHelots += 10, $secHQUpkeep += $upgradeUpkeep, $PC.technician += 1]]
+		<br>//Costs <<print cashFormat(Math.trunc((10000*$upgradeMultiplierArcology*_HistoryDiscount)*(($TechnicianSkillEffect))))>>. Will bring down the crime level cap by 15 points, but will require 10 extra slaves in the headquarters and increases upkeep.//
 	<<else>>
 		You have installed advanced legal algorithms that allows the handling of legal matters much quicker and much more accurately.
 	<</if>>
 	<br>
 	<<if $crimeUpgrades.worldProfiler == 0>>
-		[[Install worldwide profilers|securityHQ][$cash -= Math.trunc(15000*$upgradeMultiplierArcology*_HistoryDiscount*(1-(Math.max(0.99,$PC.technician)/100))), $crimeUpgrades.worldProfiler = 1, $crimeCap -= 15, $reqHelots += 10, $secHQUpkeep += $upgradeUpkeep, $PC.technician += 1]]
-		<br>//Costs <<print cashFormat(Math.trunc(15000*$upgradeMultiplierArcology*_HistoryDiscount*(1-(Math.max(0.99,$PC.technician)/100))))>>. Will bring down the crime level cap by 15 points, but will require 10 extra slaves in the headquarters and increases upkeep.//
+		[[Install worldwide profilers|securityHQ][$cash -= Math.trunc(15000*$upgradeMultiplierArcology*_HistoryDiscount*(($TechnicianSkillEffect))), $crimeUpgrades.worldProfiler = 1, $crimeCap -= 15, $reqHelots += 10, $secHQUpkeep += $upgradeUpkeep, $PC.technician += 1]]
+		<br>//Costs <<print cashFormat(Math.trunc(15000*$upgradeMultiplierArcology*_HistoryDiscount*(($TechnicianSkillEffect))))>>. Will bring down the crime level cap by 15 points, but will require 10 extra slaves in the headquarters and increases upkeep.//
 	<<else>>
 		You have installed advanced profiler software, which will constantly scour every known data archive on the globe (legally or not) to gather as much information as possible on dangerous criminals.
 	<</if>>
@@ -213,23 +221,23 @@ Considering the current upgrades the maximum level of crime is <<print $crimeCap
 <br>
 
 <<if $intelUpgrades.sensors == 0>>
-	[[Install perimeter	sensors|securityHQ][$cash -= Math.trunc((5000*$upgradeMultiplierArcology*_HistoryDiscount)*(1-(Math.max(0.99,$PC.technician)/100)))), $intelUpgrades.sensors = 1, $recon += 1, $reqHelots += 5, $secHQUpkeep += $upgradeUpkeep, $PC.technician += 1]]
-	<br>//Costs <<print cashFormat(Math.trunc((5000*$upgradeMultiplierArcology*_HistoryDiscount)*(1-(Math.max(0.99,$PC.technician)/100))))>>. Will increase recon capabilites, but will require 5 extra slaves in the headquarters and increases upkeep.//
+	[[Install perimeter	sensors|securityHQ][$cash -= Math.trunc((5000*$upgradeMultiplierArcology*_HistoryDiscount)*(($TechnicianSkillEffect)))), $intelUpgrades.sensors = 1, $recon += 1, $reqHelots += 5, $secHQUpkeep += $upgradeUpkeep, $PC.technician += 1]]
+	<br>//Costs <<print cashFormat(Math.trunc((5000*$upgradeMultiplierArcology*_HistoryDiscount)*(($TechnicianSkillEffect))))>>. Will increase recon capabilites, but will require 5 extra slaves in the headquarters and increases upkeep.//
 <<else>>
 	You have installed perimeter seismic sensors able to detect movement with high accuracy.
 <</if>>
 <br>
 <<if $intelUpgrades.signalIntercept == 0>>
-	[[Create signal interception hub|securityHQ][$cash -= Math.trunc((10000*$upgradeMultiplierArcology*_HistoryDiscount*(1-(Math.max(0.99,$PC.technician)/100)))), $intelUpgrades.signalIntercept = 1, $recon += 1, $reqHelots += 5, $secHQUpkeep += $upgradeUpkeep, $PC.technician += 1]]
-	<br>//Costs <<print cashFormat(Math.trunc((10000*$upgradeMultiplierArcology*_HistoryDiscount)*(1-(Math.max(0.99,$PC.technician)/100))))>>. Will increase recon capabilities, but will require 5 extra slaves in the headquarters and increases upkeep.//
+	[[Create signal interception hub|securityHQ][$cash -= Math.trunc((10000*$upgradeMultiplierArcology*_HistoryDiscount*(($TechnicianSkillEffect)))), $intelUpgrades.signalIntercept = 1, $recon += 1, $reqHelots += 5, $secHQUpkeep += $upgradeUpkeep, $PC.technician += 1]]
+	<br>//Costs <<print cashFormat(Math.trunc((10000*$upgradeMultiplierArcology*_HistoryDiscount)*(($TechnicianSkillEffect))))>>. Will increase recon capabilities, but will require 5 extra slaves in the headquarters and increases upkeep.//
 <<else>>
 	You have installed advanced signal interception equipment.
 <</if>>
 <br>
 <<if $rep > 10000>>
 	<<if $intelUpgrades.radar == 0>>
-		[[Install advanced radar equipment|securityHQ][$cash -= Math.trunc((15000*$upgradeMultiplierArcology*_HistoryDiscount)*(1-(Math.max(0.99,$PC.technician)/100)))), $intelUpgrades.radar = 1, $recon += 1, $reqHelots += 10, $secHQUpkeep += $upgradeUpkeep, $PC.technician += 1]]
-		<br>//Costs <<print cashFormat(Math.trunc((15000*$upgradeMultiplierArcology*_HistoryDiscount)*(1-(Math.max(0.99,$PC.technician)/100))))>>. Will increase recon capabilities, but will require 10 extra slaves in the headquarters and increases upkeep.//
+		[[Install advanced radar equipment|securityHQ][$cash -= Math.trunc((15000*$upgradeMultiplierArcology*_HistoryDiscount)*(($TechnicianSkillEffect)))), $intelUpgrades.radar = 1, $recon += 1, $reqHelots += 10, $secHQUpkeep += $upgradeUpkeep, $PC.technician += 1]]
+		<br>//Costs <<print cashFormat(Math.trunc((15000*$upgradeMultiplierArcology*_HistoryDiscount)*(($TechnicianSkillEffect))))>>. Will increase recon capabilities, but will require 10 extra slaves in the headquarters and increases upkeep.//
 	<<else>>
 		You have installed sophisticated radar equipment.
 	<</if>>
@@ -295,36 +303,36 @@ Considering the current upgrades the maximum level of crime is <<print $crimeCap
 	<<if $secUpgrades.coldstorage == 6 && $rep >= 19500 && $reqHelots > 10>>
 		<br>You have installed a cold storage facility for the Security HQ's archives with a data retention capability of two years.
 		<br>
-		[[Expand the cold storage facility to increase data retention to three years|securityHQ][$cash -= Math.trunc(2400000*$upgradeMultiplierArcology*_HistoryDiscount*(1-(Math.max(0.99,$PC.technician)/100))), $secUpgrades.coldstorage++, $reqHelots -= 10, $secHQUpkeep += $upgradeUpkeep, $PC.technician += 1]]
-		<br>//Costs <<print cashFormat(Math.trunc((2400000*$upgradeMultiplierArcology*_HistoryDiscount)*(1-(Math.max(0.99,$PC.technician)/100))))>>. Will lower the amount of required slaves by a further 10, but will increases upkeep.//
+		[[Expand the cold storage facility to increase data retention to three years|securityHQ][$cash -= Math.trunc(2400000*$upgradeMultiplierArcology*_HistoryDiscount*(($TechnicianSkillEffect))), $secUpgrades.coldstorage++, $reqHelots -= 10, $secHQUpkeep += $upgradeUpkeep, $PC.technician += 1]]
+		<br>//Costs <<print cashFormat(Math.trunc((2400000*$upgradeMultiplierArcology*_HistoryDiscount)*(($TechnicianSkillEffect))))>>. Will lower the amount of required slaves by a further 10, but will increases upkeep.//
 	<<elseif $secUpgrades.coldstorage == 5 && $rep >= 19500 && $reqHelots > 10>>
 	<br>You have installed a cold storage facility for the Security HQ's archives with a data retention capability of one year.
 		<br>
-		[[Expand the cold storage facility to increase data retention to two years|securityHQ][$cash -= Math.trunc(1200000*$upgradeMultiplierArcology*_HistoryDiscount*(1-(Math.max(0.99,$PC.technician)/100))), $secUpgrades.coldstorage++, $reqHelots -= 10, $secHQUpkeep += $upgradeUpkeep, $PC.technician += 1]]
-		<br>//Costs <<print cashFormat(Math.trunc(((1200000*$upgradeMultiplierArcology*_HistoryDiscount)*(1-(Math.max(0.99,$PC.technician)/100)))))>>. Will lower the amount of required slaves by a further 10, but will increases upkeep.//
+		[[Expand the cold storage facility to increase data retention to two years|securityHQ][$cash -= Math.trunc(1200000*$upgradeMultiplierArcology*_HistoryDiscount*(($TechnicianSkillEffect))), $secUpgrades.coldstorage++, $reqHelots -= 10, $secHQUpkeep += $upgradeUpkeep, $PC.technician += 1]]
+		<br>//Costs <<print cashFormat(Math.trunc(((1200000*$upgradeMultiplierArcology*_HistoryDiscount)*(($TechnicianSkillEffect)))))>>. Will lower the amount of required slaves by a further 10, but will increases upkeep.//
 	<<elseif $secUpgrades.coldstorage == 4 && $rep >= 19500 && $reqHelots > 10>>
 		<br>You have installed a cold storage facility for the Security HQ's archives with a data retention capability of nine months.
 		<br>
-		[[Expand the cold storage facility to increase data retention to one year|securityHQ][$cash -= Math.trunc(900000*$upgradeMultiplierArcology*_HistoryDiscount*(1-(Math.max(0.99,$PC.technician)/100))), $secUpgrades.coldstorage++, $reqHelots -= 10, $secHQUpkeep += $upgradeUpkeep, $PC.technician += 1]]
-		<br>//Costs <<print cashFormat(Math.trunc((900000*$upgradeMultiplierArcology*_HistoryDiscount)*(1-(Math.max(0.99,$PC.technician)/100))))>>. Will lower the amount of required slaves by a further 10, but will increases upkeep.//
+		[[Expand the cold storage facility to increase data retention to one year|securityHQ][$cash -= Math.trunc(900000*$upgradeMultiplierArcology*_HistoryDiscount*(($TechnicianSkillEffect))), $secUpgrades.coldstorage++, $reqHelots -= 10, $secHQUpkeep += $upgradeUpkeep, $PC.technician += 1]]
+		<br>//Costs <<print cashFormat(Math.trunc((900000*$upgradeMultiplierArcology*_HistoryDiscount)*(($TechnicianSkillEffect))))>>. Will lower the amount of required slaves by a further 10, but will increases upkeep.//
 	<<elseif $secUpgrades.coldstorage == 3 && $rep > 18000 && $reqHelots > 10>>
 		<br>You have installed a cold storage facility for the Security HQ's archives with a data retention capability of six months.
 		<br>
-		[[Expand the cold storage facility to increase data retention to nine months|securityHQ][$cash -= Math.trunc(600000*$upgradeMultiplierArcology*_HistoryDiscount*(1-(Math.max(0.99,$PC.technician)/100))), $secUpgrades.coldstorage++, $reqHelots -= 10, $secHQUpkeep += $upgradeUpkeep, $PC.technician += 1]]
-		<br>//Costs <<print cashFormat(Math.trunc((600000*$upgradeMultiplierArcology*_HistoryDiscount)*(1-(Math.max(0.99,$PC.technician)/100))))>>. Will lower the amount of required slaves by a further 10, but will increases upkeep.//
+		[[Expand the cold storage facility to increase data retention to nine months|securityHQ][$cash -= Math.trunc(600000*$upgradeMultiplierArcology*_HistoryDiscount*(($TechnicianSkillEffect))), $secUpgrades.coldstorage++, $reqHelots -= 10, $secHQUpkeep += $upgradeUpkeep, $PC.technician += 1]]
+		<br>//Costs <<print cashFormat(Math.trunc((600000*$upgradeMultiplierArcology*_HistoryDiscount)*(($TechnicianSkillEffect))))>>. Will lower the amount of required slaves by a further 10, but will increases upkeep.//
 	<<elseif $secUpgrades.coldstorage == 2 && $rep > 16000 && $reqHelots > 10>>
 		<br>You have installed a cold storage facility for the Security HQ's archives with a data retention capability of three months.
 		<br>
-		[[Expand the cold storage facility to increase data retention to six months|securityHQ][$cash -= Math.trunc(300000*$upgradeMultiplierArcology*_HistoryDiscount*(1-(Math.max(0.99,$PC.technician)/100))), $secUpgrades.coldstorage++, $reqHelots -= 10, $secHQUpkeep += $upgradeUpkeep, $PC.technician += 1]]
-		<br>//Costs <<print cashFormat(Math.trunc((300000*$upgradeMultiplierArcology*_HistoryDiscount)*(1-(Math.max(0.99,$PC.technician)/100))))>>. Will lower the amount of required slaves by a further 10, but will increases upkeep.//
+		[[Expand the cold storage facility to increase data retention to six months|securityHQ][$cash -= Math.trunc(300000*$upgradeMultiplierArcology*_HistoryDiscount*(($TechnicianSkillEffect))), $secUpgrades.coldstorage++, $reqHelots -= 10, $secHQUpkeep += $upgradeUpkeep, $PC.technician += 1]]
+		<br>//Costs <<print cashFormat(Math.trunc((300000*$upgradeMultiplierArcology*_HistoryDiscount)*(($TechnicianSkillEffect))))>>. Will lower the amount of required slaves by a further 10, but will increases upkeep.//
 	<<elseif $secUpgrades.coldstorage == 1 && $rep > 14000 && $reqHelots > 10>>
 		<br>You have installed a cold storage facility for the Security HQ's archives with a data retention capability of one month.
 		<br>
-		[[Expand the cold storage facility to increase data retention to three months|securityHQ][$cash -= Math.trunc(100000*$upgradeMultiplierArcology*_HistoryDiscount*(1-(Math.max(0.99,$PC.technician)/100))), $secUpgrades.coldstorage++, $reqHelots -= 10, $secHQUpkeep += $upgradeUpkeep, $PC.technician += 1]]
-		<br>//Costs <<print cashFormat(Math.trunc((100000*$upgradeMultiplierArcology*_HistoryDiscount)*(1-(Math.max(0.99,$PC.technician)/100))))>>. Will lower the amount of required slaves by a further 10, but will increases upkeep.//
+		[[Expand the cold storage facility to increase data retention to three months|securityHQ][$cash -= Math.trunc(100000*$upgradeMultiplierArcology*_HistoryDiscount*(($TechnicianSkillEffect))), $secUpgrades.coldstorage++, $reqHelots -= 10, $secHQUpkeep += $upgradeUpkeep, $PC.technician += 1]]
+		<br>//Costs <<print cashFormat(Math.trunc((100000*$upgradeMultiplierArcology*_HistoryDiscount)*(($TechnicianSkillEffect))))>>. Will lower the amount of required slaves by a further 10, but will increases upkeep.//
 	<<elseif $secUpgrades.coldstorage == 0 && $rep > 12000 && $reqHelots > 10>>
-		[[Install a cold storage facility|securityHQ][$cash -= Math.trunc(50000*$upgradeMultiplierArcology*_HistoryDiscount*(1-(Math.max(0.99,$PC.technician)/100))), $secUpgrades.coldstorage++, $reqHelots -= 10, $secHQUpkeep += $upgradeUpkeep, $PC.technician += 1]]
-		<br>//Costs <<print cashFormat(Math.trunc((50000*$upgradeMultiplierArcology*_HistoryDiscount)*(1-(Math.max(0.99,$PC.technician)/100))))>>. Will lower the amount of required slaves by 10, but will increases upkeep.//
+		[[Install a cold storage facility|securityHQ][$cash -= Math.trunc(50000*$upgradeMultiplierArcology*_HistoryDiscount*(($TechnicianSkillEffect))), $secUpgrades.coldstorage++, $reqHelots -= 10, $secHQUpkeep += $upgradeUpkeep, $PC.technician += 1]]
+		<br>//Costs <<print cashFormat(Math.trunc((50000*$upgradeMultiplierArcology*_HistoryDiscount)*(($TechnicianSkillEffect))))>>. Will lower the amount of required slaves by 10, but will increases upkeep.//
 	<<elseif $secUpgrades.coldstorage > 6>>
 		<br>You have installed a cold storage facility for the Security HQ's archives with a data retention capability of three years.
 	<<elseif $reqHelots <= 10>>
diff --git a/src/pregmod/SecForceEX/SpecialForceUpgradeOptions.tw b/src/pregmod/SecForceEX/SpecialForceUpgradeOptions.tw
index ef76a667ccac5dc257f0957b1b6547c094c4034f..fe10a91b3b763169f36bcad09af2c89c9b2c3a3e 100755
--- a/src/pregmod/SecForceEX/SpecialForceUpgradeOptions.tw
+++ b/src/pregmod/SecForceEX/SpecialForceUpgradeOptions.tw
@@ -1,5 +1,13 @@
 :: SpecialForceUpgradeOptions
 
+<<if $PC.technician <= -100>>
+	<<set $PC.technician = 1.5>>
+<<elseif $PC.technician >= 100>>
+	<<set $TechnicianSkillEffect = .5>>
+<<else>>
+	<<set $TechnicianSkillEffect = 1>>
+<</if>>
+
 <<nobr>>
 <<if ($SFAO < _max) && $securityForceUpgradeToken == 0>>
 <span id="resultX">
@@ -47,9 +55,9 @@
 			<br><<link "Barracks">>
 			<<replace "#resultX">><br><br>
 				"Sure, boss." she says, nodding. "Expanding the facilities here should help us support more cool shit." She laughs, picks up a tablet, and taps a few commands on it. "I'll get right on it."
-				<<set $securityForceUpgradeToken = 1, $securityForceArcologyUpgrades++, $cash -=  _arcCost*$Env*1-(Math.max(0.99,$PC.technician)/100)>>
+				<<set $securityForceUpgradeToken = 1, $securityForceArcologyUpgrades++, $cash -=  _arcCost*$Env*($TechnicianSkillEffect)>>
 			<</replace>>
-			<</link>> // Costs <<print cashFormat(_arcCost*$Env*1-(Math.max(0.99,$PC.technician)/100))>> //
+			<</link>> // Costs <<print cashFormat(_arcCost*$Env*($TechnicianSkillEffect))>> //
 		<<elseif $securityForceUpgradeToken == 0 && $securityForceArcologyUpgrades == 13>>
 			<br><<link "Barracks">>
 			<<replace "#resultX">><br><br>
@@ -241,9 +249,9 @@
 				<br><<link "A space plane">>
 					<<replace "#resultY">><br><br>
 					"Sure, boss." she says, nodding. "A orbital plane should help a lot." She laughs. "The scum out there don't seem to like it when we have eyes they can't hit." She picks up a tablet and taps a few commands on it. "I'll get right on it."
-					<<set $securityForceUpgradeToken = 1, $securityForceSpacePlanePower++, $cash -= 4750000*$Env*1-(Math.max(0.99,$PC.technician)/100)>>
+					<<set $securityForceUpgradeToken = 1, $securityForceSpacePlanePower++, $cash -= 4750000*$Env*($TechnicianSkillEffect)>>
 					<</replace>>
-				<</link>> // Costs <<print cashFormat(4750000*$Env*1-(Math.max(0.99,$PC.technician)/100))>> //
+				<</link>> // Costs <<print cashFormat(4750000*$Env*($TechnicianSkillEffect))>> //
 			<<elseif $securityForceUpgradeToken == 0 && $securityForceSpacePlanePower >= 1 && $securityForceSpacePlanePower < _SpacePlaneMax>>
 				<<if $securityForceSpacePlanePower < 4>>
 					<<set _spCost = 50000000>>
@@ -269,9 +277,9 @@
 				<br><<link "Space plane">>
 					<<replace "#resultY">><br><br>
 					"Sure, boss." she says, nodding. "Upgrading the orbital plane should help a lot." She laughs. "The scum out there don't seem to like it when we have eyes they can't hit." She picks up a tablet and taps a few commands on it. "I'll get right on it."
-					<<set $securityForceUpgradeToken = 1, $securityForceSpacePlanePower++, $cash -= _spCost*$Env*1-(Math.max(0.99,$PC.technician)/100)>>
+					<<set $securityForceUpgradeToken = 1, $securityForceSpacePlanePower++, $cash -= _spCost*$Env*($TechnicianSkillEffect)>>
 					<</replace>>
-				<</link>> // Costs <<print cashFormat( _spCost*$Env*1-(Math.max(0.99,$PC.technician)/100))>> //
+				<</link>> // Costs <<print cashFormat( _spCost*$Env*($TechnicianSkillEffect))>> //
 			<</if>>
 			<<if $securityForceSpacePlanePower == _SpacePlaneMax>>
 				<br>//$securityForceName has fully upgraded the space plane to support it's activities.//
@@ -299,16 +307,16 @@
 				<br><<link "An AC-130">>
 					<<replace "#resultY">><br><br>
 					"Sure, boss." she says, nodding. "An AC-130 would help a lot." She laughs. "The scum out there don't seem to like it when we have things that their shit equipment can't damage." She picks up a tablet and taps a few commands on it. "I'll get right on it."
-					<<set $securityForceUpgradeToken = 1, $securityForceAC130++, $cash -= 35000000*$Env*1-(Math.max(0.99,$PC.technician)/100)>>
+					<<set $securityForceUpgradeToken = 1, $securityForceAC130++, $cash -= 35000000*$Env*($TechnicianSkillEffect)>>
 					<</replace>>
-				<</link>> // Costs <<print cashFormat(35000000*$Env*1-(Math.max(0.99,$PC.technician)/100))>> //
+				<</link>> // Costs <<print cashFormat(35000000*$Env*($TechnicianSkillEffect))>> //
 			<<elseif $securityForceAC130 > 1 && $securityForceAC130 < _AC130Max>>
 				<br><<link "AC-130">>
 					<<replace "#resultY">><br><br>
 					"Sure, boss." she says, nodding. "Upgrading the AC-130, should help us gain a massive advantage." She laughs, picks up a tablet, and taps a few commands on it. "I'll get right on it."
-					<<set $securityForceUpgradeToken = 1, $securityForceAC130++, $cash -= 25000000*$Env*1-(Math.max(0.99,$PC.technician)/100)>>
+					<<set $securityForceUpgradeToken = 1, $securityForceAC130++, $cash -= 25000000*$Env*($TechnicianSkillEffect)>>
 					<</replace>>
-				<</link>> // Costs <<print cashFormat(25000000*$Env*1-(Math.max(0.99,$PC.technician)/100))>> //
+				<</link>> // Costs <<print cashFormat(25000000*$Env*($TechnicianSkillEffect))>> //
 			<</if>>
 			<<if $securityForceAC130 == _AC130Max>>
 				<br>//$securityForceName has fully upgraded the AC-130 to support it's activities.//
@@ -342,16 +350,16 @@
 			<br><<link "Drone bay">>
 				<<replace "#resultX">>
 				"Sure, boss." she says, nodding. "Some new drones would be nice." She laughs. "The poor bastards out there shit themselves when they see combat drones fly over the horizon." She picks up a tablet and taps a few commands on it. "I'll get right on it."
-				<<set $securityForceUpgradeToken = 1, $securityForceDronePower++, $cash -= 45000*$Env*1-(Math.max(0.99,$PC.technician)/100)>>
+				<<set $securityForceUpgradeToken = 1, $securityForceDronePower++, $cash -= 45000*$Env*($TechnicianSkillEffect)>>
 				<</replace>>
-			<</link>> // Costs <<print cashFormat(45000*$Env*1-(Math.max(0.99,$PC.technician)/100))>> //
+			<</link>> // Costs <<print cashFormat(45000*$Env*($TechnicianSkillEffect))>> //
 		<<elseif $securityForceUpgradeToken == 0 && _DroneBay < _DroneBayMax && $securityForceAircraftPower >= 5 && _StimulantLab >= 5 && _Barracks >= 5 && $securityForceVehiclePower >= 5 && _Armoury >= 5>>
 			<br><<link "Drone bay">>
 				<<replace "#resultX">>
 				"Sure, boss." she says, nodding. "Some new drones would be nice." She laughs. "The poor bastards out there shit themselves when they see combat drones fly over the horizon." She picks up a tablet and taps a few commands on it. "I'll get right on it."
-				<<set $securityForceUpgradeToken = 1, $securityForceDronePower++, $cash -= 2000000*$Env*1-(Math.max(0.99,$PC.technician)/100)>>
+				<<set $securityForceUpgradeToken = 1, $securityForceDronePower++, $cash -= 2000000*$Env*($TechnicianSkillEffect)>>
 				<</replace>>
-			<</link>> // Costs <<print cashFormat(2000000*$Env*1-(Math.max(0.99,$PC.technician)/100))>> //
+			<</link>> // Costs <<print cashFormat(2000000*$Env*($TechnicianSkillEffect))>> //
 		<</if>>
 		<<if _DroneBay == 5 || _DroneBay == _DroneBayMax>>
 			<br>//$securityForceName has fully upgraded the drone bay to support it's activities.//
@@ -373,9 +381,9 @@
 					<br><<link "A Satellite">>
 						<<replace "#resultZ">><br><br>
 						"Sure, boss." she says, nodding. "A Satellite should help a lot." She laughs. "The scum out there don't seem to like it when we have eyes they can't hit." She picks up a tablet and taps a few commands on it. "I'll get right on it."
-						<<set $securityForceUpgradeToken = 1, $securityForceSatellitePower++, $cash -= 3750000*$Env*1-(Math.max(0.99,$PC.technician)/100)>>
+						<<set $securityForceUpgradeToken = 1, $securityForceSatellitePower++, $cash -= 3750000*$Env*($TechnicianSkillEffect)>>
 						<</replace>>
-					<</link>> // Costs <<print cashFormat(3750000*$Env*1-(Math.max(0.99,$PC.technician)/100))>> //
+					<</link>> // Costs <<print cashFormat(3750000*$Env*($TechnicianSkillEffect))>> //
 				<<elseif $securityForceUpgradeToken == 0 && $securityForceSatellitePower >= 1 && $securityForceSatellitePower < _SatelliteMax>>
 					<<switch $securityForceSatellitePower>>
 					<<case 11>>
@@ -402,9 +410,9 @@
 					<br><<link "Satellite">>
 						<<replace "#resultZ">><br><br>
 						"Sure, boss." she says, nodding. "Upgrading the Satellite should help a lot." She laughs. "The scum out there don't seem to like it when we have eyes they can't hit." She picks up a tablet and taps a few commands on it. "I'll get right on it."
-						<<set $securityForceUpgradeToken = 1, $securityForceSatellitePower++, $cash -= _satCost*$Env*1-(Math.max(0.99,$PC.technician)/100)>>
+						<<set $securityForceUpgradeToken = 1, $securityForceSatellitePower++, $cash -= _satCost*$Env*($TechnicianSkillEffect)>>
 						<</replace>>
-					<</link>> // Costs <<print cashFormat(_satCost*$Env*1-(Math.max(0.99,$PC.technician)/100))>> //
+					<</link>> // Costs <<print cashFormat(_satCost*$Env*($TechnicianSkillEffect))>> //
 			<</if>>
 				<<if $securityForceSatellitePower == _SatelliteMax>>
 					<br>//$securityForceName has fully upgraded the Satellite to support it's activities.//
@@ -414,9 +422,9 @@
 					<br><<link "A giant robot">>
 						<<replace "#resultZ">><br><br>
 						"Sure, boss." she says, nodding. "A giant robot would help a lot." She laughs. "The scum out there don't seem to like it when we have things that their shit equipment can't damage." She picks up a tablet and taps a few commands on it. "I'll get right on it."
-						<<set $securityForceUpgradeToken = 1, $securityForceGiantRobot++, $cash -= 50000000*$Env*1-(Math.max(0.99,$PC.technician)/100)>>
+						<<set $securityForceUpgradeToken = 1, $securityForceGiantRobot++, $cash -= 50000000*$Env*($TechnicianSkillEffect)>>
 						<</replace>>
-					<</link>> // Costs <<print cashFormat(50000000*$Env*1-(Math.max(0.99,$PC.technician)/100))>> //
+					<</link>> // Costs <<print cashFormat(50000000*$Env*($TechnicianSkillEffect))>> //
 			<<elseif $securityForceUpgradeToken == 0 && $securityForceGiantRobot >= 1 && $securityForceGiantRobot < _GiantRobotMax>>
 					<<if $securityForceGiantRobot < 3>>
 						<<set _robCost = 25000000>>
@@ -450,9 +458,9 @@
 					<br><<link "Giant robot">>
 						<<replace "#resultZ">><br><br>
 						"Sure, boss." she says, nodding. "Upgrading the giant robot, should help us gain a massive advantage." She laughs, picks up a tablet, and taps a few commands on it. "I'll get right on it."
-						<<set $securityForceUpgradeToken = 1, $securityForceGiantRobot++, $cash -= _robCost*$Env*1-(Math.max(0.99,$PC.technician)/100)>>
+						<<set $securityForceUpgradeToken = 1, $securityForceGiantRobot++, $cash -= _robCost*$Env*($TechnicianSkillEffect)>>
 						<</replace>>
-					<</link>> // Costs <<print cashFormat(_robCost*$Env*1-(Math.max(0.99,$PC.technician)/100))>> //
+					<</link>> // Costs <<print cashFormat(_robCost*$Env*($TechnicianSkillEffect))>> //
 			<</if>>
 				<<if $securityForceGiantRobot == 9 || $securityForceGiantRobot == _GiantRobotMax && ($terrain != "oceanic" && $terrain != "marine")>>
 					<br>//$securityForceName has fully upgraded the giant robot to support it's activities.//
@@ -462,9 +470,9 @@
 					<br><<link "A missile silo">>
 						<<replace "#resultZ">><br><br>
 						"Sure, boss." she says, nodding. "A missile silo would help a lot." She laughs. "The scum out there don't seem to like it when we have things that their shit equipment can't damage." She picks up a tablet and taps a few commands on it. "I'll get right on it."
-						<<set $securityForceUpgradeToken = 1, $securityForceMissileSilo++, $cash -= 200000000*$Env*1-(Math.max(0.99,$PC.technician)/100)>>
+						<<set $securityForceUpgradeToken = 1, $securityForceMissileSilo++, $cash -= 200000000*$Env*($TechnicianSkillEffect)>>
 						<</replace>>
-					<</link>> // Costs <<print cashFormat(200000000*$Env*1-(Math.max(0.99,$PC.technician)/100))>> //
+					<</link>> // Costs <<print cashFormat(200000000*$Env*($TechnicianSkillEffect))>> //
 			<<elseif $securityForceUpgradeToken == 0 && $securityForceMissileSilo >= 1 && $securityForceMissileSilo < _MissileSiloMax>>
 					<<if $securityForceMissileSilo == 1>>
 						<<set _msCost = 250000000>>
@@ -474,9 +482,9 @@
 					<br><<link "Missile silo">>
 						<<replace "#resultZ">><br><br>
 						"Sure, boss." she says, nodding. "Upgrading the missile silo, should help us gain a massive advantage." She laughs, picks up a tablet, and taps a few commands on it. "I'll get right on it."
-						<<set $securityForceUpgradeToken = 1, $securityForceMissileSilo++, $cash -= _msCost*$Env*1-(Math.max(0.99,$PC.technician)/100)>>
+						<<set $securityForceUpgradeToken = 1, $securityForceMissileSilo++, $cash -= _msCost*$Env*($TechnicianSkillEffect)>>
 						<</replace>>
-					<</link>> // Costs <<print cashFormat(_msCost*$Env*1-(Math.max(0.99,$PC.technician)/100))>> //
+					<</link>> // Costs <<print cashFormat(_msCost*$Env*($TechnicianSkillEffect))>> //
 			<</if>>
 				<<if $securityForceMissileSilo == _MissileSiloMax && ($terrain != "oceanic" && $terrain != "marine")>><br>//$securityForceName has fully upgraded the missile silo to support it's activities.//<</if>>
 
@@ -500,16 +508,16 @@
 					<br><<link "An aircraft carrier">>
 						<<replace "#resultA">><br><br>
 						"Sure, boss." she says, nodding. "An aircraft carrier would help a lot." She laughs. "The scum out there don't seem to like it when we have things that their shit equipment can't damage." She picks up a tablet and taps a few commands on it. "I'll get right on it."
-						<<set $securityForceUpgradeToken = 1, $securityForceAircraftCarrier++, $cash -= 1500000*$Env*1-(Math.max(0.99,$PC.technician)/100)>>
+						<<set $securityForceUpgradeToken = 1, $securityForceAircraftCarrier++, $cash -= 1500000*$Env*($TechnicianSkillEffect)>>
 						<</replace>>
-					<</link>> // Costs <<print cashFormat(1500000*$Env*1-(Math.max(0.99,$PC.technician)/100))>> //
+					<</link>> // Costs <<print cashFormat(1500000*$Env*($TechnicianSkillEffect))>> //
 				<<elseif $securityForceUpgradeToken == 0 && $securityForceAircraftCarrier >= 1 && $securityForceAircraftCarrier < _AircraftCarrierMax>>
 					<br><<link "Aircraft carrier">>
 						<<replace "#resultA">><br><br>
 						"Sure, boss." she says, nodding. "Upgrading the aircraft carrier should help us gain a massive advantage." She laughs, picks up a tablet, and taps a few commands on it. "I'll get right on it."
-						<<set $securityForceUpgradeToken = 1, $securityForceAircraftCarrier++, $cash -= 25000000*$Env*1-(Math.max(0.99,$PC.technician)/100)>>
+						<<set $securityForceUpgradeToken = 1, $securityForceAircraftCarrier++, $cash -= 25000000*$Env*($TechnicianSkillEffect)>>
 						<</replace>>
-					<</link>> // Costs <<print cashFormat(25000000*$Env*1-(Math.max(0.99,$PC.technician)/100))>> //
+					<</link>> // Costs <<print cashFormat(25000000*$Env*($TechnicianSkillEffect))>> //
 				<</if>>
 				<<if $securityForceAircraftCarrier == _AircraftCarrierMax && ($terrain == "oceanic" || $terrain == "marine")>>
 					<br>//$securityForceName has fully upgraded the aircraft carrier to support it's activities.//
@@ -519,9 +527,9 @@
 					<br><<link "A submarine">>
 						<<replace "#resultA">><br><br>
 						"Sure, boss." she says, nodding. "A submarine would help a lot." She laughs. "The scum out there don't seem to like it when we have things that their shit equipment can't damage." She picks up a tablet and taps a few commands on it. "I'll get right on it."
-						<<set $securityForceUpgradeToken = 1, $securityForceSubmarine++, $cash -= 1500000*$Env*1-(Math.max(0.99,$PC.technician)/100)>>
+						<<set $securityForceUpgradeToken = 1, $securityForceSubmarine++, $cash -= 1500000*$Env*($TechnicianSkillEffect)>>
 						<</replace>>
-					<</link>> // Costs <<print cashFormat(1500000*$Env*1-(Math.max(0.99,$PC.technician)/100))>> //
+					<</link>> // Costs <<print cashFormat(1500000*$Env*($TechnicianSkillEffect))>> //
 				<<elseif $securityForceUpgradeToken == 0 && $securityForceSubmarine >= 1 && $securityForceSubmarine < _SubmarineMax>>
 					<<if $securityForceSubmarine < 4>>
 						<<set _subCost = 25000000>>
@@ -531,9 +539,9 @@
 					<br><<link "Submarine">>
 						<<replace "#resultA">><br><br>
 						"Sure, boss." she says, nodding. "Upgrading the submarine, should help us gain a massive advantage." She laughs, picks up a tablet, and taps a few commands on it. "I'll get right on it."
-						<<set $securityForceUpgradeToken = 1, $securityForceSubmarine++, $cash -= _subCost*$Env*1-(Math.max(0.99,$PC.technician)/100)>>
+						<<set $securityForceUpgradeToken = 1, $securityForceSubmarine++, $cash -= _subCost*$Env*($TechnicianSkillEffect)>>
 						<</replace>>
-					<</link>> // Costs <<print cashFormat(_subCost*$Env*1-(Math.max(0.99,$PC.technician)/100))>> //
+					<</link>> // Costs <<print cashFormat(_subCost*$Env*($TechnicianSkillEffect))>> //
 				<</if>>
 				<<if $securityForceSubmarine == _SubmarineMax && ($terrain == "oceanic" || $terrain == "marine")>><br>//$securityForceName has fully upgraded the submarine to support it's activities.//<</if>>
 
diff --git a/src/uncategorized/manageArcology.tw b/src/uncategorized/manageArcology.tw
index 2cf1e89740a50c2df33c6c45231196623c1fdb11..3772ae29d1d99a354e9f74c76a053f769579f80c 100644
--- a/src/uncategorized/manageArcology.tw
+++ b/src/uncategorized/manageArcology.tw
@@ -1,5 +1,13 @@
 :: Manage Arcology [nobr]
 
+<<if $PC.technician <= -100>>
+	<<set $PC.technician = 1.5>>
+<<elseif $PC.technician >= 100>>
+	<<set $TechnicianSkillEffect = .5>>
+ <<else>>
+	<<set $TechnicianSkillEffect = 1>>
+<</if>>
+
 <<set $nextButton = "Back", $nextLink = "Main">>
 
 <<if $cheatMode == 1>>
@@ -73,8 +81,8 @@ __Construction__
 <br>
 
 <<if ($receiverAvailable == 1) && ($FCTVenable != 0) && ($FCTVreceiver == 0)>>
-    You have not installed an FCTV receiver. Installing this receiver yourself will cost <<print cashFormat(Math.trunc(25000*$upgradeMultiplierArcology*(1-(Math.max(0.99,$PC.technician)/100))))>>. You can have your citizens pay for the fiberoptic upgrades, reducing the cost to <<print cashFormat(Math.trunc((20000*$upgradeMultiplierArcology)*(1-(Math.max(0.99,$PC.technician)/100))))>>. You can also have them heavily subsidize installation, they will be upset about it, but it will only cost <<print cashFormat(Math.trunc(10000*$upgradeMultiplierArcology*(1-(Math.max(0.99,$PC.technician)/100))))>>.
-    [[No subsidy|Manage Arcology][$cash -= Math.trunc((25000*$upgradeMultiplierArcology)*(1-(Math.max(0.99,$PC.technician)/100))), $FCTVreceiver = 1, $receiverAvailable = $week, $rep += 500, $PC.engineering += 1, $PC.technician += 1]] | [[Light subsidy|Manage Arcology][$cash -= Math.trunc((20000*$upgradeMultiplierArcology)*(1-(Math.max(0.99,$PC.technician)/100))), $FCTVreceiver = 1, $receiverAvailable = $week, $PC.engineering += 1, $PC.technician += 1]] | [[Heavy subsidy|Manage Arcology][$cash -= Math.trunc((10000*$upgradeMultiplierArcology)*(1-(Math.max(0.99,$PC.technician)/100))), $FCTVreceiver = 1, $receiverAvailable = $week, $rep -= 1500, $PC.engineering += 1, $PC.technician += 1]]
+    You have not installed an FCTV receiver. Installing this receiver yourself will cost <<print cashFormat(Math.trunc(25000*$upgradeMultiplierArcology*(($TechnicianSkillEffect))))>>. You can have your citizens pay for the fiberoptic upgrades, reducing the cost to <<print cashFormat(Math.trunc((20000*$upgradeMultiplierArcology)*(($TechnicianSkillEffect))))>>. You can also have them heavily subsidize installation, they will be upset about it, but it will only cost <<print cashFormat(Math.trunc(10000*$upgradeMultiplierArcology*(($TechnicianSkillEffect))))>>.
+    [[No subsidy|Manage Arcology][$cash -= Math.trunc((25000*$upgradeMultiplierArcology)*(($TechnicianSkillEffect))), $FCTVreceiver = 1, $receiverAvailable = $week, $rep += 500, $PC.engineering += 1, $PC.technician += 1]] | [[Light subsidy|Manage Arcology][$cash -= Math.trunc((20000*$upgradeMultiplierArcology)*(($TechnicianSkillEffect))), $FCTVreceiver = 1, $receiverAvailable = $week, $PC.engineering += 1, $PC.technician += 1]] | [[Heavy subsidy|Manage Arcology][$cash -= Math.trunc((10000*$upgradeMultiplierArcology)*(($TechnicianSkillEffect))), $FCTVreceiver = 1, $receiverAvailable = $week, $rep -= 1500, $PC.engineering += 1, $PC.technician += 1]]
 <<elseif ($FCTVreceiver == 3)>>
     You have installed the FCTV receiver and have access to the full range of FCTV's programs. High viewership rates amongst your citizens makes it easier to pursue your societal goals.
 <<elseif ($FCTVreceiver == 2)>>
@@ -89,8 +97,8 @@ __Construction__
 	__Security__
 	<<if $propHub == 0>>
 		<br>
-		[[Set up the propaganda Hub|Manage Arcology][$cash -= Math.trunc((5000*$upgradeMultiplierArcology)*(1-(Math.max(0.99,$PC.technician)/100))), $propHub = 1, $PC.engineering += 1, $PC.technician += 1]]
-		//Costs <<print cashFormat(Math.trunc((5000*$upgradeMultiplierArcology)*(1-(Math.max(0.99,$PC.technician)/100))))>>.//
+		[[Set up the propaganda Hub|Manage Arcology][$cash -= Math.trunc((5000*$upgradeMultiplierArcology)*(($TechnicianSkillEffect))), $propHub = 1, $PC.engineering += 1, $PC.technician += 1]]
+		//Costs <<print cashFormat(Math.trunc((5000*$upgradeMultiplierArcology)*(($TechnicianSkillEffect))))>>.//
 		<br>//Building specialized in the management of authority.//
 	<<else>>
 		<br>
@@ -98,8 +106,8 @@ __Construction__
 	<</if>>
 	<<if $secHQ == 0>>
 		<br>
-		[[Set up the security headquarters|Manage Arcology][$cash -= Math.trunc((5000*$upgradeMultiplierArcology)*(1-(Math.max(0.99,$PC.technician)/100))), $secHQ = 1, $PC.engineering += 1, $PC.technician += 1]]
-		//Costs <<print cashFormat(Math.trunc((5000*$upgradeMultiplierArcology)*(1-(Math.max(0.99,$PC.technician)/100))))>>.//
+		[[Set up the security headquarters|Manage Arcology][$cash -= Math.trunc((5000*$upgradeMultiplierArcology)*(($TechnicianSkillEffect))), $secHQ = 1, $PC.engineering += 1, $PC.technician += 1]]
+		//Costs <<print cashFormat(Math.trunc((5000*$upgradeMultiplierArcology)*(($TechnicianSkillEffect))))>>.//
 		<br>//Building specialized in the management of security and crime.//
 	<<else>>
 		<br>
diff --git a/src/uncategorized/personalAssistantOptions.tw b/src/uncategorized/personalAssistantOptions.tw
index c2d514f0243f6ddd034b30d8fbdf0b948cca3a96..9a7acfbf192a0e91431ce1a34755803f138e9a64 100644
--- a/src/uncategorized/personalAssistantOptions.tw
+++ b/src/uncategorized/personalAssistantOptions.tw
@@ -1,5 +1,15 @@
 :: Personal assistant options [nobr]
 
+<<if $PC.technician <= -100>>
+	<<set $TechnicianSkillEffect = 1.5>>
+<<elseif $PC.technician >= 100>>
+	<<set $TechnicianSkillEffect = .5>>
+ <<else>>
+	<<set $TechnicianSkillEffect = 1>>
+<</if>>
+
+ /* <<elseif $PC.technician > -100 && $PC.technician < 100>> */
+
 <<set $nextButton = "Back", $nextLink = "Main">>
 
 <<if $marketAssistantLimit>><<set $marketAssistantLimit to Math.clamp($marketAssistantLimit, 10000, 10000000)>><</if>>
@@ -30,9 +40,9 @@ __Computer Core Upgrades__
 <br>
 
 <<if $assistantPower == 0>>
-	//The first upgrade needed is a switch to a holographic memory core to store the immense quantity of data $assistantName gathers. This upgrade will cost <<print cashFormat(Math.trunc(20000*$upgradeMultiplierArcology*(1-(Math.max(0.99,$PC.technician)/100))))>>.// [[Install holographic memory core|Personal assistant options][$cash -= Math.trunc((20000*$upgradeMultiplierArcology)*(1-(Math.max(0.99,$PC.technician)/100))), $assistantPower += 1, $PC.engineering += 1, $PC.technician += 1]]
+	//The first upgrade needed is a switch to a holographic memory core to store the immense quantity of data $assistantName gathers. This upgrade will cost <<print cashFormat(Math.trunc(20000*$upgradeMultiplierArcology*(($TechnicianSkillEffect))))>>.// [[Install holographic memory core|Personal assistant options][$cash -= Math.trunc((20000*$upgradeMultiplierArcology)*(($TechnicianSkillEffect))), $assistantPower += 1, $PC.engineering += 1, $PC.technician += 1]]
 <<elseif $assistantPower == 1>>
-	//The final upgrade needed is a transition to optical RAM. This huge project will cost <<print cashFormat(Math.trunc((50000*$upgradeMultiplierArcology)*(1-(Math.max(0.99,$PC.technician)/100))))>>.// [[Install optical RAM|Personal assistant options][$cash -= Math.trunc((50000*$upgradeMultiplierArcology)*(1-(Math.max(0.99,$PC.technician)/100))), $assistantPower += 1, $PC.engineering += 1, $PC.technician += 1]]
+	//The final upgrade needed is a transition to optical RAM. This huge project will cost <<print cashFormat(Math.trunc((50000*$upgradeMultiplierArcology)*(($TechnicianSkillEffect))))>>.// [[Install optical RAM|Personal assistant options][$cash -= Math.trunc((50000*$upgradeMultiplierArcology)*(($TechnicianSkillEffect))), $assistantPower += 1, $PC.engineering += 1, $PC.technician += 1]]
 <<else>>
 	//The arcology's computer core is fully upgraded.//
 <</if>>
@@ -814,16 +824,16 @@ __Downloadable Appearances:__
 <br>
 	/*
 	<<if $assistantExtra1 == 0>>
-		[[Purchase a set of monstergirl appearances|Assistant Events][$event = "", $cash -= Math.trunc(10000*$upgradeMultiplier), $assistantExtra1 = 1]]
-		//Costs <<print cashFormat(Math.trunc(6000*$upgradeMultiplier))>>//
+		[[Purchase a set of monstergirl appearances|Assistant Events][$event = "", $cash -= Math.trunc((6000*$upgradeMultiplier)*($TechnicianSkillEffect)), $assistantExtra1 = 1]]
+		//Costs <<print cashFormat(Math.trunc((6000*$upgradeMultiplier)*$TechnicianSkillEffect))>>//
 	<<else>>You have downloaded a set of monstergirl appearances for your avatar.
 	<</if>>
 	*/
 	<<if $assistantExtra2 == 0>>
 		<<link "Purchase a set of heaven and hell themed appearances">>
-			<<set $cash -= Math.trunc(10000*$upgradeMultiplierArcology), $assistantExtra2 = 1, $nextLink = "Personal assistant options">>
+			<<set $cash -= Math.trunc((10000*$upgradeMultiplierArcology)*$TechnicianSkillEffect), $assistantExtra2 = 1, $nextLink = "Personal assistant options">>
 			<<goto "Assistant Appearance Pack Two">>
-		<</link>> //Costs <<print cashFormat(Math.trunc(10000*$upgradeMultiplierArcology))>>//
+		<</link>> //Costs <<print cashFormat(Math.trunc((10000*$upgradeMultiplierArcology)*$TechnicianSkillEffect))>>//
 	<<else>>You have downloaded a set of heavenly and hellish appearances for your avatar.
 	<</if>>
 <</if>>