From 392d4d69631b11979b214b249914a4f39bcfa054 Mon Sep 17 00:00:00 2001 From: Blank <blank@national.shitposting.agency> Date: Sat, 23 Mar 2019 19:00:37 -0700 Subject: [PATCH] IncreasePCSkills function [Ready to merge] --- src/SecExp/attackHandler.tw | 2 +- src/SecExp/attackReport.tw | 12 +-- src/SecExp/propagandaHub.tw | 4 +- src/SecExp/rebellionReport.tw | 18 ++-- src/SecExp/riotControlCenter.tw | 4 +- src/SecExp/securityReport.tw | 2 +- src/SpecialForce/TrickShotNight.tw | 4 +- src/SpecialForce/WeeklyChoices.tw | 24 +++--- src/gui/Encyclopedia/encyclopedia.tw | 23 +++-- src/js/utilJS.js | 23 +++++ src/pregmod/saPorn.tw | 4 +- src/uncategorized/arcmgmt.tw | 2 +- src/uncategorized/brothel.tw | 4 +- src/uncategorized/cellblock.tw | 4 +- src/uncategorized/clinic.tw | 12 +-- src/uncategorized/club.tw | 4 +- src/uncategorized/dairy.tw | 10 +-- src/uncategorized/genericPlotEvents.tw | 1 + src/uncategorized/manageArcology.tw | 10 ++- src/uncategorized/newSlaveIntro.tw | 4 +- src/uncategorized/pCoupAttempt.tw | 2 + src/uncategorized/persBusiness.tw | 16 ++-- src/uncategorized/ptWorkaround.tw | 115 +++++++++---------------- src/uncategorized/schoolroom.tw | 4 +- src/uncategorized/servantsQuarters.tw | 4 +- 25 files changed, 159 insertions(+), 153 deletions(-) diff --git a/src/SecExp/attackHandler.tw b/src/SecExp/attackHandler.tw index d89d2e535c5..df87defe51f 100644 --- a/src/SecExp/attackHandler.tw +++ b/src/SecExp/attackHandler.tw @@ -174,7 +174,7 @@ /* 80% chance of increasing warfare */ <<if $PC.warfare < 100 && random(1,100) <= 80>> <<set $gainedWarfare = 1>> - <<set $PC.warfare += 10>> + <<= IncreasePCSkills('warfare', 10)>> <<set $PC.warfare = Math.clamp($PC.warfare,-100,100)>> <</if>> /* does the PC get wounded? */ diff --git a/src/SecExp/attackReport.tw b/src/SecExp/attackReport.tw index d36aff21bcf..9d492f8c20e 100644 --- a/src/SecExp/attackReport.tw +++ b/src/SecExp/attackReport.tw @@ -436,7 +436,7 @@ <<run cashX(_loot, "war")>> <br> Damage to the infrastructure was @@.yellow;virtually non-existent,@@ costing only pocket cash to bring the structure back to normal. The inhabitants as well reported little to no injuries, because of this the prosperity of the arcology did not suffer. - <<set $PC.engineering += .1>> + <<= IncreasePCSkills('engineering', 0.1)>> <<run cashX(forceNeg(1000 * _majorBattleMod), "war")>> <<if $PCvictoryStreak >= 3>> It seems your victories over the constant threats directed your way is having @@.green;a positive effect on the prosperity of the arcology,@@ due to the security your leadership affords. @@ -459,7 +459,7 @@ <</if>> <br> In the raiding following the battle @@.red;the arcology sustained heavy damage,@@ which will cost quite the amount of cash to fix. Reports of @@.red;citizens or slaves killed or missing@@ flood your office for a few days following the defeat. - <<set $PC.engineering += .1>> + <<= IncreasePCSkills('engineering', 0.1)>> <<run cashX(forceNeg(5000 * _majorBattleMod), "war")>> <<if $week <= 30>> <<set $lowerClass -= random(100) * _majorBattleMod>> @@ -545,7 +545,7 @@ <<run cashX(_loot, "war")>> <br> Damage to the city was @@.red;limited,@@ it won't take much to rebuild. Very few citizens or slaves were involved in the fight and even fewer met their end, safeguarding the prosperity of the arcology. - <<set $PC.engineering += .1>> + <<= IncreasePCSkills('engineering', 0.1)>> <<run cashX(forceNeg(2000 * _majorBattleMod), "war")>> <<set $lowerClass -= random(10) * _majorBattleMod>> <<set _lostSlaves = random(20) * _majorBattleMod, @@ -571,7 +571,7 @@ <br> The enemy did not have the strength to raid the arcology for long, still @@.red;the arcology sustained some damage,@@ which will cost a moderate amount of cash to fix. Some citizens and slaves found themselves on the wrong end of a gun and met their demise. Some business sustained heavy damage, slightly impacting the arcology's prosperity. - <<set $PC.engineering += .1>> + <<= IncreasePCSkills('engineering', 0.1)>> <<run cashX(forceNeg(3000 * _majorBattleMod), "war")>> <<if $week <= 30>> <<set $lowerClass -= random(50) * _majorBattleMod>> @@ -631,7 +631,7 @@ <</if>> <br> The surrender allows the arcology to survive @@.red;mostly intact,@@ however reports of @@.red;mass looting and killing of citizens@@ flood your office for a few days. - <<set $PC.engineering += .1>> + <<= IncreasePCSkills('engineering', 0.1)>> <<run cashX(forceNeg(1000 * _majorBattleMod), "war")>> <<if $week <= 30>> <<set $lowerClass -= random(80) * _majorBattleMod>> @@ -692,7 +692,7 @@ <</if>> <br> Fortunately the arcology survives @@.yellow;mostly intact,@@ however reports of @@.red;mass looting and killing of citizens@@ flood your office for a few days. - <<set $PC.engineering += .1>> + <<= IncreasePCSkills('engineering', 0.1)>> <<run cashX(-1000, "war")>> <<if $week <= 30>> <<set $lowerClass -= random(80) * _majorBattleMod>> diff --git a/src/SecExp/propagandaHub.tw b/src/SecExp/propagandaHub.tw index 3da4c980078..434f602e543 100644 --- a/src/SecExp/propagandaHub.tw +++ b/src/SecExp/propagandaHub.tw @@ -82,7 +82,7 @@ The propaganda hub is a surprisingly inconspicuous building, dimly lit from the <<link "Invest more resources in the propaganda machine" "propagandaHub">> <<run cashX(forceNeg(5000 * $upgradeMultiplierArcology * ($propCampaign + 1) * _HistoryDiscount*$HackingSkillMultiplier), "capEx")>> <<set $propCampaign += 1>> - <<set $PC.hacking += .5>> + <<= IncreasePCSkills('hacking', 0.5)>> <<set $propHubUpkeep += $upgradeUpkeep>> <</link>> <br>Invest more resources into the project to increase its effectiveness. @@ -133,7 +133,7 @@ The propaganda hub is a surprisingly inconspicuous building, dimly lit from the <<link "Institute controlled leaks protocols" "propagandaHub">> <<set $controlLeaks = 1>> <<run cashX(forceNeg(10000*$upgradeMultiplierArcology*_HistoryDiscount*$HackingSkillMultiplier), "capEx")>> - <<set $PC.hacking += 1>> + <<= IncreasePCSkills('hacking', 1)>> <<set $propHubUpkeep += $upgradeUpkeep>> <</link>> <br>Institute a system able to release erroneous, but plausible, information about your business, leading your competitors to prepared financial traps. diff --git a/src/SecExp/rebellionReport.tw b/src/SecExp/rebellionReport.tw index 14f6afe0087..964ee58c50b 100644 --- a/src/SecExp/rebellionReport.tw +++ b/src/SecExp/rebellionReport.tw @@ -347,7 +347,7 @@ <<if $engageRule == 0>> Since you ordered your troops to limit their weaponry to low caliber or non lethal, the arcology reported only @@.red;minor damage.@@ Most citizens and non involved slaves remained unharmed, though some casualties between the civilians were inevitable. A few businesses were looted and burned, but the damage was pretty limited. - <<set $arcRepairTime += 3, $PC.engineering += .1>> + <<set $arcRepairTime += 3, IncreasePCSkills('engineering', 0.1)>> <<if $week <= 30>> <<set $lowerClass -= random(40)>> <<set _lostSlaves = random(65), @@ -392,7 +392,7 @@ <<elseif $engageRule == 1>> You ordered your troops to limit their weaponry to non-heavy, non-explosive, because of this the arcology reported @@.red;moderate damage.@@ Most citizens and non involved slaves remained unharmed or only lightly wounded, but many others did not make it. Unfortunately casualties between the civilians were inevitable. A few businesses were looted and burned, but the damage was pretty limited. - <<set $arcRepairTime += 5, $PC.engineering += .1>> + <<set $arcRepairTime += 5, IncreasePCSkills('engineering', 0.1)>> <<if $week <= 30>> <<set $lowerClass -= random(60)>> <<set _lostSlaves = random(85), @@ -437,7 +437,7 @@ <<elseif $engageRule == 2>> Since you did not apply any restriction on the weapons your forces should use, the arcology reported @@.red;heavy damage.@@ Many citizens and uninvolved slaves are reported killed or missing. Casualties between the civilians were inevitable. Many businesses were damaged during the battle either by the fight itself, by fires which spread unchecked for hours or by looters. - <<set $arcRepairTime += 7, $PC.engineering += .1>> + <<set $arcRepairTime += 7, IncreasePCSkills('engineering', 0.1)>> <<if $week <= 30>> <<set $lowerClass -= random(100)>> <<set _lostSlaves = random(150), @@ -482,7 +482,7 @@ <<else>> Thanks to the advance riot control weaponry developed by your experts, the rebels were mostly subdued or killed with @@.yellow;little to no collateral damage to the arcology@@ and its inhabitants. A few businesses were looted, but the damage was very limited. - <<set $arcRepairTime += 2, $PC.engineering += .1>> + <<set $arcRepairTime += 2, IncreasePCSkills('engineering', 0.1)>> <<run cashX(-1000, "war")>> <<if $week <= 30>> <<set $lowerClass -= random(20)>> @@ -539,7 +539,7 @@ <<if random(1,100) <= (75 - ($fort.reactor * 25))>> Unfortunately during the fighting a group of slaves infiltrated the reactor complex and sabotaged it, causing massive power fluctuations and blackouts. It will take @@.red;time and money to repair the damage@@. - <<set $garrison.reactorTime = $repairTime + random(1) - $fort.reactor, $PC.engineering += .1>> + <<set $garrison.reactorTime = $repairTime + random(1) - $fort.reactor, IncreasePCSkills('engineering', 0.1)>> <<run cashX(-2000, "war")>> <<else>> While the reactor was left defenseless without a garrison, there was no attempt at sabotage. Let's hope we'll always be this lucky. @@ -551,7 +551,7 @@ <<if random(1,100) <= (75 - ($fort.waterway * 25))>> Unfortunately during the fighting a group of slaves infiltrated the water management complex and sabotaged it, causing huge water leaks throughout the arcology and severely limiting the water supply. It will take @@.red;time and money to repair the damage@@. - <<set $garrison.waterwayTime = $repairTime + random(1) - $fort.waterway, $PC.engineering += .1>> + <<set $garrison.waterwayTime = $repairTime + random(1) - $fort.waterway, IncreasePCSkills('engineering', 0.1)>> <<run cashX(-2000, "war")>> <<else>> While the water management complex was left defenseless without a garrison, there was no attempt at sabotage. Let's hope we'll always be this lucky. @@ -563,7 +563,7 @@ <<if random(1,100) <= (75 - ($fort.assistant * 25))>> Unfortunately during the fighting a group of slaves infiltrated the facility housing $assistantName's mainframe and sabotaged it. Without its AI the arcology will be next to impossible to manage. It will take @@.red;time and money to repair the damage@@. - <<set $garrison.assistantTime = $repairTime + random(1) - $fort.assistant, $PC.engineering += .1>> + <<set $garrison.assistantTime = $repairTime + random(1) - $fort.assistant, IncreasePCSkills('engineering', 0.1)>> <<run cashX(-2000, "war")>> <<else>> While the $assistantName's mainframe was left defenseless without a garrison, there was no attempt at sabotage. Let's hope we'll always be this lucky. @@ -740,7 +740,7 @@ <</if>> <</if>> The damage to the structure will be @@.red;costly to repair@@. - <<set $PC.engineering += .1>> + <<= IncreasePCSkills('engineering', 0.1)>> <<run cashX(-2000, "war")>> <<else>> While the penthouse was left without a sizable garrison, there was no dangerous assault against it. Let's hope we'll always be this lucky. @@ -850,7 +850,7 @@ <</if>> <</if>> The damage to the structure will be @@.red;costly to repair@@. - <<set $PC.engineering += .1>> + <<= IncreasePCSkills('engineering', 0.1)>> <<run cashX(-2000, "war")>> <<else>> There was no sizable assault against the penthouse. Let's hope we'll always be this lucky. diff --git a/src/SecExp/riotControlCenter.tw b/src/SecExp/riotControlCenter.tw index 36caeff0ea4..e38298cd387 100644 --- a/src/SecExp/riotControlCenter.tw +++ b/src/SecExp/riotControlCenter.tw @@ -25,7 +25,7 @@ The riot control center opens its guarded doors to you. The great chamber inside <br><<link "Invest more resources in the free media project" "riotControlCenter">> <<set $riotUpgrades.freeMedia += 1>> <<run cashX(forceNeg(((5000 * $upgradeMultiplierArcology * ($riotUpgrades.freeMedia + 1)*$HackingSkillMultiplier))), "capEx")>> - <<set $PC.hacking += .5>> + <<= IncreasePCSkills('hacking', 0.5)>> <<set $riotUpkeep += $upgradeUpkeep>> <</link>> <br>Invest more resources into the project to increase its effectiveness. @@ -150,7 +150,7 @@ The riot control center opens its guarded doors to you. The great chamber inside <<link "Invest more resources in the brain implant project" "riotControlCenter">> <<set $brainImplantProject += 1>> <<run cashX(forceNeg(50000 * $upgradeMultiplierArcology * $brainImplantProject*$HackingSkillMultiplier), "capEx")>> - <<set $PC.hacking += 1>> + <<= IncreasePCSkills('hacking', 1)>> <<set $riotUpkeep += 5000>> <</link>> <br>Invest more resources into the project to increase its speed. diff --git a/src/SecExp/securityReport.tw b/src/SecExp/securityReport.tw index fbf23c814c1..50c8232374d 100644 --- a/src/SecExp/securityReport.tw +++ b/src/SecExp/securityReport.tw @@ -159,7 +159,7 @@ It will still take <<if $garrison.assistantTime> 1>>$garrison.assistantTime weeks<<else>>a week<</if>> to finish repair works. <<set _secGrowth-->> <<set _crimeGrowth++>> - <<set $garrison.assistantTime--, $PC.engineering += .1>> + <<set $garrison.assistantTime--, IncreasePCSkills('engineering', 0.1)>> <</if>> <<if $SF.Toggle && $SF.Active >= 1>> diff --git a/src/SpecialForce/TrickShotNight.tw b/src/SpecialForce/TrickShotNight.tw index 043c6d854cd..00a2452f3d7 100644 --- a/src/SpecialForce/TrickShotNight.tw +++ b/src/SpecialForce/TrickShotNight.tw @@ -44,7 +44,7 @@ Despite your direct elevator, interaction with the majority of your security for <<else>> /* cash >= 50000 */ <br><<link "Attend the trick shot night">> - <<replace "#result">> <<set $PC.warfare += 1>> + <<replace "#result">> You instruct $assistantName to inform $SF.Lower that you will be attending their trick shot night, and after settling your affairs in the penthouse you head down to the firebase. The atmosphere in the firebase is casual, especially in comparison to the usual situations you meet them, though your security force still maintain some measure of decorum towards you as their employer. Eventually, you settle in at the table with a handful of $SF.Lower officers and turn your @@.yellowgreen;<<print cashFormat(50000)>>@@ into bullets. All that remains is to decide your strategy for the night. <br><br> <span id="bountyresult"> @@ -141,6 +141,7 @@ Despite your direct elevator, interaction with the majority of your security for <br> <<include "New Slave Intro">> <</if>> + <<= IncreasePCSkills('warfare', 1)>> <</replace>> <</link>> @@ -155,6 +156,7 @@ Despite your direct elevator, interaction with the majority of your security for <<run repX(10000, "event")>> <<run cashX(50000, "event")>> <</if>> + <<= IncreasePCSkills('warfare', 1)>> <</replace>> <</link>> diff --git a/src/SpecialForce/WeeklyChoices.tw b/src/SpecialForce/WeeklyChoices.tw index 26472dc61a7..389d665def0 100644 --- a/src/SpecialForce/WeeklyChoices.tw +++ b/src/SpecialForce/WeeklyChoices.tw @@ -130,17 +130,17 @@ <<set $SF.Colonel.Status +=3>> <<switch random(1,6)>> <<case 1>> - <<set $PC.medicine += 1>><<set $PC.trading += 1>><<set $PC.slaving += 1>> + <<= IncreasePCSkills('medicine', 1)>> <<= IncreasePCSkills('trading', 1)>> <<= IncreasePCSkills('slaving', 1)>> <<case 2>> - <<set $PC.trading += 1>><<set $PC.slaving += 1>><<set $PC.engineering += 1>> + <<= IncreasePCSkills('trading', 1)>> <<= IncreasePCSkills('slaving', 1)>> <<= IncreasePCSkills('engineering', 1)>> <<case 3>> - <<set $PC.slaving += 1>><<set $PC.engineering += 1>><<set $PC.hacking += 1>> + <<= IncreasePCSkills('slaving', 1)>> <<= IncreasePCSkills('engineering', 1)>> <<= IncreasePCSkills('hacking', 1)>> <<case 4>> - <<set $PC.engineering += 1>><<set $PC.hacking += 1>><<set $PC.warfare += 1>> + <<= IncreasePCSkills('engineering', 1)>> <<= IncreasePCSkills('hacking', 1)>> <<= IncreasePCSkills('warfare', 1)>> <<case 5>> - <<set $PC.hacking += 1>><<set $PC.warfare += 1>><<set $PC.medicine += 1>> + <<= IncreasePCSkills('hacking', 1)>> <<= IncreasePCSkills('warfare', 1)>> <<= IncreasePCSkills('medicine', 1)>> <<case 6>> - <<set $PC.warfare += 1>><<set $PC.medicine += 1>><<set $PC.trading += 1>> + <<= IncreasePCSkills('warfare', 1)>> <<= IncreasePCSkills('medicine', 1)>> <<= IncreasePCSkills('trading', 1)>> <</switch>> <</replace>><</link>> @@ -150,22 +150,22 @@ <<switch random(1,6)>> <<case 1>> used field medicine to save another merc's life, teaching you some medical procedures in the process. - <<set $PC.medicine += 5>> + <<= IncreasePCSkills('medicine', 5)>> <<case 2>> haggled for necessary gear with a stingy quartermaster, teaching you how to get what you want from traders. - <<set $PC.trading += 5>> + <<= IncreasePCSkills('trading', 5)>> <<case 3>> found a load of human chattel in a raid and had to manage them before they could later be unloaded, teaching you how to better care for your slaves. - <<set $PC.slaving += 5>> + <<= IncreasePCSkills('slaving', 5)>> <<case 4>> was responsible for rebuilding a fort she had seized, teaching you how to better manage construction in your arcology. - <<set $PC.engineering += 5>> + <<= IncreasePCSkills('engineering', 5)>> <<case 5>> was forced to hack her way out of a trap, teaching you how to better penetrate digital security. - <<set $PC.hacking += 5>> + <<= IncreasePCSkills('hacking', 5)>> <<case 6>> fought off an entire battalion with only a small squad, teaching you how to think tactically in battle. - <<set $PC.warfare += 5>> + <<= IncreasePCSkills('warfare', 5)>> <</switch>> <</replace>> <</link>> diff --git a/src/gui/Encyclopedia/encyclopedia.tw b/src/gui/Encyclopedia/encyclopedia.tw index 266dbff0e8a..66371b1f326 100644 --- a/src/gui/Encyclopedia/encyclopedia.tw +++ b/src/gui/Encyclopedia/encyclopedia.tw @@ -128,24 +128,24 @@ Design Your Master upgrades in the propaganda hub will be @@.yellowgreen;[[cheaper|Encyclopedia][$encyclopedia = "Money"]]@@ and <</if>> your starting slaves will have a free level of prostitution skill available. - Starts having already mastered [[Trading|Encyclopedia][$encyclopedia = "Trading"]]. + Starts having already mastered [[Trading|Encyclopedia][$encyclopedia = "PC Skills"]]. <br><br>''private security contractor'' (also referred to as a //mercenary background//) greatly reduces the cost of keeping mercenaries in your employ. <<if $showSecExp == 1>> Upgrades in the security HQ will be @@.yellowgreen;[[cheaper|Encyclopedia][$encyclopedia = "Money"]]@@. <</if>> Your starting slaves will have free @@.mediumaquamarine;[[trust|Encyclopedia][$encyclopedia = "Trust"]]@@ available. - Starts having already mastered [[Warfare|Encyclopedia][$encyclopedia = "warfare"]]. + Starts having already mastered [[Warfare|Encyclopedia][$encyclopedia = "PC Skills"]]. <br><br>''slave driver'' enhances slave-focused personal attention, adding bonus @@.hotpink;[[devotion|Encyclopedia][$encyclopedia = "From Rebellious to Devoted"]]@@ or @@.mediumaquamarine;[[trust|Encyclopedia][$encyclopedia = "Trust"]]@@ to many training applications or preventing their loss. <<if $showSecExp == 1>> @@.darkviolet;[[authority|Encyclopedia][$encyclopedia = "Security Expansion"]]@@ will be easier to maintain. Plus upgrades in the security HQ will be @@.yellowgreen;[[cheaper|Encyclopedia][$encyclopedia = "Money"]]@@. <</if>> - Starting slaves will be cheaper, in addition having already mastered [[Slaving|Encyclopedia][$encyclopedia = "slaving"]]. + Starting slaves will be cheaper, in addition having already mastered [[Slaving|Encyclopedia][$encyclopedia = "PC Skills"]]. - <br><br>''arcology engineer'' provides a significant discount on many @@.yellowgreen;arcology upgrades and expansions.@@ In addition to the arcology starting off with @@.green;basic economic upgrades@@ already installed. Starts having already mastered [[Engineering|Encyclopedia][$encyclopedia = "engineering"]]. + <br><br>''arcology engineer'' provides a significant discount on many @@.yellowgreen;arcology upgrades and expansions.@@ In addition to the arcology starting off with @@.green;basic economic upgrades@@ already installed. Starts having already mastered [[Engineering|Encyclopedia][$encyclopedia = "PC Skills"]]. - <br><br>''doctor'' allows the player character to perform surgery personally, providing a @@.yellowgreen;discount on surgery costs@@ and a @@.green;reduction to resulting health damage.@@ Additionally, slaves may react differently to surgery if the player character performs it and starting slaves will have free implants available. Starts having already mastered [[Medicine|Encyclopedia][$encyclopedia = "medicine"]]. + <br><br>''doctor'' allows the player character to perform surgery personally, providing a @@.yellowgreen;discount on surgery costs@@ and a @@.green;reduction to resulting health damage.@@ Additionally, slaves may react differently to surgery if the player character performs it and starting slaves will have free implants available. Starts having already mastered [[Medicine|Encyclopedia][$encyclopedia = "PC Skills"]]. <br><br>''escort'' provides a one-time bonus to a slave's entertainment, whoring, and two sexual skills when a new slave is acquired. Furthermore, society will not take lightly to being run by an ex-whore, and you will receive heavy @@.green;[[reputation|Encyclopedia][$encyclopedia = "Arcologies and Reputation"]]@@ <<if $showSecExp == 1>> @@ -176,7 +176,7 @@ Design Your Master <<if $showSecExp == 1>> , but you will find @@.darkviolet;[[authority|Encyclopedia][$encyclopedia = "Security Expansion"]]@@ quite hard to maintain <</if>>. - Starts having already mastered [[Hacking|Encyclopedia][$encyclopedia = "Hacking"]]. + Starts having already mastered [[Hacking|Encyclopedia][$encyclopedia = "PC Skills"]. <br><br> <<if $showSecExp == 0>> @@ -333,17 +333,24 @@ PC Skills <br><br>Choose a more particular entry below: <br><br>''Trading'' signifies how efficient you are at making exchanges. Provides more passive income the higher it is. + Can be increased through acquiring slaves. <br>''Warfare'' is an indication your combat prowess. Cuts cost of housing mercs in half. + Can be increased through use in relevant situations. - <br>''Hacking'' is an indication of your effectives at manipulating computer systems. Higher levels make technological upgrades @@.yellowgreen;[[cheaper|Encyclopedia][$encyclopedia = "Money"]]@@ or free. + <br>''Hacking'' is an indication of your effectiveness at manipulating computer systems. Higher levels make technological upgrades @@.yellowgreen;[[cheaper|Encyclopedia][$encyclopedia = "Money"]]@@ or free, provides a boost situations where fame is measured digitally. + Can be increased through choosing to 'Sell your intrusion services to the highest bidder' once the option becomes available after having 'some' skill and purchasing technological upgrades. - <br>''Slaving'' improves your effectiveness as a slave driver. At max level it allows you to more easily spot [[gingering|Encyclopedia][$encyclopedia = "Gingering"]] + <br>''Slaving'' improves your effectiveness as a slave driver. At max level it allows you to more easily spot [[gingering|Encyclopedia][$encyclopedia = "Gingering"]]. + Can be increased through acquiring performing the duties of a slave driver. <br>''Engineering'' is a sign of how effective you are building and maintenance. Mastering the skill reduces the cost of @@.yellowgreen;arcology upgrades and expansions@@. + Can be increased through purchasing arcology upgrades or expanding facility capacity<<if $showSecExp > 0>> and repairing your arcology<</if>>. <br>''Medicine'' shows how effective you are treating wounds. Max level reduces a slave's health and @@.mediumaquamarine;[[trust|Encyclopedia][$encyclopedia = "Trust"]]@@ loss during surgery. + In addition to the above methods of increasing a skill (if any), all of them can be learnt by retaining a trainer<<if $SF.Toggle && $SF.Active >= 1>> or by talking to/learning from The Colonel<</if>>. + /********** SLAVES **********/ diff --git a/src/js/utilJS.js b/src/js/utilJS.js index f22f67076ba..0e4e61a472e 100644 --- a/src/js/utilJS.js +++ b/src/js/utilJS.js @@ -1505,3 +1505,26 @@ window.resyncSlaveToAge = function(slave) { } slave.career = randomCareer(slave); } + +window.IncreasePCSkills = function(input, increase) { + "use strict"; const player = State.variables.PC, oldSkill = player[input]; + increase = increase || 1; + player[input] += increase; + if (oldSkill <= 10) { + if (player[input] >= 10) { + return ` <span class='green'> <br>You have gained basic knowlege in ${input}.</span>`; + } + } else if (oldSkill <= 30) { + if (player[input] >= 30) { + return ` <span class='green'> <br>You have gained some knowlege in ${input}.</span>`; + } + } else if (oldSkill <= 60) { + if (player[input] >= 60) { + return ` <span class='green'> <br>You have become an expert in ${input}.</span>`; + } + } else if (oldSkill < 100) { + if (player[input] >= 100) { + return ` <span class='green'> <br>You have mastered ${input}.</span>`; + } + } +}; \ No newline at end of file diff --git a/src/pregmod/saPorn.tw b/src/pregmod/saPorn.tw index d42bce67936..de8f3f29c53 100644 --- a/src/pregmod/saPorn.tw +++ b/src/pregmod/saPorn.tw @@ -38,9 +38,6 @@ <<set _viewership = Math.trunc(_viewership)>> <<set _adjustedViewership = _viewership>> <<set _oldFame = $slaves[$i].pornFame>> - <<if $PC.hacking < 0>> - <<set $PC.hacking += 0.1>> - <</if>> The studio regularly releases clips of $his daily affairs. @@ -99,6 +96,7 @@ <<elseif $PC.hacking < 0>> With your lack of skill with computers you manage to misidentify $his content, complicating searches. <</if>> + <<= IncreasePCSkills('hacking', 0.1)>> /*Paraphilias have the highest take of viewers*/ <<if $slaves[$i].sexualFlaw == "neglectful">> diff --git a/src/uncategorized/arcmgmt.tw b/src/uncategorized/arcmgmt.tw index f6bce3e5446..00e663d8038 100644 --- a/src/uncategorized/arcmgmt.tw +++ b/src/uncategorized/arcmgmt.tw @@ -1374,7 +1374,7 @@ earning you @@.yellowgreen;<<print cashFormat(_menialEarnings + _bioreactorEarni The damage to the reactor caused by the last rebellion is extensive. Businesses and private citizens struggle to operate with the unreliable and limited energy production offered by the auxiliary generators. It will still take <<if $garrison.reactorTime> 1>>$garrison.reactorTime weeks<<else>>a week<</if>> to finish repair works. <<set _AWeekGrowth -= random(1,2)>> - <<set $garrison.reactorTime--, $PC.engineering += .1>> + <<set $garrison.reactorTime--, IncreasePCSkills('engineering', 0.1)>> <</if>> <</if>> <<set _AWeekGrowth = Math.trunc(0.5*_AWeekGrowth)>> diff --git a/src/uncategorized/brothel.tw b/src/uncategorized/brothel.tw index 93dd7492092..f1c2752c263 100644 --- a/src/uncategorized/brothel.tw +++ b/src/uncategorized/brothel.tw @@ -183,8 +183,8 @@ $brothelNameCaps <<elseif $brothelUpgradeDrugs == 0.1>> It has been upgraded with aphrodisiac injection systems that monitor the whores and adjust dosage to keep them healthy but desperately horny and hopelessly addicted. The systems are currently disabled. [[Enable them|Brothel][$brothelUpgradeDrugs = 1]] //Will increase upkeep costs// <<else>> - <<set _Tmult1 = Math.trunc(10000*$upgradeMultiplierArcology)>> - It is a standard brothel. [[Upgrade the brothel with aphrodisiac injection systems|Brothel][cashX(forceNeg(_Tmult1), "capEx"), $brothelUpgradeDrugs = 0.1]] //Costs <<print cashFormat(_Tmult1)>> and will increase upkeep costs// + <<set _Tmult1 = Math.trunc(10000*$upgradeMultiplierArcology*$HackingSkillMultiplier)>> + It is a standard brothel. [[Upgrade the brothel with aphrodisiac injection systems|Brothel][cashX(forceNeg(_Tmult1), "capEx"), $brothelUpgradeDrugs = 0.1, $PC.hacking += 0.1]] //Costs <<print cashFormat(_Tmult1)>> and will increase upkeep costs// <</if>> <br>$brothelNameCaps diff --git a/src/uncategorized/cellblock.tw b/src/uncategorized/cellblock.tw index edcfb43724c..4841d4e129d 100644 --- a/src/uncategorized/cellblock.tw +++ b/src/uncategorized/cellblock.tw @@ -94,8 +94,8 @@ $cellblockNameCaps <<if $cellblockUpgrade == 1>> Its compliance systems have been upgraded to allow slaves no mental respite, painstakingly correcting the tiniest misbehaviors to soften flaws into quirks at the cost of considerable anguish to inmates denied any rest from correction. <<else>> - <<set _Tmult1 = Math.trunc(20000*$upgradeMultiplierArcology)>> - Its compliance systems are standard. [[Upgrade them to soften slave flaws|Cellblock][cashX(forceNeg(_Tmult1), "capEx"), $cellblockUpgrade = 1]] //Costs <<print cashFormat(_Tmult1)>>// + <<set _Tmult1 = Math.trunc(20000*$upgradeMultiplierArcology*$HackingSkillMultiplier)>> + Its compliance systems are standard. [[Upgrade them to soften slave flaws|Cellblock][cashX(forceNeg(_Tmult1), "capEx"), $cellblockUpgrade = 1], $PC.engineering += 0.1, $PC.hacking += 0.1] //Costs <<print cashFormat(_Tmult1)>>// <</if>> <<if $Wardeness != 0 && canPenetrate($Warden)>> diff --git a/src/uncategorized/clinic.tw b/src/uncategorized/clinic.tw index 2d8fa676cdf..1180023b4e6 100644 --- a/src/uncategorized/clinic.tw +++ b/src/uncategorized/clinic.tw @@ -94,8 +94,8 @@ $clinicNameCaps <<if $clinicUpgradeScanner == 1>> $clinicNameCaps's scanners have been upgraded with a sampling system that can estimate carcinogenic damage to a slave's body. <<else>> - <<set _Tmult1 = Math.trunc(10000*$upgradeMultiplierArcology)>> - It mounts powerful medical scanning technology. [[Upgrade the scanners to help detect genomic damage|Clinic][cashX(forceNeg(_Tmult1), "capEx"), $clinicUpgradeScanner = 1]] //Costs <<print cashFormat(_Tmult1)>>// + <<set _Tmult1 = Math.trunc(10000*$upgradeMultiplierArcology*Math.min($upgradeMultiplierMedicine, $HackingSkillMultiplier))>> + It mounts powerful medical scanning technology. [[Upgrade the scanners to help detect genomic damage|Clinic][cashX(forceNeg(_Tmult1), "capEx"), $clinicUpgradeScanner = 1, $PC.hacking += 0.1]] //Costs <<print cashFormat(_Tmult1)>>// <</if>> <br> @@ -103,15 +103,15 @@ $clinicNameCaps <<if $clinicUpgradePurge == 1>> The entire floor beneath $clinicName is occupied by a huge filtration plant that constantly cycles out the patients' blood to remove impurities. The blood is intensely cleaned to greatly decrease the presence of impurities at the cost of compatibility. Patients will likely be ill for the duration of the treatment. <<else>> - <<set _Tmult3 = Math.trunc(150000*$upgradeMultiplierArcology)>> - The entire floor beneath $clinicName is occupied by a huge filtration plant that constantly cycles out the patients' blood to remove impurities. [[Increase the effectiveness of the impurity purging|Clinic][cashX(forceNeg(_Tmult3), "capEx"), $clinicUpgradePurge = 1]] //Costs <<print cashFormat(_Tmult3)>> and may cause health problems in slaves// + <<set _Tmult3 = Math.trunc(150000*$upgradeMultiplierArcology*Math.min($upgradeMultiplierMedicine, $HackingSkillMultiplier))>> + The entire floor beneath $clinicName is occupied by a huge filtration plant that constantly cycles out the patients' blood to remove impurities. [[Increase the effectiveness of the impurity purging|Clinic][cashX(forceNeg(_Tmult3), "capEx"), $clinicUpgradePurge = 1, $PC.hacking += 0.1]] //Costs <<print cashFormat(_Tmult3)>> and may cause health problems in slaves// <</if>> <<if $Nurse == 0>> <br>However, without a nurse in attendance, the @@.yellow;blood treatment equipment remains idle.@@ <</if>> <<else>> - <<set _Tmult2 = Math.trunc(50000*$upgradeMultiplierArcology)>> - It includes standard dialysis equipment. [[Install advanced blood treatment equipment to help address drug side effects|Clinic][cashX(forceNeg(_Tmult2), "capEx"), $clinicUpgradeFilters = 1]] //Costs <<print cashFormat(_Tmult2)>>// + <<set _Tmult2 = Math.trunc(50000*$upgradeMultiplierArcology*Math.min($upgradeMultiplierMedicine, $HackingSkillMultiplier))>> + It includes standard dialysis equipment. [[Install advanced blood treatment equipment to help address drug side effects|Clinic][cashX(forceNeg(_Tmult2), "capEx"), $clinicUpgradeFilters = 1, $PC.hacking += 0.1]] //Costs <<print cashFormat(_Tmult2)>>// <</if>> <br> diff --git a/src/uncategorized/club.tw b/src/uncategorized/club.tw index 62a9a48f809..1231f6018d1 100644 --- a/src/uncategorized/club.tw +++ b/src/uncategorized/club.tw @@ -225,8 +225,8 @@ $clubNameCaps <<if $clubUpgradePDAs == 1>> $clubNameCaps has been wired for unobtrusive personal data assistants to let your sluts pass tips about enslaveable people to your recruiter. <<else>> - <<set _Tmult1 = Math.trunc(10000*$upgradeMultiplierArcology)>> - The rooms are standard. [[Upgrade them with PDAs to help your recruiter|Club][cashX(forceNeg(_Tmult1), "capEx"), $clubUpgradePDAs = 1]] //Costs <<print cashFormat(_Tmult1)>> and will increase upkeep costs// + <<set _Tmult1 = Math.trunc(10000*$upgradeMultiplierArcology*$HackingSkillMultiplier)>> + The rooms are standard. [[Upgrade them with PDAs to help your recruiter|Club][cashX(forceNeg(_Tmult1), "capEx"), $clubUpgradePDAs = 1, $PC.hacking += 0.1]] //Costs <<print cashFormat(_Tmult1)>> and will increase upkeep costs// <</if>> <<if $DJ != 0>> diff --git a/src/uncategorized/dairy.tw b/src/uncategorized/dairy.tw index b2724f12dda..7941c7f5aef 100644 --- a/src/uncategorized/dairy.tw +++ b/src/uncategorized/dairy.tw @@ -337,7 +337,7 @@ $dairyNameCaps ''inactive.'' [[Active|Dairy][$dairyFeedersSetting = 1]] <</if>> <<else>> - $dairyNameCaps is equipped to feed and clean slaves normally. [[Upgrade the milking machines with intubators|Dairy][cashX(forceNeg(_Tmult1), "capEx"), $dairyFeedersUpgrade = 1]] //Costs <<print cashFormat(_Tmult1)>> and will increase upkeep costs// + $dairyNameCaps is equipped to feed and clean slaves normally. [[Upgrade the milking machines with intubators|Dairy][cashX(forceNeg(_Tmult1), "capEx"), $dairyFeedersUpgrade = 1, $PC.engineering += 0.1]] //Costs <<print cashFormat(_Tmult1)>> and will increase upkeep costs// <</if>> @@ -373,7 +373,7 @@ $dairyNameCaps ''inactive.'' [[Activate|Dairy][$dairyStimulatorsSetting = 1]] <</if>> <<else>> - $dairyNameCaps does not automatically sodomize. [[Upgrade the cockmilking machines with sodomizers|Dairy][cashX(forceNeg(_Tmult1), "capEx"), $dairyStimulatorsUpgrade = 1]] //Costs <<print cashFormat(_Tmult1)>> and will increase upkeep costs// + $dairyNameCaps does not automatically sodomize. [[Upgrade the cockmilking machines with sodomizers|Dairy][cashX(forceNeg(_Tmult1), "capEx"), $dairyStimulatorsUpgrade = 1, $PC.engineering += 0.1]] //Costs <<print cashFormat(_Tmult1)>> and will increase upkeep costs// <</if>> <<set _Tmult2 = Math.trunc(5000*$upgradeMultiplierArcology)>> @@ -382,7 +382,7 @@ $dairyNameCaps <<if $dairyPrepUpgrade == 1>> $dairyNameCaps features a preparatory raper designed to gape slaves for integration. <<else>> - $dairyNameCaps's industrial machines can only accept slaves with loose holes. [[Install a preparatory raper|Dairy][cashX(forceNeg(_Tmult2), "capEx"), $dairyPrepUpgrade = 1]] //Costs <<print cashFormat(_Tmult2)>>// + $dairyNameCaps's industrial machines can only accept slaves with loose holes. [[Install a preparatory raper|Dairy][cashX(forceNeg(_Tmult2), "capEx"), $dairyPrepUpgrade = 1, $PC.engineering += 0.1]] //Costs <<print cashFormat(_Tmult2)>>// <</if>> <</if>> @@ -429,7 +429,7 @@ $dairyNameCaps $dairyNameCaps is currently set to normal operation, and will allow the breasts of slimmer slaves to expand due to milking. [[Set milkers to preserve small breast sizes|Dairy][$dairySlimMaintain = 1]] //NOTE: This will NOT remove existing lactation implants// <</if>> <<else>> - Dairy cows' breasts will expand normally as a result of the milking process. [[Optimize the milking process to preserve small breast sizes|Dairy][cashX(forceNeg(_Tmult2), "capEx"), $dairySlimMaintainUpgrade = 1, $dairySlimMaintain = 1]] //Costs <<print cashFormat(_Tmult2)>>// + Dairy cows' breasts will expand normally as a result of the milking process. [[Optimize the milking process to preserve small breast sizes|Dairy][cashX(forceNeg(_Tmult2), "capEx"), $dairySlimMaintainUpgrade = 1, $dairySlimMaintain = 1, $PC.engineering += 0.1]] //Costs <<print cashFormat(_Tmult2)>>// <</if>> <<elseif $arcologies[0].FSSlimnessEnthusiast > 20>> <br> @@ -441,7 +441,7 @@ $dairyNameCaps $dairyNameCaps is currently set to normal operation, and will allow the breasts of slimmer slaves to expand due to milking. [[Set milkers to preserve small breast sizes|Dairy][$dairySlimMaintain = 1]] //NOTE: This will NOT remove existing lactation implants// <</if>> <<else>> - Dairy cows' breasts will expand normally as a result of the milking process. [[Optimize the milking process to preserve small breast sizes|Dairy][cashX(forceNeg(_Tmult2), "capEx"), $dairySlimMaintainUpgrade = 1, $dairySlimMaintain = 1]] //Costs <<print cashFormat(_Tmult2)>>// + Dairy cows' breasts will expand normally as a result of the milking process. [[Optimize the milking process to preserve small breast sizes|Dairy][cashX(forceNeg(_Tmult2), "capEx"), $dairySlimMaintainUpgrade = 1, $dairySlimMaintain = 1, $PC.engineering += 0.1] //Costs <<print cashFormat(_Tmult2)>>// <</if>> <</if>> diff --git a/src/uncategorized/genericPlotEvents.tw b/src/uncategorized/genericPlotEvents.tw index 54d78171e5d..901db2ddd2f 100644 --- a/src/uncategorized/genericPlotEvents.tw +++ b/src/uncategorized/genericPlotEvents.tw @@ -1347,6 +1347,7 @@ A screen opposite your desk springs to life, <<if $assistant == 0>>showing your <<run newSlave($activeSlave)>> /* skip New Slave Intro */ <</replace>> <</link>> +<<= IncreasePCSkills('warfare', 2)>> <<case "aid invitation">> diff --git a/src/uncategorized/manageArcology.tw b/src/uncategorized/manageArcology.tw index edd24eb8b03..53817e1651a 100644 --- a/src/uncategorized/manageArcology.tw +++ b/src/uncategorized/manageArcology.tw @@ -64,8 +64,12 @@ __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))>>. You can have your citizens pay for the fiberoptic upgrades, reducing the cost to <<print cashFormat(Math.trunc(20000*$upgradeMultiplierArcology))>>. 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))>>. - [[No subsidy|Manage Arcology][cashX(forceNeg(Math.trunc(25000*$upgradeMultiplierArcology)), "capEx"), $FCTVreceiver = 1, $receiverAvailable = $week, repX(500, "capEx"), $PC.engineering += 1]] | [[Light subsidy|Manage Arcology][cashX(forceNeg(Math.trunc(20000*$upgradeMultiplierArcology)), "capEx"), $FCTVreceiver = 1, $receiverAvailable = $week, $PC.engineering += 1]] | [[Heavy subsidy|Manage Arcology][cashX(forceNeg(Math.trunc(10000*$upgradeMultiplierArcology)), "capEx"), $FCTVreceiver = 1, $receiverAvailable = $week, repX(-1500, "capEx"), $PC.engineering += 1]] + You have not installed an FCTV receiver. + Installing this receiver yourself will cost <<print cashFormat(Math.trunc(25000*$upgradeMultiplierArcology*$HackingSkillMultiplier))>>. + You can have your citizens pay for the fiberoptic upgrades, reducing the cost to <<print cashFormat(Math.trunc(20000*$upgradeMultiplierArcology*$HackingSkillMultiplier))>>. + 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*$HackingSkillMultiplier))>>. + + [[No subsidy|Manage Arcology][cashX(forceNeg(Math.trunc(25000*$upgradeMultiplierArcology*$HackingSkillMultiplier)), "capEx"), $FCTVreceiver = 1, $receiverAvailable = $week, repX(500, "capEx"), $PC.hacking += 1]] | [[Light subsidy|Manage Arcology][cashX(forceNeg(Math.trunc(20000*$upgradeMultiplierArcology*$HackingSkillMultiplier)), "capEx"), $FCTVreceiver = 1, $receiverAvailable = $week, $PC.hacking += 1]] | [[Heavy subsidy|Manage Arcology][cashX(forceNeg(Math.trunc(10000*$upgradeMultiplierArcology*$HackingSkillMultiplier)), "capEx"), $FCTVreceiver = 1, $receiverAvailable = $week, repX(-1500, "capEx"), $PC.hacking += 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)>> @@ -124,7 +128,7 @@ __Construction__ <br> [[Set up the riot control center|Manage Arcology][cashX(forceNeg(Math.trunc(5000*$upgradeMultiplierArcology)), "capEx"), $riotCenter = 1, $PC.engineering += 1]] //Costs <<print cashFormat(Math.trunc(5000*$upgradeMultiplierArcology))>>// - <<if $PC.engineering < 100>><<set $PC.engineering += 1>><</if>> + <<if $PC.engineering < 100>> <<= IncreasePCSkills('engineering', 0.1)>> <</if>> <br>//Building specialized in the management and suppression of rebellions.// <<elseif $rebellionsEnabled == 1>> <br> diff --git a/src/uncategorized/newSlaveIntro.tw b/src/uncategorized/newSlaveIntro.tw index be9bea0c708..3f7c0683b59 100644 --- a/src/uncategorized/newSlaveIntro.tw +++ b/src/uncategorized/newSlaveIntro.tw @@ -3,7 +3,6 @@ /* TODO: rewrite this to take the slave's history into account */ <<set $nextButton = "Continue", $showEncyclopedia = 0>> -<<if $PC.slaving < 100 && random($PC.slaving,100) > 50>><<set $PC.slaving += .5>><<else>><<set $PC.slaving += .1>><</if>> <<if $nextLink != "AS Dump" && passage() != "Bulk Slave Intro">> <<set $returnTo = $nextLink, $nextLink = "AS Dump">> @@ -2029,4 +2028,5 @@ The legalities completed, ''__@@.pink;<<= SlaveFullName($activeSlave)>>@@__'' << <</if>> -<<set $PC.trading += .1>> +<<= IncreasePCSkills('trading', 0.1)>> +<<if $PC.slaving < 100 && random($PC.slaving,100) > 50>> <<= IncreasePCSkills('slaving', 0.5)>> <<else>> <<= IncreasePCSkills('slaving', 0.1)>> <</if>> \ No newline at end of file diff --git a/src/uncategorized/pCoupAttempt.tw b/src/uncategorized/pCoupAttempt.tw index 4acb5060b19..6ab1eb70388 100644 --- a/src/uncategorized/pCoupAttempt.tw +++ b/src/uncategorized/pCoupAttempt.tw @@ -89,6 +89,7 @@ You are awakened in the middle of the night by a jolt that shakes the entire arc <</for>> <<set $desc = "a damaged plate carrier bearing Daughters of Liberty insignia">> <<set $trinkets.push($desc)>> + <<= IncreasePCSkills('warfare', 5)>> <<elseif $arcologies[0].FSRomanRevivalistLaw == 1>> @@.yellow;The Daughters of Liberty are annihilated.@@ @@.red;$arcologies[0].name has been damaged,@@ and the repairs will be quite costly. However, the effect on your reputation is @@.green;very positive,@@ since though your victory was hard-fought and set the arcology's prosperity back @@.red;considerably,@@ you did better than other arcology owners have done when faced with similar well-armed unrest. You also took a truly impressive bag of prisoners. <<set $daughtersVictory = 3>> @@ -183,6 +184,7 @@ You are awakened in the middle of the night by a jolt that shakes the entire arc <</for>> <<set $desc = "a Daughters of Liberty brassard">> <<set $trinkets.push($desc)>> + <<= IncreasePCSkills('warfare', 5)>> <</if>> <<if $traitor != 0>> diff --git a/src/uncategorized/persBusiness.tw b/src/uncategorized/persBusiness.tw index 1b5f7747402..443c14fcab4 100644 --- a/src/uncategorized/persBusiness.tw +++ b/src/uncategorized/persBusiness.tw @@ -648,7 +648,7 @@ been negatively affected. <</if>> <<if $PC.hacking < 100>> - <<set $PC.hacking += .5>> + <<= IncreasePCSkills('hacking', 0.5)>> <</if>> <<run cashX(_windfall, "personalBusiness")>> @@ -756,7 +756,7 @@ <<if $arcRepairTime > 0>> The recent rebellion left the arcology wounded and it falls to its owner to fix it. It will still take <<if $arcRepairTime > 1>>$arcRepairTime weeks<<else>>a week<</if>> to finish repair works. <<run cashX(-5000, "personalBusiness")>> - <<set $arcRepairTime--, $PC.engineering += .1>> + <<set $arcRepairTime--, IncreasePCSkills('engineering', 0.1)>> <</if>> <</if>> @@ -766,15 +766,15 @@ Routine upkeep of your demesne costs @@.yellow;<<print cashFormat($costs)>>.@@ <<if $weatherToday.severity-$weatherCladding > 2>> <<set $weatherAwareness = 1>> <<if $weatherCladding == 1>> - <<set _weatherRepairCost = Math.trunc((($weatherToday.severity-3)*($arcologies[0].prosperity*random(50,100)))+random(1,100)), $PC.engineering += .1>> + <<set _weatherRepairCost = Math.trunc((($weatherToday.severity-3)*($arcologies[0].prosperity*random(50,100)))+random(1,100)), IncreasePCSkills('engineering', 0.1)>> $arcologies[0].name's hardened exterior only partially resisted the extreme weather this week, and it requires repairs costing @@.yellow;<<print cashFormat(_weatherRepairCost)>>.@@ Your citizens are @@.green;grateful@@ to you for upgrading $arcologies[0].name to provide a safe haven from the terrible climate. <<run repX(500, "architecture")>> <<elseif $weatherCladding == 2>> - <<set _weatherRepairCost to Math.trunc((($weatherToday.severity-4)*($arcologies[0].prosperity*random(50,100)))+random(1,100)), $PC.engineering += .1>> + <<set _weatherRepairCost to Math.trunc((($weatherToday.severity-4)*($arcologies[0].prosperity*random(50,100)))+random(1,100)), IncreasePCSkills('engineering', 0.1)>> $arcologies[0].name's hardened exterior only partially resisted the extreme weather this week, and it requires repairs costing @@.yellow;<<print cashFormat(_weatherRepairCost)>>.@@ Your citizens are @@.green;grateful@@ to you for upgrading $arcologies[0].name to provide a safe haven from the terrible climate. <<run repX(500, "architecture")>> <<else>> - <<set _weatherRepairCost = Math.trunc((($weatherToday.severity-2)*($arcologies[0].prosperity*random(50,100)))+random(1,100)), $PC.engineering += .1>> + <<set _weatherRepairCost = Math.trunc((($weatherToday.severity-2)*($arcologies[0].prosperity*random(50,100)))+random(1,100)), IncreasePCSkills('engineering', 0.1)>> Severe weather damaged the arcology this week, requiring repairs costing @@.yellow;<<print cashFormat(_weatherRepairCost)>>.@@ Your citizens are @@.red;unhappy@@ that the arcology has proven vulnerable to the terrible climate. <<run repX(-50, "architecture")>> <</if>> @@ -787,16 +787,16 @@ Routine upkeep of your demesne costs @@.yellow;<<print cashFormat($costs)>>.@@ <<set $failedElite += 100>> <</if>> <<if $arcologies[0].prosperity > 50>> - <<set $arcologies[0].prosperity -= random(5,10), $PC.engineering += .1>> + <<set $arcologies[0].prosperity -= random(5,10), IncreasePCSkills('engineering', 0.1)>> <</if>> <<run cashX(forceNeg(Math.trunc(_weatherRepairCost/4)), "weather")>> <<else>> Since you lack the resources to effect prompt repairs yourself, prominent citizens step in to repair their own parts of the arcology. This is @@.red;terrible for your reputation,@@ and it also @@.red;severely reduces the arcology's prosperity.@@ <<if $arcologies[0].prosperity > 50>> - <<set $arcologies[0].prosperity -= random(5,10), $PC.engineering += .1>> + <<set $arcologies[0].prosperity -= random(5,10), IncreasePCSkills('engineering', 0.1)>> <</if>> <<run repX((Math.trunc($rep*0.9)) - $rep, "weather")>> - <<set $PC.engineering += .1>> + <<= IncreasePCSkills('engineering', 0.1)>> <<run cashX(forceNeg(Math.trunc(_weatherRepairCost/4)), "weather")>> <</if>> <<elseif $weatherToday.severity-$weatherCladding <= 2>> diff --git a/src/uncategorized/ptWorkaround.tw b/src/uncategorized/ptWorkaround.tw index f717b9a8505..3a13c80c7ad 100644 --- a/src/uncategorized/ptWorkaround.tw +++ b/src/uncategorized/ptWorkaround.tw @@ -18,7 +18,6 @@ <<switch $personalAttention[_ptwi].trainingRegimen>> <<case "build her devotion">> - <<set $PC.slaving += 0.2>> <<set $activeSlave.devotion += 6>> <<if ($activeSlave.fetishKnown == 1) && ($activeSlave.fetishStrength > 60) && ($activeSlave.fetish == "submissive")>> Since $activeSlave.slaveName is a submissive, you @@.hotpink;build $his devotion to you@@ by indulging $his need to be dominated. Already smiling to $himself, $he changes into bondage gear that blinds $him, forces $his arms behind $his back, forces $him to present $his breasts uncomfortably, and forces a painfully large dildo up $his <<if $activeSlave.vagina > 0>>vagina<<if $activeSlave.anus > 0>> and anus<</if>><<elseif $activeSlave.anus > 0>>anus<</if>>. Thus attired, $he is forced to serve you in whatever petty ways occur to you. $He holds your tablet for you on $his upthrust ass as you work, holds a thin beverage glass for you in $his upturned mouth when you eat, and lies still so you can use $his tits as a pillow whenever you recline. $He loves it. @@ -79,10 +78,10 @@ Spending time with you @@.mediumaquamarine;reduces $his fear towards you.@@ <<set $activeSlave.trust += 6>> <</if>> + <<= IncreasePCSkills('slaving', 0.2)>> <<set $activeSlave.training = 0>> <<case "look after her">> - <<set $PC.slaving += 0.1>> <<if $activeSlave.relationship == -3 && $activeSlave.fetish == "mindbroken">> Since $activeSlave.slaveName is your wife and not all there, you keep $him under a watchful eye to make sure no harm comes to the broken $girl. $He almost seems in better spirits under your care, not that it will matter in an hour or two. <<set $activeSlave.kindness++>> @@ -106,6 +105,7 @@ $His loose pussy does not recover this week. <</if>> <</if>> + <<= IncreasePCSkills('slaving', 0.1)>> <<set $activeSlave.training = 0>> <<case "soften her behavioral flaw">> @@ -156,10 +156,8 @@ $activeSlave.slaveName remains devoted to an old world faith that serves $him as a reservoir of mental resilience. Like all such beliefs, $hers has certain sexual elements; you amuse yourself by forcing $him to break them, and rewarding $him generously when $he does. <</if>> <<if $activeSlave.training < 100>> - <<set $PC.slaving += 0.2>> You make progress, but $he's the same at the end of the week. <<else>> - <<set $PC.slaving += 0.5>> <<set $activeSlave.training = 0>> By the end of the week, @@.green;you resolve $his flaw into something special.@@ @@.hotpink;$His obedience has increased.@@ <<run SoftenBehavioralFlaw($activeSlave)>> @@ -198,6 +196,7 @@ @@ <</if>> <</if>> + <<if $activeSlave.training < 100>> <<= IncreasePCSkills('slaving', 0.2)>> <<else>> <<= IncreasePCSkills('slaving', 0.5)>> <</if>> <<case "soften her sexual flaw">> <<if ($activeSlave.sexualFlaw == "none")>> @@ -282,10 +281,8 @@ has something. You should probably report this as nobody knows what is currently happening. $His flaw was supposed to be $activeSlave.sexualFlaw. <</switch>> <<if $activeSlave.training < 100>> - <<set $PC.slaving += 0.2>> You make progress, but $he's the same at the end of the week. <<else>> - <<set $PC.slaving += 0.5>> <<set $activeSlave.training = 0>> By the end of the week, @@.green;you resolve $his flaw into something special.@@ @@.hotpink;$His obedience has increased.@@ <<run SoftenSexualFlaw($activeSlave)>> @@ -324,9 +321,9 @@ @@ <</if>> <</if>> + <<if $activeSlave.training < 100>> <<= IncreasePCSkills('slaving', 0.2)>> <<else>> <<= IncreasePCSkills('slaving', 0.5)>> <</if>> <<case "learn skills">> - <<set $PC.slaving += 0.01>> <<set _trainingEfficiency = 10+Math.trunc($activeSlave.devotion/30)+Math.floor($activeSlave.intelligence/32)>> <<if $PC.career == "escort">> You are well-versed in sexual techniques and how to employ them, giving you an edge in teaching $him. @@ -402,10 +399,10 @@ @@.yellow;$his assignment has defaulted to fostering devotion.@@ <<set $personalAttention[_ptwi].trainingRegimen = "build her devotion">> <</if>> + <<= IncreasePCSkills('slaving', 0.01)>> <<set $activeSlave.training = 0>> <<case "break her will">> - <<set $PC.slaving += 0.2>> <<set $activeSlave.devotion -= 4>> <<if ($activeSlave.trust > 2)>> <<set $activeSlave.trust -= 15>> @@ -437,24 +434,24 @@ <<if ($activeSlave.trust < -20) && ($activeSlave.fetishKnown == 0)>> $He is now fully broken; @@.yellow;$his training assignment has defaulted to exploring $his sexuality.@@ <<set $personalAttention[_ptwi].trainingRegimen = "explore her sexuality">> - <<set $PC.slaving += 0.5>> + <<= IncreasePCSkills('slaving', 0.5)>> <<elseif ($activeSlave.trust < -20)>> $He is now fully broken; @@.yellow;$his training assignment has defaulted to fostering devotion.@@ <<set $personalAttention[_ptwi].trainingRegimen = "build her devotion">> - <<set $PC.slaving += 0.5>> + <<= IncreasePCSkills('slaving', 0.5)>> <<elseif ($activeSlave.devotion > 20) && ($activeSlave.fetishKnown == 0)>> $He is now obedient and attentive; @@.yellow;$his training assignment has defaulted to exploring $his sexuality.@@ <<set $personalAttention[_ptwi].trainingRegimen = "explore her sexuality">> - <<set $PC.slaving += 0.5>> + <<= IncreasePCSkills('slaving', 0.5)>> <<elseif ($activeSlave.devotion > 20)>> $He is now obedient and attentive; @@.yellow;$his training assignment has defaulted to fostering devotion.@@ <<set $personalAttention[_ptwi].trainingRegimen = "build her devotion">> - <<set $PC.slaving += 0.5>> + <<= IncreasePCSkills('slaving', 0.5)>> <</if>> + <<= IncreasePCSkills('slaving', 0.2)>> <<set $activeSlave.training = 0>> <<case "harshly break her will">> - <<set $PC.slaving += 0.4>> <<set $activeSlave.devotion -= 5, $activeSlave.trust -= 10, $activeSlave.health-->> <<if ($activeSlave.fetish == "mindbroken")>> <<set $activeSlave.minorInjury = either("black eye", "bruise", "split lip")>> @@ -518,8 +515,9 @@ <<if ($activeSlave.devotion > 20)>> $He is now fully broken; @@.yellow;$his training assignment has defaulted to fostering devotion.@@ <<set $personalAttention[_ptwi].trainingRegimen = "build her devotion">> - <<set $PC.slaving += 1>> + <= IncreasePCSkills('slaving', 1)>> <</if>> + <<= IncreasePCSkills('slaving', 0.4)>> <<set $activeSlave.training = 0>> <<case "fix her behavioral flaw">> @@ -558,10 +556,8 @@ <</if>> <<set $activeSlave.training += 40>> /* fixing is easier than softening */ <<if $activeSlave.training < 100>> - <<set $PC.slaving += 0.2>> You make progress, but $he's the same at the end of the week. <<else>> - <<set $PC.slaving += 0.5>> <<set $activeSlave.training = 0>> By the end of the week, @@.green;you break $him of $his bad habits.@@ @@.hotpink;$His obedience has increased.@@ <<set $activeSlave.behavioralFlaw = "none", $activeSlave.devotion += 4>> @@ -596,6 +592,7 @@ <<set $personalAttention[_ptwi].trainingRegimen = "fix her sexual flaw">> <</if>> <</if>> + <<if $activeSlave.training < 100>> <<= IncreasePCSkills('slaving', 0.2)>> <<else>> <<= IncreasePCSkills('slaving', 0.5)>> <</if>> <<case "fix her sexual flaw">> <<switch $activeSlave.sexualFlaw>> @@ -691,10 +688,8 @@ <</switch>> <<set $activeSlave.training += 40>> /* fixing is easier than softening */ <<if $activeSlave.training < 100>> - <<set $PC.slaving += 0.2>> You make progress, but $he's the same at the end of the week. <<else>> - <<set $PC.slaving += 0.5>> <<set $activeSlave.training = 0>> By the end of the week, @@.green;you break $him of $his bad habits.@@ @@.hotpink;$His obedience has increased.@@ <<set $activeSlave.sexualFlaw = "none", $activeSlave.devotion += 4>> @@ -731,9 +726,9 @@ <</if>> @@ <</if>> + <<if $activeSlave.training < 100>> <<= IncreasePCSkills('slaving', 0.2)>> <<else>> <<= IncreasePCSkills('slaving', 0.5)>> <</if>> <<case "explore her sexuality">> - <<set $PC.slaving += 0.1>> <<set $activeSlave.attrKnown = 1>> You set about investigating $his sexuality. <<if ($activeSlave.devotion < -20) && ($activeSlave.trust >= -20)>> @@ -870,339 +865,313 @@ so your investigation is complete. <</if>> <<BasicTrainingDefaulter>> + <<= IncreasePCSkills('slaving', 0.1)>> <<case "induce arrogance">> Since you've decided to incite $him to arrogance, you praise $him effusively, and give orders that others are to do so as well. Other slaves are punished for things $he's allowed to get away with. <<InduceFlawLenityEffects>> <<if $activeSlave.training < 100>> - <<set $PC.slaving += 0.2>> $He isn't seriously affected; you'll have to be more subtle next week. <<else>> - <<set $PC.slaving += 0.5>> <<set $activeSlave.training = 0>> $He begins to think $himself special, and is now @@.red;arrogant.@@ <<set $activeSlave.behavioralFlaw = "arrogant">> <<BasicTrainingDefaulter>> <</if>> + <<if $activeSlave.training < 100>> <<= IncreasePCSkills('slaving', 0.2)>> <<else>> <<= IncreasePCSkills('slaving', 0.5)>> <</if>> <<case "induce bitchiness">> Since you've decided to induce $him to bitchiness, you keep $him in your office and induce $him to criticize other slaves, rewarding $him when $he's especially catty. <<InduceFlawLenityEffects>> <<if $activeSlave.training < 100>> - <<set $PC.slaving += 0.2>> $He goes along, but remains cautious and will need more practice. <<else>> - <<set $PC.slaving += 0.5>> $He starts making @@.red;bitchy@@ remarks without being prompted. <<set $activeSlave.behavioralFlaw = "bitchy">> <<BasicTrainingDefaulter>> <</if>> + <<if $activeSlave.training < 100>> <<= IncreasePCSkills('slaving', 0.2)>> <<else>> <<= IncreasePCSkills('slaving', 0.5)>> <</if>> <<case "induce odd behavior">> Since you've decided to abuse $him into odd behavior, you target $him for a campaign of surprise sex. You constantly ambush $him, shove $him onto the ground, and fuck $him. Sometimes $he wakes up from bad dreams to find you penetrating $him. <<InduceFlawAbuseEffects>> <<if canDoVaginal($activeSlave)>><<= VaginalVCheck(10)>><<elseif canDoAnal($activeSlave)>><<= AnalVCheck(10)>><<else>><<set $activeSlave.oralCount += 10, $oralTotal += 10>><</if>> <<if $activeSlave.training < 100>> - <<set $PC.slaving += 0.2>> $He does $his best to tolerate the abuse. <<else>> - <<set $PC.slaving += 0.5>> $He starts @@.red;behaving oddly,@@ jumping at noises and mumbling to $himself. <<set $activeSlave.behavioralFlaw = "odd">> <<BasicTrainingDefaulter>> <</if>> + <<if $activeSlave.training < 100>> <<= IncreasePCSkills('slaving', 0.2)>> <<else>> <<= IncreasePCSkills('slaving', 0.5)>> <</if>> <<case "induce hatred of men">> In order to make $him hate men, you sometimes simply <<if $PC.dick == 1>>stick your dick in $him without asking<<else>>stuff a strap-on inside $him without asking<</if>>, and sometimes force shockingly juvenile pranks on $him. $He is regularly smacked in the face with floppy dildos. <<InduceFlawAbuseEffects>> <<if canDoVaginal($activeSlave)>><<= VaginalVCheck(10)>><<elseif canDoAnal($activeSlave)>><<= AnalVCheck(10)>><<else>><<set $activeSlave.oralCount += 10, $oralTotal += 10>><</if>> <<if $activeSlave.training < 100>> - <<set $PC.slaving += 0.2>> $He focuses more on you than on the masculine aspects of this. You'll need to be more subtle next week. <<else>> - <<set $PC.slaving += 0.5>> You notice $him starting to @@.red;shoot hateful glances@@ at any men $he sees. <<set $activeSlave.behavioralFlaw = "hates men">> <<BasicTrainingDefaulter>> <</if>> + <<if $activeSlave.training < 100>> <<= IncreasePCSkills('slaving', 0.2)>> <<else>> <<= IncreasePCSkills('slaving', 0.5)>> <</if>> <<case "induce hatred of women">> In order to make $him hate women, you keep $him in your office when $he's not otherwise occupied, and <<if $PC.vagina == 0>>make $him eat other slaves out<<else>>sit on $his face<</if>> until $he's thoroughly sick of pussy. <<InduceFlawAbuseEffects>> <<if $activeSlave.training < 100>> - <<set $PC.slaving += 0.2>> $He focuses more on you than on the feminine aspects of this. You'll need to be more subtle next week. <<else>> - <<set $PC.slaving += 0.5>> You notice $him starting to @@.red;shoot hateful glances@@ at any vaginas $he sees. <<set $activeSlave.behavioralFlaw = "hates women">> <<BasicTrainingDefaulter>> <</if>> + <<if $activeSlave.training < 100>> <<= IncreasePCSkills('slaving', 0.2)>> <<else>> <<= IncreasePCSkills('slaving', 0.5)>> <</if>> <<case "induce gluttony">> Inducing gluttony is harder than inducing anorexia; you force $him to orgasm when $he's eating, and praise $him effusively when $he gains weight. You also provide $him with ample rations for stress eating. <<set $activeSlave.training -= 20>> /* more difficult training */ <<if $activeSlave.training < 100>> - <<set $PC.slaving += 0.2>> $He eats when ordered, but isn't deeply affected. $He'll need more practice being a pig. <<else>> - <<set $PC.slaving += 0.5>> You notice $him starting to @@.red;enjoy eating@@ for its own sake, even when $he's not hungry. <<set $activeSlave.behavioralFlaw = "gluttonous">> <<BasicTrainingDefaulter>> <</if>> + <<if $activeSlave.training < 100>> <<= IncreasePCSkills('slaving', 0.2)>> <<else>> <<= IncreasePCSkills('slaving', 0.5)>> <</if>> <<case "induce anorexia">> You criticize $him cruelly whenever $he eats, and praise thinner slaves to $his face at every opportunity. <<InduceFlawAbuseEffects>> <<if $activeSlave.training < 100>> - <<set $PC.slaving += 0.2>> $He continues consuming $his rations when ordered, and will need further training. <<else>> - <<set $PC.slaving += 0.5>> $He begins to @@.red;eat only when repeatedly ordered to.@@ <<set $activeSlave.behavioralFlaw = "anorexic">> <<BasicTrainingDefaulter>> <</if>> + <<if $activeSlave.training < 100>> <<= IncreasePCSkills('slaving', 0.2)>> <<else>> <<= IncreasePCSkills('slaving', 0.5)>> <</if>> <<case "induce religious devotion">> You direct a campaign of abuse and threats at $him, and surreptitiously ensure that a little religious text from $his home country finds its way into a hiding place in $his living area. <<InduceFlawAbuseEffects>> <<if $activeSlave.training < 100>> - <<set $PC.slaving += 0.2>> $He keeps $his head down and shows no sign of religious introspection, at least this week. <<else>> - <<set $PC.slaving += 0.5>> $He begins to read it when $he thinks $he's alone, and @@.red;talks to God@@ when $he thinks only He is listening. <<set $activeSlave.behavioralFlaw = "devout">> <<BasicTrainingDefaulter>> <</if>> + <<if $activeSlave.training < 100>> <<= IncreasePCSkills('slaving', 0.2)>> <<else>> <<= IncreasePCSkills('slaving', 0.5)>> <</if>> <<case "induce liberation">> You direct a campaign of abuse and threats at $him, making sure to threaten $him with the absolute worst of slavery in your arcology. You also arrange for $him to witness other citizen's slaves in situations that aren't much fun. <<InduceFlawAbuseEffects>> <<if $activeSlave.training < 100>> - <<set $PC.slaving += 0.2>> $He does $his best to endure the abuse, unknowingly condemning $himself to more. <<else>> - <<set $PC.slaving += 0.5>> A deep @@.red;anger about slavery@@ builds within $him. <<set $activeSlave.behavioralFlaw = "liberated">> <<BasicTrainingDefaulter>> <</if>> + <<if $activeSlave.training < 100>> <<= IncreasePCSkills('slaving', 0.2)>> <<else>> <<= IncreasePCSkills('slaving', 0.5)>> <</if>> <<case "induce hatred of oral">> Since you've decided to force $him to dislike oral sex, you're forced to use a complicated and refined slave breaking technique: constantly raping $his face. <<InduceFlawAbuseEffects>> <<set $activeSlave.oralCount += 10, $oralTotal += 10>> <<if $activeSlave.training < 100>> - <<set $PC.slaving += 0.2>> $He does $his best to comply with the oral abuse, unknowingly condemning $himself to more. <<else>> - <<set $PC.slaving += 0.5>> After gagging enough, $he finally starts to @@.red;hate oral.@@ <<set $activeSlave.sexualFlaw = "hates oral">> <<BasicTrainingDefaulter>> <</if>> + <<if $activeSlave.training < 100>> <<= IncreasePCSkills('slaving', 0.2)>> <<else>> <<= IncreasePCSkills('slaving', 0.5)>> <</if>> <<case "induce hatred of anal">> Since you've decided to force $him to dislike anal sex, you're forced to use a complicated and refined slave breaking technique: constantly raping $his ass. <<if !canDoAnal($activeSlave)>>Every time you catch $him with $his chastity off, you're there to penetrate $his rectum<</if>>. <<InduceFlawAbuseEffects>> <<= AnalVCheck(10)>> <<if $activeSlave.training < 100>> - <<set $PC.slaving += 0.2>> $He does $his best to comply with your abuse of $his butthole, unknowingly condemning $himself to more assrape. <<else>> - <<set $PC.slaving += 0.5>> After feeling $his poor sphincter grow sorer and sorer, $he starts to @@.red;hate anal.@@ <<set $activeSlave.sexualFlaw = "hates anal">> <<BasicTrainingDefaulter>> <</if>> + <<if $activeSlave.training < 100>> <<= IncreasePCSkills('slaving', 0.2)>> <<else>> <<= IncreasePCSkills('slaving', 0.5)>> <</if>> <<case "induce hatred of penetration">> Since you've decided to force $him to dislike penetration, you're forced to use a complicated and refined slave breaking technique: constantly raping $him. <<InduceFlawAbuseEffects>> <<if canDoVaginal($activeSlave)>><<= VaginalVCheck(10)>><<elseif canDoAnal($activeSlave)>><<= AnalVCheck(10)>><<else>><<set $activeSlave.oralCount += 10, $oralTotal += 10>><</if>> <<if $activeSlave.training < 100>> - <<set $PC.slaving += 0.2>> $He does $his best to comply with your abuse, unknowingly condemning $himself to more of it. <<else>> - <<set $PC.slaving += 0.5>> After feeling $his poor holes grow sorer and sorer, $he starts to @@.red;hate getting fucked.@@ <<set $activeSlave.sexualFlaw = "hates penetration">> <<BasicTrainingDefaulter>> <</if>> + <<if $activeSlave.training < 100>> <<= IncreasePCSkills('slaving', 0.2)>> <<else>> <<= IncreasePCSkills('slaving', 0.5)>> <</if>> <<case "induce shame">> Since you've decided to force shame on $him, you keep $him in your office whenever $he's not otherwise occupied, and heap derision on $him at every opportunity, even inviting visitors to join you in chats about how unattractive and worthless $he is. <<InduceFlawAbuseEffects>> <<if $activeSlave.training < 100>> - <<set $PC.slaving += 0.2>> $He does $his best to keep $his chin up, unknowingly condemning $himself to more of this abuse. <<else>> - <<set $PC.slaving += 0.5>> $He wants nothing more than to hide in corner and cry, and is now @@.red;shamefast.@@ <<set $activeSlave.sexualFlaw = "shamefast">> <<BasicTrainingDefaulter>> <</if>> + <<if $activeSlave.training < 100>> <<= IncreasePCSkills('slaving', 0.2)>> <<else>> <<= IncreasePCSkills('slaving', 0.5)>> <</if>> <<case "induce sexual idealism">> Since you've decided to induce $him to sexual idealism, you keep $him in your office, and when the two of you are all alone, gossip with $him about other slaves and even citizens. You do your best to encourage $him to believe absurdities. <<InduceFlawLenityEffects>> <<if $activeSlave.training < 100>> - <<set $PC.slaving += 0.2>> $He doesn't know what to make of this; you'll have to keep at it. <<else>> - <<set $PC.slaving += 0.5>> $He follows along, and is now @@.red;sexually idealistic.@@ <<set $activeSlave.sexualFlaw = "idealistic">> <<BasicTrainingDefaulter>> <</if>> + <<if $activeSlave.training < 100>> <<= IncreasePCSkills('slaving', 0.2)>> <<else>> <<= IncreasePCSkills('slaving', 0.5)>> <</if>> <<case "induce sexual repression">> Since you've decided to force sexual repression on $him, you keep $him in your office whenever $he's not otherwise occupied. You use the monitoring systems to reveal $his sexual arousal whenever it appears, and castigate and punish $him for it. <<InduceFlawAbuseEffects>> <<if $activeSlave.training < 100>> - <<set $PC.slaving += 0.2>> $He does $his best to keep $his chin up, unknowingly condemning $himself to more of this abuse. <<else>> - <<set $PC.slaving += 0.5>> $He desperately tries to avoid even thinking about subjects that get $him punished, and is now @@.red;sexually repressed.@@ <<set $activeSlave.sexualFlaw = "repressed">> <<BasicTrainingDefaulter>> <</if>> + <<if $activeSlave.training < 100>> <<= IncreasePCSkills('slaving', 0.2)>> <<else>> <<= IncreasePCSkills('slaving', 0.5)>> <</if>> <<case "induce sexual apathy">> Since you've decided to force sexual apathy on $him, you keep $him in your office whenever $he's not otherwise occupied. You use $him regularly, and punish $him whenever $he shows any sign of enjoyment. <<InduceFlawAbuseEffects>> <<if canDoVaginal($activeSlave)>><<= VaginalVCheck(10)>><<elseif canDoAnal($activeSlave)>><<= AnalVCheck(10)>><<else>><<set $activeSlave.oralCount += 10, $oralTotal += 10>><</if>> <<if $activeSlave.training < 100>> - <<set $PC.slaving += 0.2>> $He continues to experience arousal when fucked, and will need more of this treatment. <<else>> - <<set $PC.slaving += 0.5>> $He desperately tries to avoid arousal, and is now @@.red;sexually apathetic.@@ <<set $activeSlave.sexualFlaw = "apathetic">> <<BasicTrainingDefaulter>> <</if>> + <<if $activeSlave.training < 100>> <<= IncreasePCSkills('slaving', 0.2)>> <<else>> <<= IncreasePCSkills('slaving', 0.5)>> <</if>> <<case "induce crudity">> Since you've decided to force sexual crudeness on $him, you keep $him in your office whenever $he's not otherwise occupied, and degrade $him cruelly. You relax the normal cleanliness rules, and require $him to leave $his used holes as they are until $he's too disgusting to fuck. <<if canDoVaginal($activeSlave)>><<= VaginalVCheck(10)>><<elseif canDoAnal($activeSlave)>><<= AnalVCheck(10)>><<else>><<set $activeSlave.oralCount += 10, $oralTotal += 10>><</if>> <<InduceFlawAbuseEffects>> <<if $activeSlave.training < 100>> - <<set $PC.slaving += 0.2>> $He does $his best to tolerate the unclean feelings, condemning $himself to more of this. <<else>> - <<set $PC.slaving += 0.5>> $He slowly stops caring, and is now @@.red;sexually crude.@@ <<set $activeSlave.sexualFlaw = "crude">> <<BasicTrainingDefaulter>> <</if>> + <<if $activeSlave.training < 100>> <<= IncreasePCSkills('slaving', 0.2)>> <<else>> <<= IncreasePCSkills('slaving', 0.5)>> <</if>> <<case "induce judgement">> Since you've decided to make $him sexually judgemental, you keep $him in your office and fuck $him, <<if $PC.dick == 1>>praising $him whenever $he takes your big dick well<<else>>using a huge strap-on on $him and praising $him when $he takes it like a good girl<</if>>. You also judge others' endowments in $his presence. <<InduceFlawLenityEffects>> <<if $activeSlave.training < 100>> - <<set $PC.slaving += 0.2>> $He writes this off as bravado, and will need more training. <<else>> - <<set $PC.slaving += 0.5>> $He starts to consider $himself reserved for special sexual treatment, and is now @@.red;sexually judgemental.@@ <<set $activeSlave.sexualFlaw = "judgemental">> <<BasicTrainingDefaulter>> <</if>> + <<if $activeSlave.training < 100>> <<= IncreasePCSkills('slaving', 0.2)>> <<else>> <<= IncreasePCSkills('slaving', 0.5)>> <</if>> <<case "induce cum addiction">> The cumslut is quite pleased when you order $him to stay in your office whenever $he can for use as one of your personal oral toys. You carefully limit $his orgasms to when <<if $PC.dick == 1>>you're blowing your load down $his throat<<else>>$he's swallowing your pussyjuice<</if>>, and make $his oral adventures predictably regular. <<set $activeSlave.oralCount += 10, $oralTotal += 10>> <<if $activeSlave.training < 100>> - <<set $PC.slaving += 0.2>> $He enjoys giving you lots of oral, but will need more training to develop psychological addiction to it. <<else>> - <<set $PC.slaving += 0.5>> $He begins to develop a psychological @@.yellow;addiction to cum.@@ <<set $activeSlave.sexualFlaw = "cum addict">> <<BasicTrainingDefaulter>> <</if>> + <<if $activeSlave.training < 100>> <<= IncreasePCSkills('slaving', 0.2)>> <<else>> <<= IncreasePCSkills('slaving', 0.5)>> <</if>> <<case "induce anal addiction">> The buttslut is quite pleased when you order $him to stay in your office<<if !canDoAnal($activeSlave)>>and remove $his chastity<</if>> whenever $he can for use as one of your personal anal toys. You make $his anal orgasms predictably regular, doing your best to inculcate reliance on them. <<= AnalVCheck(10)>> <<if $activeSlave.training < 100>> - <<set $PC.slaving += 0.2>> $He enjoys all the anal attention, but will need more training to develop psychological addiction to buttsex. <<else>> - <<set $PC.slaving += 0.5>> $He begins to develop a psychological @@.yellow;addiction to anal sex.@@ <<set $activeSlave.sexualFlaw = "anal addict">> <<BasicTrainingDefaulter>> <</if>> + <<if $activeSlave.training < 100>> <<= IncreasePCSkills('slaving', 0.2)>> <<else>> <<= IncreasePCSkills('slaving', 0.5)>> <</if>> <<case "induce attention whoring">> The humiliation slut is quite pleased when you order $him to stay in your office whenever $he can, and fucking $him whenever other slaves are present. You do your best to focus $his attention on how the others react to the spectacle. <<if canDoVaginal($activeSlave)>><<= VaginalVCheck(10)>><<elseif canDoAnal($activeSlave)>><<= AnalVCheck(10)>><<else>><<set $activeSlave.oralCount += 10, $oralTotal += 10>><</if>> <<if $activeSlave.training < 100>> - <<set $PC.slaving += 0.2>> $He enjoys all the humiliation, but will need more training to become a true attention whore. <<else>> - <<set $PC.slaving += 0.5>> $He becomes a @@.yellow;true attention whore,@@ caring more about the spectators than the sex. <<set $activeSlave.sexualFlaw = "attention whore">> <<BasicTrainingDefaulter>> <</if>> + <<if $activeSlave.training < 100>> <<= IncreasePCSkills('slaving', 0.2)>> <<else>> <<= IncreasePCSkills('slaving', 0.5)>> <</if>> <<case "induce breast growth obsession">> You inspect $his breasts multiple times a day, and praise $him effusively when they grow at all. You treat it as though it were something $he could control personally. <<if $activeSlave.training < 100>> - <<set $PC.slaving += 0.2>> $He enjoys your attention to $his favorite part of $himself, but doesn't truly internalize your focus on their growth. <<else>> - <<set $PC.slaving += 0.5>> $He begins to believe you despite $himself, and becomes @@.yellow;obsessed with breast growth.@@ <<set $activeSlave.sexualFlaw = "breast growth">> <<BasicTrainingDefaulter>> <</if>> + <<if $activeSlave.training < 100>> <<= IncreasePCSkills('slaving', 0.2)>> <<else>> <<= IncreasePCSkills('slaving', 0.5)>> <</if>> <<case "induce abusiveness">> The dom is gratified when you order $him to stay in your office whenever $he can to fuck any slave you feel like throwing $his way. You do your best to limit $his menu items to reluctant or even rebellious slaves, and praise $him when $he forces $himself on them. <<set $activeSlave.penetrativeCount += 20, $penetrativeTotal += 20>> <<if $activeSlave.training < 100>> - <<set $PC.slaving += 0.2>> $He has fun, but $he continues to enjoy getting off more than getting to use bitches. $He'll need more practice. <<else>> - <<set $PC.slaving += 0.5>> $He becomes @@.yellow;sexually abusive,@@ looking over each slave that comes into your office in the hope they'll resist. <<set $activeSlave.sexualFlaw = "abusive">> <<BasicTrainingDefaulter>> <</if>> + <<if $activeSlave.training < 100>> <<= IncreasePCSkills('slaving', 0.2)>> <<else>> <<= IncreasePCSkills('slaving', 0.5)>> <</if>> <<case "induce maliciousness">> The sadist is gratified when you order $him to stay in your office whenever $he can to have $his way with any slave you feel like throwing $his way. You do your best to limit $his menu items to rebellious slaves, and praise $him when $his sadism makes $him an effective punishment tool. <<set $activeSlave.penetrativeCount += 20, $penetrativeTotal += 20>> <<if $activeSlave.training < 100>> - <<set $PC.slaving += 0.2>> $He enjoys $himself, but still betrays occasional concern when slaves are really broken by what $he does to them. $He'll need more practice. <<else>> - <<set $PC.slaving += 0.5>> $He becomes @@.yellow;sexually malicious,@@ going so far as to lick tears off $his victims' faces. <<set $activeSlave.sexualFlaw = "malicious">> <<BasicTrainingDefaulter>> <</if>> + <<if $activeSlave.training < 100>> <<= IncreasePCSkills('slaving', 0.2)>> <<else>> <<= IncreasePCSkills('slaving', 0.5)>> <</if>> <<case "induce self hatred">> You order the masochist to stay in your office whenever $he's not working or resting. You fuck $him cruelly, going beyond the pain $he enjoys into harsh degradation. And every time you use $him, you make sure to tell $him how useless $he is. <<if canDoVaginal($activeSlave)>><<= VaginalVCheck(10)>><<elseif canDoAnal($activeSlave)>><<= AnalVCheck(10)>><<else>><<set $activeSlave.oralCount += 10, $oralTotal += 10>><</if>> <<if $activeSlave.training < 100>> - <<set $PC.slaving += 0.2>> $He gets off on the pain, but $his sense of self isn't seriously affected this week. <<else>> - <<set $PC.slaving += 0.5>> $He becomes @@.yellow;sexually self hating,@@ and tearfully begs to you do worse to $him, no matter how bad it gets. <<set $activeSlave.sexualFlaw = "self hating">> <<BasicTrainingDefaulter>> <</if>> + <<if $activeSlave.training < 100>> <<= IncreasePCSkills('slaving', 0.2)>> <<else>> <<= IncreasePCSkills('slaving', 0.5)>> <</if>> <<case "induce sexual self neglect">> You order the sub to stay in your office whenever $he's not working or resting, and use $his body for your pleasure. The instant you climax, you go back to your work or to another slave, treating $him like a piece of used tissue. <<if canDoVaginal($activeSlave)>><<= VaginalVCheck(10)>><<elseif canDoAnal($activeSlave)>><<= AnalVCheck(10)>><<else>><<set $activeSlave.oralCount += 10, $oralTotal += 10>><</if>> <<if $activeSlave.training < 100>> - <<set $PC.slaving += 0.2>> $He accepts $his utterly submissive role, but $his sense of self isn't seriously affected this week. <<else>> - <<set $PC.slaving += 0.5>> $He becomes @@.yellow;sexually self neglectful,@@ and loses all expectation that those who use $him will address $his pleasure at all. <<set $activeSlave.sexualFlaw = "neglectful">> <<BasicTrainingDefaulter>> <</if>> + <<if $activeSlave.training < 100>> <<= IncreasePCSkills('slaving', 0.2)>> <<else>> <<= IncreasePCSkills('slaving', 0.5)>> <</if>> <<case "induce breeding obsession">> You order the pregnant slut to stay in your office whenever $he's not working or resting. <<if $activeSlave.pregKnown == 0>>Since $he's not pregnant, you keep $him rigged up with an enormous sympathy belly when $he's there.<</if>> Rather than fucking $him, you praise $his pregnancy effusively, and only allow $him to get off when you're doing so. <<if $activeSlave.training < 100>> - <<set $PC.slaving += 0.2>> $He enjoys $himself, but mostly because of the pleasure. $He'll need more training. <<else>> - <<set $PC.slaving += 0.5>> $He develops an @@.yellow;obsession with breeding,@@ and begins to stroke $his belly in a disturbingly masturbatory way. <<set $activeSlave.sexualFlaw = "breeder">> <<BasicTrainingDefaulter>> <</if>> + <<if $activeSlave.training < 100>> <<= IncreasePCSkills('slaving', 0.2)>> <<else>> <<= IncreasePCSkills('slaving', 0.5)>> <</if>> <</switch>> <<set $PC.slaving = Math.clamp($PC.slaving, -100, 100)>> diff --git a/src/uncategorized/schoolroom.tw b/src/uncategorized/schoolroom.tw index 2134cfd76cd..aaf4a616a13 100644 --- a/src/uncategorized/schoolroom.tw +++ b/src/uncategorized/schoolroom.tw @@ -101,11 +101,11 @@ $schoolroomNameCaps is well-equipped, with wallscreens to display lessons. These <</if>> <br> -<<set _Tmult2 = Math.trunc(5000*$upgradeMultiplierArcology)>> +<<set _Tmult2 = Math.trunc(5000*$upgradeMultiplierArcology*$HackingSkillMultiplier)>> <<if $schoolroomUpgradeLanguage == 1>> $schoolroomNameCaps boasts state of the art linguistic interfaces that allow it to teach the basics of the arcology's lingua franca with increased success. <<else>> - $schoolroomNameCaps includes only basic language classes in its curriculum. [[Install advanced linguistic interfaces to efficiently teach the arcology's lingua franca|Schoolroom][cashX(forceNeg(_Tmult2), "capEx"), $schoolroomUpgradeLanguage = 1]] //Costs <<print cashFormat(_Tmult2)>>// + $schoolroomNameCaps includes only basic language classes in its curriculum. [[Install advanced linguistic interfaces to efficiently teach the arcology's lingua franca|Schoolroom][cashX(forceNeg(_Tmult2), "capEx"), $schoolroomUpgradeLanguage = 1, $PC.hacking += 0.1]] //Costs <<print cashFormat(_Tmult2)>>// <</if>> <br> diff --git a/src/uncategorized/servantsQuarters.tw b/src/uncategorized/servantsQuarters.tw index caf7deeab84..b4a778b748a 100644 --- a/src/uncategorized/servantsQuarters.tw +++ b/src/uncategorized/servantsQuarters.tw @@ -94,8 +94,8 @@ $servantsQuartersNameCaps <<if $servantsQuartersUpgradeMonitoring == 1>> The quarters have been upgraded with enhanced monitoring systems to make the servants work harder, improving their obedience and efficiency. <<else>> - <<set _Tmult1 = Math.trunc(10000*$upgradeMultiplierArcology)>> - The quarters are standard. [[Upgrade the monitoring systems to force harder work|Servants' Quarters][cashX(forceNeg(_Tmult1), "capEx"), $servantsQuartersUpgradeMonitoring = 1]] //Costs <<print cashFormat(_Tmult1)>> and will increase upkeep costs// + <<set _Tmult1 = Math.trunc(10000*$upgradeMultiplierArcology*$HackingSkillMultiplier)>> + The quarters are standard. [[Upgrade the monitoring systems to force harder work|Servants' Quarters][cashX(forceNeg(_Tmult1), "capEx"), $servantsQuartersUpgradeMonitoring = 1, $PC.hacking += 0.1]] //Costs <<print cashFormat(_Tmult1)>> and will increase upkeep costs// <</if>> <<if $servantMilkers == 1>> -- GitLab