diff --git a/TODO.txt b/TODO.txt index 4e9438eef51733343684bae5411fb9f5ad004eaa..d2849749bb4fd8d20cdaf341ebccc424da5b9fa4 100644 --- a/TODO.txt +++ b/TODO.txt @@ -2,10 +2,11 @@ Main: -finish recalc widgets Rebellions: --mini events for citizens --finish report for rebellion +-citizens rebellions -riot control center -add security maluses to losses +-add to unit descriptions loyalty description +-options of what to do with the rebels further development: -specialized slave schools diff --git a/devTools/tweeGo/tweego_nix64 b/devTools/tweeGo/tweego_nix64 index 94f443ac19b91e62b6e737b7241d7186e3fe74f2..87be619f2e4fce3a2f5cc062a9b3bf22593d2284 100755 Binary files a/devTools/tweeGo/tweego_nix64 and b/devTools/tweeGo/tweego_nix64 differ diff --git a/devTools/tweeGo/tweego_nix86 b/devTools/tweeGo/tweego_nix86 index d10ae3832fb040a55b84cc1723d1aafd38b37ea4..73f247a3c3165f592dedde5e1c9c0af62eee2d4d 100755 Binary files a/devTools/tweeGo/tweego_nix86 and b/devTools/tweeGo/tweego_nix86 differ diff --git a/devTools/tweeGo/tweego_osx64 b/devTools/tweeGo/tweego_osx64 index 1d5a6e2d74cb15a3a80db2adaee9753de2f488c9..279ff7a8896d02deb1bfaad498e6afb8202ef78e 100644 Binary files a/devTools/tweeGo/tweego_osx64 and b/devTools/tweeGo/tweego_osx64 differ diff --git a/devTools/tweeGo/tweego_osx86 b/devTools/tweeGo/tweego_osx86 index 96581841a4c2375d9b078b3e7ceb58b5e0aae772..dce990a876087d9d68e527569e3e6fa930f4347d 100644 Binary files a/devTools/tweeGo/tweego_osx86 and b/devTools/tweeGo/tweego_osx86 differ diff --git a/devTools/tweeGo/tweego_win64.exe b/devTools/tweeGo/tweego_win64.exe index c51755eb18b38304501eb7ac89a185bc12d83bd2..4275de3bcb611dcaa683cc2da01fbbf89d5758b1 100755 Binary files a/devTools/tweeGo/tweego_win64.exe and b/devTools/tweeGo/tweego_win64.exe differ diff --git a/devTools/tweeGo/tweego_win86.exe b/devTools/tweeGo/tweego_win86.exe index 4020b6fec2ecab494eabd6f50dcbf74531010e4f..ad0415bdd1ea46a5437a5cf3f030362634324567 100644 Binary files a/devTools/tweeGo/tweego_win86.exe and b/devTools/tweeGo/tweego_win86.exe differ diff --git a/slave variables documentation - Pregmod.txt b/slave variables documentation - Pregmod.txt index c234fbb334f6cda963663486529424ad0b99ebd1..27b60a9a61aa3752c303fc30851e8e491b1cb1a5 100644 --- a/slave variables documentation - Pregmod.txt +++ b/slave variables documentation - Pregmod.txt @@ -345,11 +345,10 @@ slave's assignment "work a glory hole" "work in the dairy" "get milked" -"guard you" "please you" "stay confined" -"guard you" -"recruit girls" +"guard you" - obsolete? +"recruit girls" - obsolete? "be your Head Girl" "work as a servant" "serve in the master suite" @@ -372,7 +371,6 @@ slave's assignment "work in the brothel" "be confined in the cellblock" "be your Recruiter" -"stay confined" assignmentVisable: diff --git a/src/SecExp/SecExpBackwardCompatibility.tw b/src/SecExp/SecExpBackwardCompatibility.tw index 021f4381a5de21e1d330ce4591bc244fa4bf33a0..b0467878321379526403c6572b950c7e8c8fb7e7 100644 --- a/src/SecExp/SecExpBackwardCompatibility.tw +++ b/src/SecExp/SecExpBackwardCompatibility.tw @@ -87,6 +87,9 @@ <<if ndef $forceRebellion>> <<set $forceRebellion = 0>> <</if>> +<<if ndef $rebellionGameOver>> +<<set $rebellionGameOver = 1>> +<</if>> /* edicts */ <<if ndef $edictsUpkeep>> @@ -342,6 +345,15 @@ <<if ndef $repairTime>> <<set $repairTime = 3>> <</if>> +<<if ndef $arcRepairTime>> +<<set $arcRepairTime = 0>> +<</if>> +<<if ndef $arcRepairCost>> +<<set $arcRepairCost = 1000>> +<</if>> +<<if ndef $rebelDefeatAftermath>> +<<set $rebelDefeatAftermath = 0>> +<</if>> <<if ndef $garrison>> <<set $garrison = { penthouse: 0, diff --git a/src/SecExp/attackReport.tw b/src/SecExp/attackReport.tw index 5372f74e108df6317624a4003886df59d404bc9a..3ae15cf285245ebf58e809ede84d0603cd36489c 100644 --- a/src/SecExp/attackReport.tw +++ b/src/SecExp/attackReport.tw @@ -73,10 +73,63 @@ <<set $PCvictories++>> <</if>> <</if>> +<<set _day = $day + random(0,7)>> +<<set _month = $month>> +<<set _year = $year>> +<<switch _month>> +<<case "January">> +<<if _day > 31>> + <<set _day -= 31, _month = "February">> +<</if>> +<<case "February">> +<<if _day > 28>> + <<set _day -= 28, _month = "March">> +<</if>> +<<case "March">> +<<if _day > 31>> + <<set _day -= 31, _month = "April">> +<</if>> +<<case "April">> +<<if _day > 30>> + <<set _day -= 30, _month = "May">> +<</if>> +<<case "May">> +<<if _day > 31>> + <<set _day -= 31, _month = "June">> +<</if>> +<<case "June">> +<<if _day > 30>> + <<set _day -= 30, _month = "July">> +<</if>> +<<case "July">> +<<if _day > 31>> + <<set _day -= 31, _month = "August">> +<</if>> +<<case "August">> +<<if _day > 31>> + <<set _day -= 31, _month = "September">> +<</if>> +<<case "September">> +<<if _day > 30>> + <<set _day -= 30, _month = "October">> +<</if>> +<<case "October">> +<<if _day > 31>> + <<set _day -= 31, _month = "November">> +<</if>> +<<case "November">> +<<if _day > 30>> + <<set _day -= 30, _month = "December">> +<</if>> +<<default>> +<<if _day > 31>> + <<set _day -= 31, _month = "January", _year += 1>> +<</if>> +<</switch>> <hr> <<if $attackType == "raiders">> - Today, the <<print $day + random(0,7)>> of $month $year, our arcology was attacked by a band of wild raiders, $attackTroops men strong. Our defense forces clashed with them + Today, the _day of _month _year, our arcology was attacked by a band of wild raiders, $attackTroops men strong. Our defense forces clashed with them <<if $battleTerrain == "urban">> in the streets of <<if $terrain == "urban">>the old world city surrounding the arcology<<else>>of the free city<</if>>, <<elseif $battleTerrain == "rural">> @@ -139,7 +192,7 @@ You decided in favor of a financial approach rather than open hostilities. Your troops remain inside the arcology's walls. <</if>> <<elseif $attackType == "free city">> - Today, the <<print $day + random(0,7)>> of $month, $year, our arcology was attacked by a contingent of mercenaries hired by a competing free city, $attackTroops men strong. Our defense forces clashed with them + Today, the _day of _month _year, our arcology was attacked by a contingent of mercenaries hired by a competing free city, $attackTroops men strong. Our defense forces clashed with them <<if $battleTerrain == "urban">> in the streets of <<if $terrain == "urban">>the old world city surrounding the arcology<<else>>of the free city<</if>>, <<elseif $battleTerrain == "rural">> @@ -202,7 +255,7 @@ You decided in favor of a financial approach rather than open hostilities. Your troops remain inside the arcology's walls. <</if>> <<elseif $attackType == "freedom fighters">> - Today, the <<print $day + random(0,7)>> of $month, $year, our arcology was attacked by a group of freedom fighters bent on the destruction of the institution of slavery, $attackTroops men strong. Our defense forces clashed with them + Today, the _day of _month _year, our arcology was attacked by a group of freedom fighters bent on the destruction of the institution of slavery, $attackTroops men strong. Our defense forces clashed with them <<if $battleTerrain == "urban">> in the streets of <<if $terrain == "urban">>the old world city surrounding the arcology<<else>>of the free city<</if>>, <<elseif $battleTerrain == "rural">> @@ -265,7 +318,7 @@ You decided in favor of a financial approach rather than open hostilities. Your troops remain inside the arcology's walls. <</if>> <<elseif $attackType == "old world">> - Today, the <<print $day + random(0,7)>> of $month, $year, our arcology was attacked by an old world nation boasting a misplaced sense of superiority, $attackTroops men strong. Our defense forces clashed with them + Today, the _day of _month _year, our arcology was attacked by an old world nation boasting a misplaced sense of superiority, $attackTroops men strong. Our defense forces clashed with them <<if $battleTerrain == "urban">> in the streets of <<if $terrain == "urban">>the old world city surrounding the arcology<<else>>of the free city<</if>>, <<elseif $battleTerrain == "rural">> @@ -524,7 +577,7 @@ 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 $cash -= 1000 * _majorBattleMod>> <<if $week <= 30>> - <<set $ACitizens -= random(80 * _majorBattleMod)>> + <<set $ACitizens -= random(80) * _majorBattleMod>> <<set $ASlaves -= random(120) * _majorBattleMod>> <<set $arcologies[0].prosperity -= random(5) * _majorBattleMod>> <<elseif $week <= 60>> diff --git a/src/SecExp/edicts.tw b/src/SecExp/edicts.tw index b1420e0353bbf2873004f19ea02dd128b5775dbc..734211ec42b997c09a6fbf65149ee4f26918a779 100644 --- a/src/SecExp/edicts.tw +++ b/src/SecExp/edicts.tw @@ -79,7 +79,7 @@ <</if>> <<if $hasFoughtOnce == 1>> -<br><br>Defense Force:__ +<br><br>__Defense Force:__ <<if $slavesOfficers == 1>> <br>''Slave Officers:'' your trusted slaves are allowed to lead the defense forces of the arcology. [[Repeal|edicts][$slavesOfficers = 0, $edictsAuthUpkeep -= 10]] diff --git a/src/SecExp/rebellionGenerator.tw b/src/SecExp/rebellionGenerator.tw index 17023090c91a84688ca610ded739f0e130342187..859985db42d725e26d05aed36fddda4bc2c74cfc 100644 --- a/src/SecExp/rebellionGenerator.tw +++ b/src/SecExp/rebellionGenerator.tw @@ -176,19 +176,16 @@ <</if>> <</if>> -<<if $forceRebellion == 1>> - <<set $slaveRebellion = 1>> +<<if $forceRebellion == 1 && $foughtThisWeek == 0>> + <<if random(1,100) <= 50>> + <<set $slaveRebellion = 1>> + <<set $citizenRebellion = 0>> + <<else>> + <<set $slaveRebellion = 0>> + <<set $citizenRebellion = 1>> + <</if>> <</if>> -<br>Debug: slave chance: _slave -<br>Debug: citizen chance: _citizen -<br>Debug: Event fires for slaves: $slaveRebellionEventFires -<br>Debug: Event fires for citizens: $citizenRebellionEventFires -<br>Debug: slave progress: $slaveProgress -<br>Debug: citizen progress: $citizenProgress -<br>Debug: slave rebellion fires: $slaveRebellion -<br>Debug: citizen rebellion fires: $citizenRebellion - <<if $slaveRebellion == 1>> <<set $lastRebellionWeeks = 0>> <<set $leadingTroops = "assistant">> @@ -199,7 +196,8 @@ <<set $notInvolved = Math.clamp($notInvolved - random(1,100),0,$ASlaves)>> <<set $attackTroops = Math.round((($ASlaves - $notInvolved) * (1 - _authFactor)))>> /* a percentage of slave will actively participate in the rebellion, depending on authority, the higher the fewer slaves join */ <<set $attackTroops = Math.clamp($attackTroops - random(1,100),0,$ASlaves)>> - <<set $irregulars = Math.round((($ACitizens - $ACitizens * (1 - Math.clamp(_repFactor,0.5,0.7))) * (1 - Math.clamp(_repFactor,0.4,0.6))) * 0.2)>> /* citizens participating on the side of the player. + <<set _citNonInvolved = $ACitizens * (1 - Math.clamp(_repFactor,0.5,0.7))>> + <<set $irregulars = Math.round((($ACitizens - _citNonInvolved) * (1 - Math.clamp(_repFactor,0.4,0.6))) * 0.1)>> /* citizens participating on the side of the player. <<set $irregulars = Math.clamp($irregulars - random(1,100),0,$ACitizens)>> /* calc if units participate */ <<for _i = 0; _i < $slaveUnits.length; _i++>> diff --git a/src/SecExp/rebellionHandler.tw b/src/SecExp/rebellionHandler.tw index 8948fb634594bba853b67b88ec3b639d08ce59ca..5ea9fb93489933bd11f879f641ec01f4e59ada7a 100644 --- a/src/SecExp/rebellionHandler.tw +++ b/src/SecExp/rebellionHandler.tw @@ -54,11 +54,13 @@ <<set _attack += ($secBotsBaseAttack + $secBotsBaseAttack * $secBots.equip * $equipMod)>> <<set _defense += ($secBotsBaseDefense + $secBotsBaseDefense * $secBots.equip * $equipMod)>> <<set _hp += $secBotsBaseHp * $secBots.troops>> + <<set $deployedUnits++>> <</if>> <<for _i = 0; _i < $militiaUnits.length; _i++>> <<if $militiaUnits[_i].active == 1 && !($rebellingUnits.includes($militiaUnits[_i]))>> <<set $deployingMilitia = 1>> + <<set $deployedUnits++>> <<if $militiaUnits[_i].training <= 10>> <<set _expBonus = 0>> <<elseif $militiaUnits[_i].training <= 33>> @@ -76,6 +78,7 @@ <<for _i = 0; _i < $slaveUnits.length; _i++>> <<if $slaveUnits[_i].active == 1 && !($rebellingUnits.includes($slaveUnits[_i]))>> <<set $deployingSlaves = 1>> + <<set $deployedUnits++>> <<if $slaveUnits[_i].training <= 33>> <<set _expBonus = 0>> <<elseif $slaveUnits[_i].training <= 66>> @@ -91,6 +94,7 @@ <<for _i = 0; _i < $mercUnits.length; _i++>> <<if $mercUnits[_i].active == 1 && !($rebellingUnits.includes($mercUnits[_i]))>> <<set $deployingMercs = 1>> + <<set $deployedUnits++>> <<if $mercUnits[_i].training <= 33>> <<set _expBonus = 0>> <<elseif $mercUnits[_i].training <= 66>> @@ -271,7 +275,7 @@ <<set _hp -= _damage>> <br> <<if $showBattleStatistics == 1>> remaining hp: <<print Math.round(_hp)>><</if>> - <<set $losses = _damage / _baseHp>> + <<set $losses += _damage / _baseHp>> <<set _morale -= (_damage + _damage / _baseHp)>> <br> <<if $showBattleStatistics == 1>> remaining morale: <<print Math.round(_morale)>><</if>> @@ -296,7 +300,16 @@ <br>@@.red;Error: failed to determine battle result@@ <</if>> -<<if $showBattleStatistics == 1>> +<<if $showBattleStatistics == 1 && $rebellionGameOver == 1 && $battleResult == -3>> + <br><br> + <<link "Proceed">> + <<set $gameover to "Rebellion defeat">> + <<goto "Gameover">> + <</link>> +<<elseif $rebellionGameOver == 1 && $battleResult == -3>> + <<set $gameover to "Rebellion defeat">> + <<goto "Gameover">> +<<elseif $showBattleStatistics == 1>> <br><br> <<link "Proceed">> <<goto "rebellionReport">> diff --git a/src/SecExp/rebellionOptions.tw b/src/SecExp/rebellionOptions.tw index 053a1c0c71dccdff63c30fa70d2c8647fa476052..2d4e5163c41069d979e4b58c90f980a1730f1e98 100644 --- a/src/SecExp/rebellionOptions.tw +++ b/src/SecExp/rebellionOptions.tw @@ -7,7 +7,7 @@ <<if $slaveRebellion == 1>> In the end it happened, the slaves of your arcology dared took up arms and raised up against their betters. Your penthouse is flooded with reports from all over the arcology of small skirmishes between the rioting slaves and the security forces. - It appears $attackTroops rebels are in the streets right now, building barricades and freeing their peers. They are + It appears <strong>$attackTroops</strong> rebels are in the streets right now, building barricades and freeing their peers. They are <<if $attackEquip <= 0>> <strong>poorly armed</strong>. <<elseif $attackEquip == 1>> @@ -27,7 +27,7 @@ <<elseif $rebellingUnits.length > 0>> It seems that one of your military units betrayed you and joined the insurrection. <</if>> - + /* will need to be rewritten */ <br>You quickly assemble your loyal citizens and <<if $mercenaries >= 1>> your mercenaries,<</if>> <<if $securityForceActive == 1>> your $securityForceName,<</if>> <<if $slaveUnits.length > $rebellingUnits.length>>your units<<elseif $militiaUnits.length > 0>>your units<<elseif $mercUnits.length > 0>>your units<</if>> diff --git a/src/SecExp/rebellionReport.tw b/src/SecExp/rebellionReport.tw index 5444cc074cdf20a3b0fbdb630b2af82cbf321e0b..20b2a4b4f8bbe91302dae54953865f76cb54cccf 100644 --- a/src/SecExp/rebellionReport.tw +++ b/src/SecExp/rebellionReport.tw @@ -2,8 +2,6 @@ <<set $nextButton = "Continue", $nextLink = "Scheduled Event", $showEncyclopedia = 1, $encyclopedia = "Battles">> -<br>Debug: result: $battleResult - <<set _oldRep = $rep>> <<set _oldAuth = $authority>> <<set $enemyLosses = Math.trunc($enemyLosses)>> @@ -29,10 +27,63 @@ <strong>We surrendered</strong> <<set $PCrebLoss++>> <</if>> +<<set _day = $day + random(0,7)>> +<<set _month = $month>> +<<set _year = $year>> +<<switch _month>> +<<case "January">> +<<if _day > 31>> + <<set _day -= 31, _month = "February">> +<</if>> +<<case "February">> +<<if _day > 28>> + <<set _day -= 28, _month = "March">> +<</if>> +<<case "March">> +<<if _day > 31>> + <<set _day -= 31, _month = "April">> +<</if>> +<<case "April">> +<<if _day > 30>> + <<set _day -= 30, _month = "May">> +<</if>> +<<case "May">> +<<if _day > 31>> + <<set _day -= 31, _month = "June">> +<</if>> +<<case "June">> +<<if _day > 30>> + <<set _day -= 30, _month = "July">> +<</if>> +<<case "July">> +<<if _day > 31>> + <<set _day -= 31, _month = "August">> +<</if>> +<<case "August">> +<<if _day > 31>> + <<set _day -= 31, _month = "September">> +<</if>> +<<case "September">> +<<if _day > 30>> + <<set _day -= 30, _month = "October">> +<</if>> +<<case "October">> +<<if _day > 31>> + <<set _day -= 31, _month = "November">> +<</if>> +<<case "November">> +<<if _day > 30>> + <<set _day -= 30, _month = "December">> +<</if>> +<<default>> +<<if _day > 31>> + <<set _day -= 31, _month = "January", _year += 1>> +<</if>> +<</switch>> <hr> <<if $slaveRebellion == 1>> - Today, the <<print $day + random(0,7)>> of $month $year, our arcology was inflamed by the fires of rebellion. Slaves from all over the structure dared rise up against their owners and conquer their freedom through blood. Our defense forces fought with them street by street + Today, the _day of _month _year, our arcology was inflamed by the fires of rebellion. Slaves from all over the structure dared rise up against their owners and conquer their freedom through blood. Our defense forces fought with them street by street <<if $enemyLosses != $attackTroops>> inflicting <<print $enemyLosses>> casualties, while sustaining <<print $losses>> casualties themselves. <<else>> @@ -41,26 +92,19 @@ <<set $ASlaves -= $enemyLosses>> <<if $battleResult == 3>> <<if $battleTurns <= 5>> - The fight was quick and one sided, our men easily stopped the disorganized revolt in a few well aimed assaults + The fight was quick and one sided, our men easily stopped the disorganized revolt in a few well aimed assaults. <<elseif $battleTurns <= 7>> - The fight was hard, but in the end our men stopped the disorganized revolt with several well aimed assaults + The fight was hard, but in the end our men stopped the disorganized revolt with several well aimed assaults. <<else>> - The fight was long and hard, but in the end our men stopped the revolt before it could accumulate momentum + The fight was long and hard, but in the end our men stopped the revolt before it could accumulate momentum. <</if>> <<elseif $battleResult == -3>> <<if $battleTurns <= 5>> - The fight was quick and one sided, our men were easily crushed by the barbaric horde of raiders + The fight was quick and one sided, our men were easily crushed by the furious charge of the rebels. <<elseif $battleTurns <= 7>> - The fight was hard and in the end the bandits proved too much to handle for our men + The fight was hard and in the end the rebels proved too much to handle for our men. <<else>> - The fight was long and hard, but despite their bravery the horde proved too much for our men - <</if>> - <<if $PCvictoryStreak >= 2>> - , so interrupting a long series of military successes. - <<elseif $PClossStreak >= 2>> - , confirming the long list of recent failures our armed forces collected. - <<else>> - . + The fight was long and hard, but despite their bravery the rebels proved too much for our men. <</if>> <<elseif $battleResult == 2>> The fight was long and hard, but in the end our men managed to stop the revolt, though not without difficulty. @@ -77,883 +121,719 @@ <<set $authority += random(800,1000)>> <br>Many of the rebelling slaves were recaptured and punished. The instigators were executed one after another in a public trial that lasted for almost three days. <<set $ASlaves -= random(10,30)>> - <<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 $cash -= 1000>> - <<if $week <= 30>> - <<set $ACitizens -= random(40)>> - <<set $ASlaves -= random(65)>> - <<set $arcologies[0].prosperity -= random(2)>> - <<elseif $week <= 60>> - <<set $ACitizens -= random(50)>> - <<set $ASlaves -= random(55)>> - <<set $arcologies[0].prosperity -= random(5)>> - <<elseif $week <= 90>> - <<set $ACitizens -= random(60)>> - <<set $ASlaves -= random(85)>> - <<set $arcologies[0].prosperity -= random(7)>> - <<elseif $week <= 120>> - <<set $ACitizens -= random(70)>> - <<set $ASlaves -= random(95)>> - <<set $arcologies[0].prosperity -= random(10)>> - <<else>> - <<set $ACitizens -= random(80)>> - <<set $ASlaves -= random(105)>> - <<set $arcologies[0].prosperity -= random(12)>> - <</if>> - <<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 $cash -= 2000>> - <<if $week <= 30>> - <<set $ACitizens -= random(60)>> - <<set $ASlaves -= random(85)>> - <<set $arcologies[0].prosperity -= random(4)>> - <<elseif $week <= 60>> - <<set $ACitizens -= random(70)>> - <<set $ASlaves -= random(75)>> - <<set $arcologies[0].prosperity -= random(7)>> - <<elseif $week <= 90>> - <<set $ACitizens -= random(80)>> - <<set $ASlaves -= random(105)>> - <<set $arcologies[0].prosperity -= random(9)>> - <<elseif $week <= 120>> - <<set $ACitizens -= random(90)>> - <<set $ASlaves -= random(115)>> - <<set $arcologies[0].prosperity -= random(12)>> - <<else>> - <<set $ACitizens -= random(100)>> - <<set $ASlaves -= random(125)>> - <<set $arcologies[0].prosperity -= random(14)>> - <</if>> - <<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. - <<if $week <= 30>> - <<set $ACitizens -= random(100)>> - <<set $ASlaves -= random(150)>> - <<set $arcologies[0].prosperity -= random(5)>> - <<elseif $week <= 60>> - <<set $ACitizens -= random(120)>> - <<set $ASlaves -= random(170)>> - <<set $arcologies[0].prosperity -= random(10)>> - <<elseif $week <= 90>> - <<set $ACitizens -= random(140)>> - <<set $ASlaves -= random(190)>> - <<set $arcologies[0].prosperity -= random(15)>> - <<elseif $week <= 120>> - <<set $ACitizens -= random(160)>> - <<set $ASlaves -= random(210)>> - <<set $arcologies[0].prosperity -= random(20)>> - <<else>> - <<set $ACitizens -= random(180)>> - <<set $ASlaves -= random(230)>> - <<set $arcologies[0].prosperity -= random(25)>> - <</if>> - <<else>> - /* future dev */ - <</if>> - <<if $ACitizens < 100>> - <<set $ACitizens = 100>> - <</if>> - <<if $ASlaves < 200>> - <<set $ASlaves = 200>> - <</if>> <<elseif $battleResult == -3>> Due to your defeat, your @@.red;reputation@@ and @@.red;authority@@ decreased. <<set $rep -= random(800,1000)>> <<set $authority -= random(800,1000)>> - <br>After the battle many of the rebelling slaves managed to escape, while others remained in the arcology for days looting and hunting their former masters. The arcology wil bear the scars of this day for a long time. + <br>After the battle most of the rebelling slaves managed to escape, while others remained in the arcology for days looting and hunting their former masters. The arcology wil bear the scars of this day for a long time. <<set $ACitizens -= random(50,100)>> - <<set $ASlaves -= Math.trunc(($attackTroops - $enemyLosses) * 0.4)>> - <<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 $cash -= 1000>> - <<if $week <= 30>> - <<set $ACitizens -= random(40)>> - <<set $ASlaves -= random(65)>> - <<set $arcologies[0].prosperity -= random(2)>> - <<elseif $week <= 60>> - <<set $ACitizens -= random(50)>> - <<set $ASlaves -= random(55)>> - <<set $arcologies[0].prosperity -= random(5)>> - <<elseif $week <= 90>> - <<set $ACitizens -= random(60)>> - <<set $ASlaves -= random(85)>> - <<set $arcologies[0].prosperity -= random(7)>> - <<elseif $week <= 120>> - <<set $ACitizens -= random(70)>> - <<set $ASlaves -= random(95)>> - <<set $arcologies[0].prosperity -= random(10)>> - <<else>> - <<set $ACitizens -= random(80)>> - <<set $ASlaves -= random(105)>> - <<set $arcologies[0].prosperity -= random(12)>> - <</if>> - <<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 $cash -= 2000>> - <<if $week <= 30>> - <<set $ACitizens -= random(60)>> - <<set $ASlaves -= random(85)>> - <<set $arcologies[0].prosperity -= random(4)>> - <<elseif $week <= 60>> - <<set $ACitizens -= random(70)>> - <<set $ASlaves -= random(75)>> - <<set $arcologies[0].prosperity -= random(7)>> - <<elseif $week <= 90>> - <<set $ACitizens -= random(80)>> - <<set $ASlaves -= random(105)>> - <<set $arcologies[0].prosperity -= random(9)>> - <<elseif $week <= 120>> - <<set $ACitizens -= random(90)>> - <<set $ASlaves -= random(115)>> - <<set $arcologies[0].prosperity -= random(12)>> - <<else>> - <<set $ACitizens -= random(100)>> - <<set $ASlaves -= random(125)>> - <<set $arcologies[0].prosperity -= random(14)>> - <</if>> - <<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. - <<if $week <= 30>> - <<set $ACitizens -= random(100)>> - <<set $ASlaves -= random(150)>> - <<set $arcologies[0].prosperity -= random(5)>> - <<elseif $week <= 60>> - <<set $ACitizens -= random(120)>> - <<set $ASlaves -= random(170)>> - <<set $arcologies[0].prosperity -= random(10)>> - <<elseif $week <= 90>> - <<set $ACitizens -= random(140)>> - <<set $ASlaves -= random(190)>> - <<set $arcologies[0].prosperity -= random(15)>> - <<elseif $week <= 120>> - <<set $ACitizens -= random(160)>> - <<set $ASlaves -= random(210)>> - <<set $arcologies[0].prosperity -= random(20)>> - <<else>> - <<set $ACitizens -= random(180)>> - <<set $ASlaves -= random(230)>> - <<set $arcologies[0].prosperity -= random(25)>> - <</if>> - <<else>> - /* future dev */ - <</if>> - <<if $ACitizens < 100>> - <<set $ACitizens = 100>> - <</if>> - <<if $ASlaves < 200>> - <<set $ASlaves = 200>> - <</if>> + <<set $ASlaves -= Math.trunc(($attackTroops - $enemyLosses) * 0.8)>> + <<set $rebelDefeatAftermath = 5>> <<elseif $battleResult == -2>> - - - - <<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 $cash -= 1000>> - <<if $week <= 30>> - <<set $ACitizens -= random(40)>> - <<set $ASlaves -= random(65)>> - <<set $arcologies[0].prosperity -= random(2)>> - <<elseif $week <= 60>> - <<set $ACitizens -= random(50)>> - <<set $ASlaves -= random(55)>> - <<set $arcologies[0].prosperity -= random(5)>> - <<elseif $week <= 90>> - <<set $ACitizens -= random(60)>> - <<set $ASlaves -= random(85)>> - <<set $arcologies[0].prosperity -= random(7)>> - <<elseif $week <= 120>> - <<set $ACitizens -= random(70)>> - <<set $ASlaves -= random(95)>> - <<set $arcologies[0].prosperity -= random(10)>> - <<else>> - <<set $ACitizens -= random(80)>> - <<set $ASlaves -= random(105)>> - <<set $arcologies[0].prosperity -= random(12)>> - <</if>> - <<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 $cash -= 2000>> - <<if $week <= 30>> - <<set $ACitizens -= random(60)>> - <<set $ASlaves -= random(85)>> - <<set $arcologies[0].prosperity -= random(4)>> - <<elseif $week <= 60>> - <<set $ACitizens -= random(70)>> - <<set $ASlaves -= random(75)>> - <<set $arcologies[0].prosperity -= random(7)>> - <<elseif $week <= 90>> - <<set $ACitizens -= random(80)>> - <<set $ASlaves -= random(105)>> - <<set $arcologies[0].prosperity -= random(9)>> - <<elseif $week <= 120>> - <<set $ACitizens -= random(90)>> - <<set $ASlaves -= random(115)>> - <<set $arcologies[0].prosperity -= random(12)>> - <<else>> - <<set $ACitizens -= random(100)>> - <<set $ASlaves -= random(125)>> - <<set $arcologies[0].prosperity -= random(14)>> - <</if>> - <<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. - <<if $week <= 30>> - <<set $ACitizens -= random(100)>> - <<set $ASlaves -= random(150)>> - <<set $arcologies[0].prosperity -= random(5)>> - <<elseif $week <= 60>> - <<set $ACitizens -= random(120)>> - <<set $ASlaves -= random(170)>> - <<set $arcologies[0].prosperity -= random(10)>> - <<elseif $week <= 90>> - <<set $ACitizens -= random(140)>> - <<set $ASlaves -= random(190)>> - <<set $arcologies[0].prosperity -= random(15)>> - <<elseif $week <= 120>> - <<set $ACitizens -= random(160)>> - <<set $ASlaves -= random(210)>> - <<set $arcologies[0].prosperity -= random(20)>> - <<else>> - <<set $ACitizens -= random(180)>> - <<set $ASlaves -= random(230)>> - <<set $arcologies[0].prosperity -= random(25)>> - <</if>> + Due to your defeat, your @@.red;reputation@@ and @@.red;authority@@ decreased. + <<set $rep -= random(600,800)>> + <<set $authority -= random(600,800)>> + <br>After the battle most of the rebelling slaves managed to escape, while others remained in the arcology for days looting and hunting their former masters. The arcology wil bear the scars of this day for a long time. + <<set $ACitizens -= random(40,80)>> + <<set $ASlaves -= Math.trunc(($attackTroops - $enemyLosses) * 0.6)>> + <<set $rebelDefeatAftermath = 3>> + <<elseif $battleResult == 2>> + Thanks to your victory, your @@.green;reputation@@ and @@.darkviolet;authority@@ increased. + <<set $rep += random(600,180)>> + <<set $authority += random(600,800)>> + <br>Many of the rebelling slaves were recaptured and punished. The instigators were executed one after another in a public trial that lasted for almost three days. + <<set $ASlaves -= random(10,30)>> + <<elseif $battleResult == -1>> + Rather than waste the lives of your men you decided to surrender, hoping the rebels will cause less damage if you indulge them, this is however a big hit to your status. Your @@.red;reputation@@ and @@.red;authority@@ are significantly impacted. + <<set $rep -= random(1000,1200)>> + <<set $authority -= random(1000,1200)>> + <br> + The surrender allows the arcology to survive @@.yellow;mostly intact@@, however reports of @@.red;mass looting and killing of citizens@@ flood your office for a few days. + <<set $cash -= 1000>> + <<if $week <= 30>> + <<set $ACitizens -= random(100)>> + <<set $ASlaves -= random(150)>> + <<set $arcologies[0].prosperity -= random(5)>> + <<elseif $week <= 60>> + <<set $ACitizens -= random(120)>> + <<set $ASlaves -= random(170)>> + <<set $arcologies[0].prosperity -= random(10)>> + <<elseif $week <= 90>> + <<set $ACitizens -= random(140)>> + <<set $ASlaves -= random(190)>> + <<set $arcologies[0].prosperity -= random(15)>> + <<elseif $week <= 120>> + <<set $ACitizens -= random(160)>> + <<set $ASlaves -= random(210)>> + <<set $arcologies[0].prosperity -= random(20)>> <<else>> - /* future dev */ + <<set $ACitizens -= random(180)>> + <<set $ASlaves -= random(230)>> + <<set $arcologies[0].prosperity -= random(25)>> <</if>> - <<if $ACitizens < 100>> - <<set $ACitizens = 100>> + <br>After the battle most of the rebelling slaves managed to escape, while others remained in the arcology for days looting and hunting their former masters. The arcology wil bear the scars of this day for a long time. + <<set $ACitizens -= random(50,100)>> + <<set $ASlaves -= Math.trunc(($attackTroops - $enemyLosses) * 0.8)>> + <<set $rebelDefeatAftermath = 5>> + <</if>> +<<else>> + Today, the _day of _month _year, our arcology was inflamed by the fires of rebellion. Citizens from all over the structure dared rise up to dethrone their arcology owner. Our defense forces fought with them street by street + <<if $enemyLosses != $attackTroops>> + inflicting <<print $enemyLosses>> casualties, while sustaining <<print $losses>> casualties themselves. + <<else>> + completely annihilating their troops, while sustaining <<print $losses>> casualties. + <</if>> + <<set $ASlaves -= $enemyLosses>> + <<if $battleResult == 3>> + <<if $battleTurns <= 5>> + The fight was quick and one sided, our men easily stopped the disorganized revolt in a few well aimed assaults. + <<elseif $battleTurns <= 7>> + The fight was hard, but in the end our men stopped the disorganized revolt with several well aimed assaults. + <<else>> + The fight was long and hard, but in the end our men stopped the revolt before it could accumulate momentum. <</if>> - <<if $ASlaves < 200>> - <<set $ASlaves = 200>> + <<elseif $battleResult == -3>> + <<if $battleTurns <= 5>> + The fight was quick and one sided, our men were easily crushed by the furious charge of the rebels. + <<elseif $battleTurns <= 7>> + The fight was hard and in the end the rebels proved too much to handle for our men. + <<else>> + The fight was long and hard, but despite their bravery the rebels proved too much for our men. <</if>> <<elseif $battleResult == 2>> + The fight was long and hard, but in the end our men managed to stop the revolt, though not without difficulty. + <<elseif $battleResult == -2>> + The fight was long and hard. Our men in the end had to yield to the rebelling slaves, which were fortunately unable to fully capitalized on their victory. + <<elseif $battleResult == -1>> + You gave your troops the order to surrender, obediently they stand down. + <</if>> - - <<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 $cash -= 1000>> - <<if $week <= 30>> - <<set $ACitizens -= random(40)>> - <<set $ASlaves -= random(65)>> - <<set $arcologies[0].prosperity -= random(2)>> - <<elseif $week <= 60>> - <<set $ACitizens -= random(50)>> - <<set $ASlaves -= random(55)>> - <<set $arcologies[0].prosperity -= random(5)>> - <<elseif $week <= 90>> - <<set $ACitizens -= random(60)>> - <<set $ASlaves -= random(85)>> - <<set $arcologies[0].prosperity -= random(7)>> - <<elseif $week <= 120>> - <<set $ACitizens -= random(70)>> - <<set $ASlaves -= random(95)>> - <<set $arcologies[0].prosperity -= random(10)>> - <<else>> - <<set $ACitizens -= random(80)>> - <<set $ASlaves -= random(105)>> - <<set $arcologies[0].prosperity -= random(12)>> - <</if>> - <<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 $cash -= 2000>> - <<if $week <= 30>> - <<set $ACitizens -= random(60)>> - <<set $ASlaves -= random(85)>> - <<set $arcologies[0].prosperity -= random(4)>> - <<elseif $week <= 60>> - <<set $ACitizens -= random(70)>> - <<set $ASlaves -= random(75)>> - <<set $arcologies[0].prosperity -= random(7)>> - <<elseif $week <= 90>> - <<set $ACitizens -= random(80)>> - <<set $ASlaves -= random(105)>> - <<set $arcologies[0].prosperity -= random(9)>> - <<elseif $week <= 120>> - <<set $ACitizens -= random(90)>> - <<set $ASlaves -= random(115)>> - <<set $arcologies[0].prosperity -= random(12)>> - <<else>> - <<set $ACitizens -= random(100)>> - <<set $ASlaves -= random(125)>> - <<set $arcologies[0].prosperity -= random(14)>> - <</if>> - <<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. - <<if $week <= 30>> - <<set $ACitizens -= random(100)>> - <<set $ASlaves -= random(150)>> - <<set $arcologies[0].prosperity -= random(5)>> - <<elseif $week <= 60>> - <<set $ACitizens -= random(120)>> - <<set $ASlaves -= random(170)>> - <<set $arcologies[0].prosperity -= random(10)>> - <<elseif $week <= 90>> - <<set $ACitizens -= random(140)>> - <<set $ASlaves -= random(190)>> - <<set $arcologies[0].prosperity -= random(15)>> - <<elseif $week <= 120>> - <<set $ACitizens -= random(160)>> - <<set $ASlaves -= random(210)>> - <<set $arcologies[0].prosperity -= random(20)>> - <<else>> - <<set $ACitizens -= random(180)>> - <<set $ASlaves -= random(230)>> - <<set $arcologies[0].prosperity -= random(25)>> - <</if>> + /* effects */ + <<if $battleResult == 3>> + Thanks to your victory, your @@.green;reputation@@ and @@.darkviolet;authority@@ increased. + <<set $rep += random(800,1000)>> + <<set $authority += random(800,1000)>> + <br>Many of the rebelling citizens were captured and punished, many others enslaved. The instigators were executed one after another in a public trial that lasted for almost three days. + <<set $ACitizens -= random(10,30)>> + <<elseif $battleResult == -3>> + Due to your defeat, your @@.red;reputation@@ and @@.red;authority@@ decreased. + <<set $rep -= random(800,1000)>> + <<set $authority -= random(800,1000)>> + <br>After the battle most of the rebelling citizens remained in the arcology for days looting and hunting their former arcology. We will bear the scars of this day for a long time. + <<set $ACitizens -= Math.trunc(($attackTroops - $enemyLosses) * 0.8)>> + <<set $rebelDefeatAftermath = 5>> + <<elseif $battleResult == -2>> + Due to your defeat, your @@.red;reputation@@ and @@.red;authority@@ decreased. + <<set $rep -= random(600,800)>> + <<set $authority -= random(600,800)>> + <br>After the battle most of the rebelling citizens remained in the arcology for days looting and hunting their former arcology. We will bear the scars of this day for a long time. + <<set $ACitizens -= random(40,80)>> + <<set $ASlaves -= Math.trunc(($attackTroops - $enemyLosses) * 0.6)>> + <<set $rebelDefeatAftermath = 3>> + <<elseif $battleResult == 2>> + Thanks to your victory, your @@.green;reputation@@ and @@.darkviolet;authority@@ increased. + <<set $rep += random(600,180)>> + <<set $authority += random(600,800)>> + <br>Many of the rebelling citizens were captured and punished, many others enslaved. The instigators were executed one after another in a public trial that lasted for almost three days. + <<set $ASlaves -= random(10,30)>> + <<elseif $battleResult == -1>> + Rather than waste the lives of your men you decided to surrender, hoping the rebels will cause less damage if you indulge them, this is however a big hit to your status. Your @@.red;reputation@@ and @@.red;authority@@ are significantly impacted. + <<set $rep -= random(1000,1200)>> + <<set $authority -= random(1000,1200)>> + <br> + The surrender allows the arcology to survive @@.yellow;mostly intact@@, however reports of @@.red;mass looting and killing of citizens@@ flood your office for a few days. + <<set $cash -= 1000>> + <<if $week <= 30>> + <<set $ACitizens -= random(100)>> + <<set $ASlaves -= random(150)>> + <<set $arcologies[0].prosperity -= random(5)>> + <<elseif $week <= 60>> + <<set $ACitizens -= random(120)>> + <<set $ASlaves -= random(170)>> + <<set $arcologies[0].prosperity -= random(10)>> + <<elseif $week <= 90>> + <<set $ACitizens -= random(140)>> + <<set $ASlaves -= random(190)>> + <<set $arcologies[0].prosperity -= random(15)>> + <<elseif $week <= 120>> + <<set $ACitizens -= random(160)>> + <<set $ASlaves -= random(210)>> + <<set $arcologies[0].prosperity -= random(20)>> <<else>> - /* future dev */ - <</if>> - <<if $ACitizens < 100>> - <<set $ACitizens = 100>> + <<set $ACitizens -= random(180)>> + <<set $ASlaves -= random(230)>> + <<set $arcologies[0].prosperity -= random(25)>> <</if>> - <<if $ASlaves < 200>> - <<set $ASlaves = 200>> - <</if>> - <<elseif $battleResult == -1>> - + <br>After the battle most of the rebelling citizens remained in the arcology for days looting and hunting their former arcology. We will bear the scars of this day for a long time. + <<set $ACitizens -= random(50,100)>> + <<set $ASlaves -= Math.trunc(($attackTroops - $enemyLosses) * 0.8)>> + <<set $rebelDefeatAftermath = 5>> + <</if>> +<</if>> - <<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 $cash -= 1000>> - <<if $week <= 30>> - <<set $ACitizens -= random(40)>> - <<set $ASlaves -= random(65)>> - <<set $arcologies[0].prosperity -= random(2)>> - <<elseif $week <= 60>> - <<set $ACitizens -= random(50)>> - <<set $ASlaves -= random(55)>> - <<set $arcologies[0].prosperity -= random(5)>> - <<elseif $week <= 90>> - <<set $ACitizens -= random(60)>> - <<set $ASlaves -= random(85)>> - <<set $arcologies[0].prosperity -= random(7)>> - <<elseif $week <= 120>> - <<set $ACitizens -= random(70)>> - <<set $ASlaves -= random(95)>> - <<set $arcologies[0].prosperity -= random(10)>> - <<else>> - <<set $ACitizens -= random(80)>> - <<set $ASlaves -= random(105)>> - <<set $arcologies[0].prosperity -= random(12)>> - <</if>> - <<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 $cash -= 2000>> - <<if $week <= 30>> - <<set $ACitizens -= random(60)>> - <<set $ASlaves -= random(85)>> - <<set $arcologies[0].prosperity -= random(4)>> - <<elseif $week <= 60>> - <<set $ACitizens -= random(70)>> - <<set $ASlaves -= random(75)>> - <<set $arcologies[0].prosperity -= random(7)>> - <<elseif $week <= 90>> - <<set $ACitizens -= random(80)>> - <<set $ASlaves -= random(105)>> - <<set $arcologies[0].prosperity -= random(9)>> - <<elseif $week <= 120>> - <<set $ACitizens -= random(90)>> - <<set $ASlaves -= random(115)>> - <<set $arcologies[0].prosperity -= random(12)>> - <<else>> - <<set $ACitizens -= random(100)>> - <<set $ASlaves -= random(125)>> - <<set $arcologies[0].prosperity -= random(14)>> - <</if>> - <<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. - <<if $week <= 30>> - <<set $ACitizens -= random(100)>> - <<set $ASlaves -= random(150)>> - <<set $arcologies[0].prosperity -= random(5)>> - <<elseif $week <= 60>> - <<set $ACitizens -= random(120)>> - <<set $ASlaves -= random(170)>> - <<set $arcologies[0].prosperity -= random(10)>> - <<elseif $week <= 90>> - <<set $ACitizens -= random(140)>> - <<set $ASlaves -= random(190)>> - <<set $arcologies[0].prosperity -= random(15)>> - <<elseif $week <= 120>> - <<set $ACitizens -= random(160)>> - <<set $ASlaves -= random(210)>> - <<set $arcologies[0].prosperity -= random(20)>> - <<else>> - <<set $ACitizens -= random(180)>> - <<set $ASlaves -= random(230)>> - <<set $arcologies[0].prosperity -= random(25)>> - <</if>> +/* engage rules */ +<<if $battleResult != -1>> + <<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>> + <<if $week <= 30>> + <<set $ACitizens -= random(40)>> + <<set $ASlaves -= random(65)>> + <<set $arcologies[0].prosperity -= random(2)>> + <<elseif $week <= 60>> + <<set $ACitizens -= random(50)>> + <<set $ASlaves -= random(55)>> + <<set $arcologies[0].prosperity -= random(5)>> + <<elseif $week <= 90>> + <<set $ACitizens -= random(60)>> + <<set $ASlaves -= random(85)>> + <<set $arcologies[0].prosperity -= random(7)>> + <<elseif $week <= 120>> + <<set $ACitizens -= random(70)>> + <<set $ASlaves -= random(95)>> + <<set $arcologies[0].prosperity -= random(10)>> <<else>> - /* future dev */ - <</if>> - <<if $ACitizens < 100>> - <<set $ACitizens = 100>> + <<set $ACitizens -= random(80)>> + <<set $ASlaves -= random(105)>> + <<set $arcologies[0].prosperity -= random(12)>> <</if>> - <<if $ASlaves < 200>> - <<set $ASlaves = 200>> + <<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>> + <<if $week <= 30>> + <<set $ACitizens -= random(60)>> + <<set $ASlaves -= random(85)>> + <<set $arcologies[0].prosperity -= random(4)>> + <<elseif $week <= 60>> + <<set $ACitizens -= random(70)>> + <<set $ASlaves -= random(75)>> + <<set $arcologies[0].prosperity -= random(7)>> + <<elseif $week <= 90>> + <<set $ACitizens -= random(80)>> + <<set $ASlaves -= random(105)>> + <<set $arcologies[0].prosperity -= random(9)>> + <<elseif $week <= 120>> + <<set $ACitizens -= random(90)>> + <<set $ASlaves -= random(115)>> + <<set $arcologies[0].prosperity -= random(12)>> + <<else>> + <<set $ACitizens -= random(100)>> + <<set $ASlaves -= random(125)>> + <<set $arcologies[0].prosperity -= random(14)>> <</if>> - <</if>> - - - - - <<if $garrison.reactor == 0>> - <<if random(1,100) <= 75>> - Unfortunately during the fighting a group of slaves infiltrated the reactor complex and sabotaged it, causing massive power fluctuations and frequent blackouts. - It will take @@.red;time and money to repair the damage@@. - <<set garrison.reactorTime = $repairTime + random(-1,1)>> - <<set $cash -= 2000>> + <<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>> + <<if $week <= 30>> + <<set $ACitizens -= random(100)>> + <<set $ASlaves -= random(150)>> + <<set $arcologies[0].prosperity -= random(5)>> + <<elseif $week <= 60>> + <<set $ACitizens -= random(120)>> + <<set $ASlaves -= random(170)>> + <<set $arcologies[0].prosperity -= random(10)>> + <<elseif $week <= 90>> + <<set $ACitizens -= random(140)>> + <<set $ASlaves -= random(190)>> + <<set $arcologies[0].prosperity -= random(15)>> + <<elseif $week <= 120>> + <<set $ACitizens -= random(160)>> + <<set $ASlaves -= random(210)>> + <<set $arcologies[0].prosperity -= random(20)>> <<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. + <<set $ACitizens -= random(180)>> + <<set $ASlaves -= random(230)>> + <<set $arcologies[0].prosperity -= random(25)>> <</if>> <<else>> - The garrison assigned to the reactor protected it from the multiple sabotage attempts carried out by the rebels. - <</if>> - <<if $garrison.waterway == 0>> - <<if random(1,100) <= 75>> - 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,1)>> - <<set $cash -= 2000>> + 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>> + <<set $cash -= 1000>> + <<if $week <= 30>> + <<set $ACitizens -= random(20)>> + <<set $ASlaves -= random(45)>> + <<set $arcologies[0].prosperity -= random(2)>> + <<elseif $week <= 60>> + <<set $ACitizens -= random(30)>> + <<set $ASlaves -= random(35)>> + <<set $arcologies[0].prosperity -= random(4)>> + <<elseif $week <= 90>> + <<set $ACitizens -= random(40)>> + <<set $ASlaves -= random(65)>> + <<set $arcologies[0].prosperity -= random(6)>> + <<elseif $week <= 120>> + <<set $ACitizens -= random(50)>> + <<set $ASlaves -= random(75)>> + <<set $arcologies[0].prosperity -= random(8)>> <<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. + <<set $ACitizens -= random(60)>> + <<set $ASlaves -= random(85)>> + <<set $arcologies[0].prosperity -= random(10)>> <</if>> + <</if>> +<</if>> +<<if $ACitizens < 100>> + <<set $ACitizens = 100>> +<</if>> +<<if $ASlaves < 200>> + <<set $ASlaves = 200>> +<</if>> + +/* garrisons */ +<<if $garrison.reactor == 0>> + <<if random(1,100) <= 75>> + 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,1)>> + <<set $cash -= 2000>> <<else>> - The garrison assigned to the water management complex protected it from the sabotage attempt of the rebels. + While the reactor was left defenseless without a garrison, there was no attempt at sabotage. Let's hope we'll always be this lucky. <</if>> - <<if $garrison.assistant == 0>> - <<if random(1,100) <= 75>> - Unfortunately during the fighting a group of slaves infiltrated the facility housing $assistantName 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.waterwayTime = $repairTime + random(-1,1)>> - <<set $cash -= 2000>> - <<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. - <</if>> +<<else>> + The garrison assigned to the reactor protected it from the multiple sabotage attempts carried out by the rebels. +<</if>> +<<if $garrison.waterway == 0>> + <<if random(1,100) <= 75>> + 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,1)>> + <<set $cash -= 2000>> + <<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. + <</if>> +<<else>> + The garrison assigned to the water management complex protected it from the sabotage attempt of the rebels. +<</if>> +<<if $garrison.assistant == 0>> + <<if random(1,100) <= 75>> + Unfortunately during the fighting a group of slaves infiltrated the facility housing $assistantName 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.waterwayTime = $repairTime + random(-1,1)>> + <<set $cash -= 2000>> <<else>> - The garrison assigned to the facility housing $assistantName mainframe prevented any sabotage attempt. + 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. <</if>> - <<if $garrison.penthouse == 1 && $Bodyguard != 0>> - The garrison assigned to the penthouse together with your loyal bodyguard stopped any assault against your penthouse with ease. - <<elseif $Bodyguard != 0>> - <<if random(1,100) <= 75>> - During the fighting a group of slaves assaulted the penthouse. Your bodyguard, $Bodyguard.slaveName, stood strong against the furious attack. +<<else>> + The garrison assigned to the facility housing $assistantName mainframe prevented any sabotage attempt. +<</if>> +<<if $garrison.penthouse == 1 && $Bodyguard != 0>> + The garrison assigned to the penthouse together with your loyal bodyguard stopped any assault against your penthouse with ease. +<<elseif $Bodyguard != 0>> + <<if random(1,100) <= 75>> + During the fighting a group of slaves assaulted the penthouse. Your bodyguard, $Bodyguard.slaveName, stood strong against the furious attack. + <<set _woundChance = 0>> + <<if $PC.career == "mercenary" || $PC.career == "gang">> + <<set _woundChance -= 5>> + <</if>> + <<if $personalArms >= 1>> + <<set _woundChance -= 5>> + <</if>> + <<if $PC.physicalAge >= 60>> + <<set _woundChance += random(1,5)>> + <</if>> + <<if $PC.belly > 5000>> + <<set _woundChance += random(1,5)>> + <</if>> + <<if $PC.boobsBonus >= 2>> + <<set _woundChance += random(1,5)>> + <</if>> + <<if $PC.butt >= 2>> + <<set _woundChance += random(1,5)>> + <</if>> + <<if $PC.preg >= 30>> + <<set _woundChance += random(1,5)>> + <</if>> + <<if $PC.balls == 2>> + <<set _woundChance += random(1,5)>> + <</if>> + <<if $PC.ballsImplant >= 2>> + <<set _woundChance += random(1,5)>> + <</if>> + <<if random(1,100) <= _woundChance>> + A lucky shot managed to find your way to you, leaving a painful, but thankfully not lethal, wound. + <<set $PCWounded = 1>> + <<set $PCWoundCooldown = 3>> + <<else>> + Fortunately you managed to avoid injury. + <</if>> + <<if $Concubine != 0>> <<set _woundChance = 0>> - <<if $PC.career == "mercenary" || $PC.career == "gang">> - <<set _woundChance -= 5>> + <<if $Concubine.combatSkill == 1>> + <<set _woundChance -= 2>> <</if>> - <<if $personalArms >= 1>> - <<set _woundChance -= 5>> + <<if $Concubine.amp >= -4>> + <<set _woundChance -= 1>> <</if>> - <<if $PC.physicalAge >= 60>> - <<set _woundChance += random(1,5)>> + <<if $Concubine.health >= 50>> + <<set _woundChance -= 1>> <</if>> - <<if $PC.belly > 5000>> - <<set _woundChance += random(1,5)>> + <<if $Concubine.weight > 130>> + <<set _woundChance += 1>> <</if>> - <<if $PC.boobsBonus >= 2>> - <<set _woundChance += random(1,5)>> + <<if $Concubine.muscles < -30>> + <<set _woundChance += 1>> + <</if>> + <<if $Concubine.eyes <= -2>> + <<set _woundChance += 1>> + <</if>> + <<if $Concubine.heels == 1>> + <<set _woundChance += 1>> + <</if>> + <<if $Concubine.boobs >= 1400>> + <<set _woundChance += 1>> + <</if>> + <<if $Concubine.butt >= 6>> + <<set _woundChance += 1>> <</if>> - <<if $PC.butt >= 2>> - <<set _woundChance += random(1,5)>> + <<if $Concubine.preg >= 30>> + <<set _woundChance += 1>> <</if>> - <<if $PC.preg >= 30>> - <<set _woundChance += random(1,5)>> + <<if $Concubine.dick >= 8>> + <<set _woundChance += 1>> <</if>> - <<if $PC.balls == 2>> - <<set _woundChance += random(1,5)>> + <<if $Concubine.balls >= 8>> + <<set _woundChance += 1>> <</if>> - <<if $PC.ballsImplant >= 2>> - <<set _woundChance += random(1,5)>> + <<if $Concubine.intelligence <= -3>> + <<set _woundChance += 1>> <</if>> + <<set _woundChance *= random(2,4)>> <<if random(1,100) <= _woundChance>> - A lucky shot managed to find your way to you, leaving a painful, but thankfully not lethal, wound. - <<set $PCWounded = 1>> - <<set $PCWoundCooldown = 3>> - <<else>> - Fortunately you managed to avoid injury. - <</if>> - <<if $Concubine != 0>> - <<set _woundChance = 0>> - <<if $Concubine.combatSkill == 1>> - <<set _woundChance -= 2>> - <</if>> - <<if $Concubine.amp >= -4>> - <<set _woundChance -= 1>> - <</if>> - <<if $Concubine.health >= 50>> - <<set _woundChance -= 1>> - <</if>> - <<if $Concubine.weight > 130>> - <<set _woundChance += 1>> - <</if>> - <<if $Concubine.muscles < -30>> - <<set _woundChance += 1>> - <</if>> - <<if $Concubine.eyes <= -2>> - <<set _woundChance += 1>> - <</if>> - <<if $Concubine.heels == 1>> - <<set _woundChance += 1>> - <</if>> - <<if $Concubine.boobs >= 1400>> - <<set _woundChance += 1>> - <</if>> - <<if $Concubine.butt >= 6>> - <<set _woundChance += 1>> - <</if>> - <<if $Concubine.preg >= 30>> - <<set _woundChance += 1>> - <</if>> - <<if $Concubine.dick >= 8>> - <<set _woundChance += 1>> - <</if>> - <<if $Concubine.balls >= 8>> - <<set _woundChance += 1>> - <</if>> - <<if $Concubine.intelligence <= -3>> - <<set _woundChance += 1>> - <</if>> - <<set _woundChance *= random(2,4)>> - <<if random(1,100) <= _woundChance>> - Your concubine was unfortunately caught in the crossfire and - <<set $woundType = random(1,10)>> - <<if $woundType == 1>> - a splinter pierced her throat, severing her vocal cords. - <<set $Concubine.voice = 0>> - <<elseif $woundType == 2>> - a splinter hit her face, severely damaging her eyes. - <<set $Concubine.eyes = -2>> - <<elseif $woundType == 3>> - an explosion near her casued the loss of all her limbs. - <<set $Concubine.amp = 1>> - <<elseif $woundType >= 4>> - a stray shot severely wounded her. - <<if $Concubine.health >= -60>> - <<set $Concubine.health -= 30>> - <<else>> - <<set $Concubine.health -= Math.abs(90 - $Concubine.health)>> - <</if>> + Your concubine was unfortunately caught in the crossfire and + <<set $woundType = random(1,10)>> + <<if $woundType == 1>> + a splinter pierced her throat, severing her vocal cords. + <<set $Concubine.voice = 0>> + <<elseif $woundType == 2>> + a splinter hit her face, severely damaging her eyes. + <<set $Concubine.eyes = -2>> + <<elseif $woundType == 3>> + an explosion near her casued the loss of all her limbs. + <<set $Concubine.amp = 1>> + <<elseif $woundType >= 4>> + a stray shot severely wounded her. + <<if $Concubine.health >= -60>> + <<set $Concubine.health -= 30>> + <<else>> + <<set $Concubine.health -= Math.abs(90 - $Concubine.health)>> <</if>> <</if>> <</if>> + <</if>> + <<set _woundChance = 0>> + <<if $Bodyguard.combatSkill == 1>> + <<set _woundChance -= 2>> + <</if>> + <<if $Bodyguard.amp >= -4>> + <<set _woundChance -= 1>> + <</if>> + <<if $Bodyguard.health >= 50>> + <<set _woundChance -= 1>> + <</if>> + <<if $Bodyguard.weight > 130>> + <<set _woundChance += 1>> + <</if>> + <<if $Bodyguard.muscles < -30>> + <<set _woundChance += 1>> + <</if>> + <<if $Bodyguard.eyes <= -2>> + <<set _woundChance += 1>> + <</if>> + <<if $Bodyguard.heels == 1>> + <<set _woundChance += 1>> + <</if>> + <<if $Bodyguard.boobs >= 1400>> + <<set _woundChance += 1>> + <</if>> + <<if $Bodyguard.butt >= 6>> + <<set _woundChance += 1>> + <</if>> + <<if $Bodyguard.preg >= 30>> + <<set _woundChance += 1>> + <</if>> + <<if $Bodyguard.dick >= 8>> + <<set _woundChance += 1>> + <</if>> + <<if $Bodyguard.balls >= 8>> + <<set _woundChance += 1>> + <</if>> + <<if $Bodyguard.intelligence <= -3>> + <<set _woundChance += 1>> + <</if>> + <<set _woundChance *= random(2,4)>> + <<if random(1,100) <= _woundChance>> + During one of the assaults your bodyguard was hit. + <<set $woundType = random(1,10)>> + <<if $woundType == 1>> + A splinter pierced her throat, severing her vocal cords. + <<set $Bodyguard.voice = 0>> + <<elseif $woundType == 2>> + A splinter hit her face, severely damaging her eyes. + <<set $Bodyguard.eyes = -2>> + <<elseif $woundType == 3>> + An explosion near her casued the loss of all her limbs. + <<set $Bodyguard.amp = 1>> + <<elseif $woundType >= 4>> + A stray shot severely wounded her. + <<if $Bodyguard.health >= -60>> + <<set $Bodyguard.health -= 30>> + <<else>> + <<set $Bodyguard.health -= Math.abs(90 - $Bodyguard.health)>> + <</if>> + <</if>> + <</if>> + The damage to the structure will be @@.red;costly to repair@@. + <<set $cash -= 2000>> + <<else>> + While the penthouse was left without a sizeable garrison, there was no dangerous assault against it. Let's hope we'll always be this lucky. + <</if>> +<<elseif $garrison.penthouse == 1>> + <<if random(1,100) <= 75>> + During the fighting a group of slaves assaulted the penthouse. The garrison stood strong against the furious attack. + <<set _woundChance = 0>> + <<if $PC.career == "mercenary" || $PC.career == "gang">> + <<set _woundChance -= 5>> + <</if>> + <<if $personalArms >= 1>> + <<set _woundChance -= 5>> + <</if>> + <<if $PC.physicalAge >= 60>> + <<set _woundChance += random(1,5)>> + <</if>> + <<if $PC.belly > 5000>> + <<set _woundChance += random(1,5)>> + <</if>> + <<if $PC.boobsBonus >= 2>> + <<set _woundChance += random(1,5)>> + <</if>> + <<if $PC.butt >= 2>> + <<set _woundChance += random(1,5)>> + <</if>> + <<if $PC.preg >= 30>> + <<set _woundChance += random(1,5)>> + <</if>> + <<if $PC.balls == 2>> + <<set _woundChance += random(1,5)>> + <</if>> + <<if $PC.ballsImplant >= 2>> + <<set _woundChance += random(1,5)>> + <</if>> + <<set _woundChance *= random(1,2)>> + <<if random(1,100) <= _woundChance>> + A lucky shot managed to find your way to you, leaving a painful, but thankfully not lethal, wound. + <<set $PCWounded = 1>> + <<set $PCWoundCooldown = 3>> + <<else>> + Fortunately you managed to avoid injury. + <</if>> + <<if $Concubine != 0>> <<set _woundChance = 0>> - <<if $Bodyguard.combatSkill == 1>> + <<if $Concubine.combatSkill == 1>> <<set _woundChance -= 2>> <</if>> - <<if $Bodyguard.amp >= -4>> + <<if $Concubine.amp >= -4>> <<set _woundChance -= 1>> <</if>> - <<if $Bodyguard.health >= 50>> + <<if $Concubine.health >= 50>> <<set _woundChance -= 1>> <</if>> - <<if $Bodyguard.weight > 130>> + <<if $Concubine.weight > 130>> <<set _woundChance += 1>> <</if>> - <<if $Bodyguard.muscles < -30>> + <<if $Concubine.muscles < -30>> <<set _woundChance += 1>> <</if>> - <<if $Bodyguard.eyes <= -2>> + <<if $Concubine.eyes <= -2>> <<set _woundChance += 1>> <</if>> - <<if $Bodyguard.heels == 1>> + <<if $Concubine.heels == 1>> <<set _woundChance += 1>> <</if>> - <<if $Bodyguard.boobs >= 1400>> + <<if $Concubine.boobs >= 1400>> <<set _woundChance += 1>> <</if>> - <<if $Bodyguard.butt >= 6>> + <<if $Concubine.butt >= 6>> <<set _woundChance += 1>> <</if>> - <<if $Bodyguard.preg >= 30>> + <<if $Concubine.preg >= 30>> <<set _woundChance += 1>> <</if>> - <<if $Bodyguard.dick >= 8>> + <<if $Concubine.dick >= 8>> <<set _woundChance += 1>> <</if>> - <<if $Bodyguard.balls >= 8>> + <<if $Concubine.balls >= 8>> <<set _woundChance += 1>> <</if>> - <<if $Bodyguard.intelligence <= -3>> + <<if $Concubine.intelligence <= -3>> <<set _woundChance += 1>> - <</if>> + <</if>> <<set _woundChance *= random(2,4)>> <<if random(1,100) <= _woundChance>> - During one of the assaults your bodyguard was hit. + Your concubine was unfortunately caught in the crossfire and <<set $woundType = random(1,10)>> <<if $woundType == 1>> - A splinter pierced her throat, severing her vocal cords. - <<set $Bodyguard.voice = 0>> + a splinter pierced her throat, severing her vocal cords. + <<set $Concubine.voice = 0>> <<elseif $woundType == 2>> - A splinter hit her face, severely damaging her eyes. - <<set $Bodyguard.eyes = -2>> + a splinter hit her face, severely damaging her eyes. + <<set $Concubine.eyes = -2>> <<elseif $woundType == 3>> - An explosion near her casued the loss of all her limbs. - <<set $Bodyguard.amp = 1>> + an explosion near her casued the loss of all her limbs. + <<set $Concubine.amp = 1>> <<elseif $woundType >= 4>> - A stray shot severely wounded her. - <<if $Bodyguard.health >= -60>> - <<set $Bodyguard.health -= 30>> + a stray shot severely wounded her. + <<if $Concubine.health >= -60>> + <<set $Concubine.health -= 30>> <<else>> - <<set $Bodyguard.health -= Math.abs(90 - $Bodyguard.health)>> + <<set $Concubine.health -= Math.abs(90 - $Concubine.health)>> <</if>> <</if>> <</if>> - The damage to the structure will be @@.red;costly to repair@@. - <<set $cash -= 2000>> + <</if>> + The damage to the structure will be @@.red;costly to repair@@. + <<set $cash -= 2000>> + <<else>> + There was no sizeable assault against the penthouse. Let's hope we'll always be this lucky. + <</if>> +<<else>> + <<if random(1,100) <= 75>> + During the fighting a group of slaves assaulted the penthouse. Isolated and alone, you stood strong against the furious attack. + <<set _woundChance = 0>> + <<if $PC.career == "mercenary" || $PC.career == "gang">> + <<set _woundChance -= 5>> + <</if>> + <<if $personalArms >= 1>> + <<set _woundChance -= 5>> + <</if>> + <<if $PC.physicalAge >= 60>> + <<set _woundChance += random(1,5)>> + <</if>> + <<if $PC.belly > 5000>> + <<set _woundChance += random(1,5)>> + <</if>> + <<if $PC.boobsBonus >= 2>> + <<set _woundChance += random(1,5)>> + <</if>> + <<if $PC.butt >= 2>> + <<set _woundChance += random(1,5)>> + <</if>> + <<if $PC.preg >= 30>> + <<set _woundChance += random(1,5)>> + <</if>> + <<if $PC.balls == 2>> + <<set _woundChance += random(1,5)>> + <</if>> + <<if $PC.ballsImplant >= 2>> + <<set _woundChance += random(1,5)>> + <</if>> + <<set _woundChance *= random(1,2)>> + <<if random(1,100) <= _woundChance>> + A lucky shot managed to find your way to you, leaving a painful, but thankfully not lethal, wound. + <<set $PCWounded = 1>> + <<set $PCWoundCooldown = 3>> <<else>> - While the penthouse was left without a sizeable garrison, there was no dangerous assault against it. Let's hope we'll always be this lucky. + Fortunately you managed to avoid injury. <</if>> - <<elseif $garrison.penthouse == 1>> - <<if random(1,100) <= 75>> - During the fighting a group of slaves assaulted the penthouse. The garrison stood strong against the furious attack. + <<if $Concubine != 0>> <<set _woundChance = 0>> - <<if $PC.career == "mercenary" || $PC.career == "gang">> - <<set _woundChance -= 5>> - <</if>> - <<if $personalArms >= 1>> - <<set _woundChance -= 5>> - <</if>> - <<if $PC.physicalAge >= 60>> - <<set _woundChance += random(1,5)>> - <</if>> - <<if $PC.belly > 5000>> - <<set _woundChance += random(1,5)>> - <</if>> - <<if $PC.boobsBonus >= 2>> - <<set _woundChance += random(1,5)>> - <</if>> - <<if $PC.butt >= 2>> - <<set _woundChance += random(1,5)>> - <</if>> - <<if $PC.preg >= 30>> - <<set _woundChance += random(1,5)>> + <<if $Concubine.combatSkill == 1>> + <<set _woundChance -= 2>> <</if>> - <<if $PC.balls == 2>> - <<set _woundChance += random(1,5)>> + <<if $Concubine.amp >= -4>> + <<set _woundChance -= 1>> <</if>> - <<if $PC.ballsImplant >= 2>> - <<set _woundChance += random(1,5)>> + <<if $Concubine.health >= 50>> + <<set _woundChance -= 1>> <</if>> - <<set _woundChance *= random(1,2)>> - <<if random(1,100) <= _woundChance>> - A lucky shot managed to find your way to you, leaving a painful, but thankfully not lethal, wound. - <<set $PCWounded = 1>> - <<set $PCWoundCooldown = 3>> - <<else>> - Fortunately you managed to avoid injury. - <</if>> - <<if $Concubine != 0>> - <<set _woundChance = 0>> - <<if $Concubine.combatSkill == 1>> - <<set _woundChance -= 2>> - <</if>> - <<if $Concubine.amp >= -4>> - <<set _woundChance -= 1>> - <</if>> - <<if $Concubine.health >= 50>> - <<set _woundChance -= 1>> - <</if>> - <<if $Concubine.weight > 130>> - <<set _woundChance += 1>> - <</if>> - <<if $Concubine.muscles < -30>> - <<set _woundChance += 1>> - <</if>> - <<if $Concubine.eyes <= -2>> - <<set _woundChance += 1>> - <</if>> - <<if $Concubine.heels == 1>> - <<set _woundChance += 1>> - <</if>> - <<if $Concubine.boobs >= 1400>> - <<set _woundChance += 1>> - <</if>> - <<if $Concubine.butt >= 6>> - <<set _woundChance += 1>> - <</if>> - <<if $Concubine.preg >= 30>> - <<set _woundChance += 1>> - <</if>> - <<if $Concubine.dick >= 8>> - <<set _woundChance += 1>> - <</if>> - <<if $Concubine.balls >= 8>> - <<set _woundChance += 1>> - <</if>> - <<if $Concubine.intelligence <= -3>> - <<set _woundChance += 1>> - <</if>> - <<set _woundChance *= random(2,4)>> - <<if random(1,100) <= _woundChance>> - Your concubine was unfortunately caught in the crossfire and - <<set $woundType = random(1,10)>> - <<if $woundType == 1>> - a splinter pierced her throat, severing her vocal cords. - <<set $Concubine.voice = 0>> - <<elseif $woundType == 2>> - a splinter hit her face, severely damaging her eyes. - <<set $Concubine.eyes = -2>> - <<elseif $woundType == 3>> - an explosion near her casued the loss of all her limbs. - <<set $Concubine.amp = 1>> - <<elseif $woundType >= 4>> - a stray shot severely wounded her. - <<if $Concubine.health >= -60>> - <<set $Concubine.health -= 30>> - <<else>> - <<set $Concubine.health -= Math.abs(90 - $Concubine.health)>> - <</if>> - <</if>> - <</if>> + <<if $Concubine.weight > 130>> + <<set _woundChance += 1>> <</if>> - The damage to the structure will be @@.red;costly to repair@@. - <<set $cash -= 2000>> - <<else>> - There was no sizeable assault against the penthouse. Let's hope we'll always be this lucky. - <</if>> - <<else>> - <<if random(1,100) <= 75>> - During the fighting a group of slaves assaulted the penthouse. Isolated and alone, you stood strong against the furious attack. - <<set _woundChance = 0>> - <<if $PC.career == "mercenary" || $PC.career == "gang">> - <<set _woundChance -= 5>> + <<if $Concubine.muscles < -30>> + <<set _woundChance += 1>> <</if>> - <<if $personalArms >= 1>> - <<set _woundChance -= 5>> + <<if $Concubine.eyes <= -2>> + <<set _woundChance += 1>> <</if>> - <<if $PC.physicalAge >= 60>> - <<set _woundChance += random(1,5)>> + <<if $Concubine.heels == 1>> + <<set _woundChance += 1>> <</if>> - <<if $PC.belly > 5000>> - <<set _woundChance += random(1,5)>> + <<if $Concubine.boobs >= 1400>> + <<set _woundChance += 1>> <</if>> - <<if $PC.boobsBonus >= 2>> - <<set _woundChance += random(1,5)>> + <<if $Concubine.butt >= 6>> + <<set _woundChance += 1>> <</if>> - <<if $PC.butt >= 2>> - <<set _woundChance += random(1,5)>> + <<if $Concubine.preg >= 30>> + <<set _woundChance += 1>> <</if>> - <<if $PC.preg >= 30>> - <<set _woundChance += random(1,5)>> + <<if $Concubine.dick >= 8>> + <<set _woundChance += 1>> <</if>> - <<if $PC.balls == 2>> - <<set _woundChance += random(1,5)>> + <<if $Concubine.balls >= 8>> + <<set _woundChance += 1>> <</if>> - <<if $PC.ballsImplant >= 2>> - <<set _woundChance += random(1,5)>> + <<if $Concubine.intelligence <= -3>> + <<set _woundChance += 1>> <</if>> - <<set _woundChance *= random(1,2)>> + <<set _woundChance *= random(2,4)>> <<if random(1,100) <= _woundChance>> - A lucky shot managed to find your way to you, leaving a painful, but thankfully not lethal, wound. - <<set $PCWounded = 1>> - <<set $PCWoundCooldown = 3>> - <<else>> - Fortunately you managed to avoid injury. - <</if>> - <<if $Concubine != 0>> - <<set _woundChance = 0>> - <<if $Concubine.combatSkill == 1>> - <<set _woundChance -= 2>> - <</if>> - <<if $Concubine.amp >= -4>> - <<set _woundChance -= 1>> - <</if>> - <<if $Concubine.health >= 50>> - <<set _woundChance -= 1>> - <</if>> - <<if $Concubine.weight > 130>> - <<set _woundChance += 1>> - <</if>> - <<if $Concubine.muscles < -30>> - <<set _woundChance += 1>> - <</if>> - <<if $Concubine.eyes <= -2>> - <<set _woundChance += 1>> - <</if>> - <<if $Concubine.heels == 1>> - <<set _woundChance += 1>> - <</if>> - <<if $Concubine.boobs >= 1400>> - <<set _woundChance += 1>> - <</if>> - <<if $Concubine.butt >= 6>> - <<set _woundChance += 1>> - <</if>> - <<if $Concubine.preg >= 30>> - <<set _woundChance += 1>> - <</if>> - <<if $Concubine.dick >= 8>> - <<set _woundChance += 1>> - <</if>> - <<if $Concubine.balls >= 8>> - <<set _woundChance += 1>> - <</if>> - <<if $Concubine.intelligence <= -3>> - <<set _woundChance += 1>> - <</if>> - <<set _woundChance *= random(2,4)>> - <<if random(1,100) <= _woundChance>> - Your concubine was unfortunately caught in the crossfire and - <<set $woundType = random(1,10)>> - <<if $woundType == 1>> - a splinter pierced her throat, severing her vocal cords. - <<set $Concubine.voice = 0>> - <<elseif $woundType == 2>> - a splinter hit her face, severely damaging her eyes. - <<set $Concubine.eyes = -2>> - <<elseif $woundType == 3>> - an explosion near her casued the loss of all her limbs. - <<set $Concubine.amp = 1>> - <<elseif $woundType >= 4>> - a stray shot severely wounded her. - <<if $Concubine.health >= -60>> - <<set $Concubine.health -= 30>> - <<else>> - <<set $Concubine.health -= Math.abs(90 - $Concubine.health)>> - <</if>> + Your concubine was unfortunately caught in the crossfire and + <<set $woundType = random(1,10)>> + <<if $woundType == 1>> + a splinter pierced her throat, severing her vocal cords. + <<set $Concubine.voice = 0>> + <<elseif $woundType == 2>> + a splinter hit her face, severely damaging her eyes. + <<set $Concubine.eyes = -2>> + <<elseif $woundType == 3>> + an explosion near her casued the loss of all her limbs. + <<set $Concubine.amp = 1>> + <<elseif $woundType >= 4>> + a stray shot severely wounded her. + <<if $Concubine.health >= -60>> + <<set $Concubine.health -= 30>> + <<else>> + <<set $Concubine.health -= Math.abs(90 - $Concubine.health)>> <</if>> <</if>> <</if>> - <<else>> - There was no sizeable assault against the penthouse. Let's hope we'll always be this lucky. <</if>> + <<else>> + There was no sizeable assault against the penthouse. Let's hope we'll always be this lucky. <</if>> -<<else>> - /* citizen rebellion */ +<</if>> +<br> +<br> + +<<include "unitsRebellionReport">> -<</if>> /* resets variables */ <<set $attackTroops = 0>> <<set $attackEquip = 0>> -<<set $deployingMilitia = 0>> -<<set $deployingSlaves = 0>> -<<set $deployingMercs = 0>> <<set $enemyLosses = 0>> <<set $losses = 0>> <<set $battleTurns = 0>> <<set $slaveRebellion = 0>> -<<set $citizenRebellion = 0>> \ No newline at end of file +<<set $citizenRebellion = 0>> +<<set $irregulars = 0>> +<<set $deployingMilitia = 0>> +<<set $deployingSlaves = 0>> +<<set $deployingMercs = 0>> +<<if $slaveRebellion == 1>> + <<set $slaveProgress = 0>> + <<set $citizenProgress = Math.clamp($citizenProgress - random(50,100), 0, 100)>> +<<else>> + <<set $citizenProgress = 0>> + <<set $slaveProgress = Math.clamp($slaveProgress - random(50,100), 0, 100)>> +<</if>> +<<set $tension = Math.clamp($tension - random(50,100), 0, 100)>> \ No newline at end of file diff --git a/src/SecExp/riotControlCenter.tw b/src/SecExp/riotControlCenter.tw index 0b6c2c5da9073a380e7adc78cf2d45c704a05a5c..60b909a71b0362ec3ee94bc52b84ee91ea8c67a3 100644 --- a/src/SecExp/riotControlCenter.tw +++ b/src/SecExp/riotControlCenter.tw @@ -1,5 +1,11 @@ :: riotControlCenter [nobr] + + + + + + -possibility of accepting demands of rebels. -extermination protocol -brain chips \ No newline at end of file diff --git a/src/SecExp/secExpOptions.tw b/src/SecExp/secExpOptions.tw index bf8bd159a1105d8e512e9342dc572d678f1eac9f..95147859b8221eb05f6382ef9df4840e0b63bded 100644 --- a/src/SecExp/secExpOptions.tw +++ b/src/SecExp/secExpOptions.tw @@ -27,7 +27,6 @@ <<set $forceRebellion = 1>> <<goto "secExpOptions">> <</link>> - <<else>> Rebellions guaranteed this week is @@.cyan;TRUE@@. <<link "Do not force engagement every week">> @@ -35,8 +34,24 @@ <<goto "secExpOptions">> <</link>> <</if>> - //Will force battles to happen every week.// + //Will force rebellions to happen every week. Rebellions will take precedence over battles.// + <</if>> + <br> + <br> + <<if $rebellionGameOver == 0 && $rebellionsEnabled == 1>> + Rebellions can cause gameover is @@.red;FALSE@@. + <<link "Activate game loss in case of rebellions succeeding">> + <<set $rebellionGameOver = 1>> + <<goto "secExpOptions">> + <</link>> + <<else>> + Rebellions can cause gameover is @@.cyan;TRUE@@. + <<link "Deactivate game loss in case of rebellions succeeding">> + <<set $rebellionGameOver = 0>> + <<goto "secExpOptions">> + <</link>> <</if>> + //By default a total defeat in a rebellion will cause a gameover.// <<if $terrain != "oceanic">> <<if $arcologyUpgrade.drones == 1>> <br> diff --git a/src/SecExp/secInit.tw b/src/SecExp/secInit.tw index 092c564b7c5412430fbcf6ec76b144682c1ac180..d261199976f0c428ae3506e50ec7c1f3def873e7 100644 --- a/src/SecExp/secInit.tw +++ b/src/SecExp/secInit.tw @@ -31,6 +31,7 @@ <<set $majorBattleGameOver = 1>> <<set $rebellionsEnabled = 0>> <<set $forceRebellion = 0>> +<<set $rebellionGameOver = 1>> /* edicts */ <<set $edictsUpkeep = 0>> @@ -134,6 +135,9 @@ <<set $rebellingSlaves = 0>> <<set $rebellingMercs = 0>> <<set $repairTime = 3>> +<<set $arcRepairTime = 0>> +<<set $arcRepairCost = 1000>> +<<set $rebelDefeatAftermath = 0>> <<set $garrison = { penthouse: 0, reactor: 0, @@ -147,6 +151,7 @@ <<set $PCrebWon = 0>> <<set $PCrebLoss = 0>> + /* armed forces stats */ <<set $targetUnit = 0>> <<set $targetIndex = 0>> diff --git a/src/SecExp/securityHQ.tw b/src/SecExp/securityHQ.tw index 097e24f600df2db83074b65aafcaea2705d0c352..c91524e17fedc2d5c902cfc907a60f467c58c8e2 100644 --- a/src/SecExp/securityHQ.tw +++ b/src/SecExp/securityHQ.tw @@ -16,7 +16,7 @@ You have <span id="secHel"><<print $secHelots>></span> slaves working in the HQ. <</if>> <<set _menialPrice = Math.trunc(($slaveCostFactor*1000)/100)*100>> <<set _menialPrice = Math.clamp(_menialPrice, 500, 1500)>> -<<if $PopCap > $helots+$fuckdolls+$menialBioreactors>> +<<if $PopCap > $helots+$fuckdolls+$menialBioreactors || $helots+$fuckdolls+$menialBioreactors == 0>> <br> [[Buy|securityHQ][$helots+=1,$menialDemandFactor+=1,$cash-=_menialPrice]] <<if $cash > _menialPrice*10>> diff --git a/src/SecExp/seeUnit.tw b/src/SecExp/seeUnit.tw index 8b748cca236cdfed93d9230946abc927174508b4..7990182ed32ea0b8f3d66541f3454c6cb5a7c88c 100644 --- a/src/SecExp/seeUnit.tw +++ b/src/SecExp/seeUnit.tw @@ -34,8 +34,9 @@ <</if>> <<if $showBattleStatistics == 1>> <br> - <br>Security drones base attack: $secBotsBaseAttack - <br>Security drones base defense: $secBotsBaseDefense + <br>Security drones base attack: $secBotsBaseAttack (<<print ($secBotsBaseAttack + $secBotsBaseAttack * $secBots.equip * 0.15)>>) + <br>Security drones base defense: $secBotsBaseDefense (<<print ($secBotsBaseDefense + $secBotsBaseDefense * $secBots.equip * 0.15)>>) + <br>Equipment bonus: + <<print $secBots.equip * 15>>% <br>Security drones base morale: $secBotsMorale <br>Security drones base hp: $secBotsBaseHp <</if>> @@ -72,7 +73,7 @@ <<if $militiaUnits[$targetIndex].medics == 0>> <<link "Attach trained medics to the unit">> <<set $militiaUnits[$targetIndex].medics = 1>> - <<set $cash -= 10000>> + <<set $cash -= $equipUpgradeCost * $militiaUnits[$targetIndex].maxTroops) + 1000>> <<goto "seeUnit">> <</link>> Attach a small squad of trained medics to the unit. @@ -95,9 +96,11 @@ <</if>> <<if $showBattleStatistics == 1>> <br> - <br>Militia base attack: $militiaBaseAttack - <br>Militia base defense: $militiaBaseDefense - <br>Militia base morale: $militiaBaseMorale + <br>Militia base attack: $militiaBaseAttack (<<print ($militiaBaseAttack + $militiaBaseAttack * $militiaUnits[$targetIndex].equip * 0.15)>>) + <br>Militia base defense: $militiaBaseDefense (<<print ($militiaBaseDefense + $militiaBaseDefense * $militiaUnits[$targetIndex].equip * 0.15)>>) + <br>Equipment bonus: + <<print $militiaUnits[$targetIndex].equip * 15>>% + <br>Militia base morale: $militiaBaseMorale (<<print ($militiaBaseMorale + $militiaBaseMorale * $secBarracksUpgrades.luxury * 0.05)>>) + <br>Barracks bonus: + <<print $secBarracksUpgrades.luxury * 5>>% <br>Militia base hp: $militiaBaseHp <</if>> <<elseif $targetUnit == "slaveUnits">> @@ -133,7 +136,7 @@ <<if $slaveUnits[$targetIndex].medics == 0>> <<link "Attach trained medics to the unit">> <<set $slaveUnits[$targetIndex].medics = 1>> - <<set $cash -= 10000>> + <<set $cash -= $equipUpgradeCost * $slaveUnits[$targetIndex].maxTroops) + 1000>> <<goto "seeUnit">> <</link>> Attach a small squad of trained medics to the unit. @@ -156,9 +159,11 @@ <</if>> <<if $showBattleStatistics == 1>> <br> - <br>Slaves base attack: $slaveBaseAttack - <br>Slaves base defense: $slaveBaseDefense - <br>Slaves base morale: $slaveBaseMorale + <br>Slaves base attack: $slaveBaseAttack (<<print ($slaveBaseAttack + $slaveBaseAttack * $slaveUnits[$targetIndex].equip * 0.15)>>) + <br>Slaves base defense: $slaveBaseDefense (<<print ($slaveBaseDefense + $slaveBaseDefense * $slaveUnits[$targetIndex].equip * 0.15)>>) + <br>Equipment bonus: + <<print $slaveUnits[$targetIndex].equip * 15>>% + <br>Slaves base morale: $slaveBaseMorale (<<print ($slaveBaseMorale + $slaveBaseMorale * $secBarracksUpgrades.luxury * 0.05)>>) + <br>Barracks bonus: + <<print $secBarracksUpgrades.luxury * 5>>% <br>Slaves base hp: $slaveBaseHp <</if>> <<elseif $targetUnit == "mercUnits">> @@ -217,9 +222,11 @@ <</if>> <<if $showBattleStatistics == 1>> <br> - <br>Mercenaries base attack: $mercBaseAttack - <br>Mercenaries base defense: $mercBaseDefense - <br>Mercenaries base morale: $mercBaseMorale + <br>Mercenaries base attack: $mercBaseAttack (<<print ($mercBaseAttack + $mercBaseAttack * $mercUnits[$targetIndex].equip * 0.15)>>) + <br>Mercenaries base defense: $mercBaseDefense (<<print ($mercBaseDefense + $mercBaseDefense * $mercUnits[$targetIndex].equip * 0.15)>>) + <br>Equipment bonus: + <<print $mercUnits[$targetIndex].equip * 15>>% + <br>Mercenaries base morale: $mercBaseMorale (<<print ($mercBaseMorale + $mercBaseMorale * $secBarracksUpgrades.luxury * 0.05)>>) + <br>Barracks bonus: + <<print $secBarracksUpgrades.luxury * 5>>% <br>Mercenaries base hp: $mercBaseHp <</if>> <</if>> \ No newline at end of file diff --git a/src/SecExp/unitsBattleReport.tw b/src/SecExp/unitsBattleReport.tw index bea207069a66c2181a3428faafedd1752fc80953..a8f198c57783b635482aac863a92dbc66f693584 100644 --- a/src/SecExp/unitsBattleReport.tw +++ b/src/SecExp/unitsBattleReport.tw @@ -52,6 +52,9 @@ <</if>> <<set _lossesList.push(_assignedLosses)>> <</for>> + <<if $losses > 0>> + <<set _lossesList[random(_lossesList.length] += $losses>> + <</if>> <<set _lossesList.shuffle()>> /* assigns the losses and notify the player */ @@ -130,14 +133,15 @@ <<else>> catastrofic casualties <</if>> + <<set _med = Math.round(Math.clamp(_loss * $militiaUnits[_j].medics * 0.25,1,_loss))>> <<if $militiaUnits[_j].medics == 1>> - , however <<print math.trunc(_loss * $militiaUnits[_j].medics * 0.25)>> men were saved by the medics attached to this unit. + , however some men were saved by the medics attached to this unit. <<else>> . <</if>> - <<set $militiaUnits[_j].troops -= Math.trunc(_loss - _loss * $militiaUnits[_j].medics * 0.25)>> - <<set $militiaEmployedManpower -= Math.trunc(_loss - _loss * $militiaUnits[_j].medics * 0.25)>> - <<set $militiaTotalCasualties += Math.trunc(_loss - _loss * $militiaUnits[_j].medics * 0.25)>> + <<set $militiaUnits[_j].troops -= Math.trunc(Math.clamp(_loss - _med,0,$militiaUnits[_j].maxTroops))>> + <<set $militiaEmployedManpower -= Math.trunc(_loss - _med)>> + <<set $militiaTotalCasualties += Math.trunc(_loss - _med)>> <<if $militiaUnits[_j].training < 100>> <<if random(1,100) > 60>> Fighting in the field increased the experience of the unit, making it more effective in future fights. @@ -174,14 +178,15 @@ <<else>> catastrofic casualties <</if>> + <<set _med = Math.round(Math.clamp(_loss * $slaveUnits[_j].medics * 0.25,1,_loss))>> <<if $slaveUnits[_j].medics == 1>> - , however <<print math.trunc(_loss * $slaveUnits[_j].medics * 0.25)>> men were saved by the medics attached to this unit. + , however some men were saved by the medics attached to this unit. <<else>> . <</if>> - <<set $slaveUnits[_j].troops -= Math.trunc(_loss - _loss * $slaveUnits[_j].medics * 0.25)>> - <<set $slavesEmployedManpower -= Math.trunc(_loss - _loss * $slaveUnits[_j].medics * 0.25)>> - <<set $slavesTotalCasualties += Math.trunc(_loss - _loss * $slaveUnits[_j].medics * 0.25)>> + <<set $slaveUnits[_j].troops -= Math.trunc(Math.clamp(_loss - _med,0,$slaveUnits[_j].maxTroops))>> + <<set $slavesEmployedManpower -= Math.trunc(_loss - _med)>> + <<set $slavesTotalCasualties += Math.trunc(_loss - _med)>> <<if $slaveUnits[_j].training < 100>> <<if random(1,100) > 60>> Fighting in the field increased the experience of the unit, making it more effective in future fights. @@ -218,15 +223,15 @@ <<else>> catastrofic casualties <</if>> + <<set _med = Math.round(Math.clamp(_loss * $mercUnits[_j].medics * 0.25,1,_loss))>> <<if $mercUnits[_j].medics == 1>> - , however - <<print math.trunc(_loss * $mercUnits[_j].medics * 0.25)>> men were saved by the medics attached to this unit. + , however some men were saved by the medics attached to this unit. <<else>> . <</if>> - <<set $mercUnits[_j].troops -= Math.trunc(_loss - _loss * $mercUnits[_j].medics * 0.25)>> - <<set $mercEmployedManpower -= Math.trunc(_loss - _loss * $mercUnits[_j].medics * 0.25)>> - <<set $mercTotalCasualties += Math.trunc(_loss - _loss * $mercUnits[_j].medics * 0.25)>> + <<set $mercUnits[_j].troops -= Math.trunc(Math.clamp(_loss - _med,0,$mercUnits[_j].maxTroops))>> + <<set $mercEmployedManpower -= Math.trunc(_loss - _med)>> + <<set $mercTotalCasualties += Math.trunc(_loss - _med)>> <<if $mercUnits[_j].training < 100>> <<if random(1,100) > 60>> Fighting in the field increased the experience of the unit, making it more effective in future fights. diff --git a/src/SecExp/unitsRebellionReport.tw b/src/SecExp/unitsRebellionReport.tw new file mode 100644 index 0000000000000000000000000000000000000000..7f50feed22d66236d9c65981e31c0d108ddbaee2 --- /dev/null +++ b/src/SecExp/unitsRebellionReport.tw @@ -0,0 +1,484 @@ +:: unitsRebellionReport [nobr] + +<<if $losses == 0>> + <<if $irregulars > 0>> + The volounteeing citizens were quickly organized into an irregular militia unit and deployed in the arcology. While without the discipline of your other instruments, they nonetheless provided precious extra firepower and standing strength. + During the battle they suffered no casualties. + <</if>> + <<if $deployingBots == 1>> + Your squadron of security drones participated in the battle, dominating the airspace and providing vital intelligence to the rest of the army. + During the battle they suffered no casualties. + <</if>> + <<if $SFIntervention == 1>> + <<print $securityForcePersonnel>> soldiers from the $securityForceName joined the battle aboard their<<if $securityForceVehiclePower >= 4>>armored<</if>>vehicles<<if $securityForceAC130 > 0>>and their AC130<</if>>. + They brought their unmatched strength to crush those that would want you deposed. + During the battle they suffered no casualties. + <</if>> + <<if $deployingMilitia == 1>> + <<for _j = 0; _j < $militiaUnits.length; _j++>> + <<if $militiaUnits[_j].active == 1 && !($rebellingUnits.includes($militiaUnits[_j]))>> + $militiaUnits[_j].platoonName participated in the battle. They remained loyal to you to the end. + During the battle they suffered no casualties. + <<elseif $militiaUnits[_j].active == 1>> + $militiaUnits[_j].platoonName participated in the battle. They had the gall to betray you. + <</if>> + <</for>> + <</if>> + <<if $deployingSlaves == 1>> + <<for _j = 0; _j < $slaveUnits.length; _j++>> + <<if $slaveUnits[_j].isDeployed == 1 && !($rebellingUnits.includes($slaveUnits[_j]))>> + $slaveUnits[_j].platoonName participated in the battle. They remained loyal to you to the end. + During the battle they suffered no casualties. + <<elseif $slaveUnits[_j].active == 1>> + $slaveUnits[_j].platoonName participated in the battle. They decided in their blind arrogance to betray you. + <</if>> + <</for>> + <</if>> + <<if $deployingMercs == 1>> + <<for _j = 0; _j < $mercUnits.length; _j++>> + <<if $mercUnits[_j].isDeployed == 1 && !($rebellingUnits.includes($mercUnits[_j]))>> + $mercUnits[_j].platoonName participated in the battle. They remained loyal to you to the end. + During the battle they suffered no casualties. + <<elseif $mercUnits[_j].active == 1>> + $mercUnits[_j].platoonName participated in the battle. They made the grave mistake of betraying you. + <</if>> + <</for>> + <</if>> + +<<elseif $losses > 0>> + /* if the losses are more than zero */ + <<if $securityForceCreate == 1>> + <<set $deployedUnits++>> + <</if>> + <<if $irregulars > 0>> + <<set $deployedUnits++>> + <</if>> + <<set _averageLosses = Math.trunc($losses / $deployedUnits)>> + <<set _lossesList = []>> + <<for _i = 0; _i < $deployedUnits; _i++>> + <<set _assignedLosses = Math.trunc(Math.clamp(_averageLosses + random(-5,5), 0, 100))>> + <<if _assignedLosses > $losses>> + <<set _assignedLosses = $losses>> + <<set $losses = 0>> + <<else>> + <<set $losses -= _assignedLosses>> + <</if>> + <<set _lossesList.push(_assignedLosses)>> + <</for>> + <<if $losses > 0>> + <<set _lossesList[random(_lossesList.length)] += $losses>> + <</if>> + <<set _lossesList.shuffle()>> + + /* assigns the losses and notify the player */ + <<if $irregulars > 0>> + <br> + <br> + <<set _loss = _lossesList.pluck()>> + <<if _loss < $ACitizens + 100>> + <<set $ACitizens -= _loss>> + <<else>> + <<set $ACitizens = 100>> + <</if>> + The volounteeing citizens were quickly organized into an irregular militia unit and deployed in the arcology. While without the discipline of your other instruments, they nonetheless provided precious extra firepower and standing strength. + During the battle they suffered + <<if _loss <= 0>> + no casualties. + <<elseif _loss <= 10>> + light casualties. + <<elseif _loss <= 30>> + moderate casualties. + <<elseif _loss <= 60>> + heavy casualties. + <<else>> + catastrofic casualties. + <</if>> + <</if>> + <<if $secBots.active == 1>> + <br> + <br> + <<set _loss = _lossesList.pluck()>> + <<if _loss < $secBots.troops>> + <<set $secBots.troops -= _loss>> + <<else>> + <<set $secBots.troops = 0>> + <</if>> + Your squadron of security drones participated in the battle, dominating the airspace and providing vital intelligence to the rest of the army. + During the battle they suffered + <<if _loss <= 0>> + no casualties. + <<elseif _loss <= 10>> + light casualties. + <<elseif _loss <= 30>> + moderate casualties. + <<elseif _loss <= 60>> + heavy casualties. + <<else>> + catastrofic casualties. + <</if>> + <<if $secBots.troops <= 0>> + <<set $secBots.active = 0>> + Unfortunately the losses they took were simply too great, their effective combatants are in so small number you can no longer call them a deployable unit. It will take quite the investment to rebuild them. + <<elseif $secBots.troops <= 10>> + The unit has very few operatives left, it risks compelte annihilation if deployed again. + <</if>> + <</if>> + <<if $securityForceCreate == 1>> + <br> + <br> + <<set _loss = _lossesList.pluck()>> + <<if _loss < $securityForcePersonnel>> + <<set $securityForcePersonnel -= _loss>> + <<else>> + <<set $securityForcePersonnel = 0>> + <</if>> + <<print $securityForcePersonnel>> soldiers from the $securityForceName joined the battle aboard their<<if $securityForceVehiclePower >= 4>>armored<</if>>vehicles<<if $securityForceAC130 > 0>>and their AC130<</if>>. + They brought their unmatched strength to crush those that would want you deposed. + During the battle they suffered + <<if _loss <= 0>> + no casualties. + <<elseif _loss <= 10>> + light casualties. + <<elseif _loss <= 30>> + moderate casualties. + <<elseif _loss <= 60>> + heavy casualties. + <<else>> + catastrofic casualties. + <</if>> + <</if>> + <<if $deployingMilitia == 1>> + <<for _j = 0; _j < $militiaUnits.length; _j++>> + <<if $militiaUnits[_j].active == 1 && !($rebellingUnits.includes($militiaUnits[_j]))>> + <br> + <br> + <<set $militiaUnits[_j].battlesFought++>> + <<set _loss = _lossesList.pluck()>> + <<set _loss = Math.clamp(_loss,0,$militiaUnits[_j].troops)>> + $militiaUnits[_j].platoonName participated in the battle. They remained loyal to you to the end. + During the battle they suffered + <<if _loss <= 0>> + no casualties + <<elseif _loss <= 10>> + light casualties + <<elseif _loss <= 30>> + moderate casualties + <<elseif _loss <= 60>> + heavy casualties + <<else>> + catastrofic casualties + <</if>> + <<set _med = Math.round(Math.clamp(_loss * $militiaUnits[_j].medics * 0.25,1,_loss))>> + <<if $militiaUnits[_j].medics == 1>> + , however some men were saved by the medics attached to this unit. + <<else>> + . + <</if>> + <<set $militiaUnits[_j].troops -= Math.trunc(Math.clamp(_loss - _med,0,$militiaUnits[_j].maxTroops))>> + <<set $militiaEmployedManpower -= Math.trunc(_loss - _med)>> + <<set $militiaTotalCasualties += Math.trunc(_loss - _med)>> + <<if $militiaUnits[_j].training < 100>> + <<if random(1,100) > 60>> + Fighting in the field increased the experience of the unit, making it more effective in future fights. + <<set $militiaUnits[_j].training += random(5,15) + $majorBattle * random(5,15)>> + <</if>> + <</if>> + <<if $militiaUnits[_j].troops <= 0>> + <<set $militiaUnits[_j].active = 0>> + <br>Unfortunately the losses they took were simply too great, their effective combatants are in so small number you can no longer call them a deployable unit. The remnants will be sent home honored as veterans or reorganized in a new unit. + <<elseif $militiaUnits[_j].troops <= 10>> + <br>The unit has very few operatives left, it risks complete annihilation if deployed again. + <</if>> + <</if>> + <</for>> + <</if>> + <<if $deployingSlaves == 1>> + <<set _med = 0>> + <<for _j = 0; _j < $slaveUnits.length; _j++>> + <<if $slaveUnits[_j].active == 1 && !($rebellingUnits.includes($slaveUnits[_j]))>> + <br> + <br> + <<set $slaveUnits[_j].battlesFought++>> + <<set _loss = _lossesList.pluck()>> + <<if !(Number.isInteger(_loss))>> + <br>@@.red;Error: failed to assign losses, input was negative or NaN@@ + <<break>> + <</if>> + <<set _loss = Math.clamp(_loss,0,$slaveUnits[_j].troops)>> + $slaveUnits[_j].platoonName participated in the battle. They remained loyal to you to the end. + During the battle they suffered + <<if _loss <= 0>> + no casualties + <<elseif _loss <= 10>> + light casualties + <<elseif _loss <= 30>> + moderate casualties + <<elseif _loss <= 60>> + heavy casualties + <<else>> + catastrofic casualties + <</if>> + <<set _med = Math.round(Math.clamp(_loss * $slaveUnits[_j].medics * 0.25,1,_loss))>> + <<if $slaveUnits[_j].medics == 1>> + , however some men were saved by the medics attached to this unit. + <<else>> + . + <</if>> + <<set $slaveUnits[_j].troops -= Math.trunc(Math.clamp(_loss - _med,0,$slaveUnits[_j].maxTroops))>> + <<set $slavesEmployedManpower -= _loss - _med>> + <<set $slavesTotalCasualties += _loss - _med>> + <<if $slaveUnits[_j].training < 100>> + <<if random(1,100) > 60>> + Fighting in the field increased the experience of the unit, making it more effective in future fights. + <<set $slaveUnits[_j].training += random(5,15) + $majorBattle * random(5,15)>> + <</if>> + <</if>> + <<if $slaveUnits[_j].troops <= 0>> + <<set $slaveUnits[_j].active = 0>> + <br>Unfortunately the losses they took were simply too great, their effective combatants are in so small number you can no longer call them a deployable unit. The sorvivors will be sent home honored as veterans or reorganized in a new unit. + <<elseif $slaveUnits[_j].troops <= 10>> + <br>The unit has very few operatives left, it risks complete annihilation if deployed again. + <</if>> + <</if>> + <</for>> + <</if>> + <<if $deployingMercs == 1>> + <<for _j = 0; _j < $mercUnits.length; _j++>> + <<if $mercUnits[_j].active == 1 && !($rebellingUnits.includes($mercUnits[_j]))>> + <br> + <br> + <<set $mercUnits[_j].battlesFought++>> + <<set _loss = _lossesList.pluck()>> + <<set _loss = Math.clamp(_loss,0,$mercUnits[_j].troops)>> + $mercUnits[_j].platoonName participated in the battle. Mercenaries are a common sight on the modern battlefield and yours are proud to serve their generous contractor. + During the battle they suffered + <<if _loss <= 0>> + no casualties + <<elseif _loss <= 10>> + light casualties + <<elseif _loss <= 30>> + moderate casualties + <<elseif _loss <= 60>> + heavy casualties + <<else>> + catastrofic casualties + <</if>> + <<set _med = Math.round(Math.clamp(_loss * $militiaUnits[_j].medics * 0.25,1,_loss))>> + <<if $mercUnits[_j].medics == 1>> + , however some men were saved by the medics attached to this unit. + <<else>> + . + <</if>> + <<set $mercUnits[_j].troops -= Math.trunc(Math.clamp(_loss - _med,0,$mercUnits[_j].maxTroops))>> + <<set $mercEmployedManpower -= Math.trunc(_loss - _med)>> + <<set $mercTotalCasualties += Math.trunc(_loss - _med)>> + <<if $mercUnits[_j].training < 100>> + <<if random(1,100) > 60>> + Fighting in the field increased the experience of the unit, making it more effective in future fights. + <<set $mercUnits[_j].training += random(5,15) + $majorBattle * random(5,15)>> + <</if>> + <</if>> + <<if $mercUnits[_j].troops <= 0>> + <<set $mercUnits[_j].active = 0>> + <br>Unfortunately the losses they took were simply too great, their effective combatants are in so small number you can no longer call them a deployable unit. The remnants will be sent home honored as veterans or reorganized in a new unit. + <<elseif $mercUnits[_j].troops <= 10>> + <br>The unit has very few operatives left, it risks complete annihilation if deployed again. + <</if>> + <</if>> + <</for>> + <</if>> + <br> + <br> + <<if $rebellingUnits.length > 0 && $battleResult >= 2>> + /* win */ + /* militia */ + <<set _militiaRebelled = []>> + <<set _militiaManpower = 0>> + <<for _j = 0; _j < $militiaUnits.length; _j++>> + <<if $militiaUnits[_j].active == 1 && $rebellingUnits.includes($militiaUnits[_j])>> + $militiaUnits[_j].platoonName, + <<set _militiaRebelled.push($militiaUnits[_j])>> + <<set _militiaManpower += Math.clamp($militiaUnits[_j].troops - random(_averageLosses),0,$militiaUnits[_j].troops)>> + <</if>> + <</for>> + had the gall to betray you and join your enemies. + <<if _militiaRebelled.length > 0>> + <span id="militiaResult"> + <br><<link "Dissolve the units">> + <<set $militiaUnits.delete(_militiaRebelled)>> + <<set $militiaFreeManpower += _militiaManpower>> + <<for _i = 0; _i < $militiaUnits.length; _i++>> + <<if $militiaUnits[_i].active == 1>> + <<set $militiaUnits[_i].loyalty = Math.clamp($militiaUnits[_i].loyalty - random(1,4),0,10)>> + <</if>> + <</for>> + <<recalcManpower>> + <<replace "#militiaResult">> + <br>Units dissolved. + <</replace>> + <</link>> + <br>//Manpower will be refunded, but will negatvely influence the loyalty of the other units// + <br><<link "Purge the dissidents and dissolve the units">> + <<set $militiaUnits.delete(_militiaRebelled)>> + <<set $militiaFreeManpower += _militiaManpower * 0.5>> + <<recalcManpower>> + <<replace "#militiaResult">> + <br>Dissidents purged and units dissolved. + <</replace>> + <</link>> + <br>//Will not influence the loyalty of the other units, but only half the manpower will be refunded.// + <br><<link "Execute them all">> + <<set $militiaUnits.delete(_militiaRebelled)>> + <<for _i = 0; _i < $militiaUnits.length; _i++>> + <<if $militiaUnits[_i].active == 1>> + <<set $militiaUnits[_i].loyalty = Math.clamp($militiaUnits[_i].loyalty + random(1,4),0,10)>> + <</if>> + <</for>> + <<recalcManpower>> + <<replace "#militiaResult">> + <br>Units executed. Dissent will not be tolerated. + <</replace>> + <</link>> + <br>//Will positively influence the loyalty of the other units, but no manpower will be refunded.// + <</if>> + + /* slaves */ + <<set _slaveRebelled = []>> + <<set _slaveManpower = 0>> + <<for _j = 0; _j < $slaveUnits.length; _j++>> + <<if $slaveUnits[_j].active == 1 && $rebellingUnits.includes($slaveUnits[_j])>> + <br>$slaveUnits[_j].platoonName, + <<set _slaveRebelled.push($slaveUnits[_j])>> + <<set _slaveManpower += Math.clamp($slaveUnits[_j].troops - random(_averageLosses),0,$slaveUnits[_j].troops)>> + <</if>> + <</for>> + decided in their blind arrogance to betray you. + <<if _slaveRebelled.length > 0>> + <span id="slaveResult"> + <br><<link "Dissolve the units">> + <<set $slaveUnits.delete(_slaveRebelled)>> + <<set $helots += _slaveManpower>> + <<for _i = 0; _i < $militiaUnits.length; _i++>> + <<if $slaveUnits[_i].active == 1>> + <<set $slaveUnits[_i].loyalty = Math.clamp($slaveUnits[_i].loyalty - random(1,4),0,10)>> + <</if>> + <</for>> + <<recalcManpower>> + <<replace "#slaveResult">> + <br>Units dissolved. + <</replace>> + <</link>> + <br>//Manpower will be refunded, but will negatively influence the loyalty of the other units// + <br><<link "Purge the dissidents and dissolve the units">> + <<set $slaveUnits.delete(_slaveRebelled)>> + <<set $helots += _slaveManpower * 0.5>> + <<recalcManpower>> + <<replace "#slaveResult">> + <br>Dissidents purged and units dissolved. + <</replace>> + <</link>> + <br>//Will not influence the loyalty of the other units, but only half the manpower will be refunded.// + <br><<link "Execute them all">> + <<set $slaveUnits.delete(_slaveRebelled)>> + <<for _i = 0; _i < $slaveUnits.length; _i++>> + <<if $slaveUnits[_i].active == 1>> + <<set $slaveUnits[_i].loyalty = Math.clamp($slaveUnits[_i].loyalty + random(1,4),0,10)>> + <</if>> + <</for>> + <<recalcManpower>> + <<replace "#slaveResult">> + <br>Units executed. Dissent will not be tolerated. + <</replace>> + <</link>> + <br>//Will positively influence the loyalty of the other units, but no manpower will be refunded.// + <</if>> + + /* mercs */ + <<set _mercRebelled = []>> + <<set _mercManpower = 0>> + <<for _j = 0; _j < $mercUnits.length; _j++>> + <<if $mercUnits[_j].active == 1 && $rebellingUnits.includes($mercUnits[_j])>> + <br>$mercUnits[_j].platoonName, + <<set _mercRebelled.push($mercUnits[_j])>> + <<set _mercManpower += Math.clamp($mercUnits[_j].troops - random(_averageLosses),0,$mercUnits[_j].troops)>> + <</if>> + <</for>> + made the grave mistake of betraying you. + <<if _mercRebelled.length > 0>> + <span id="mercResult"> + <br><<link "Dissolve the units">> + <<set $mercUnits.delete(_mercRebelled)>> + <<set $mercFreeManpower += _mercManpower>> + <<for _i = 0; _i < $militiaUnits.length; _i++>> + <<if $mercUnits[_i].active == 1>> + <<set $mercUnits[_i].loyalty = Math.clamp($mercUnits[_i].loyalty - random(1,4),0,10)>> + <</if>> + <</for>> + <<recalcManpower>> + <<replace "#mercResult">> + <br>Units dissolved. + <</replace>> + <</link>> + <br>//Manpower will be refunded, but will negatively influence the loyalty of the other units// + <br><<link "Purge the dissidents and dissolve the units">> + <<set $mercUnits.delete(_mercRebelled)>> + <<set $mercFreeManpower += _mercManpower * 0.5>> + <<recalcManpower>> + <<replace "#mercResult">> + <br>Dissidents purged and units dissolved. + <</replace>> + <</link>> + <br>//Will not influence the loyalty of the other units, but only half the manpower will be refunded.// + <br><<link "Execute them all">> + <<set $mercUnits.delete(_mercRebelled)>> + <<for _i = 0; _i < $mercUnits.length; _i++>> + <<if $mercUnits[_i].active == 1>> + <<set $mercUnits[_i].loyalty = Math.clamp($mercUnits[_i].loyalty + random(1,4),0,10)>> + <</if>> + <</for>> + <<recalcManpower>> + <<replace "#mercResult">> + <br>Units executed. Dissent will not be tolerated. + <</replace>> + <</link>> + <br>//Will positively influence the loyalty of the other units, but no manpower will be refunded.// + <</if>> + + /* loss */ + <<elseif $rebellingUnits.length > 0>> + <<set _militiaRebelled = 0>> + <<for _j = 0; _j < $militiaUnits.length; _j++>> + <<if $militiaUnits[_j].active == 1 && $rebellingUnits.includes($militiaUnits[_j])>> + $militiaUnits[_j].platoonName, + <<set $militiaUnits.deleteAt(_j)>> + <<set _militiaRebelled++>> + <</if>> + <</for>> + <<recalcManpower>> + had the gall to betray you and join your enemies. They participated in the looting following the battle, then vanished in the wastes. + <<set $cash -= 1000 * _militiaRebelled>> + <br> + <<set _slaveRebelled = 0>> + <<for _j = 0; _j < $slaveUnits.length; _j++>> + <<if $slaveUnits[_j].active == 1 && $rebellingUnits.includes($slaveUnits[_j])>> + <br>$slaveUnits[_j].platoonName, + <<set $slaveUnits.deleteAt(_j)>> + <<set _slaveRebelled++>> + <</if>> + <</for>> + decided in their blind arrogance to betray you. They participated in the looting following the battle, then vanished in the wastes. + <<set $cash -= 1000 * _slaveRebelled>> + <<set _mercRebelled = 0>> + <<for _j = 0; _j < $mercUnits.length; _j++>> + <<if $mercUnits[_j].active == 1 && $rebellingUnits.includes($mercUnits[_j])>> + <br>$mercUnits[_j].platoonName, + <<set $mercUnits.deleteAt(_j)>> + <<set _mercRebelled++>> + <</if>> + <</for>> + made the grave mistake of betraying you. They participated in the looting following the battle, then vanished in the wastes. + <<set $cash -= 1000 * _mercRebelled>> + <</if>> +<<else>> + <br>@@.red;Error: losses are a negative number or NaN@@ +<</if>> \ No newline at end of file diff --git a/src/events/gameover.tw b/src/events/gameover.tw index 2aac62fb3a09fc2852ce4656b1c53d2f14cd38d1..01582750a0489c4dc8db55a962e1f7b54acbe4ba 100644 --- a/src/events/gameover.tw +++ b/src/events/gameover.tw @@ -56,10 +56,22 @@ As the interminable column of old world puppets breaks the battlines and enters the arcology, all hell breaks loose. Properties are seized and wealth stolen and distributed between the victorious soldiers. You are stripped of everything you possessed and left to rot in a corner of your once glorious arcology. <<elseif $attackType == "freedom fighters">> - As the army of freedom fighters invades the arcology, all hell break loose. Their righteous fury torches everything you held dear, while the streets of the arcology run red with the blood of the masters. You are reserved a special death: crucified in front of the arcology's entrance. Your corpse a grim reminder of your legacy. + As the army of freedom fighters invades the arcology, all hell break loose. Their righteous fury torches everything you held dear, while the streets of the arcology run red with the blood of the masters. + You are reserved a special death: crucified in front of the arcology's entrance. Your corpse a grim reminder of your legacy. <<elseif $attackType == "free city">> - As the mercenaries break the battlelines and enter the arcology all hell break loose. The sectors are pillaged one by one, systematically an thoroughly. When they break in the penthouse they quickly capture and send you to their employers as proof of their success. Your personal story may continue, but that part of it worthy of retelling has now ended. + As the mercenaries break the battlelines and enter the arcology all hell break loose. The sectors are pillaged one by one, systematically an thoroughly. When they break in the penthouse they quickly capture and send you to their employers as proof of their success. + Your personal story may continue, but that part of it worthy of retelling has now ended. <</if>> + +<<elseif $gameover == "Rebellion defeat">> + <<if $slaveRebellion == 1>> + As the furious horde of slaves invade your penthouse you are left a few precious seconds to decide your fate. You embrace for the last time your faithful revolver and just as the rebels break through your doors you squeeze the trigger. + The end of your story has come and your arcology is now in the hands of whoever will take control of the vermins that dared rise up this day. + <<else>> + As the furious horde of citizens invade your penthouse you are left a few precious seconds to decide your fate. You embrace for the last time your faithful revolver and just as the rebels break through your doors you squeeze the trigger. + The end of your story has come and your arcology is now in the hands of whoever will take control of the vermins that dared rise up this day. + <</if>> + <<else>> <<set $ui = "start">> Since you are without slaves, Free Cities society no longer considers you a citizen of the first rank. Your personal story may continue, but that part of it worthy of retelling has now ended. diff --git a/src/js/economyJS.tw b/src/js/economyJS.tw index 336c4adc84eb0fead263299e505eeb62788bd768..1d73db88db3c37fdb0490f02371a0a3021c81d70 100644 --- a/src/js/economyJS.tw +++ b/src/js/economyJS.tw @@ -63,12 +63,12 @@ window.getCost = function(array) { //security expansion if(State.variables.secExp == 1) { - costs += State.variables.edictsUpkeep; - + if(State.variables.edictsUpkeep > 0) { + costs += State.variables.edictsUpkeep; + } if(State.variables.SFSupportUpkeep > 0) { costs += State.variables.SFSupportUpkeep; } - if(State.variables.propHub > 0) { costs += State.variables.propHubUpkeep; } @@ -100,6 +100,7 @@ window.getCost = function(array) { } } } + //general arcology costs costs += (State.variables.girls * (250 + (economy * 500))); diff --git a/src/npc/uploadSlave.tw b/src/npc/uploadSlave.tw index e7eac0cd9379926fc0b476a3297e808cede19186..a17758c85d21ba742affac0fc3851877427317fe 100644 --- a/src/npc/uploadSlave.tw +++ b/src/npc/uploadSlave.tw @@ -1,17 +1,196 @@ -:: Upload Slave +:: Upload Slave [nobr] -<<nobr>> +<<set $nextButton = "Continue", $nextLink = "Slave Interact">> -<<set $nextButton = "Continue">> -<<set $nextLink = "Slave Interact">> +//Copy and paste this block of stats to submit a slave for hardcoded inclusion. Unsupported in Pregmod - Use export slave instead// -<</nobr>>\ -\ -//Copy and paste this block of stats to submit a slave for hardcoded inclusion.// +<br><br> -<<nobr>> +VERSION $ver BUILD $releaseID<br><br> +slaveName: "$activeSlave.slaveName", +slaveSurname: "$activeSlave.slaveName", +birthName: "$activeSlave.birthName", +birthSurname: "$activeSlave.birthSurname", +genes: "$activeSlave.genes", +weekAcquired: 1, +origin: <<if $activeSlave.origin == 0>>0<<else>>"$activeSlave.origin"<</if>>, +career: <<if $activeSlave.career == 0>>0<<else>>"$activeSlave.career"<</if>>, +ID: $activeSlave.ID, +pornFame: $activeSlave.pornFame, +pornFameSpending: $activeSlave.pornFameSpending, +prestige: $activeSlave.prestige, +prestigeDesc: "$activeSlave.prestigeDesc", +recruiter: 0, +relation: 0, +relationTarget: 0, +relationship: 0, +relationshipTarget: 0, +rivalry: 0, +rivalryTarget: 0, +subTarget: 0, +choosesOwnAssignment: 0, +assignment: "rest", +assignmentVisible: 1, +sentence: 0, +training: 0, +toyHole: "all her holes", +indenture: -1, +indentureRestrictions: 0, +birthWeek: random(0,51), +age: $activeSlave.age, +ageImplant: $activeSlave.ageImplant, +health: $activeSlave.health, +minorInjury: 0, +trust: $activeSlave.trust, +oldTrust: $activeSlave.trust, +devotion: $activeSlave.devotion, +oldDevotion: $activeSlave.devotion, +weight: $activeSlave.weight, +muscles: $activeSlave.muscles, +height: $activeSlave.height, +heightImplant: $activeSlave.heightImplant, +nationality: "$activeSlave.nationality", +race: "$activeSlave.race", +markings: "none", +eyes: "$activeSlave.eyes", +eyeColor: "$activeSlave.eyeColor", +eyewear: "none", +hColor: "$activeSlave.hColor", +pubicHColor: "$activeSlave.pubicHColor", +skin: "$activeSlave.skin", +hLength: $activeSlave.hLength, +hStyle: "$activeSlave.hStyle", +pubicHStyle: "$activeSlave.pubicHStyle", +waist: $activeSlave.waist, +corsetPiercing: 0, +amp: $activeSlave.amp, +heels: $activeSlave.heels, +voice: $activeSlave.voice, +voiceImplant: $activeSlave.voiceImplant, +accent: $activeSlave.accent, +shoulders: $activeSlave.shoulders, +shouldersImplant: $activeSlave.shouldersImplant, +boobs: $activeSlave.boobs, +boobsImplant: $activeSlave.boobsImplant, +boobsImplantType: $activeSlave.boobsImplantType, +boobShape: "normal", +nipples: "$activeSlave.nipples", +nipplesPiercing: $activeSlave.nipplesPiercing, +areolae: $activeSlave.areolae, +areolaePiercing: $activeSlave.areolaePiercing, +boobsTat: "$activeSlave.boobsTat", +lactation: $activeSlave.lactation, +lactationAdaptation: 0, +milk: 0, +cum: 0, +hips: $activeSlave.hips, +hipsImplant: $activeSlave.hipsImplant, +butt: $activeSlave.butt, +buttImplant: $activeSlave.buttImplant, +buttImplantType: $activeSlave.buttImplantType, +buttTat: "$activeSlave.buttTat", +face: $activeSlave.face, +faceImplant: $activeSlave.faceImplant, +faceShape: "normal", +lips: $activeSlave.lips, +lipsImplant: $activeSlave.lipsImplant, +lipsPiercing: $activeSlave.lipsPiercing, +lipsTat: "$activeSlave.lipsTat", +teeth: "$activeSlave.teeth", +tonguePiercing: $activeSlave.tonguePiercing, +vagina: $activeSlave.vagina, +vaginaLube: $activeSlave.vaginaLube, +vaginaPiercing: $activeSlave.vaginaPiercing, +vaginaTat: "$activeSlave.vaginaTat", +preg: $activeSlave.preg, +pregSource: 0, +pregType: 0, +labor: 0, +births: $activeSlave.births, +cSec: 0, +bellyAccessory: "none", +labia: $activeSlave.labia, +clit: $activeSlave.clit, +clitPiercing: $activeSlave.clitPiercing, +clitSetting: "$activeSlave.clitSetting", +foreskin: 0, +anus: $activeSlave.anus, +dick: $activeSlave.dick, +analArea: 1, +dickPiercing: $activeSlave.dickPiercing, +dickTat: "$activeSlave.dickTat", +balls: $activeSlave.balls, +scrotum: 0, +ovaries: $activeSlave.ovaries, +anusPiercing: $activeSlave.anusPiercing, +anusTat: "$activeSlave.anusTat", +makeup: $activeSlave.makeup, +nails: $activeSlave.nails, +brand: <<if $activeSlave.brand == 0>>0<<else>>"$activeSlave.brand "<</if>>, +brandLocation: <<if $activeSlave.brandLocation == 0>>0<<else>>"$activeSlave.brandLocation"<</if>>, +earPiercing: $activeSlave.earPiercing, +nosePiercing: $activeSlave.nosePiercing, +eyebrowPiercing: $activeSlave.eyebrowPiercing, +navelPiercing: $activeSlave.navelPiercing, +shouldersTat: "$activeSlave.shouldersTat", +armsTat: "$activeSlave.armsTat", +legsTat: "$activeSlave.legsTat", +backTat: "$activeSlave.backTat", +stampTat: "$activeSlave.stampTat", +vaginalSkill: $activeSlave.vaginalSkill, +oralSkill: $activeSlave.oralSkill, +analSkill: $activeSlave.analSkill, +whoreSkill: $activeSlave.whoreSkill, +entertainSkill: $activeSlave.entertainSkill, +combatSkill: $activeSlave.combatSkill, +livingRules: "$activeSlave.livingRules", +speechRules: "$activeSlave.speechRules", +releaseRules: "$activeSlave.releaseRules", +relationshipRules: "$activeSlave.relationshipRules", +standardPunishment: "situational", +standardReward: "situational", +useRulesAssistant: 1, +diet: "$activeSlave.diet", +dietCum: $activeSlave.dietCum, +dietMilk: $activeSlave.dietMilk, +tired: 0, +hormones: 0, +drugs: "$activeSlave.drugs", +curatives: 0, +chem: 0, +aphrodisiacs: 0, +addict: $activeSlave.addict, +fuckdoll: 0, +choosesOwnClothes: 0, +clothes: "$activeSlave.clothes", +collar: "$activeSlave.collar", +shoes: "$activeSlave.shoes", +vaginalAccessory: "none", +dickAccessory: "none", +buttplug: "none", +intelligence: $activeSlave.intelligence, +intelligenceImplant: $activeSlave.intelligenceImplant, +energy: $activeSlave.energy, +need: 0, +attrXX: $activeSlave.attrXX, +attrXY: $activeSlave.attrXY, +attrKnown: $activeSlave.attrKnown, +fetish: "$activeSlave.fetish", +fetishStrength: $activeSlave.fetishStrength, +fetishKnown: $activeSlave.fetishKnown, +behavioralFlaw: "$activeSlave.behavioralFlaw", +behavioralQuirk: "none", +sexualFlaw: "$activeSlave.sexualFlaw", +sexualQuirk: "none", +oralCount: 0, +vaginalCount: 0, +analCount: 0, +mammaryCount: 0, +penetrativeCount: 0, +pitKills: 0, +customTat: "$activeSlave.customTat", +customLabel: "", +customDesc: "$activeSlave.customDesc", +customImage: 0, +currentRules: $activeSlave.currentRules -VERSION $ver BUILD $releaseID<br> -slaveName: "$activeSlave.slaveName", slaveSurname: "$activeSlave.slaveName", birthName: "$activeSlave.birthName", birthSurname: "$activeSlave.birthSurname", genes: "$activeSlave.genes", weekAcquired: 1, origin: <<if $activeSlave.origin == 0>>0<<else>>"$activeSlave.origin"<</if>>, career: <<if $activeSlave.career == 0>>0<<else>>"$activeSlave.career"<</if>>, ID: $activeSlave.ID, pornFame: $activeSlave.pornFame, pornFameSpending: $activeSlave.pornFameSpending, prestige: $activeSlave.prestige, prestigeDesc: "$activeSlave.prestigeDesc", recruiter: 0, relation: 0, relationTarget: 0, relationship: 0, relationshipTarget: 0, rivalry: 0, rivalryTarget: 0, subTarget: 0, choosesOwnAssignment: 0, assignment: "rest", assignmentVisible: 1, sentence: 0, training: 0, toyHole: "all her holes", indenture: -1, indentureRestrictions: 0, birthWeek: random(0,51), age: $activeSlave.age, ageImplant: $activeSlave.ageImplant, health: $activeSlave.health, minorInjury: 0, trust: $activeSlave.trust, oldTrust: $activeSlave.trust, devotion: $activeSlave.devotion, oldDevotion: $activeSlave.devotion, weight: $activeSlave.weight, muscles: $activeSlave.muscles, height: $activeSlave.height, heightImplant: $activeSlave.heightImplant, nationality: "$activeSlave.nationality", race: "$activeSlave.race", markings: "none", eyes: 1, eyeColor: "$activeSlave.eyeColor", eyewear: "none", hColor: "$activeSlave.hColor", pubicHColor: "$activeSlave.pubicHColor", skin: "$activeSlave.skin", hLength: $activeSlave.hLength, hStyle: "$activeSlave.hStyle", pubicHStyle: "$activeSlave.pubicHStyle", waist: $activeSlave.waist, corsetPiercing: 0, amp: $activeSlave.amp, heels: $activeSlave.heels, voice: $activeSlave.voice, voiceImplant: $activeSlave.voiceImplant, accent: $activeSlave.accent, shoulders: $activeSlave.shoulders, shouldersImplant: $activeSlave.shouldersImplant, boobs: $activeSlave.boobs, boobsImplant: $activeSlave.boobsImplant, boobsImplantType: $activeSlave.boobsImplantType, boobShape: "normal", nipples: "$activeSlave.nipples", nipplesPiercing: $activeSlave.nipplesPiercing, areolae: $activeSlave.areolae, areolaePiercing: $activeSlave.areolaePiercing, boobsTat: "$activeSlave.boobsTat", lactation: $activeSlave.lactation, lactationAdaptation: 0, milk: 0, cum: 0, hips: $activeSlave.hips, hipsImplant: $activeSlave.hipsImplant, butt: $activeSlave.butt, buttImplant: $activeSlave.buttImplant, buttImplantType: $activeSlave.buttImplantType, buttTat: "$activeSlave.buttTat", face: $activeSlave.face, faceImplant: $activeSlave.faceImplant, faceShape: "normal", lips: $activeSlave.lips, lipsImplant: $activeSlave.lipsImplant, lipsPiercing: $activeSlave.lipsPiercing, lipsTat: "$activeSlave.lipsTat", teeth: "$activeSlave.teeth", tonguePiercing: $activeSlave.tonguePiercing, vagina: $activeSlave.vagina, vaginaLube: $activeSlave.vaginaLube, vaginaPiercing: $activeSlave.vaginaPiercing, vaginaTat: "$activeSlave.vaginaTat", preg: $activeSlave.preg, pregSource: 0, pregType: 0, labor: 0, births: $activeSlave.births, cSec: 0, bellyAccessory: "none", labia: $activeSlave.labia, clit: $activeSlave.clit, clitPiercing: $activeSlave.clitPiercing, clitSetting: "$activeSlave.clitSetting", foreskin: 0, anus: $activeSlave.anus, dick: $activeSlave.dick, analArea: 1, dickPiercing: $activeSlave.dickPiercing, dickTat: "$activeSlave.dickTat", balls: $activeSlave.balls, scrotum: 0, ovaries: $activeSlave.ovaries, anusPiercing: $activeSlave.anusPiercing, anusTat: "$activeSlave.anusTat", makeup: $activeSlave.makeup, nails: $activeSlave.nails, brand: <<if $activeSlave.brand == 0>>0<<else>>"$activeSlave.brand "<</if>>, brandLocation: <<if $activeSlave.brandLocation == 0>>0<<else>>"$activeSlave.brandLocation"<</if>>, earPiercing: $activeSlave.earPiercing, nosePiercing: $activeSlave.nosePiercing, eyebrowPiercing: $activeSlave.eyebrowPiercing, navelPiercing: $activeSlave.navelPiercing, shouldersTat: "$activeSlave.shouldersTat", armsTat: "$activeSlave.armsTat", legsTat: "$activeSlave.legsTat", backTat: "$activeSlave.backTat", stampTat: "$activeSlave.stampTat", vaginalSkill: $activeSlave.vaginalSkill, oralSkill: $activeSlave.oralSkill, analSkill: $activeSlave.analSkill, whoreSkill: $activeSlave.whoreSkill, entertainSkill: $activeSlave.entertainSkill, combatSkill: $activeSlave.combatSkill, livingRules: "$activeSlave.livingRules", speechRules: "$activeSlave.speechRules", releaseRules: "$activeSlave.releaseRules", relationshipRules: "$activeSlave.relationshipRules", standardPunishment: "situational", standardReward: "situational", useRulesAssistant: 1, diet: "$activeSlave.diet", dietCum: $activeSlave.dietCum, dietMilk: $activeSlave.dietMilk, tired: 0, hormones: 0, drugs: "$activeSlave.drugs", curatives: 0, chem: 0, aphrodisiacs: 0, addict: $activeSlave.addict, fuckdoll: 0, choosesOwnClothes: 0, clothes: "$activeSlave.clothes", collar: "$activeSlave.collar", shoes: "$activeSlave.shoes", vaginalAccessory: "none", dickAccessory: "none", buttplug: "none", intelligence: $activeSlave.intelligence, intelligenceImplant: $activeSlave.intelligenceImplant, energy: $activeSlave.energy, need: 0, attrXX: $activeSlave.attrXX, attrXY: $activeSlave.attrXY, attrKnown: $activeSlave.attrKnown, fetish: "$activeSlave.fetish", fetishStrength: $activeSlave.fetishStrength, fetishKnown: $activeSlave.fetishKnown, behavioralFlaw: "$activeSlave.behavioralFlaw", behavioralQuirk: "none", sexualFlaw: "$activeSlave.sexualFlaw", sexualQuirk: "none", oralCount: 0, vaginalCount: 0, analCount: 0, mammaryCount: 0, penetrativeCount: 0, pitKills: 0, customTat: "$activeSlave.customTat", customLabel: "", customDesc: "$activeSlave.customDesc", customImage: 0, currentRules: $activeSlave.currentRules - -<</nobr>> diff --git a/src/uncategorized/RESS.tw b/src/uncategorized/RESS.tw index 07acf844b5909c78b4c0d6269112d8f8521bc240..029ecd4a1e6352ac7f953230486b0bf9e8bec215 100644 --- a/src/uncategorized/RESS.tw +++ b/src/uncategorized/RESS.tw @@ -2293,7 +2293,6 @@ face<<if $activeSlave.belly >= 5000>> and taut, _belly dome of a belly<</if>>. S <<case "masterful entertainer">> -<<set $activeSlave.devotion += 4>> It's Friday evening, the most socially important part of the week in $arcologies[0].name. <<EventNameLink $activeSlave>> happens to be free this evening, and your schedule is open, too. Lately, she's been putting on a tour de force of seduction, erotic dance, and lewd entertainment whenever she gets the chance to catch someone's eye<<if $activeSlave.belly >= 5000>>, even with her<<if $activeSlave.bellyPreg >= 3000>>advanced pregnancy<<elseif $activeSlave.bellyImplant >= 3000>>_belly rounded belly<<else>>sloshing <<print $activeSlave.inflationType>>-filled stomach<</if>><</if>>. There are a number of events tonight you could attend with her on your arm. <<case "masterful whore">> @@ -3953,6 +3952,72 @@ She does her very best to get through the inspection without disgrace, hugging h hypertrophied <</if>> dick on your lower body, thrusting blindly around your belly, before lodging herself between your thighs. You have a hard time fighting against her in your position, but you're not about to let her dominate you either. You continue trying to shake her off, making sure at the same time that your movements are as aggressive as possible to try and distract her with pain or pleasure. You feel her grip loosen as her body tenses before pending orgasm, so you strongly push into her, knocking her off balance and to the floor. She spills her seed all over herself and you as you wrestle her into a chokehold. Now that you have her restrained, it's time she learned her place. + <<set $mutinery = 2>> + + <br><br><span id="result2"> + <<if $mutinery != 1>> + <br><<link "Lock her dick in chastity">> + <<replace "#result2">> + You simply clamp a chastity cage onto her limp dick; she'll be taking a little break from fucking girls for the time being. When she comes to and finds herself locked in chastity, immediately begins fiddling with it in an attempt to remove it. She feels this punishment is laughable and only @@.mediumaquamarine;grows more defiant.@@ Word spreads through your chattel that the only downside of trying to rape <<if $PC.customTitle != 0>>$PC.customTitle<<elseif $PC.title == 1>>Master<<else>>Mistress<</if>> is getting locked in chastity, @@.mediumaquamarine;spreading defiance@@ through your rebelious slaves. + <<set $activeSlave.trust += 10, $activeSlave.dickAccessory = "chastity">> + <<set $slaves.forEach(function(s) { if (s.devotion <= -50) { s.trust += 5; } })>> + <</replace>> + <</link>> + <br><<link "Flog her">> + <<replace "#result2">> + You bind her naked body to the wall in preparation for a good beating. Going against one's master is bad, but going against you is even worse. You thoroughly strike her, showering extra attention to her crotch, while making sure she will be in pain for days to come. Such a beating leaves her @@.red;in agonizing pain@@ and makes a clear example to her and all your other rebellious slaves that @@.gold;you are not to be trifled with.@@ + <<set $activeSlave.trust -= 15>> + <<set $activeSlave.health -= 15>> + <<set $slaves.forEach(function(s) { if (s.devotion <= -50) { s.trust += 5; } })>> + <</replace>> + <</link>> + <br><<link "Mute her">> + <<replace "#result2">> + As you pull her limp body to the remote surgery, you notice she understands what she has done and begs you to reconsider your decision; but your mind is set. She tried to rape you, she must be silenced. Restrained as she is, the most she can do is cry and beg. When she awakens from surgery, she realizes all you did was stop her from talking; @@.mediumaquamarine;what stops her from making another go at you?@@ Your other rebellious slaves see this a minor loss for a potentially huge gain and, if anything, @@.mediumaquamarine;become more defiant.@@ + <<set $activeSlave.trust += 5, $activeSlave.devotion -= 15, $activeSlave.voice = 0>> + <<set $slaves.forEach(function(s) { if (s.devotion <= -50) { s.trust += 10; } })>> + <<set $cash -= $surgeryCost>> + <</replace>> + <</link>> //Will cost ¤$surgeryCost// + <br><<link "Castrate her">> + <<replace "#result2">> + As you pull her limp body to the remote surgery, you notice she understands what she has done and begs you to reconsider your decision; but your mind is set. She had the balls to try and rape you, and now she won't. Restrained as she is, the most she can do is cry and beg. Once she comes to after the surgery, she faces her new life; @@.mediumorchid;she'll never get hard again@@ and she's @@.gold;the only one to blame@@ for her @@.red;suffering.@@ Every other rebellious slave is @@.gold;mortified by the example.@@ + <<set $activeSlave.trust -= 20, $activeSlave.devotion -= 10, $activeSlave.health -= 10>> + <<set $slaves.forEach(function(s) { if (s.devotion <= -50) { s.trust -= 5; } })>> + <<set $cash -= $surgeryCost>> + <</replace>> //Will cost ¤$surgeryCost// + <</link>> + <<if $activeSlave.vagina == -2>> + <br><<link "Surgically alter her gender">> + <<replace "#result2">> + You ask her if she enjoyed the last time she used her dick and if it was worth crossing you, because it will not happen again. Restrained as she is, the most she can do is cry and beg. Once she comes to after the surgery, she faces her new body; @@.mediumorchid;she's now a shemale@@ and she's @@.gold;the only one to blame@@ for her @@.red;suffering.@@ You waste no time in shoving her against the wall and forcing your <<if $PC.dick == 1>>dick<<else>>strap-on<</if>> into her virgin pussy. You use her until you are satisfied and toss her to the floor to think about her new life. Every other rebellious slave is @@.gold;horrified by the example.@@ + <<set $activeSlave.trust -= 30, $activeSlave.devotion -= 25, $activeSlave.health -= 20, $activeSlave.dick = 0, $activeSlave.balls = 0, $activeSlave.scrotum = 0, $activeSlave.prostate = 0, $activeSlave.dickAccessory = "none", $activeSlave.vagina = 1>> + <<VaginalVCheck>> + <<set $slaves.forEach(function(s) { if (s.devotion <= -50) { s.trust -= 15; } })>> + <<set $cash -= ($surgeryCost*2)>> + <</replace>> + <</link>> //Will cost ¤<<print ($surgeryCost*2)>>// + <<else>> + <br><<link "Remove her male genitalia">> + <<replace "#result2">> + You ask her if she enjoyed the last time she used her dick and if it was worth crossing you, because it will not happen again. Restrained as she is, the most she can do is cry and beg. Once she comes to after the surgery, she faces her new body; @@.mediumorchid;she's now a surgical null@@ and she's @@.gold;the only one to blame@@ for her @@.red;suffering.@@ Every other rebellious slave is @@.gold;horrified by the example.@@ + <<set $activeSlave.trust -= 30, $activeSlave.devotion -= 25, $activeSlave.health -= 20, $activeSlave.dick = 0, $activeSlave.foreskin = 0, $activeSlave.balls = 0, $activeSlave.scrotum = 0, $activeSlave.dickAccessory = "none">> + <<set $slaves.forEach(function(s) { if (s.devotion <= -50) { s.trust -= 15; } })>> + <<set $cash -= ($surgeryCost*2)>> + <</replace>> + <</link>> //Will cost ¤<<print ($surgeryCost*2)>>// + <</if>> + <br><<link "Deny her from ever having satisfying sex again">> + <<replace "#result2">> + You ask her if she enjoyed her last orgasm, because she won't be getting any more. Restrained as she is, the most she can do is cry and beg. Once she comes to after the surgery, she faces her new body; @@.mediumorchid;she's now a surgical null,@@ though she retains her balls, and she's @@.gold;the only one to blame@@ for her @@.red;suffering.@@ You waste no time in shoving her against the wall and forcing your <<if $PC.dick == 1>>dick<<else>>strap-on<</if>> into her anus. As her arousal grows, she realizes you not only took her dick, but her prostate as well. She quickly find herself desperate for release but lacking any way to do so. You watch her squirm in sexual frustration. This will be her new life. Every other rebellious slave is @@.gold;horrified by the example.@@ + <<set $activeSlave.trust -= 50, $activeSlave.devotion -= 30, $activeSlave.health -= 20, $activeSlave.dick = 0, $activeSlave.prostate = 0, $activeSlave.dickAccessory = "none", $activeSlave.vagina = 0, $activeSlave.ovaries = 0, $activeSlave.clit = 0, $activeSlave.labia = 0>> + <<AnalVCheck>> + <<set $slaves.forEach(function(s) { if (s.devotion <= -50) { s.trust -= 15; } })>> + <<set $cash -= ($surgeryCost*4)>> + <</replace>> + <</link>> //Will cost ¤<<print ($surgeryCost*4)>>// + <</if>> + </span> <</replace>> <</link>> <br><<link "Try to talk it out">> @@ -3987,6 +4052,72 @@ She does her very best to get through the inspection without disgrace, hugging h <<KnockMeUp $PC 100 0 $activeSlave.ID>> <</if>> Once spent, she shoves you to the ground and crashes into your office chair. The moment she lets down her guard, you slam the heaviest object you can find into her head. Now that you have her controlled, it's time she learned her place; when she wakes up, of course. It's more fun that way. + <<set $mutinery = 2>> + + <br><br><span id="result2"> + <<if $mutinery != 1>> + <br><<link "Lock her dick in chastity">> + <<replace "#result2">> + You simply clamp a chastity cage onto her limp dick; she'll be taking a little break from fucking girls for the time being. When she comes to and finds herself locked in chastity, immediately begins fiddling with it in an attempt to remove it. She feels this punishment is laughable and only @@.mediumaquamarine;grows more defiant.@@ Word spreads through your chattel that the only downside of trying to rape <<if $PC.customTitle != 0>>$PC.customTitle<<elseif $PC.title == 1>>Master<<else>>Mistress<</if>> is getting locked in chastity, @@.mediumaquamarine;spreading defiance@@ through your rebelious slaves. + <<set $activeSlave.trust += 10, $activeSlave.dickAccessory = "chastity">> + <<set $slaves.forEach(function(s) { if (s.devotion <= -50) { s.trust += 5; } })>> + <</replace>> + <</link>> + <br><<link "Flog her">> + <<replace "#result2">> + You bind her naked body to the wall in preparation for a good beating. Going against one's master is bad, but going against you is even worse. You thoroughly strike her, showering extra attention to her crotch, while making sure she will be in pain for days to come. Such a beating leaves her @@.red;in agonizing pain@@ and makes a clear example to her and all your other rebellious slaves that @@.gold;you are not to be trifled with.@@ + <<set $activeSlave.trust -= 15>> + <<set $activeSlave.health -= 15>> + <<set $slaves.forEach(function(s) { if (s.devotion <= -50) { s.trust += 5; } })>> + <</replace>> + <</link>> + <br><<link "Mute her">> + <<replace "#result2">> + As you pull her limp body to the remote surgery, you notice she understands what she has done and begs you to reconsider your decision; but your mind is set. She tried to rape you, she must be silenced. Restrained as she is, the most she can do is cry and beg. When she awakens from surgery, she realizes all you did was stop her from talking; @@.mediumaquamarine;what stops her from making another go at you?@@ Your other rebellious slaves see this a minor loss for a potentially huge gain and, if anything, @@.mediumaquamarine;become more defiant.@@ + <<set $activeSlave.trust += 5, $activeSlave.devotion -= 15, $activeSlave.voice = 0>> + <<set $slaves.forEach(function(s) { if (s.devotion <= -50) { s.trust += 10; } })>> + <<set $cash -= $surgeryCost>> + <</replace>> + <</link>> //Will cost ¤$surgeryCost// + <br><<link "Castrate her">> + <<replace "#result2">> + As you pull her limp body to the remote surgery, you notice she understands what she has done and begs you to reconsider your decision; but your mind is set. She had the balls to try and rape you, and now she won't. Restrained as she is, the most she can do is cry and beg. Once she comes to after the surgery, she faces her new life; @@.mediumorchid;she'll never get hard again@@ and she's @@.gold;the only one to blame@@ for her @@.red;suffering.@@ Every other rebellious slave is @@.gold;mortified by the example.@@ + <<set $activeSlave.trust -= 20, $activeSlave.devotion -= 10, $activeSlave.health -= 10>> + <<set $slaves.forEach(function(s) { if (s.devotion <= -50) { s.trust -= 5; } })>> + <<set $cash -= $surgeryCost>> + <</replace>> //Will cost ¤$surgeryCost// + <</link>> + <<if $activeSlave.vagina == -2>> + <br><<link "Surgically alter her gender">> + <<replace "#result2">> + You ask her if she enjoyed the last time she used her dick and if it was worth crossing you, because it will not happen again. Restrained as she is, the most she can do is cry and beg. Once she comes to after the surgery, she faces her new body; @@.mediumorchid;she's now a shemale@@ and she's @@.gold;the only one to blame@@ for her @@.red;suffering.@@ You waste no time in shoving her against the wall and forcing your <<if $PC.dick == 1>>dick<<else>>strap-on<</if>> into her virgin pussy. You use her until you are satisfied and toss her to the floor to think about her new life. Every other rebellious slave is @@.gold;horrified by the example.@@ + <<set $activeSlave.trust -= 30, $activeSlave.devotion -= 25, $activeSlave.health -= 20, $activeSlave.dick = 0, $activeSlave.balls = 0, $activeSlave.scrotum = 0, $activeSlave.prostate = 0, $activeSlave.dickAccessory = "none", $activeSlave.vagina = 1>> + <<VaginalVCheck>> + <<set $slaves.forEach(function(s) { if (s.devotion <= -50) { s.trust -= 15; } })>> + <<set $cash -= ($surgeryCost*2)>> + <</replace>> + <</link>> //Will cost ¤<<print ($surgeryCost*2)>>// + <<else>> + <br><<link "Remove her male genitalia">> + <<replace "#result2">> + You ask her if she enjoyed the last time she used her dick and if it was worth crossing you, because it will not happen again. Restrained as she is, the most she can do is cry and beg. Once she comes to after the surgery, she faces her new body; @@.mediumorchid;she's now a surgical null@@ and she's @@.gold;the only one to blame@@ for her @@.red;suffering.@@ Every other rebellious slave is @@.gold;horrified by the example.@@ + <<set $activeSlave.trust -= 30, $activeSlave.devotion -= 25, $activeSlave.health -= 20, $activeSlave.dick = 0, $activeSlave.foreskin = 0, $activeSlave.balls = 0, $activeSlave.scrotum = 0, $activeSlave.dickAccessory = "none">> + <<set $slaves.forEach(function(s) { if (s.devotion <= -50) { s.trust -= 15; } })>> + <<set $cash -= ($surgeryCost*2)>> + <</replace>> + <</link>> //Will cost ¤<<print ($surgeryCost*2)>>// + <</if>> + <br><<link "Deny her from ever having satisfying sex again">> + <<replace "#result2">> + You ask her if she enjoyed her last orgasm, because she won't be getting any more. Restrained as she is, the most she can do is cry and beg. Once she comes to after the surgery, she faces her new body; @@.mediumorchid;she's now a surgical null,@@ though she retains her balls, and she's @@.gold;the only one to blame@@ for her @@.red;suffering.@@ You waste no time in shoving her against the wall and forcing your <<if $PC.dick == 1>>dick<<else>>strap-on<</if>> into her anus. As her arousal grows, she realizes you not only took her dick, but her prostate as well. She quickly find herself desperate for release but lacking any way to do so. You watch her squirm in sexual frustration. This will be her new life. Every other rebellious slave is @@.gold;horrified by the example.@@ + <<set $activeSlave.trust -= 50, $activeSlave.devotion -= 30, $activeSlave.health -= 20, $activeSlave.dick = 0, $activeSlave.prostate = 0, $activeSlave.dickAccessory = "none", $activeSlave.vagina = 0, $activeSlave.ovaries = 0, $activeSlave.clit = 0, $activeSlave.labia = 0>> + <<AnalVCheck>> + <<set $slaves.forEach(function(s) { if (s.devotion <= -50) { s.trust -= 15; } })>> + <<set $cash -= ($surgeryCost*4)>> + <</replace>> + <</link>> //Will cost ¤<<print ($surgeryCost*4)>>// + <</if>> + </span> <</replace>> <</link>> <br><<link "Fake playing along">> @@ -4016,77 +4147,143 @@ She does her very best to get through the inspection without disgrace, hugging h hypertrophied <</if>> dick inside your<<if $PC.career == "escort" || $PC.career == "servant">> expert<</if>> mouth. You diligently suck until you feel her begin to tense up; this is your chance. You clamp down on her cock while simultaneously punching her in the balls. She howls in pain, until you headbutt her in the stomach and knock the wind out of her. You quickly pull her into an arm lock and force her over your desk. Now that you have her restrained, it's time she learned her place; after you've gotten the taste of slut out of your mouth, that is. + <<set $mutinery = 2>> + + <br><br><span id="result2"> + <<if $mutinery != 1>> + <br><<link "Lock her dick in chastity">> + <<replace "#result2">> + You simply clamp a chastity cage onto her limp dick; she'll be taking a little break from fucking girls for the time being. When she comes to and finds herself locked in chastity, immediately begins fiddling with it in an attempt to remove it. She feels this punishment is laughable and only @@.mediumaquamarine;grows more defiant.@@ Word spreads through your chattel that the only downside of trying to rape <<if $PC.customTitle != 0>>$PC.customTitle<<elseif $PC.title == 1>>Master<<else>>Mistress<</if>> is getting locked in chastity, @@.mediumaquamarine;spreading defiance@@ through your rebelious slaves. + <<set $activeSlave.trust += 10, $activeSlave.dickAccessory = "chastity">> + <<set $slaves.forEach(function(s) { if (s.devotion <= -50) { s.trust += 5; } })>> + <</replace>> + <</link>> + <br><<link "Flog her">> + <<replace "#result2">> + You bind her naked body to the wall in preparation for a good beating. Going against one's master is bad, but going against you is even worse. You thoroughly strike her, showering extra attention to her crotch, while making sure she will be in pain for days to come. Such a beating leaves her @@.red;in agonizing pain@@ and makes a clear example to her and all your other rebellious slaves that @@.gold;you are not to be trifled with.@@ + <<set $activeSlave.trust -= 15>> + <<set $activeSlave.health -= 15>> + <<set $slaves.forEach(function(s) { if (s.devotion <= -50) { s.trust += 5; } })>> + <</replace>> + <</link>> + <br><<link "Mute her">> + <<replace "#result2">> + As you pull her limp body to the remote surgery, you notice she understands what she has done and begs you to reconsider your decision; but your mind is set. She tried to rape you, she must be silenced. Restrained as she is, the most she can do is cry and beg. When she awakens from surgery, she realizes all you did was stop her from talking; @@.mediumaquamarine;what stops her from making another go at you?@@ Your other rebellious slaves see this a minor loss for a potentially huge gain and, if anything, @@.mediumaquamarine;become more defiant.@@ + <<set $activeSlave.trust += 5, $activeSlave.devotion -= 15, $activeSlave.voice = 0>> + <<set $slaves.forEach(function(s) { if (s.devotion <= -50) { s.trust += 10; } })>> + <<set $cash -= $surgeryCost>> + <</replace>> + <</link>> //Will cost ¤$surgeryCost// + <br><<link "Castrate her">> + <<replace "#result2">> + As you pull her limp body to the remote surgery, you notice she understands what she has done and begs you to reconsider your decision; but your mind is set. She had the balls to try and rape you, and now she won't. Restrained as she is, the most she can do is cry and beg. Once she comes to after the surgery, she faces her new life; @@.mediumorchid;she'll never get hard again@@ and she's @@.gold;the only one to blame@@ for her @@.red;suffering.@@ Every other rebellious slave is @@.gold;mortified by the example.@@ + <<set $activeSlave.trust -= 20, $activeSlave.devotion -= 10, $activeSlave.health -= 10>> + <<set $slaves.forEach(function(s) { if (s.devotion <= -50) { s.trust -= 5; } })>> + <<set $cash -= $surgeryCost>> + <</replace>> //Will cost ¤$surgeryCost// + <</link>> + <<if $activeSlave.vagina == -2>> + <br><<link "Surgically alter her gender">> + <<replace "#result2">> + You ask her if she enjoyed the last time she used her dick and if it was worth crossing you, because it will not happen again. Restrained as she is, the most she can do is cry and beg. Once she comes to after the surgery, she faces her new body; @@.mediumorchid;she's now a shemale@@ and she's @@.gold;the only one to blame@@ for her @@.red;suffering.@@ You waste no time in shoving her against the wall and forcing your <<if $PC.dick == 1>>dick<<else>>strap-on<</if>> into her virgin pussy. You use her until you are satisfied and toss her to the floor to think about her new life. Every other rebellious slave is @@.gold;horrified by the example.@@ + <<set $activeSlave.trust -= 30, $activeSlave.devotion -= 25, $activeSlave.health -= 20, $activeSlave.dick = 0, $activeSlave.balls = 0, $activeSlave.scrotum = 0, $activeSlave.prostate = 0, $activeSlave.dickAccessory = "none", $activeSlave.vagina = 1>> + <<VaginalVCheck>> + <<set $slaves.forEach(function(s) { if (s.devotion <= -50) { s.trust -= 15; } })>> + <<set $cash -= ($surgeryCost*2)>> + <</replace>> + <</link>> //Will cost ¤<<print ($surgeryCost*2)>>// + <<else>> + <br><<link "Remove her male genitalia">> + <<replace "#result2">> + You ask her if she enjoyed the last time she used her dick and if it was worth crossing you, because it will not happen again. Restrained as she is, the most she can do is cry and beg. Once she comes to after the surgery, she faces her new body; @@.mediumorchid;she's now a surgical null@@ and she's @@.gold;the only one to blame@@ for her @@.red;suffering.@@ Every other rebellious slave is @@.gold;horrified by the example.@@ + <<set $activeSlave.trust -= 30, $activeSlave.devotion -= 25, $activeSlave.health -= 20, $activeSlave.dick = 0, $activeSlave.foreskin = 0, $activeSlave.balls = 0, $activeSlave.scrotum = 0, $activeSlave.dickAccessory = "none">> + <<set $slaves.forEach(function(s) { if (s.devotion <= -50) { s.trust -= 15; } })>> + <<set $cash -= ($surgeryCost*2)>> + <</replace>> + <</link>> //Will cost ¤<<print ($surgeryCost*2)>>// + <</if>> + <br><<link "Deny her from ever having satisfying sex again">> + <<replace "#result2">> + You ask her if she enjoyed her last orgasm, because she won't be getting any more. Restrained as she is, the most she can do is cry and beg. Once she comes to after the surgery, she faces her new body; @@.mediumorchid;she's now a surgical null,@@ though she retains her balls, and she's @@.gold;the only one to blame@@ for her @@.red;suffering.@@ You waste no time in shoving her against the wall and forcing your <<if $PC.dick == 1>>dick<<else>>strap-on<</if>> into her anus. As her arousal grows, she realizes you not only took her dick, but her prostate as well. She quickly find herself desperate for release but lacking any way to do so. You watch her squirm in sexual frustration. This will be her new life. Every other rebellious slave is @@.gold;horrified by the example.@@ + <<set $activeSlave.trust -= 50, $activeSlave.devotion -= 30, $activeSlave.health -= 20, $activeSlave.dick = 0, $activeSlave.prostate = 0, $activeSlave.dickAccessory = "none", $activeSlave.vagina = 0, $activeSlave.ovaries = 0, $activeSlave.clit = 0, $activeSlave.labia = 0>> + <<AnalVCheck>> + <<set $slaves.forEach(function(s) { if (s.devotion <= -50) { s.trust -= 15; } })>> + <<set $cash -= ($surgeryCost*4)>> + <</replace>> + <</link>> //Will cost ¤<<print ($surgeryCost*4)>>// + <</if>> + </span> <</replace>> <</link>> <<else>> With the bitch restrained, you have all the time you need to devise her punishment. -<</if>> -<<set $mutinery = 2>> + <<set $mutinery = 2>> -<br><br><span id="result2"> -<<if $mutinery != 1>> - <br><<link "Lock her dick in chastity">> - <<replace "#result2">> - You simply clamp a chastity cage onto her limp dick; she'll be taking a little break from fucking girls for the time being. When she comes to and finds herself locked in chastity, immediately begins fiddling with it in an attempt to remove it. She feels this punishment is laughable and only @@.mediumaquamarine;grows more defiant.@@ Word spreads through your chattel that the only downside of trying to rape <<if $PC.customTitle != 0>>$PC.customTitle<<elseif $PC.title == 1>>Master<<else>>Mistress<</if>> is getting locked in chastity, @@.mediumaquamarine;spreading defiance@@ through your rebelious slaves. - <<set $activeSlave.trust += 10, $activeSlave.dickAccessory = "chastity">> - <<set $slaves.forEach(function(s) { if (s.devotion <= -50) { s.trust += 5; } })>> - <</replace>> - <</link>> - <br><<link "Flog her">> - <<replace "#result2">> - You bind her naked body to the wall in preparation for a good beating. Going against one's master is bad, but going against you is even worse. You thoroughly strike her, showering extra attention to her crotch, while making sure she will be in pain for days to come. Such a beating leaves her @@.red;in agonizing pain@@ and makes a clear example to her and all your other rebellious slaves that @@.gold;you are not to be trifled with.@@ - <<set $activeSlave.trust -= 15>> - <<set $activeSlave.health -= 15>> - <<set $slaves.forEach(function(s) { if (s.devotion <= -50) { s.trust += 5; } })>> - <</replace>> - <</link>> - <br><<link "Mute her">> - <<replace "#result2">> - As you pull her limp body to the remote surgery, you notice she understands what she has done and begs you to reconsider your decision; but your mind is set. She tried to rape you, she must be silenced. Restrained as she is, the most she can do is cry and beg. When she awakens from surgery, she realizes all you did was stop her from talking; @@.mediumaquamarine;what stops her from making another go at you?@@ Your other rebellious slaves see this a minor loss for a potentially huge gain and, if anything, @@.mediumaquamarine;become more defiant.@@ - <<set $activeSlave.trust += 5, $activeSlave.devotion -= 15, $activeSlave.voice = 0>> - <<set $slaves.forEach(function(s) { if (s.devotion <= -50) { s.trust += 10; } })>> - <<set $cash -= $surgeryCost>> - <</replace>> - <</link>> //Will cost ¤$surgeryCost// - <br><<link "Castrate her">> - <<replace "#result2">> - As you pull her limp body to the remote surgery, you notice she understands what she has done and begs you to reconsider your decision; but your mind is set. She had the balls to try and rape you, and now she won't. Restrained as she is, the most she can do is cry and beg. Once she comes to after the surgery, she faces her new life; @@.mediumorchid;she'll never get hard again@@ and she's @@.gold;the only one to blame@@ for her @@.red;suffering.@@ Every other rebellious slave is @@.gold;mortified by the example.@@ - <<set $activeSlave.trust -= 20, $activeSlave.devotion -= 10, $activeSlave.health -= 10>> - <<set $slaves.forEach(function(s) { if (s.devotion <= -50) { s.trust -= 5; } })>> - <<set $cash -= $surgeryCost>> - <</replace>> //Will cost ¤$surgeryCost// - <</link>> - <<if $activeSlave.vagina == -2>> - <br><<link "Surgically alter her gender">> + <br><br><span id="result2"> + <<if $mutinery != 1>> + <br><<link "Lock her dick in chastity">> <<replace "#result2">> - You ask her if she enjoyed the last time she used her dick and if it was worth crossing you, because it will not happen again. Restrained as she is, the most she can do is cry and beg. Once she comes to after the surgery, she faces her new body; @@.mediumorchid;she's now a shemale@@ and she's @@.gold;the only one to blame@@ for her @@.red;suffering.@@ You waste no time in shoving her against the wall and forcing your <<if $PC.dick == 1>>dick<<else>>strap-on<</if>> into her virgin pussy. You use her until you are satisfied and toss her to the floor to think about her new life. Every other rebellious slave is @@.gold;horrified by the example.@@ - <<set $activeSlave.trust -= 30, $activeSlave.devotion -= 25, $activeSlave.health -= 20, $activeSlave.dick = 0, $activeSlave.balls = 0, $activeSlave.scrotum = 0, $activeSlave.prostate = 0, $activeSlave.dickAccessory = "none", $activeSlave.vagina = 1>> - <<VaginalVCheck>> - <<set $slaves.forEach(function(s) { if (s.devotion <= -50) { s.trust -= 15; } })>> - <<set $cash -= ($surgeryCost*2)>> + You simply clamp a chastity cage onto her limp dick; she'll be taking a little break from fucking girls for the time being. When she comes to and finds herself locked in chastity, immediately begins fiddling with it in an attempt to remove it. She feels this punishment is laughable and only @@.mediumaquamarine;grows more defiant.@@ Word spreads through your chattel that the only downside of trying to rape <<if $PC.customTitle != 0>>$PC.customTitle<<elseif $PC.title == 1>>Master<<else>>Mistress<</if>> is getting locked in chastity, @@.mediumaquamarine;spreading defiance@@ through your rebelious slaves. + <<set $activeSlave.trust += 10, $activeSlave.dickAccessory = "chastity">> + <<set $slaves.forEach(function(s) { if (s.devotion <= -50) { s.trust += 5; } })>> <</replace>> - <</link>> //Will cost ¤<<print ($surgeryCost*2)>>// - <<else>> - <br><<link "Remove her male genitalia">> + <</link>> + <br><<link "Flog her">> + <<replace "#result2">> + You bind her naked body to the wall in preparation for a good beating. Going against one's master is bad, but going against you is even worse. You thoroughly strike her, showering extra attention to her crotch, while making sure she will be in pain for days to come. Such a beating leaves her @@.red;in agonizing pain@@ and makes a clear example to her and all your other rebellious slaves that @@.gold;you are not to be trifled with.@@ + <<set $activeSlave.trust -= 15>> + <<set $activeSlave.health -= 15>> + <<set $slaves.forEach(function(s) { if (s.devotion <= -50) { s.trust += 5; } })>> + <</replace>> + <</link>> + <br><<link "Mute her">> + <<replace "#result2">> + As you pull her limp body to the remote surgery, you notice she understands what she has done and begs you to reconsider your decision; but your mind is set. She tried to rape you, she must be silenced. Restrained as she is, the most she can do is cry and beg. When she awakens from surgery, she realizes all you did was stop her from talking; @@.mediumaquamarine;what stops her from making another go at you?@@ Your other rebellious slaves see this a minor loss for a potentially huge gain and, if anything, @@.mediumaquamarine;become more defiant.@@ + <<set $activeSlave.trust += 5, $activeSlave.devotion -= 15, $activeSlave.voice = 0>> + <<set $slaves.forEach(function(s) { if (s.devotion <= -50) { s.trust += 10; } })>> + <<set $cash -= $surgeryCost>> + <</replace>> + <</link>> //Will cost ¤$surgeryCost// + <br><<link "Castrate her">> + <<replace "#result2">> + As you pull her limp body to the remote surgery, you notice she understands what she has done and begs you to reconsider your decision; but your mind is set. She had the balls to try and rape you, and now she won't. Restrained as she is, the most she can do is cry and beg. Once she comes to after the surgery, she faces her new life; @@.mediumorchid;she'll never get hard again@@ and she's @@.gold;the only one to blame@@ for her @@.red;suffering.@@ Every other rebellious slave is @@.gold;mortified by the example.@@ + <<set $activeSlave.trust -= 20, $activeSlave.devotion -= 10, $activeSlave.health -= 10>> + <<set $slaves.forEach(function(s) { if (s.devotion <= -50) { s.trust -= 5; } })>> + <<set $cash -= $surgeryCost>> + <</replace>> //Will cost ¤$surgeryCost// + <</link>> + <<if $activeSlave.vagina == -2>> + <br><<link "Surgically alter her gender">> + <<replace "#result2">> + You ask her if she enjoyed the last time she used her dick and if it was worth crossing you, because it will not happen again. Restrained as she is, the most she can do is cry and beg. Once she comes to after the surgery, she faces her new body; @@.mediumorchid;she's now a shemale@@ and she's @@.gold;the only one to blame@@ for her @@.red;suffering.@@ You waste no time in shoving her against the wall and forcing your <<if $PC.dick == 1>>dick<<else>>strap-on<</if>> into her virgin pussy. You use her until you are satisfied and toss her to the floor to think about her new life. Every other rebellious slave is @@.gold;horrified by the example.@@ + <<set $activeSlave.trust -= 30, $activeSlave.devotion -= 25, $activeSlave.health -= 20, $activeSlave.dick = 0, $activeSlave.balls = 0, $activeSlave.scrotum = 0, $activeSlave.prostate = 0, $activeSlave.dickAccessory = "none", $activeSlave.vagina = 1>> + <<VaginalVCheck>> + <<set $slaves.forEach(function(s) { if (s.devotion <= -50) { s.trust -= 15; } })>> + <<set $cash -= ($surgeryCost*2)>> + <</replace>> + <</link>> //Will cost ¤<<print ($surgeryCost*2)>>// + <<else>> + <br><<link "Remove her male genitalia">> + <<replace "#result2">> + You ask her if she enjoyed the last time she used her dick and if it was worth crossing you, because it will not happen again. Restrained as she is, the most she can do is cry and beg. Once she comes to after the surgery, she faces her new body; @@.mediumorchid;she's now a surgical null@@ and she's @@.gold;the only one to blame@@ for her @@.red;suffering.@@ Every other rebellious slave is @@.gold;horrified by the example.@@ + <<set $activeSlave.trust -= 30, $activeSlave.devotion -= 25, $activeSlave.health -= 20, $activeSlave.dick = 0, $activeSlave.foreskin = 0, $activeSlave.balls = 0, $activeSlave.scrotum = 0, $activeSlave.dickAccessory = "none">> + <<set $slaves.forEach(function(s) { if (s.devotion <= -50) { s.trust -= 15; } })>> + <<set $cash -= ($surgeryCost*2)>> + <</replace>> + <</link>> //Will cost ¤<<print ($surgeryCost*2)>>// + <</if>> + <br><<link "Deny her from ever having satisfying sex again">> <<replace "#result2">> - You ask her if she enjoyed the last time she used her dick and if it was worth crossing you, because it will not happen again. Restrained as she is, the most she can do is cry and beg. Once she comes to after the surgery, she faces her new body; @@.mediumorchid;she's now a surgical null@@ and she's @@.gold;the only one to blame@@ for her @@.red;suffering.@@ Every other rebellious slave is @@.gold;horrified by the example.@@ - <<set $activeSlave.trust -= 30, $activeSlave.devotion -= 25, $activeSlave.health -= 20, $activeSlave.dick = 0, $activeSlave.foreskin = 0, $activeSlave.balls = 0, $activeSlave.scrotum = 0, $activeSlave.dickAccessory = "none">> + You ask her if she enjoyed her last orgasm, because she won't be getting any more. Restrained as she is, the most she can do is cry and beg. Once she comes to after the surgery, she faces her new body; @@.mediumorchid;she's now a surgical null,@@ though she retains her balls, and she's @@.gold;the only one to blame@@ for her @@.red;suffering.@@ You waste no time in shoving her against the wall and forcing your <<if $PC.dick == 1>>dick<<else>>strap-on<</if>> into her anus. As her arousal grows, she realizes you not only took her dick, but her prostate as well. She quickly find herself desperate for release but lacking any way to do so. You watch her squirm in sexual frustration. This will be her new life. Every other rebellious slave is @@.gold;horrified by the example.@@ + <<set $activeSlave.trust -= 50, $activeSlave.devotion -= 30, $activeSlave.health -= 20, $activeSlave.dick = 0, $activeSlave.prostate = 0, $activeSlave.dickAccessory = "none", $activeSlave.vagina = 0, $activeSlave.ovaries = 0, $activeSlave.clit = 0, $activeSlave.labia = 0>> + <<AnalVCheck>> <<set $slaves.forEach(function(s) { if (s.devotion <= -50) { s.trust -= 15; } })>> - <<set $cash -= ($surgeryCost*2)>> + <<set $cash -= ($surgeryCost*4)>> <</replace>> - <</link>> //Will cost ¤<<print ($surgeryCost*2)>>// + <</link>> //Will cost ¤<<print ($surgeryCost*4)>>// <</if>> - <br><<link "Deny her from ever having satisfying sex again">> - <<replace "#result2">> - You ask her if she enjoyed her last orgasm, because she won't be getting any more. Restrained as she is, the most she can do is cry and beg. Once she comes to after the surgery, she faces her new body; @@.mediumorchid;she's now a surgical null,@@ though she retains her balls, and she's @@.gold;the only one to blame@@ for her @@.red;suffering.@@ You waste no time in shoving her against the wall and forcing your <<if $PC.dick == 1>>dick<<else>>strap-on<</if>> into her anus. As her arousal grows, she realizes you not only took her dick, but her prostate as well. She quickly find herself desperate for release but lacking any way to do so. You watch her squirm in sexual frustration. This will be her new life. Every other rebellious slave is @@.gold;horrified by the example.@@ - <<set $activeSlave.trust -= 50, $activeSlave.devotion -= 30, $activeSlave.health -= 20, $activeSlave.dick = 0, $activeSlave.prostate = 0, $activeSlave.dickAccessory = "none", $activeSlave.vagina = 0, $activeSlave.ovaries = 0, $activeSlave.clit = 0, $activeSlave.labia = 0>> - <<AnalVCheck>> - <<set $slaves.forEach(function(s) { if (s.devotion <= -50) { s.trust -= 15; } })>> - <<set $cash -= ($surgeryCost*4)>> - <</replace>> - <</link>> //Will cost ¤<<print ($surgeryCost*4)>>// -<</if>> -</span> + </span> +<</if>> <<case "breeding bull">> @@ -12949,70 +13146,165 @@ You tell her kindly that you understand, and that she'll be trained to address t <<link "Improve on her abusive little game">> <<EventNameDelink $activeSlave>> <<replace "#result">> - <<set $activeSlave.devotion += 4>> - <<set $activeSlave.trust += 4>> - You leave for the moment, but appear at the next mealtime before even she does. You shut off all the phallic feeders but one, and make an announcement. You decree that just for this one meal, $activeSlave.slaveName is to lie in front of the one functional feeder, <<if ($activeSlave.dick > 0) && canAchieveErection($activeSlave) && ($activeSlave.dickAccessory != "chastity")>>her cock in the air; in order to eat, each slave must ride $activeSlave.slaveName for as long as it takes to suck down her meal<<else>>with a dildo jutting up from her crotch; each slave must ride $activeSlave.slaveName for as long as it takes to suck down her meal<</if>>. $activeSlave.slaveName gapes at you openmouthed for a long moment, looking like she wants to @@.hotpink;declaim a speech of thanks,@@ but you cut her off by pointing peremptorily at her place; she almost runs over, her @@.mediumaquamarine;trust in your whim@@ nearly absolute. But the true shape of your plan isn't apparent yet. When the first girl seats herself on $activeSlave.slaveName and starts sucking off the dispenser dildo, you crouch behind her and insert yourself as well; the bitch is now airtight. She gags and splutters with the discomfort but keeps working away until she gets her meal down and struggles off the three phalluses she has in her. The next girl gets to it with some trepidation: and so it goes, slave by slave. - <<set $seed = 0>> - <<for $i = 0; $i < $slaves.length; $i++>> - <<if ($slaves[$i].anus == 0) || ($slaves[$i].vagina == 0)>> - <<set $seed = 1>> - <</if>> - <</for>> - <<if $seed == 1>> - You let your virgins hold their thighs tight together for a little frottage rather than deflowering their holes like this. - <</if>> - <<set $seed = 0>> - <<for $i = 0; $i < $slaves.length; $i++>> - <<if ($slaves[$i].anus == 1) && ($slaves[$i].vagina == -1)>> - <<set $slaves[$i].trust -= 2>> - <<set $seed = 1>> - <</if>> + <<set $activeSlave.devotion += 4, $activeSlave.trust += 4>> + <<set _targetJobs = ["rest", "be a servant", "be a subordinate slave", "whore", "serve the public", "work a glory hole", "get milked", "please you", "work as a servant", "serve in the club", "rest in the spa", "learn in the schoolroom", "take classes", "work in the brothel"]>> + You leave for the moment, but appear at the next mealtime before even she does. You shut off all the phallic feeders but one, and make an announcement. You decree that just for this one meal, $activeSlave.slaveName is to lie in front of the one functional feeder, + <<if canPenetrate($activeSlave)>> + her cock in the air; in order to eat, + <<else>> + with a dildo jutting up from her crotch; + <</if>> + each slave must ride $activeSlave.slaveName for as long as it takes to suck down her meal<<if $activeSlave.belly >= 5000>> (given the _belly mass jutting from her middle, it should be quite the sight)<</if>>. $activeSlave.slaveName gapes at you openmouthed for a long moment, looking like she wants to @@.hotpink;declaim a speech of thanks,@@ but you cut her off by pointing peremptorily at her place; she almost runs over, her @@.mediumaquamarine;trust in your whim@@ nearly absolute. But the true shape of your plan isn't apparent yet. When the first girl seats herself on $activeSlave.slaveName and starts sucking off the dispenser dildo, you crouch behind her and insert yourself as well; the bitch is now airtight. She gags and splutters with the discomfort but keeps working away until she gets her meal down and struggles off the three phalluses she has in her. The next girl gets to it with some trepidation: and so it goes, slave by slave. + <<for _ress = 0; _ress < $slaves.length; _ress++>> + <<if _targetJobs.includes($slaves[_ress].assignment) && $slaves[_ress].amp != 1 && $slaves[_ress].relationship != -3 && _ress.ID != $activeSlave.ID>> + <<if canDoAnal($slaves[_ress]) && canDoVaginal($slaves[_ress])>> + <<if $slaves[_ress].anus == 0 && $slaves[_ress].vagina == 0>> + <<set _virgins = 1>> + <<elseif $slaves[_ress].vagina == 0>> + <<set _virgins = 1, _anusOnly = 1>> + <<set $slaves[_ress].analCount += 2, $analTotal += 2>> + <<if $PC.dick == 1 && $slaves[_ress].eggType == "human" && canGetPregnant($slaves[_ress])>> + <<KnockMeUp $slaves[_ress] 5 1 -1 1>> + <</if>> + <<if canImpreg($slaves[_ress])>> + <<KnockMeUp $slaves[_ress] 5 1 $activeSlave.ID 1>> + <</if>> + <<if ($slaves[_ress].anus == 1)>> + <<set $slaves[_ress].trust -= 2>> + <<set _doubleAnal = 1>> + <</if>> + <<elseif $slaves[_ress].anus == 0>> + <<set _virgins = 1, _pussyOnly = 1>> + <<set $slaves[_ress].vaginalCount += 2, $vaginalTotal += 2>> + <<if $PC.dick == 1 && $slaves[_ress].eggType == "human" && canGetPregnant($slaves[_ress])>> + <<KnockMeUp $slaves[_ress] 5 0 -1 1>> + <</if>> + <<if canImpreg($slaves[_ress])>> + <<KnockMeUp $slaves[_ress] 5 0 $activeSlave.ID 1>> + <</if>> + <<if ($slaves[_ress].vagina == 1)>> + <<set $slaves[_ress].trust -= 2>> + <<set _doubleVaginal = 1>> + <</if>> + <<else>> + <<set $slaves[_ress].vaginalCount++, $vaginalTotal++, $slaves[_ress].analCount++, $analTotal++>> + <<if $PC.dick == 1 && $slaves[_ress].eggType == "human" && canGetPregnant($slaves[_ress])>> + <<KnockMeUp $slaves[_ress] 5 2 -1 1>> + <</if>> + <<if canImpreg($slaves[_ress])>> + <<KnockMeUp $slaves[_ress] 5 1 $activeSlave.ID 1>> + <</if>> + <</if>> + <<elseif canDoVaginal($slaves[_ress])>> + <<set _pussyOnly = 1>> + <<set $slaves[_ress].vaginalCount += 2, $vaginalTotal += 2>> + <<if $PC.dick == 1 && $slaves[_ress].eggType == "human" && canGetPregnant($slaves[_ress])>> + <<KnockMeUp $slaves[_ress] 5 0 -1 1>> + <</if>> + <<if canImpreg($slaves[_ress])>> + <<KnockMeUp $slaves[_ress] 5 0 $activeSlave.ID 1>> + <</if>> + <<if ($slaves[_ress].vagina == 1)>> + <<set $slaves[_ress].trust -= 2>> + <<set _doubleVaginal = 1>> + <</if>> + <<elseif canDoAnal($slaves[_ress])>> + <<set _anusOnly = 1>> + <<set $slaves[_ress].analCount += 2, $analTotal += 2>> + <<if $PC.dick == 1 && $slaves[_ress].eggType == "human" && canGetPregnant($slaves[_ress])>> + <<KnockMeUp $slaves[_ress] 5 1 -1 1>> + <</if>> + <<if canImpreg($slaves[_ress])>> + <<KnockMeUp $slaves[_ress] 5 1 $activeSlave.ID 1>> + <</if>> + <<if ($slaves[_ress].anus == 1)>> + <<set $slaves[_ress].trust -= 2>> + <<set _doubleAnal = 1>> + <</if>> + <<else>> + <<set _chaste = 1>> + <</if>> + <<if ($slaves[_ress].fetishKnown == 1) && ($slaves[_ress].fetish == "submissive")>> + <<set $slaves[_ress].devotion++>> + <<set _subLove = 1>> + <</if>> + <<set $activeSlave.penetrativeCount++, $penetrativeTotal++>> + <</if>> <</for>> - <<if $seeDicks != 0>> - Girls without pussies are forced to take both you and $activeSlave.slaveName up the butt at once. + <<if def _virgins>> + You let your virgins<<if def _chaste>> and chaste slaves<</if>> hold their thighs tight together for a little frottage rather than deflowering their holes like this. + <<elseif def _chaste>> + Your chaste slaves hold their thighs tight together for a little frottage should they lack the ability to accommodate. <</if>> - <<if $seed == 1>> - Experienced assholes can take the strain just fine, but your tighter-assed slaves are @@.gold;frightened@@ by the anal pain they suffer. + <<if def _anusOnly>> + Girls without pussies are forced to take both you and $activeSlave.slaveName up the butt at once. + <<if def _doubleAnal>> + Experienced assholes can take the strain just fine, but your tighter-assed slaves are @@.gold;frightened@@ by the anal pain they suffer. + <</if>> <</if>> - <<set $seed = 0>> - <<for $i = 0; $i < $slaves.length; $i++>> - <<if ($slaves[$i].fetishKnown == 1) && ($slaves[$i].fetish == "submissive")>> - <<set $slaves[$i].devotion += 1>> - <<set $seed = 1>> - <</if>> - <</for>> - <<if $seed == 1>> - Your subs on the other hand think this is @@.hotpink;a meal worth remembering.@@ + <<if def _pussyOnly>> + Girls with off-limit assholes quickly find both you and $activeSlave.slaveName delving the depths of their cunts. + <<if def _doubleVaginal>> + Experienced sluts can take the double penetation just fine, but your tighter slaves are @@.gold;frightened@@ by the amount of stretching they are forced to undergo. + <</if>> + <</if>> + <<if def _subLove>> + Your subs on the other hand think this is @@.hotpink;a meal worth remembering.@@ <</if>> <</replace>> <</link>> +<<if canDoAnal($activeSlave)>> <br><<link "The rule about consent works both ways">> <<EventNameDelink $activeSlave>> <<replace "#result">> - You tell $activeSlave.slaveName to get up on the kitchen counter and spread her legs. She catches something in the tone of your voice and looks frightened, but obeys. You then make several conversational observations, as though for no particular reason, to the rest of the slaves. First, you point out, the consent rule works for everyone: they, hypothetically, would not need to ask $activeSlave.slaveName her permission to fuck her ass, just like she doesn't have to ask their permission to molest them during meals. (At this $activeSlave.slaveName's fear deepens into obvious @@.gold;terror.@@) Second, you have decided $activeSlave.slaveName will not be getting down off the counter until everyone's done with her meal - and anything else she wishes to do in the kitchen. And third, you conclude, any number of large strap-ons and dildos can be found in the kitchen cabinets. There is a general rush for these; you tell $activeSlave.slaveName, whose<<if $activeSlave.lips > 40>> bimbo<<elseif $activeSlave.lips > 20>> big<<elseif $activeSlave.lips > 10>> soft<</if>> lips are quivering, to come see you after she's done here. About an hour later, she hobbles into your office, and you tell her to show you her anus. Her longtime targets for mealtime molestation were not merciful; they weren't stupid enough to damage her, but that's one well-gaped butthole. You fuck it anyway, and she's too tired and desensitized to care. Your less trusting slaves carefully consider the rules, and realize that there's a @@.mediumaquamarine;built-in mechanism for correction:@@ if anyone gets too rapey, they can rape her right back. + <<set _targetJobs = ["rest", "be a servant", "be a subordinate slave", "whore", "serve the public", "work a glory hole", "get milked", "please you", "work as a servant", "serve in the club", "rest in the spa", "learn in the schoolroom", "take classes", "work in the brothel"]>> + You tell $activeSlave.slaveName to get up on the kitchen counter and spread her legs. She catches something in the tone of your voice and looks frightened, but obeys. You then make several conversational observations, as though for no particular reason, to the rest of the slaves. First, you point out, the consent rule works for everyone: they, hypothetically, would not need to ask $activeSlave.slaveName her permission to fuck her ass, just like she doesn't have to ask their permission to molest them during meals. (At this $activeSlave.slaveName's fear deepens into obvious @@.gold;terror.@@) Second, you have decided $activeSlave.slaveName will not be getting down off the counter until everyone's done with her meal - and anything else she wishes to do in the kitchen. And third, you conclude, any number of large strap-ons and dildos can be found in the kitchen cabinets. There is a general rush for these; you tell $activeSlave.slaveName, whose + <<if $activeSlave.lips > 40>> + bimbo + <<elseif $activeSlave.lips > 20>> + big + <<elseif $activeSlave.lips > 10>> + soft + <</if>> + lips are quivering, to come see you after she's done here. About an hour later, she hobbles into your office, and you tell her to show you her anus. Her longtime targets for mealtime molestation were not merciful; they weren't stupid enough to damage her, but that's one well-gaped butthole. You fuck it anyway, and she's too tired and desensitized to care. Your less trusting slaves carefully consider the rules, and realize that there's a @@.mediumaquamarine;built-in mechanism for correction:@@ if anyone gets too rapey, they can rape her right back. <<set $activeSlave.trust -= 5>> <<AnalVCheck 20>> - <<for $i = 0; $i < $slaves.length; $i++>> - <<if ($slaves[$i].trust < 50)>> - <<set $slaves[$i].trust += 1>> - <</if>> + <<if canGetPregnant($activeSlave) && $activeSlave.mpreg == 1>> + <<set _sourceSeed = random(0,$slaves.length-1)>> + <<for _ress = _sourceSeed + 1; _ress != _sourceSeed; _ress++>> + <<if _ress == $slaves.length>><<set _ress = 0>><</if>> /* wrap around */ + <<if canImpreg($activeSlave, $slaves[_ress]) && _targetJobs.includes($slaves[_ress].assignment) && $slaves[_ress].ID == $activeSlave.ID>> + <<KnockMeUp $activeSlave 50 1 $slaves[_ress].ID 1>> + <<break>> + <</if>> + <</for>> + <</if>> + <<for _ress = 0; _ress < $slaves.length; _ress++>> + <<if ($slaves[_ress].trust < 50) && _targetJobs.includes($slaves[_ress].assignment)>> + <<set $slaves[_ress].trust++>> + <</if>> <</for>> <<if $activeSlave.anus == 1>> - Poor $activeSlave.slaveName's butthole @@.lime;isn't quite the same@@ afterward. - <<set $activeSlave.anus += 1>> + Poor $activeSlave.slaveName's butthole @@.lime;isn't quite the same@@ afterward. + <<set $activeSlave.anus += 1>> <</if>> <</replace>> -<</link>><<if ($activeSlave.anus == 0)>> //This option will take virginity//<</if>> +<</link>><<if $activeSlave.anus == 0>> //This option will take anal virginity//<</if>> +<</if>> <<case "forbidden masturbation">> <<link "Let her earn relief">> <<EventNameDelink $activeSlave>> <<replace "#result">> - She's extremely relieved that you're not going to punish her for the rulebreaking when you tell her that she can touch herself if she gets on her knees and sucks you off. She does a decent job, playing with herself all the while. She's learned that she can get away with infractions if she's willing to suck dick afterward. Her resistance to your will @@.mediumorchid;has increased.@@ - <<set $activeSlave.devotion -= 5>> - <<set $activeSlave.oralCount += 1>> - <<set $oralTotal += 1>> + She's extremely relieved that you're not going to punish her for the rulebreaking when you tell her that she can touch herself if she + <<if $activeSlave.belly >= 300000>> + leans over her _belly belly + <<else>> + gets on her knees + <</if>> + and sucks you off. She does a decent job, playing with herself all the while. She's learned that she can get away with infractions if she's willing to suck dick afterward. Her resistance to your will @@.mediumorchid;has increased.@@ + <<set $activeSlave.devotion -= 5, $activeSlave.oralCount++, $oralTotal++>> <</replace>> <</link>> <br>Punish her, but then let her get off: @@ -13020,17 +13312,32 @@ You tell her kindly that you understand, and that she'll be trained to address t <br> <<link "when she sucks">> <<EventNameDelink $activeSlave>> <<replace "#result">> - You <<if $activeSlave.preg > 20>>spread your legs to give her pregnancy room as you pull her onto your lap<<else>>pull her down over your knee<</if>> and spank her $activeSlave.skin buttocks until they're warm to the touch. It's not a sexual punishment, it's too painful for that; by the end, $activeSlave.slaveName has cried herself out and is limp in your hands. You pull her up to face you and give her your instructions: from now on, she can come to you and ask to <<if $PC.dick == 1>>blow you<<if $PC.vagina == 1>> and <</if>><</if>><<if $PC.vagina == 1>>perform cunnilingus on you<</if>>, and masturbate while she does. She nods through her tears and flees. In an hour or so, though, she finds you and asks to <<if $PC.vagina == 1>>give you oral<<else>>suck your cock<</if>>. When you pretend indifference, she abjectly begs. Soon, she's down on her knees, crying a little with shame as she masturbates furiously. - <<set $activeSlave.oralCount += 5>> - <<set $oralTotal += 5>> + You + <<if $PC.belly >= 10000>> + <<if $activeSlave.belly >= 300000>> + tip her over her _belly <<if $activeSlave.bellyPreg >= 3000>>pregnancy<<else>>middle<</if>>, do your best to get close beisde her, + <<elseif $activeSlave.belly >= 5000>> + order her to bend over beside you so your pregnancy doesn't obstruct you as badly + <<else>> + lean back, pull her over your knee and under your gavid dome of a middle + <</if>> + <<else>> + <<if $activeSlave.belly >= 300000>> + tip her over her _belly <<if $activeSlave.bellyPreg >= 3000>>pregnancy<<else>>middle<</if>> + <<elseif $activeSlave.belly >= 5000>> + spread your legs to give her <<if $activeSlave.bellyPreg >= 3000>>pregnancy<<else>>bloated middle<</if>> room as you pull her onto your lap + <<else>> + pull her down over your knee + <</if>> + <</if>> + and spank her $activeSlave.skin buttocks until they're warm to the touch. It's not a sexual punishment, it's too painful for that; by the end, $activeSlave.slaveName has cried herself out and is limp in your hands. You pull her up to face you and give her your instructions: from now on, she can come to you and ask to <<if $PC.dick == 1>>blow you<<if $PC.vagina == 1>> and <</if>><</if>><<if $PC.vagina == 1>>perform cunnilingus on you<</if>>, and masturbate while she does. She nods through her tears and flees. In an hour or so, though, she finds you and asks to <<if $PC.vagina == 1>>give you oral<<else>>suck your cock<</if>>. When you pretend indifference, she abjectly begs. Soon, she's down on her knees, crying a little with shame as she masturbates furiously. + <<set $activeSlave.oralCount += 5, $oralTotal += 5>> <<if ($activeSlave.fetish == "cumslut") && ($activeSlave.fetishKnown == 1)>> - <<set $activeSlave.fetishStrength += 4>> - @@.lightcoral;Her enjoyment of <<if $PC.dick == 0>>giving head<<else>>sucking cock<</if>> has increased.@@ + <<set $activeSlave.fetishStrength += 4>> + @@.lightcoral;Her enjoyment of <<if $PC.dick == 0>>giving head<<else>>sucking cock<</if>> has increased.@@ <<elseif random(1,100) > 50>> - <<set $activeSlave.fetish = "cumslut">> - <<set $activeSlave.fetishKnown = 1>> - <<set $activeSlave.fetishStrength = 65>> - Before she realizes what's happening, @@.lightcoral;she's getting aroused at the thought of <<if $PC.dick == 0>>giving head<<else>>sucking cock<</if>>.@@ + <<set $activeSlave.fetish = "cumslut", $activeSlave.fetishKnown = 1, $activeSlave.fetishStrength = 65>> + Before she realizes what's happening, @@.lightcoral;she's getting aroused at the thought of <<if $PC.dick == 0>>giving head<<else>>sucking cock<</if>>.@@ <</if>> <</replace>> <</link>> @@ -13039,69 +13346,104 @@ You tell her kindly that you understand, and that she'll be trained to address t <br> <<link "during nipple play">> <<EventNameDelink $activeSlave>> <<replace "#result">> - You <<if $activeSlave.preg > 20>>spread your legs to give her pregnancy room as you pull her onto your lap<<else>>pull her down over your knee<</if>> and grope her thoroughly, bringing her to the painful edge of orgasm. Just when she's about to tip over the edge, the stimulation stops and you haul her up into your lap and start playing with her nipples. She writhes and sobs at the orgasm denial, since the nipple play is just barely enough to keep her at a high level of arousal without giving relief. You switch back and forth until she finally goes over into muscle-spasming climax during nipple stimulation alone. - <<set $activeSlave.mammaryCount += 1>> - <<set $mammaryTotal += 1>> + You + <<if $PC.belly >= 10000>> + <<if $activeSlave.belly >= 300000>> + tip her over her _belly <<if $activeSlave.bellyPreg >= 3000>>pregnancy<<else>>middle<</if>>, do your best to get close beisde her, and grope her thoroughly, bringing her to the painful edge of orgasm. Just when she's about to tip over the edge, the stimulation stops and you flip her onto her back, lower your gravid body down to her level and start playing with her nipples. + <<elseif $activeSlave.belly >= 5000>> + order her to bend over beside you so your pregnancy doesn't obstruct you as badly and grope her thoroughly, bringing her to the painful edge of orgasm. Just when she's about to tip over the edge, the stimulation stops and you haul her upright and start playing with her nipples. + <<else>> + lean back, pull her over your knee and under your gavid dome of a middle and grope her thoroughly, bringing her to the painful edge of orgasm. Just when she's about to tip over the edge, the stimulation stops and you haul her upright and start playing with her nipples. + <</if>> + <<else>> + <<if $activeSlave.belly >= 300000>> + tip her over her _belly <<if $activeSlave.bellyPreg >= 3000>>pregnancy<<else>>middle<</if>> and grope her thoroughly, bringing her to the painful edge of orgasm. Just when she's about to tip over the edge, the stimulation stops and you haul her up into your lap, her stomach spreading your legs, and start playing with her nipples. + <<elseif $activeSlave.belly >= 5000>> + spread your legs to give her <<if $activeSlave.bellyPreg >= 3000>>pregnancy<<else>>bloated middle<</if>> room as you pull her onto your lap and grope her thoroughly, bringing her to the painful edge of orgasm. Just when she's about to tip over the edge, the stimulation stops and you haul her up into your lap and start playing with her nipples. + <<else>> + pull her down over your knee and grope her thoroughly, bringing her to the painful edge of orgasm. Just when she's about to tip over the edge, the stimulation stops and you haul her up into your lap and start playing with her nipples. + <</if>> + <</if>> + She writhes and sobs at the orgasm denial, since the nipple play is just barely enough to keep her at a high level of arousal without giving relief. You switch back and forth until she finally goes over into muscle-spasming climax during nipple stimulation alone. + <<set $activeSlave.mammaryCount++, $mammaryTotal++>> <<if ($activeSlave.fetish == "boobs") && ($activeSlave.fetishKnown == 1)>> - <<set $activeSlave.fetishStrength += 4>> - @@.lightcoral;Her enjoyment of breast play has increased.@@ + <<set $activeSlave.fetishStrength += 4>> + @@.lightcoral;Her enjoyment of breast play has increased.@@ <<elseif random(1,100) > 50>> - <<set $activeSlave.fetish = "boobs">> - <<set $activeSlave.fetishKnown = 1>> - <<set $activeSlave.fetishStrength = 65>> - Before she realizes what's happening, @@.lightcoral;she's getting aroused at every brush against her breasts.@@ + <<set $activeSlave.fetish = "boobs", $activeSlave.fetishKnown = 1, $activeSlave.fetishStrength = 65>> + Before she realizes what's happening, @@.lightcoral;she's getting aroused at every brush against her breasts.@@ <</if>> <</replace>> <</link>> <</if>> -<<if (($activeSlave.fetish != "pregnancy") || ($activeSlave.fetishKnown != 1) || ($activeSlave.fetishStrength <= 95)) && $activeSlave.preg > 20>> +<<if (($activeSlave.fetish != "pregnancy") || ($activeSlave.fetishKnown != 1) || ($activeSlave.fetishStrength <= 95)) && $activeSlave.belly >= 5000>> <br> <<link "while fondling her belly">> <<EventNameDelink $activeSlave>> <<replace "#result">> - You pull her into a sitting position on your lap and grope her pregnancy thoroughly, allowing her to reach the painful edge of orgasm. You feel her belly shudder as she reaches climax under your ministrations. You tease her popped navel as she comes down from her masturbation session. + You + <<if $activeSlave.belly >= 300000>> + roll her onto her back + <<else>> + pull her into a sitting position on your lap + <</if>> + and grope her _belly <<if $activeSlave.bellyPreg >= 3000>>pregnancy<<else>>stomach<</if>>thoroughly, allowing her to reach the painful edge of orgasm. You feel her belly shudder as she reaches climax under your ministrations. You tease her <<if $activeSlave.belly >= 10001>>popped <</if>>navel as she comes down from her masturbation session. <<if ($activeSlave.fetish == "pregnancy") && ($activeSlave.fetishKnown == 1)>> - <<set $activeSlave.fetishStrength += 4>> - @@.lightcoral;Her enjoyment of pregnancy has increased.@@ + <<set $activeSlave.fetishStrength += 4>> + @@.lightcoral;Her enjoyment of pregnancy has increased.@@ <<elseif random(1,100) > 50>> - <<set $activeSlave.fetish = "pregnancy">> - <<set $activeSlave.fetishKnown = 1>> - <<set $activeSlave.fetishStrength = 65>> - Before she realizes what's happening, @@.lightcoral;she's getting aroused at every thought about her pregnancy.@@ + <<set $activeSlave.fetish = "pregnancy", $activeSlave.fetishKnown = 1, $activeSlave.fetishStrength = 65>> + Before she realizes what's happening, @@.lightcoral;she's getting aroused at <<if $activeSlave.pregKnown == 1>>every thought about her pregnancy<<else>>the very thought of being pregnant<</if>>.@@ <</if>> <</replace>> <</link>> <</if>> +<<if canDoAnal($activeSlave)>> <<if ($activeSlave.fetish != "buttslut") || ($activeSlave.fetishKnown != 1) || ($activeSlave.fetishStrength <= 95)>> <br> <<link "when she takes it up the ass">> <<EventNameDelink $activeSlave>> <<replace "#result">> - You <<if $activeSlave.preg > 20>>spread your legs to give her pregnancy room as you pull her onto your lap<<else>>pull her down over your knee<</if>> and spank her $activeSlave.skin buttocks until they're warm to the touch. It's not a sexual punishment, it's too painful for that; by the end, $activeSlave.slaveName has cried herself out and is limp in your hands. You pull her up to face you and give her your instructions: from now on, she can come to you and ask you to assrape her, and masturbate while she takes <<if $PC.dick == 0>>anal penetration<<else>>cock<</if>>. She nods through her tears and flees. In an hour or so, though, she finds you and haltingly asks you to buttfuck her. When you pretend indifference, she offers you her anus and abjectly begs you to stick <<if $PC.dick == 0>>a strap-on<<else>>your cock<</if>> up her butt. Soon, she's down on all fours, crying a little with mixed shame and anal pain as she masturbates furiously. + You + <<if $PC.belly >= 10000>> + <<if $activeSlave.belly >= 300000>> + tip her over her _belly <<if $activeSlave.bellyPreg >= 3000>>pregnancy<<else>>middle<</if>>, do your best to get close beisde her, + <<elseif $activeSlave.belly >= 5000>> + order her to bend over beside you so your pregnancy doesn't obstruct you as badly + <<else>> + lean back, pull her over your knee and under your gavid dome of a middle + <</if>> + <<else>> + <<if $activeSlave.belly >= 300000>> + tip her over her _belly <<if $activeSlave.bellyPreg >= 3000>>pregnancy<<else>>middle<</if>> + <<elseif $activeSlave.belly >= 5000>> + spread your legs to give her <<if $activeSlave.bellyPreg >= 3000>>pregnancy<<else>>bloated middle<</if>> room as you pull her onto your lap + <<else>> + pull her down over your knee + <</if>> + <</if>> + and spank her $activeSlave.skin buttocks until they're warm to the touch. It's not a sexual punishment, it's too painful for that; by the end, $activeSlave.slaveName has cried herself out and is limp in your hands. You pull her up to face you and give her your instructions: from now on, she can come to you and ask you to assrape her, and masturbate while she takes <<if $PC.dick == 0>>anal penetration<<else>>cock<</if>>. She nods through her tears and flees. In an hour or so, though, she finds you and haltingly asks you to buttfuck her. When you pretend indifference, she offers you her anus and abjectly begs you to stick <<if $PC.dick == 0>>a strap-on<<else>>your cock<</if>> up her butt. Soon, she's down on all fours, crying a little with mixed shame and anal pain as she masturbates furiously. <<AnalVCheck 5>> <<if ($activeSlave.fetish == "buttslut") && ($activeSlave.fetishKnown == 1)>> - <<set $activeSlave.fetishStrength += 4>> - @@.lightcoral;Her enjoyment of anal has increased.@@ + <<set $activeSlave.fetishStrength += 4>> + @@.lightcoral;Her enjoyment of anal has increased.@@ <<elseif random(1,100) > 50>> - <<set $activeSlave.fetish = "buttslut">> - <<set $activeSlave.fetishKnown = 1>> - <<set $activeSlave.fetishStrength = 65>> - Before she realizes what's happening, @@.lightcoral;she's getting aroused at the thought of anal sex.@@ + <<set $activeSlave.fetish = "buttslut", $activeSlave.fetishKnown = 1, $activeSlave.fetishStrength = 65>> + Before she realizes what's happening, @@.lightcoral;she's getting aroused at the thought of anal sex.@@ <</if>> <</replace>> <</link>><<if ($activeSlave.anus == 0)>> //This option will take anal virginity//<</if>> <</if>> +<</if>> <<if ($activeSlave.fetish != "humiliation") || ($activeSlave.fetishKnown != 1) || ($activeSlave.fetishStrength <= 95)>> <br> <<link "in public">> <<EventNameDelink $activeSlave>> <<replace "#result">> You bring her out onto the club and secure her upright with a set of vibrators attached to all of her erogenous zones. There's a lot of them, and they're extremely powerful; when you test the setup, she wriggles with the intensity of the stimulation, and is about to climax when you shut it down. Without telling her, you slave the vibrators to a program originally designed for VIP security details. It uses the cameras scattered through the area to detect when passersby are looking at her. The more eyes on her, the stronger the vibrations. <<if ($activeSlave.fetish == "humiliation") && ($activeSlave.fetishKnown == 1)>> - <<set $activeSlave.fetishStrength += 4>> - @@.lightcoral;Her enjoyment of humiliation has increased.@@ + <<set $activeSlave.fetishStrength += 4>> + @@.lightcoral;Her enjoyment of humiliation has increased.@@ <<elseif random(1,100) > 50>> - <<set $activeSlave.fetish = "humiliation">> - <<set $activeSlave.fetishKnown = 1>> - <<set $activeSlave.fetishStrength = 65>> - Before she realizes what's happening, @@.lightcoral;she's starting to long for humiliation.@@ + <<set $activeSlave.fetish = "humiliation", $activeSlave.fetishKnown = 1, $activeSlave.fetishStrength = 65>> + Before she realizes what's happening, @@.lightcoral;she's starting to long for humiliation.@@ <</if>> <</replace>> <</link>> @@ -13112,13 +13454,11 @@ You tell her kindly that you understand, and that she'll be trained to address t <<replace "#result">> You tell her that she can get herself off while she's being spanked, and that's it: you don't tell her to offer her bottom, much less start spanking her. She doesn't understand for a long moment, but before long she's begging abjectly for a spanking, and has her buttocks presented, quivering with simultaneous arousal and fear of pain. The pain comes soon enough, with a delicious crack of palm on flesh <<if $activeSlave.voice == 0>>and a hoarse grunt, the most noise she can make.<<else>>and a shriek of agony.<</if>> She masturbates furiously, but you're an accomplished spanker, and you repeatedly cause her just enough pain to prevent climax. Eventually she gets off in part because of, rather than in spite of, the lengthy beating. <<if ($activeSlave.fetish == "submissive") && ($activeSlave.fetishKnown == 1)>> - <<set $activeSlave.fetishStrength += 4>> - @@.lightcoral;Her enjoyment of submission has increased.@@ + <<set $activeSlave.fetishStrength += 4>> + @@.lightcoral;Her enjoyment of submission has increased.@@ <<elseif random(1,100) > 50>> - <<set $activeSlave.fetish = "submissive">> - <<set $activeSlave.fetishKnown = 1>> - <<set $activeSlave.fetishStrength = 65>> - Before she realizes what's happening, @@.lightcoral;she starts to associate submitting to you with getting off.@@ + <<set $activeSlave.fetish = "submissive", $activeSlave.fetishKnown = 1, $activeSlave.fetishStrength = 65>> + Before she realizes what's happening, @@.lightcoral;she starts to associate submitting to you with getting off.@@ <</if>> <</replace>> <</link>> @@ -13127,16 +13467,38 @@ You tell her kindly that you understand, and that she'll be trained to address t <br> <<link "while in pain">> <<EventNameDelink $activeSlave>> <<replace "#result">> - You order her to <<if ($activeSlave.heels == 1) && ($activeSlave.shoes != "heels") && ($activeSlave.shoes != "boots") && ($activeSlave.shoes != "extreme heels")>>kneel<<elseif ($activeSlave.shoes == "heels") || ($activeSlave.shoes == "boots") || ($activeSlave.shoes == "extreme heels")>>teeter<<else>>stand<</if>> with her arms over her head and her legs splayed, and tell her that if she moves or resists her punishment will begin again from the start. <<if ($activeSlave.vaginalAccessory == "chastity belt") || ($activeSlave.vaginalAccessory == "combined chastity")>>She was touching her nipples and ass, so you flick and torture her nipples and give her a severe spanking.<<elseif ($activeSlave.dick > 0) && !canAchieveErection($activeSlave)>>She was touching her limp dick and ass, so you slap and torture her offending dick and give her a severe spanking.<<elseif $activeSlave.dick == 0>>She was desperately rubbing her perineum and anus, the most sensitive parts she has left, so you slap that part of her repeatedly, enjoying the way it spasms.<<elseif $activeSlave.vagina == -1>>She was jacking it, so you force her to get herself hard for punishment and then deliver a series of agonizing slaps and flicks to her offending member.<<elseif $activeSlave.labia > 1>>Her generous pussylips bear a sheen of incriminating moisture, so you slap and flick them, causing her intense agony.<<else>>You deliver a series of agonizing slaps to her mons.<</if>> You have to start over twice. By the end, she's managed to orgasm to all the stimulation, but she's crying and desperately promising never to touch herself again without your permission. Her submission to you @@.hotpink;has increased.@@ + You order her to + <<if ($activeSlave.heels == 1) && ($activeSlave.shoes != "heels") && ($activeSlave.shoes != "boots") && ($activeSlave.shoes != "extreme heels")>> + kneel + <<elseif ($activeSlave.shoes == "heels") || ($activeSlave.shoes == "boots") || ($activeSlave.shoes == "extreme heels")>> + teeter + <<else>> + stand + <</if>> + with her arms over her head and her legs splayed, and tell her that if she moves or resists her punishment will begin again from the start. + <<if ["chastity belt", "combined chastity"].includes($activeSlave.vaginalAccessory) || ["chastity", "combined chastity"].includes($activeSlave.dickAccessory)>> + She was touching her nipples and ass, so you flick and torture her nipples and give her a severe spanking. + <<elseif !canAchieveErection($activeSlave) && ($activeSlave.dick > 6)>> + She was playing with her oversized cock, so you kick and swat at the swollen monster, enjoying the way it spasms. + <<elseif ($activeSlave.dick > 0) && !canAchieveErection($activeSlave)>> + She was touching her limp dick and ass, so you slap and torture her offending dick and give her a severe spanking. + <<elseif ($activeSlave.vagina == -1) && ($activeSlave.dick == 0)>> + She was desperately rubbing her perineum and anus, the most sensitive parts she has left, so you slap that part of her repeatedly, enjoying the way it spasms. + <<elseif $activeSlave.vagina == -1 || $activeSlave.clit >= 3>> + She was jacking it, so you force her to get herself hard for punishment and then deliver a series of agonizing slaps and flicks to her offending member. + <<elseif $activeSlave.labia > 1>> + Her generous pussylips bear a sheen of incriminating moisture, so you slap and flick them, causing her intense agony. + <<else>> + You deliver a series of agonizing slaps to her mons. + <</if>> + You have to start over twice. By the end, she's managed to orgasm to all the stimulation, but she's crying and desperately promising never to touch herself again without your permission. Her submission to you @@.hotpink;has increased.@@ <<set $activeSlave.devotion += 4>> <<if ($activeSlave.fetish == "masochist") && ($activeSlave.fetishKnown == 1)>> - <<set $activeSlave.fetishStrength += 4>> - @@.lightcoral;Her enjoyment of pain has increased.@@ + <<set $activeSlave.fetishStrength += 4>> + @@.lightcoral;Her enjoyment of pain has increased.@@ <<elseif random(1,100) > 50>> - <<set $activeSlave.fetish = "masochist">> - <<set $activeSlave.fetishKnown = 1>> - <<set $activeSlave.fetishStrength = 65>> - Before she realizes what's happening, @@.lightcoral;she's getting aroused at the thought of <<if def $PC.customTitle>>her $PC.customTitle<<elseif $PC.title != 0>>her master<<else>>her mistress<</if>> beating her.@@ + <<set $activeSlave.fetish = "masochist", $activeSlave.fetishKnown = 1, $activeSlave.fetishStrength = 65>> + Before she realizes what's happening, @@.lightcoral;she's getting aroused at the thought of <<WrittenMaster>> beating her.@@ <</if>> <</replace>> <</link>> @@ -13145,60 +13507,209 @@ You tell her kindly that you understand, and that she'll be trained to address t <<case "hates oral">> <<link "Let her earn a break for her throat">> -<<replace "#name">> -$activeSlave.slaveName -<</replace>> -<<replace "#result">> - You tell her she's a sex slave, and that she needs to learn how to suck dick. <<if canTalk($activeSlave) == false && ($activeSlave.amp != 1)>>She frantically begs with gestures, pleading on her knees.<<elseif canTalk($activeSlave) == false>>She frantically mouths pleas that you leave her throat cock-free.<<elseif SlaveStatsChecker.checkForLisp($activeSlave)>>She slurs, "Pleese no, <<Master>>, pleese don rape my mouth, <<Master>>!"<<else>>She begs, "Please no, <<Master>>, please don't rape my mouth, <<Master>>!"<</if>> You make a show of considering, and then tell her that if she's extra obedient, you might let her earn a break for her throat - for now. -<<if $activeSlave.vagina > 0>><<set $activeSlave.vaginalCount += 1>><<set $vaginalTotal += 1>> -You tell her to lie back and spread her legs, because you're going to give her a good old fashioned missionary-position pounding. She does so with unusual obedience<<if $activeSlave.preg > 20>>, her legs hanging off the couch to give you a better angle with her pregnancy in the way<</if>>, and as you're giving her a thorough pounding, whether out of relief, gratitude, or a desire to put on a good performance, she certainly seems to be enjoying it more than usual. -<<elseif $activeSlave.anus > 0>><<set $activeSlave.analCount += 1>><<set $analTotal += 1>> -You tell her to bend over and spread her ass for you, because if she doesn't want you going in one end you're going to go in the other. She does so with unusual obedience, and as you <<if ($activeSlave.anus == 1)>>gently but firmly pound her still-tight ass<<elseif ($activeSlave.anus == 2)>>pound away at her well-used backdoor<<else>>mercilessly jackhammer her gaping hole<</if>> she actively tries to match the rhythm of your thrusts. -<<else>> -You tell her that if she's going to hesitate to use her mouth when <<if $activeSlave.vagina != -1>>all her other holes are still virgin<<else>>her girly little butthole is still virgin<</if>>, she's going to have to find an amazingly thorough way to please a dick if she's going to earn her throat a reprieve. She looks<<if $activeSlave.intelligence < 0>> uncharacteristically<</if>> thoughtful for a moment before bending over before you, spitting in her hand <<if $activeSlave.vagina == 0>>and thoroughly coating her inner thighs with her saliva.<<else>>and thoroughly coating the crack of her <<if $activeSlave.butt <= 2>>slender<<elseif $activeSlave.butt <= 4>>curvy<<else>>huge<</if>> ass.<</if>> The invitation is obvious, but just to be sure she pleads with you to satisfy yourself alongside her virgin holes. You answer her pleading with your dick, and though it's not quite as pleasurable as a newly-deflowered hole, <<if $activeSlave.vagina == 0>>before long her virgin cunt starts to supply extra lubrication and she starts to gasp and moan along with your thrusts.<<else>>$activeSlave.slaveName's trembling whenever your thrusts come perilously close to penetrating her virgin ass is thoroughly entertaining.<</if>> Before long, you plaster her still-virgin hole with your cum. -<</if>> -When you're done, you bend down and whisper in her ear that if she shows any sign of rebelliousness, you'll give every dick in $arcologies[0].name free access to her throat. @@.hotpink;She has become more obedient,@@ in the hope this will persuade you to not follow through on your threat. -<<set $activeSlave.devotion += 4>> + <<EventNameDelink $activeSlave>> + <<replace "#result">> + You tell her she's a sex slave, and that she needs to learn how to suck dick. + <<if !canTalk($activeSlave) && ($activeSlave.amp != 1)>> + She frantically begs with gestures, pleading on her knees. + <<elseif !canTalk($activeSlave)>> + She frantically mouths pleas that you leave her throat cock-free. + <<else>> + She begs, "Plea<<s>>e no, <<Master>>, plea<<s>>e don't rape my mouth, <<Master>>!" + <</if>> + You make a show of considering, and then tell her that if she's extra obedient, you might let her earn a break for her throat - for now. + <<if canDoVaginal($activeSlave) && $activeSlave.vagina > 0>> + You tell her to lie back and spread her legs, because you're going to give her a good old fashioned missionary-position pounding. She does so with unusual obedience<<if $activeSlave.belly >= 5000>>, her legs hanging off the couch to give you a better angle with her _belly <<if $activeSlave.bellyPreg >= 3000>>pregnancy<<else>>belly<</if>> in the way<</if>>, and as you're giving her a thorough pounding, whether out of relief, gratitude, or a desire to put on a good performance, she certainly seems to be enjoying it more than usual. + <<VaginalVCheck>> + <<elseif canDoAnal($activeSlave) && $activeSlave.anus > 0>> + You tell her to bend over and spread her ass for you, because if she doesn't want you going in one end you're going to go in the other. She does so with unusual obedience, and as you + <<if ($activeSlave.anus == 1)>> + gently but firmly pound her still-tight ass + <<elseif ($activeSlave.anus == 2)>> + pound away at her well-used backdoor + <<else>> + mercilessly jackhammer her gaping hole + <</if>> + she actively tries to match the rhythm of your thrusts. + <<AnalVCheck>> + <<else>> + You tell her that if she's going to hesitate to use her mouth when + <<if !canDoAnal($activeSlave) && !canDoVaginal($activeSlave)>> + she has no other hole to amuse you + <<elseif !canDoAnal($activeSlave) && $activeSlave.vagina == 0>> + her only available hole is still virgin + <<elseif $activeSlave.vagina == 0 && $activeSlave.anus == 0>> + all her other holes are still virgin + <<elseif $activeSlave.anus == 0>> + her girly little butthole is still virgin + <</if>> + she's going to have to find an amazingly thorough way to please a dick if she's going to earn her throat a reprieve. She looks<<if $activeSlave.intelligence < 0>> uncharacteristically<</if>> thoughtful for a moment before bending over before you, spitting in her hand + <<if $activeSlave.vagina == 0>> + and thoroughly coating her inner thighs with her saliva. + <<else>> + and thoroughly coating the + <<if $activeSlave.butt <= 2>> + crack of her slender + <<elseif $activeSlave.butt <= 4>> + crack of her curvy + <<elseif $activeSlave.butt <= 8>> + crack of her huge + <<elseif $activeSlave.butt <= 12>> + crevice of her expansive + <<elseif $activeSlave.butt <= 20>> + ravine of her endless + <</if>> + ass. + <</if>> + The invitation is obvious, but just to be sure she pleads with you to satisfy yourself alongside her + <<if !canDoAnal($activeSlave) && !canDoVaginal($activeSlave)>> + chastity. You answer her pleading with your dick, and though it's not quite as pleasurable as pilfering an off-limits hole, + <<if $activeSlave.vagina > -1>> + before long her <<if $activeSlave.vagina == 0>>virgin <</if>>cunt starts to supply extra lubrication and she starts to gasp and moan along with your thrusts. + <<else>> + $activeSlave.slaveName's trembling whenever your thrusts slam against her anal chastity is thoroughly entertaining. + <</if>> + Before long, you plaster her belt with your cum. + <<elseif !canDoAnal($activeSlave) && $activeSlave.vagina == 0>> + virgin hole. You answer her pleading with your dick, and though it's not quite as pleasurable as a newly-deflowered hole, before long her virgin cunt starts to supply extra lubrication and she starts to gasp and moan along with your thrusts. Before long, you plaster her still-virgin hole with your cum. + <<elseif $activeSlave.vagina == 0 && $activeSlave.anus == 0>> + virgin holes. You answer her pleading with your dick, and though it's not quite as pleasurable as a newly-deflowered hole, + <<if $activeSlave.vagina == 0>> + before long her virgin cunt starts to supply extra lubrication and she starts to gasp and moan along with your thrusts. + <<else>> + $activeSlave.slaveName's trembling whenever your thrusts come perilously close to penetrating her virgin ass is thoroughly entertaining. + <</if>> + Before long, you plaster her still-virgin hole with your cum. + <<elseif $activeSlave.anus == 0>> + virgin hole. You answer her pleading with your dick, and though it's not quite as pleasurable as a newly-deflowered hole, $activeSlave.slaveName's trembling whenever your thrusts come perilously close to penetrating her virgin ass is thoroughly entertaining. Before long, you plaster her still-virgin hole with your cum. + <</if>> + <</if>> + When you're done, you bend down and whisper in her ear that if she shows any sign of rebelliousness, you'll give every dick in $arcologies[0].name free access to her throat. @@.hotpink;She has become more obedient,@@ in the hope this will persuade you to not follow through on your threat. + <<set $activeSlave.devotion += 4>> <</replace>> <</link>> <br><<link "Try to brute-force her oral resistance with a public blowbang">> -<<replace "#name">> -$activeSlave.slaveName -<</replace>> -<<replace "#result">> -Simple problems require simple solutions - she'll get fucked in the mouth until she either gets over her hang-ups about oral or learns to hide them. You drag the protesting $activeSlave.slaveName out in public, chain her low so that her mouth is available, and tell her that she'll suck dicks until she gets through five in a row without grimacing, gagging, or resisting. You have a comfortable chair brought out to you and settle in to watch the show. - -$activeSlave.slaveName tries, she really does. But when word gets out as to the conditions of her enslavement, her users take a perverse enjoyment in being rougher than usual to evoke the exact reactions she's trying to avoid. By the third failed streak, you've started to grow bored of the spectacle, but luckily you find entertainment in conversation with those who have already been entertained by poor $activeSlave.slaveName. Before long more chairs have been brought up and an impromptu salon has been set up alongside the blowbang line. By the sixth failed streak, an enterprising citizen has set up a small bar and is serving drinks. By the ninth, you've delegated watching $activeSlave.slaveName to your assistant. You personally break the 11th streak after she reached four, to general acclaim from your newfound friends and a toast to your virility. - -When the 14th streak is finally successful, there are serious talks about making these blowbang salons a regular occurrence and some backslapping directed towards you for your innovation in genteel hedonism. While you seriously doubt $activeSlave.slaveName enjoys oral sex any more than she did at the start of the day, she's certainly @@.green;learned to keep her feelings on the matter to herself@@. She did, however, @@.red;have quite a rough time@@ of it<<if $activeSlave.oralSkill <= 30>>, though she did learn a thing or two about sucking dick.<<set $skillIncrease = 10>><<OralSkillIncrease $activeSlave>><<else>>.<</if>> And last of all, you and $activeSlave.slaveName did make @@.green;quite a good impression@@ today, though for widely differing reasons. -<<set $activeSlave.health -= 10>> -<<set $activeSlave.sexualFlaw = "none">> -<<set $seed = random(65,80)>> -<<set $activeSlave.oralCount += $seed>> -<<set $oralTotal += $seed>> -<<set $rep += 100>> -<</replace>> + <<EventNameDelink $activeSlave>> + <<replace "#result">> + Simple problems require simple solutions - she'll get fucked in the mouth until she either gets over her hang-ups about oral or learns to hide them. You drag the protesting $activeSlave.slaveName out in public, chain her low so that her mouth is available, and tell her that she'll suck dicks until she gets through five in a row without grimacing, gagging, or resisting. You have a comfortable chair brought out to you and settle in to watch the show. + $activeSlave.slaveName tries, she really does. But when word gets out as to the conditions of her enslavement, her users take a perverse enjoyment in being rougher than usual to evoke the exact reactions she's trying to avoid. By the third failed streak, you've started to grow bored of the spectacle, but luckily you find entertainment in conversation with those who have already been entertained by poor $activeSlave.slaveName. Before long more chairs have been brought up and an impromptu salon has been set up alongside the blowbang line. By the sixth failed streak, an enterprising citizen has set up a small bar and is serving drinks. By the ninth, you've delegated watching $activeSlave.slaveName to your assistant. You personally break the 11th streak after she reached four, to general acclaim from your newfound friends and a toast to your virility. + When the 14th streak is finally successful, there are serious talks about making these blowbang salons a regular occurrence and some backslapping directed towards you for your innovation in genteel hedonism. While you seriously doubt $activeSlave.slaveName enjoys oral sex any more than she did at the start of the day, she's certainly @@.green;learned to keep her feelings on the matter to herself@@. She did, however, @@.red;have quite a rough time@@ of it<<if $activeSlave.oralSkill <= 30>>, though she did learn a thing or two about sucking dick.<<set $skillIncrease = 10>><<OralSkillIncrease $activeSlave>><<else>>.<</if>> And last of all, you and $activeSlave.slaveName did make @@.green;quite a good impression@@ today, though for widely differing reasons. + <<set $activeSlave.health -= 10, $activeSlave.sexualFlaw = "none">> + <<set _oralSeed = random(65,80)>> + <<set $activeSlave.oralCount += _oralSeed, $activeSlave.publicCount += _oralSeed, $oralTotal += _oralSeed>> + <<set $rep += 100>> + </replace>> <</link>> <br><<link "Teach her to see cum as a reward">> -<<replace "#name">> -$activeSlave.slaveName -<</replace>> -<<replace "#result">> -You bring $activeSlave.slaveName into your office and stand her in front of your leather couch. She <<if canSee($activeSlave)>>eyes you <<else>>listens <</if>><<if $activeSlave.devotion < -20>>suspiciously<<else>>worriedly<</if>> as you ready <<if ($activeSlave.vagina >= 0) && ($activeSlave.dick > 0)>>two bullet vibrators<<else>>a bullet vibrator<</if>>. <<if ($activeSlave.vagina >= 0) && ($activeSlave.dick > 0)>>You secure one bullet to $activeSlave.slaveName's frenulum and one to her clit<<elseif $activeSlave.dick > 0>>You secure the bullet to $activeSlave.slaveName's frenulum<<elseif $activeSlave.vagina == -1>>You secure the bullet to her perineum<<else>>You secure the bullet to $activeSlave.slaveName's clit<</if>>. You explain that the arcology continually monitors your vital signs, and will use them to estimate your arousal; the system controls the bullet vibrators, which will emit stimulating vibrations scaled to your pleasure. The more pleasure you feel, the more pleasant the vibrations will be, though they will not bring her to orgasm until you climax. To demonstrate, you give the head of your cock a quick squeeze. $activeSlave.slaveName squeals in surprise at the sudden stimulation as the bullets spring to life. You tell her to get to work. Though timid at first, as she proceeds to blow you, she becomes more and more enthusiastic as her own pleasure builds. It isn't long until she's deepthroating you enthusiastically and begging you to cum in her mouth. You make her hold out a bit longer, and then you complete the training session, filling her mouth with your cum. She climaxes in turn, and virtually melts into a quivering mess on your floor.<<if $activeSlave.dick > 0>> $activeSlave.slaveName's cock oozes cum from her intense orgasm, and you command her to clean it off the floor before she gets back to her duties.<</if>><<if random(1,4) == 4>>@@.lightcoral;You've successfully linked cum and pleasure in her mind@@, guaranteeing her a confusing few days as she tries to reconcile this with her hatred of oral sex.<<set ($activeSlave.fetish = "cumslut")>><<set ($activeSlave.fetishKnown = 1)>><<set ($activeSlave.fetishStrength = 10)>><<else>> This has @@.green;broken her of her bad habits.@@<<set $activeSlave.sexualFlaw = "none">><</if>> This demonstration of your control over her has @@.hotpink;worn down her resistance to your commands.@@ -<<set $activeSlave.oralCount += 1>> -<<set $oralTotal += 1>> -<<set $activeSlave.devotion += 4>> -<</replace>> + <<EventNameDelink $activeSlave>> + <<replace "#result">> + You bring $activeSlave.slaveName into your office and stand her in front of your leather couch. She <<if canSee($activeSlave)>>eyes you <<else>>listens <</if>><<if $activeSlave.devotion < -20>>suspiciously<<else>>worriedly<</if>> as you ready a bullet vibrator. + <<if $activeSlave.dick > 0>> + You secure the bullet to $activeSlave.slaveName's frenulum. + <<elseif $activeSlave.vagina == -1>> + You secure the bullet to her perineum. + <<else>> + You secure the bullet to $activeSlave.slaveName's clit. + <</if>> + You explain that the arcology continually monitors your vital signs, and will use them to estimate your arousal; the system controls the bullet vibrator, which will emit stimulating vibrations scaled to your pleasure. The more pleasure you feel, the more pleasant the vibrations will be, though they will not bring her to orgasm until you climax. To demonstrate, you give the head of your cock a quick squeeze. $activeSlave.slaveName squeals in surprise at the sudden stimulation as the bullets spring to life. You tell her to get to work. Though timid at first, as she proceeds to blow you, she becomes more and more enthusiastic as her own pleasure builds. It isn't long until she's deepthroating you enthusiastically and begging you to cum in her mouth. You make her hold out a bit longer, and then you complete the training session, + <<if $PC.balls == 3>> + pumping cum into her stomach until it visibly begins to swell. + <<elseif $PC.balls == 2>> + pumping cum into her stomach until it threatens to come back up. + <<elseif $PC.balls == 1>> + cumming into her mouth until it spurts from her nose. + <<else>> + filling her mouth with your cum. + <</if>> + She climaxes in turn, and virtually melts into a quivering mess on your floor. + <<if $activeSlave.dick > 0>> + $activeSlave.slaveName's cock oozes cum from her intense orgasm, and you command her to clean it off the floor before she gets back to her duties. + <</if>> + <<if random(1,4) == 4>> + @@.lightcoral;You've successfully linked cum and pleasure in her mind@@, guaranteeing her a confusing few days as she tries to reconcile this with her hatred of oral sex. + <<set $activeSlave.fetish = "cumslut", $activeSlave.fetishKnown = 1, $activeSlave.fetishStrength = 10>> + <<else>> + This has @@.green;broken her of her bad habits.@@ + <<set $activeSlave.sexualFlaw = "none">> + <</if>> + This demonstration of your control over her has @@.hotpink;worn down her resistance to your commands.@@ + <<set $activeSlave.oralCount++, $oralTotal++, $activeSlave.devotion += 4>> + <</replace>> <</link>> -<<if ($activeSlave.dick > 0) && ($activeSlave.preg < 15)>> /* won't work if too pregnant */ +<<if ($activeSlave.dick > 0) && $activeSlave.balls > 0 && ($activeSlave.belly < 1500) && $activeSlave.weight < 130>> /* won't work if too pregnant */ <br><<link "Make her eat her own cum">> -<<replace "#name">> -$activeSlave.slaveName -<</replace>> -<<replace "#result">> -Your cum training tactics have two components: Cum should be linked with pleasure, and cum should not be disgusting to $activeSlave.slaveName, because even $activeSlave.slaveName produces it. To drive home these lessons, you lead $activeSlave.slaveName to your office's leather couch, arranging her<<if $activeSlave.height < 150>> petite<<elseif $activeSlave.height < 160>> short<<elseif $activeSlave.height >= 170>> tall<<elseif $activeSlave.height >= 185>> very tall<</if>> form upside down with her head on the cushion, her back on the backrest, and her <<if $activeSlave.amp == 1>>stumps<<else>>legs<</if>> in the air. In this position, her <<if ($activeSlave.dick > 5)>>gigantic<<elseif ($activeSlave.dick > 4)>>huge<<elseif ($activeSlave.dick > 3)>>large<<elseif ($activeSlave.dick > 2)>>average<<elseif ($activeSlave.dick > 1)>>small<<elseif ($activeSlave.dick > 0)>>tiny<</if>> cock <<if $activeSlave.preg > 10>>rests over her early pregnancy and <</if>>hangs directly over her anxious face. <<if ($activeSlave.aphrodisiacs > 0) || $activeSlave.inflationType == "aphrodisiac">>The aphrodisiacs in her system already have her so aroused she's already dripping precum; as you approach her vulnerable form on the couch, a drop lands on her chin.<<else>>You sit next to her vulnerable form on the couch as she looks at you in anticipation.<</if>> You <<if ($activeSlave.anus > 2)>>insert a wide vibrating plug into her gaping anus<<elseif ($activeSlave.anus > 1)>>insert a big vibrating plug into her ass<<elseif ($activeSlave.anus > 0)>>insert a vibrating plug into her tight ass<<else>>place a bullet vibrator over the pucker of her virgin anus<</if>>, secure a bullet vibrator her quivering perineum, and another to the base of her dick, and set them all to gradually increase the strength of their vibrations. In no time at all she releases a <<if ($activeSlave.dickAccessory == "chastity")>>squirt of ejaculate from her cock cage<<elseif $activeSlave.balls > 0>>torrent of thick, white semen<<else>>pathetic dribble of watery ejaculate<</if>>, all of which lands right on her outstretched tongue and pools in her throat. You nudge her chin to make her close her mouth and swallow. After a week of such treatment, she @@.lightcoral;acquires a taste for semen.@@<<set ($activeSlave.fetish = "cumslut")>><<set ($activeSlave.fetishKnown = 1)>><<set ($activeSlave.fetishStrength = 10)>> -<<set $activeSlave.devotion += 4>> -<</replace>> + <<EventNameDelink $activeSlave>> + <<replace "#result">> + Your cum training tactics have two components: Cum should be linked with pleasure, and cum should not be disgusting to $activeSlave.slaveName, because even $activeSlave.slaveName produces it. To drive home these lessons, you lead $activeSlave.slaveName to your office's leather couch, arranging her + <<if $activeSlave.height < 150>> + petite + <<elseif $activeSlave.height < 160>> + short + <<elseif $activeSlave.height >= 170>> + tall + <<elseif $activeSlave.height >= 185>> + very tall + <</if>> + form upside down with her head on the cushion, her back on the backrest, and her <<if $activeSlave.amp == 1>>stumps<<else>>legs<</if>> in the air. In this position, her + <<if ($activeSlave.dick > 10)>> + obscene + <<elseif ($activeSlave.dick > 9)>> + inhuman + <<elseif ($activeSlave.dick > 8)>> + monstrous + <<elseif ($activeSlave.dick > 7)>> + imposing + <<elseif ($activeSlave.dick > 6)>> + massive + <<elseif ($activeSlave.dick > 5)>> + gigantic + <<elseif ($activeSlave.dick > 4)>> + huge + <<elseif ($activeSlave.dick > 3)>> + large + <<elseif ($activeSlave.dick > 2)>> + average + <<elseif ($activeSlave.dick > 1)>> + small + <<elseif ($activeSlave.dick > 0)>> + tiny + <</if>> + cock <<if $activeSlave.belly >= 100 || $activeSlave.weight > 30>>rests over her <<if $activeSlave.pregKnown == 1>>early pregnancy<<else>>belly<</if>> and <</if>>hangs directly over her anxious face. + <<if ($activeSlave.aphrodisiacs > 0) || $activeSlave.inflationType == "aphrodisiac">> + The aphrodisiacs in her system already have her so aroused she's already dripping precum; as you approach her vulnerable form on the couch, a drop lands on her chin. + <<elseif $activeSlave.prostate > 1>> + Her overactive prostate has her steadily dripping precum; as you approach her vulnerable form on the couch, a drop lands on her chin. + <<else>> + You sit next to her vulnerable form on the couch as she looks at you in anticipation. + <</if>> + You + <<if canDoAnal($activeSlave)>> + <<if ($activeSlave.anus > 2)>> + insert a wide vibrating plug into her gaping anus, + <<elseif ($activeSlave.anus > 1)>> + insert a big vibrating plug into her ass, + <<elseif ($activeSlave.anus > 0)>> + insert a vibrating plug into her tight ass, + <<else>> + place a bullet vibrator over the pucker of her virgin anus, + <</if>> + <<else>> + strap a strong vibrator to her anal chastity, + <</if>> + secure a bullet vibrator her quivering perineum, and another to the base of her dick, and set them all to gradually increase the strength of their vibrations. In no time at all she releases a <<if ["chastity", "combined chastity"].includes($activeSlave.dickAccessory)>> + squirt of ejaculate from her cock cage, + <<elseif $activeSlave.prostate > 2>> + torrent of nearly clear, whatery ejaculate, + <<elseif $activeSlave.prostate == 0>> + pathetic dribble of semen, + <<elseif $activeSlave.balls > 0>> + torrent of thick, white semen, + <<else>> + pathetic dribble of watery ejaculate, + <</if>> + all of which lands right on her outstretched tongue and pools in her throat. You nudge her chin to make her close her mouth and swallow. After a week of such treatment, she @@.lightcoral;acquires a taste for semen.@@ + <<set $activeSlave.fetish = "cumslut", $activeSlave.fetishKnown = 1, $activeSlave.fetishStrength = 10, $activeSlave.devotion += 4>> + <</replace>> <</link>> <</if>> @@ -13217,44 +13728,204 @@ Your cum training tactics have two components: Cum should be linked with pleasur <</if>> <</if>> <</link>> +<<if canDoVaginal($activeSlave) || canDoAnal($activeSlave)>> <br><<link "See if an orgasm will cheer her up">> <<EventNameDelink $activeSlave>> <<replace "#result">> - You<<if $PC.dick == 0>> don a strap-on and<</if>> slide your hands around her <<if $activeSlave.preg > 10>>pregnancy swollen<<elseif ($activeSlave.weight > 10)>>soft<<elseif ($activeSlave.weight >= -10)>>trim<<else>>skinny<</if>> waist, feeling the warmth of her skin, and gently step forward until she's between you and the balcony railing. She is silently obedient, not reacting at all other than to obey your direction as to where she should go. For example, when she feels <<if $PC.dick == 0>>the phallus<<else>>your hardening dick<</if>> pressing against her, she <<if ($activeSlave.height >= 170)>>unconsciously bends forward a little and cocks her hips to position herself<<else>>rises up on the balls of her feet to bring her short body up to the right height<</if>> for anal. She relaxes her <<if ($activeSlave.anus > 2)>>loose anus<<elseif ($activeSlave.anus > 1)>>asshole<<else>>tight little asshole<</if>> completely, making entry easy. Your hands rove, teasing her $activeSlave.nipples nipples, <<if ($activeSlave.boobs > 1000)>>hefting her heavy tits<<elseif ($activeSlave.boobs > 300)>>squeezing her healthy breasts<<else>>pressing her flat chest<</if>><<if $activeSlave.preg > 20>>, massaging her rounded belly, and fondling her popped navel<</if>>. Her face is complacent and unaffected even as her body responds, <<if ($activeSlave.dickAccessory == "chastity")>>since her body is used to its caged cock being neglected in favor of her asspussy<<elseif ($activeSlave.dick > 0) && ($activeSlave.hormoneBalance >= 100)>>her useless dick sporting a drop of precum<<elseif ($activeSlave.dick > 0) && ($activeSlave.balls == 0)>>her soft dick twitching feebly<<elseif $activeSlave.dick > 4>>her giant penis protruding through a gap in the railing<<elseif $activeSlave.dick > 2>>her penis pressing hard against the railing<<elseif $activeSlave.dick > 0>>her pathetic hardon barely protruding from between her thighs<<elseif $activeSlave.clit > 0>>her huge clit stiff under a brush from your fingers<<elseif $activeSlave.vagina == -1>>her asspussy ready and relaxed under a brush from your fingers<<else>>her pussy warm and wet under a brush from your fingers<</if>>. Even her eventual orgasm is entirely mechanical, a simple tightening of her <<if ($activeSlave.anus > 2)>>gaping<<elseif ($activeSlave.anus > 1)>>loosened<<else>>tight<</if>> sphincter, a gasp of air into her lungs, and a slight shiver. There is a flaw at the corner of her mouth that might be transitory pleasure, but a look <<if canSee($activeSlave)>>into her eyes<<else>>at her face<</if>> confirms that it is not so. - <<AnalVCheck>> + You<<if $PC.dick == 0>> don a strap-on and<</if>> slide your hands around her + <<if $activeSlave.belly >= 150000>> + _belly distended + <<elseif $activeSlave.weight > 95>> + fat + <<elseif $activeSlave.belly >= 5000>> + <<if $activeSlave.bellyPreg >= 3000>> + pregnancy swollen + <<eleeif $activeSlave.bellyImplant >= 3000>> + implant swollen + <<else>> + <<print $activeSlave.inflationType>>-bloated + <</if>> + <<elseif $activeSlave.weight > 30>> + pudgy + <<elseif $activeSlave.waist < -95>> + cartoonishly narrow + <<elseif $activeSlave.muscles > 30>> + ripped + <<elseif $activeSlave.waist < -10>> + wasp + <<elseif $activeSlave.weight > 10>> + soft + <<elseif $activeSlave.muscles > 5>> + toned + <<elseif $activeSlave.weight >= -10>> + trim + <<else>> + skinny + <</if>> + waist, feeling the warmth of her skin, and gently step forward until she's between you and the balcony railing. She is silently obedient, not reacting at all other than to obey your direction as to where she should go. For example, when she feels <<if $PC.dick == 0>>the phallus<<else>>your hardening dick<</if>> pressing against her, she + <<if ($activeSlave.height >= 170)>> + unconsciously bends forward a little and cocks her hips to position herself + <<else>> + rises up on the balls of her feet to bring her short body up to the right height + <</if>> + <<if canDoVaginal($activeSlave)>> + for penetration. Her + <<if ($activeSlave.vagina > 2)>> + loose cunt + <<elseif ($activeSlave.vagina > 1)>> + pussy + <<else>> + tight little pussy + <</if>> + is already moist in expectation, making entry easy. + <<VaginalVCheck>> + <<else>> + for anal. She relaxes her + <<if ($activeSlave.anus > 2)>> + loose anus + <<elseif ($activeSlave.anus > 1)>> + asshole + <<else>> + tight little asshole + <</if>> + completely, making entry easy. + <<AnalVCheck>> + <</if>> + Your hands rove, teasing her $activeSlave.nipples nipples, + <<if ($activeSlave.boobs > 1000)>> + hefting her heavy tits, + <<elseif ($activeSlave.boobs > 300)>> + squeezing her healthy breasts, + <<else>> + pressing her flat chest, + <</if>> + <<if $activeSlave.belly >= 1500>> + massaging her rounded belly<<if $activeSlave.belly > 10000>> and fondling her popped navel<</if>>. + <<else>> + and + <<if $activeSlave.weight > 130>> + groping her huge gut. + <<elseif $activeSlave.weight > 95>> + groping her fat belly. + <<elseif $activeSlave.muscles > 30>> + fondling her abs. + <<elseif $activeSlave.weight > 10>> + groping her plush belly. + <<else>> + fondling her flat stomach. + <</if>> + <</if>> + Her face is complacent and unaffected even as her body responds, + <<if ["chastity", "combined chastity"].includes($activeSlave.dickAccessory)>> + since her body is used to its caged cock being neglected in favor of her <<if $activeSlave.vagina > -1>>pussy<<else>>asspussy<</if>>. + <<elseif ($activeSlave.dick > 0) && ($activeSlave.hormoneBalance >= 100)>> + her useless dick sporting a drop of precum. + <<elseif ($activeSlave.dick > 0) && ($activeSlave.balls == 0)>> + her soft dick twitching feebly. + <<elseif $activeSlave.dick > 4>> + her giant penis protruding through a gap in the railing. + <<elseif $activeSlave.dick > 2>> + her penis pressing hard against the railing. + <<elseif $activeSlave.dick > 0>> + her pathetic hardon barely protruding from between her thighs. + <<elseif $activeSlave.clit > 0>> + her huge clit stiff under a brush from your fingers. + <<elseif $activeSlave.vagina == -1>> + her asspussy ready and relaxed under a brush from your fingers. + <<else>> + her pussy warm and wet under a brush from your fingers. + <</if>> + Even her eventual orgasm is entirely mechanical, a simple tightening of her + <<if canDoVaginal($activeSlave)>> + <<if ($activeSlave.vagina > 2)>> + gaping cunt, + <<elseif ($activeSlave.vagina > 1)>> + traveled pussy, + <<else>> + tight vagina, + <</if>> + <<else>> + <<if ($activeSlave.anus > 2)>> + gaping + <<elseif ($activeSlave.anus > 1)>> + loosened + <<else>> + tight + <</if>> + sphincter, + <</if>> + a gasp of air into her lungs, and a slight shiver. There is a flaw at the corner of her mouth that might be transitory pleasure, but a look <<if canSee($activeSlave)>>into her eyes<<else>>at her face<</if>> confirms that it is not so. <</replace>> -<</link>><<if ($activeSlave.anus == 0)>> //This option will take virginity//<</if>> +<</link>><<if canDoVaginal($activeSlave) && ($activeSlave.vagina == 0)>>//This option will take virginity//<<elseif !canDoVaginal($activeSlave) && ($activeSlave.anus == 0)>> //This option will take anal virginity//<</if>> +<</if>> <<case "masterful entertainer">> <<link "Go clubbing">> <<EventNameDelink $activeSlave>> <<replace "#result">> - You inform $activeSlave.slaveName of your plans and tell her to get dressed appropriately. She meets you at the door wearing glitzy heels, an extremely short skirt<<if $activeSlave.preg > 20>> barely noticeable under her pregnant belly<</if>>, and a string bikini top so brief that her areolae are clearly visible. As you descend through $arcologies[0].name the beats get faster and the drops get heavier. By the time you reach the club where the Free Cities' hottest DJ has a show tonight, $activeSlave.slaveName is a whirlwind of sexual energy in motion, moving with every beat and catching every eye<<if $activeSlave.preg > 20>>, despite how far along she is<</if>>. Her skills could have half the club lining up to fuck her for money, but tonight she's all yours. The entire floor is envious of you as the night wears on and her dancing turns into sexual servicing you in time with the music. <<if ($activeSlave.dick > 0) && canAchieveErection($activeSlave)>>Her tiny skirt does nothing to hide her erection<<elseif ($activeSlave.clit > 0)>>Her tiny skirt displays her big, engorged clit<<elseif $activeSlave.vagina == -1>>Her arched back and cocked hips make it very clear that she wants her asspussy fucked<<else>>The smell of her arousal is noticeable even over the stink of sweat<</if>>. <<if ($activeSlave.boobs > 1000)>>Her breasts get groped and mauled all night<<elseif ($activeSlave.butt > 5)>>She grinds her ass against your crotch all night<<else>>Cum joins the sweat running off her<</if>>. The crowd is duly impressed; @@.green;your reputation has increased.@@ - <</replace>> + You inform $activeSlave.slaveName of your plans and tell her to get dressed appropriately. She meets you at the door wearing glitzy heels, an extremely short skirt<<if $activeSlave.belly >= 5000>> barely noticeable under her _belly <<if $activeSlave.bellyPreg >= 3000>>pregnant <</if>>belly<</if>>, and a string bikini top so brief that her areolae are clearly visible. As you descend through $arcologies[0].name the beats get faster and the drops get heavier. By the time you reach the club where the Free Cities' hottest DJ has a show tonight, $activeSlave.slaveName is a whirlwind of sexual energy in motion, moving with every beat and catching every eye<<if $activeSlave.preg > 30>>, despite how far along she is<<elseif $activeSlave.belly >= 5000 || $activeSlave.weight > 130>>, despite how big she is<</if>>. Her skills could have half the club lining up to fuck her for money, but tonight she's all yours. The entire floor is envious of you as the night wears on and her dancing turns into sexual servicing you in time with the music. + <<if ["chastity", "combined chastity"].includes($activeSlave.dickAccessory)>> + The smell of her pre-cum is noticeable even over the stink of sweat. + <<elseif ($activeSlave.dick > 0) && canAchieveErection($activeSlave)>> + Her tiny skirt does nothing to hide her erection. + <<elseif ($activeSlave.clit > 0)>> + Her tiny skirt displays her big, engorged clit. + <<elseif !canDoVaginal($activeSlave) && canDoAnal($activeSlave)>> + Her arched back and cocked hips make it very clear that she wants her asspussy fucked. + <<else>> + The smell of her arousal is noticeable even over the stink of sweat. + <</if>> + <<if ($activeSlave.boobs > 1000)>> + Her breasts get groped and mauled all night. + <<elseif ($activeSlave.butt > 5)>> + She grinds her ass against your crotch all night. + <<else>> + Cum joins the sweat running off her. + <</if>> + The crowd is duly impressed; @@.green;your reputation has increased.@@ <<set $rep += 100>> + <</replace>> <</link>> +<<if $activeSlave.belly < 15000>> <br><<link "Attend a milonga">> <<EventNameDelink $activeSlave>> <<replace "#result">> - You inform $activeSlave.slaveName of your plans and tell her to get dressed appropriately. She meets you at the door wearing classy heels and a gorgeous long dress cunningly designed to adhere to her while she dances despite the fact that it displays all of one leg, her entire back<<if $activeSlave.preg > 20>>, her pregnant belly<</if>>, cleavage, and the sides of both breasts. She has her hair up in a perfect bun accented with a spray of the latest jewelry, and is wearing severe makeup that makes her look aristocratic and elegant by turns. The host of the milonga, an old-world tango enthusiast, knows well the social graces and invites you, as the most prominent attendee, to perform the traditional demonstration tango that begins the dance. It goes wonderfully, and the entire party sighs in appreciation as you perform the classic tango. You lower $activeSlave.slaveName<<if $activeSlave.preg > 20>>'s heavy body<</if>> gracefully and pull her back up into a close embrace, and breath catches in more than one throat. As tradition dictates she dances with many partners throughout the night. One concession to Free Cities sensibilities is that the male and female roles in the tango may be filled by anyone, and $activeSlave.slaveName switches flawlessly between playing the female role to the elderly host one dance and the male role to his teenage granddaughter the next. The poor girl spends the rest of the evening staring at $activeSlave.slaveName with her tongue tied. Whoever $activeSlave.slaveName dances with, she always subtly shows by glance and gesture that it's you she truly wants. Everyone is quite envious of you; @@.green;your reputation has increased.@@ - <</replace>> + You inform $activeSlave.slaveName of your plans and tell her to get dressed appropriately. She meets you at the door wearing classy heels and a gorgeous long dress cunningly designed to adhere to her while she dances despite the fact that it displays all of one leg, her entire back<<if $activeSlave.belly >= 5000>>, her _belly <<if $activeSlave.bellyPreg >= 3000>>pregnant <</if>>belly<</if>>, cleavage, and the sides of both breasts. She has her hair up in a perfect bun accented with a spray of the latest jewelry, and is wearing severe makeup that makes her look aristocratic and elegant by turns. The host of the milonga, an old-world tango enthusiast, knows well the social graces and invites you, as the most prominent attendee, to perform the traditional demonstration tango that begins the dance. It goes wonderfully, and the entire party sighs in appreciation as you perform the classic tango. You lower $activeSlave.slaveName<<if $activeSlave.belly >= 10000 || $activeSlave.weight > 130>>'s heavy body<</if>> gracefully and pull her back up into a close embrace, and breath catches in more than one throat. As tradition dictates she dances with many partners throughout the night. One concession to Free Cities sensibilities is that the male and female roles in the tango may be filled by anyone, and $activeSlave.slaveName switches flawlessly between playing the female role to the elderly host one dance and the male role to his teenage granddaughter the next. The poor girl spends the rest of the evening staring at $activeSlave.slaveName with her tongue tied. Whoever $activeSlave.slaveName dances with, she always subtly shows by glance and gesture that it's you she truly wants. Everyone is quite envious of you; @@.green;your reputation has increased.@@ <<set $rep += 100>> + <</replace>> <</link>> +<</if>> <br><<link "Never mind Friday night, the moon's out and it's romantic on the balcony">> <<EventNameDelink $activeSlave>> <<replace "#result">> - You inform $activeSlave.slaveName of your plans and tell her to get dressed appropriately. She meets you at the door absolutely naked<<if $activeSlave.preg > 20>>, her motherly body on full display<</if>>. She has half a question on her face, wondering whether this is going too far, but it vanishes when you <<if canSee($activeSlave)>>smile reassuringly at<<else>>compliment<</if>> her. You take her by the hand and lead her out onto the private balcony outside your office. It's a cloudless night, and the moon is full. You order the arcology to play a classic dance medley, and $activeSlave.slaveName becomes all innocence and grace, the perfect dance partner<<if $activeSlave.preg > 20>>, despite her heavy pregnancy<</if>>. The only real consequence of her nudity is the extra sway of her breasts<<if ($activeSlave.dick > 0) && canAchieveErection($activeSlave)>>, her visible erection,<<elseif ($activeSlave.clit > 0)>>, her visibly engorged clit,<</if>> and the hardness of her nipples in the cool night when the dance brings you close. She enjoys herself immensely and in no time at all, she's meekly asking you to take her inside and dance with her on the bed. Naturally, you oblige. Her @@.hotpink;devotion to you@@ and @@.mediumaquamarine;trust in you@@ have increased. + You inform $activeSlave.slaveName of your plans and tell her to get dressed appropriately. She meets you at the door absolutely naked<<if $activeSlave.bellyPreg >= 1500>>, her motherly body on full display<</if>>. She has half a question on her face, wondering whether this is going too far, but it vanishes when you <<if canSee($activeSlave)>>smile reassuringly at<<else>>compliment<</if>> her. You take her by the hand and lead her out onto the private balcony outside your office. It's a cloudless night, and the moon is full. You order the arcology to play a classic dance medley, and $activeSlave.slaveName becomes all innocence and grace, the perfect dance partner<<if $activeSlave.bellyPreg >= 10000>>, despite her heavy pregnancy<<elseif $activeSlave.belly >= 10000 || $activeSlave.weight > 130>>, despite her weight<</if>>. The only real consequence of her nudity is the + <<if $activeSlave.breasts >= 300>> + extra sway of her breasts, + <</if>> + <<if canPenetrate($activeSlave)>> + her visible erection, + <<elseif ($activeSlave.clit > 0)>> + her visibly engorged clit + <</if>> + and the hardness of her nipples in the cool night when the dance brings you close. She enjoys herself immensely and in no time at all, she's meekly asking you to take her inside and dance with her on the bed. Naturally, you oblige. <</replace>> - <<set $activeSlave.devotion += 3>> - <<set $activeSlave.devotion += 3>> - <<if ($activeSlave.vagina > -1) && (canDoVaginal($activeSlave))>> - <<set $activeSlave.vaginalCount += 1>> - <<set $vaginalTotal += 1>> + <<set $activeSlave.devotion += 3, $activeSlave.trust += 3>> + <<if $activeSlave.toyHole == "dick">> + <<set $activeSlave.penetrativeCount++, $penetrativeTotal++>> + <<if $PC.vagina == 1 && $PC.preg == 0 && $activeSlave.ballType == "human" && $activeSlave.vasectomy == 0>> + <<KnockMeUp $PC 20 0 $activeSlave.ID>> + <</if>> + <<elseif canDoVaginal($activeSlave)>> + <<VaginalVCheck>> + <<elseif canDoAnal($activeSlave)>> + <<AnalVCheck>> + <<elseif $activeSlave.breasts >= 1000>> + <<set $activeSlave.mammaryCount++, $mammaryTotal++>> <<else>> - <<set $activeSlave.analCount += 1>> - <<set $analTotal += 1>> + <<set $activeSlave.oralCount++, $oralTotal++>> <</if>> + Her @@.hotpink;devotion to you@@ and @@.mediumaquamarine;trust in you@@ have increased. <</link>> <<case "masterful whore">> diff --git a/src/uncategorized/ptWorkaround.tw b/src/uncategorized/ptWorkaround.tw index 192c9e4a9035a4f69a0f829262182301ac14e3e3..641dcd3c866903176e6b17d0ac7ec336a3cdc022 100644 --- a/src/uncategorized/ptWorkaround.tw +++ b/src/uncategorized/ptWorkaround.tw @@ -90,166 +90,202 @@ <</if>> <<case "soften her behavioral flaw">> - <<if ($activeSlave.behavioralFlaw == "arrogant")>> - $activeSlave.slaveName thinks she's better than everyone else. She has some basis for a high opinion of herself; otherwise you wouldn't be bothering with her. You do your best to maintain her belief that she has something special to offer while training her to offer it to you without objection. - <<elseif ($activeSlave.behavioralFlaw == "bitchy")>> - $activeSlave.slaveName always has a cutting remark ready. Some of them are actually pretty good, and you'd prefer to keep her cutting wit intact. You strike a careful balance with her, punishing the wrong remark at the wrong time, but rewarding appropriately biting comments. - <<elseif ($activeSlave.behavioralFlaw == "odd")>> - $activeSlave.slaveName is odd. She's usually annoying, but on occasion her oddities can produce great comic relief. You strike a careful balance with her, punishing her when she irritates you, but allowing and even rewarding harmless little idiosyncrasies. - <<elseif ($activeSlave.behavioralFlaw == "hates men")>> - $activeSlave.slaveName does not like men. She desperately needs social contact, though, so you encourage her to rely on women to address her emotional needs. This is easy, since - <<if $PC.vagina == 1>> - you've got a pussy yourself. - <<else>> - there are several readily available. - <</if>> - <<elseif ($activeSlave.behavioralFlaw == "hates women")>> - $activeSlave.slaveName does not like girls. She desperately needs social contact, though, so you encourage her to rely on men to address her emotional needs. This is easy, since - <<if $PC.dick == 0>> - there are several readily available. - <<else>> - you've got a cock yourself. - <</if>> - <<elseif ($activeSlave.behavioralFlaw == "anorexic")>> - $activeSlave.slaveName suffers from anorexia. You work with her patiently, applying the very best in modern therapy for this troubling condition. It's usually a product of poor self esteem, and you do your best to build hers up without diminishing her submission to you. - <<elseif ($activeSlave.behavioralFlaw == "gluttonous")>> - $activeSlave.slaveName's diet is already closely controlled, but the impulse to overeat is strong in her and like most gluttons she manages to be quite cunning. You take a hard line with her, and do your best to replace her addiction to the endorphin release of eating with an addiction to the endorphin release of exercise. - <<elseif ($activeSlave.behavioralFlaw == "liberated")>> - $activeSlave.slaveName can express a decent argument for why it's wrong to use her as a sex slave. With a combination of rote training, discussion, and reinforcement, you do your best to turn this into a sincere belief in the moral rightness of slavery. - <<elseif ($activeSlave.behavioralFlaw == "devout")>> - $activeSlave.slaveName remains devoted to an old world faith that serves her as a reservoir of mental resilience. Like all such beliefs, hers has certain sexual elements; you amuse yourself by forcing her to break them, and rewarding her generously when she does. - <</if>> - <<set $activeSlave.training += 100-($activeSlave.intelligence*10)+(($activeSlave.devotion+$activeSlave.trust)/10)>> - <<if ($PC.slaving >= 100)>> - <<set $activeSlave.training += 20>> - <</if>> - <<if $activeSlave.training < 100>> - You make progress, but she's the same at the end of the week. - <<else>> - <<set $activeSlave.training = 0>> - By the end of the week, @@.green;you resolve her flaw into something special.@@ @@.hotpink;Her obedience has increased.@@ - <<SoftenBehavioralFlaw $activeSlave>> - <<set $activeSlave.devotion += 4>> - <</if>> - <<if $activeSlave.fetishKnown != 1>> - <<if ($activeSlave.fetish == "submissive")>> - She really takes to your close attention; @@.pink;she's a natural submissive!@@ - <<set ($activeSlave.fetishKnown = 1)>> - <<elseif ($activeSlave.fetish == "cumslut")>> - While you're giving her personal attention, you discover by chance that @@.pink;she has an oral fixation!@@ - <<set ($activeSlave.fetishKnown = 1)>> - <<elseif ($activeSlave.fetish == "masochist")>> - While you're giving her personal correction, you discover by chance that @@.pink;she likes pain!@@ - <<set ($activeSlave.fetishKnown = 1)>> - <<elseif ($activeSlave.fetish == "humiliation")>> - While you're giving her personal attention in public, you discover by chance that @@.pink;she likes humiliation!@@ - <<set ($activeSlave.fetishKnown = 1)>> - <</if>> - <</if>> <<if ($activeSlave.behavioralFlaw == "none")>> - With her behavioral flaw softened, + $activeSlave.slaveName got over her behavioral flaw without you, @@.yellow;her training assignment has defaulted to <<if ($activeSlave.sexualFlaw == "none")>> <<if ($activeSlave.devotion <= 20) && ($activeSlave.trust > -20)>> - breaking her will. - <<set $trainingRegimen = "break her will">> + breaking her will. + <<set $trainingRegimen = "break her will">> <<else>> - fostering devotion. - <<set $trainingRegimen = "build her devotion">> + fostering devotion. + <<set $trainingRegimen = "build her devotion">> <</if>> <<else>> softening her sexual flaw. <<set $trainingRegimen = "soften her sexual flaw">> <</if>> @@ - <</if>> - -<<case "soften her sexual flaw">> - $activeSlave.slaveName - <<switch $activeSlave.sexualFlaw>> - <<case "hates oral">> - has a powerful gag reflex. Though it would be simpler to train her out of it, you do your best to train her to safely take a rough facefuck without losing the fun aspects of forcing a slave to swallow a phallus, like the struggles, the gagging, and the tears. - <<set $activeSlave.oralCount += 10, $oralTotal += 10>> - <<case "hates anal">> - does not like it up the butt. Though it would be simpler to train her out of it, you do your best to train her to safely take a rough buttfuck without losing the fun aspects of anal rape, like the struggles, the whining, and the tears. - <<AnalVCheck 10>> - <<case "hates penetration">> - <<if ($activeSlave.vagina > -1) && ($activeSlave.vaginalAccessory != "chastity belt")>> - does not like sex. Though it would be simpler to train her out of it, you do your best to train her to safely take a hard pounding without losing the fun aspects of forced sex, like the struggles, the whining, and the tears. - <<VaginalVCheck 10>> - <<else>> - does not like it up the butt. Though it would be simpler to train her out of it, you do your best to train her to safely take a rough buttfuck without losing the fun aspects of anal rape, like the struggles, the whining, and the tears. - <<AnalVCheck 10>> + <<else>> + <<if ($activeSlave.behavioralFlaw == "arrogant")>> + $activeSlave.slaveName thinks she's better than everyone else. She has some basis for a high opinion of herself; otherwise you wouldn't be bothering with her. You do your best to maintain her belief that she has something special to offer while training her to offer it to you without objection. + <<elseif ($activeSlave.behavioralFlaw == "bitchy")>> + $activeSlave.slaveName always has a cutting remark ready. Some of them are actually pretty good, and you'd prefer to keep her cutting wit intact. You strike a careful balance with her, punishing the wrong remark at the wrong time, but rewarding appropriately biting comments. + <<elseif ($activeSlave.behavioralFlaw == "odd")>> + $activeSlave.slaveName is odd. She's usually annoying, but on occasion her oddities can produce great comic relief. You strike a careful balance with her, punishing her when she irritates you, but allowing and even rewarding harmless little idiosyncrasies. + <<elseif ($activeSlave.behavioralFlaw == "hates men")>> + $activeSlave.slaveName does not like men. She desperately needs social contact, though, so you encourage her to rely on women to address her emotional needs. This is easy, since + <<if $PC.vagina == 1>> + you've got a pussy yourself. + <<else>> + there are several readily available. + <</if>> + <<elseif ($activeSlave.behavioralFlaw == "hates women")>> + $activeSlave.slaveName does not like girls. She desperately needs social contact, though, so you encourage her to rely on men to address her emotional needs. This is easy, since + <<if $PC.dick == 0>> + there are several readily available. + <<else>> + you've got a cock yourself. + <</if>> + <<elseif ($activeSlave.behavioralFlaw == "anorexic")>> + $activeSlave.slaveName suffers from anorexia. You work with her patiently, applying the very best in modern therapy for this troubling condition. It's usually a product of poor self esteem, and you do your best to build hers up without diminishing her submission to you. + <<elseif ($activeSlave.behavioralFlaw == "gluttonous")>> + $activeSlave.slaveName's diet is already closely controlled, but the impulse to overeat is strong in her and like most gluttons she manages to be quite cunning. You take a hard line with her, and do your best to replace her addiction to the endorphin release of eating with an addiction to the endorphin release of exercise. + <<elseif ($activeSlave.behavioralFlaw == "liberated")>> + $activeSlave.slaveName can express a decent argument for why it's wrong to use her as a sex slave. With a combination of rote training, discussion, and reinforcement, you do your best to turn this into a sincere belief in the moral rightness of slavery. + <<elseif ($activeSlave.behavioralFlaw == "devout")>> + $activeSlave.slaveName remains devoted to an old world faith that serves her as a reservoir of mental resilience. Like all such beliefs, hers has certain sexual elements; you amuse yourself by forcing her to break them, and rewarding her generously when she does. <</if>> - <<case "apathetic">> - doesn't put out much effort when having sex. You do your best to redirect this apathy into caring for her partners; since she obviously doesn't think much of herself, she can spare the effort. - <<set $activeSlave.oralCount += 10, $oralTotal += 10>> - <<case "crude">> - does not pay enough attention to standards when having sex, leading to crude comments and unsexy noises. To remedy this, you have her give you oral regularly: a sacrifice, but you make sacrifices for your slaves' improvement. Oral sex can be difficult to make elegant, but you work with her to make it as pretty as possible, even when you require her to apply her mouth to some of the less common erogenous zones. You do your best to retain her sexual openness while making her more sexually presentable. - <<set $activeSlave.oralCount += 10, $oralTotal += 10>> - <<case "judgemental">> - has a bad habit of being sexually judgemental, belittling anyone who doesn't live up to her pretensions of standards. You do your best to train her to perform regardless of her partners' endowments, aiming for a delicate balance that will allow her to get off with anyone while permitting her to retain and even build on her appetite for big dicks. You permit her to achieve release only when she's done well with <<if $PC.dick == 1>>your thick cock<<else>>a fat dildo<</if>> - <<if $activeSlave.anus > 0>> - lodged up her butt. - <<AnalVCheck 10>> + <<set $activeSlave.training += 100-($activeSlave.intelligence*10)+(($activeSlave.devotion+$activeSlave.trust)/10)>> + <<if ($PC.slaving >= 100)>> + <<set $activeSlave.training += 20>> + <</if>> + <<if $activeSlave.training < 100>> + You make progress, but she's the same at the end of the week. <<else>> - down her throat. - <<set $activeSlave.oralCount += 10, $oralTotal += 10>> + <<set $activeSlave.training = 0>> + By the end of the week, @@.green;you resolve her flaw into something special.@@ @@.hotpink;Her obedience has increased.@@ + <<SoftenBehavioralFlaw $activeSlave>> + <<set $activeSlave.devotion += 4>> <</if>> - <<case "shamefast">> - is shamefast. You do your best to train her out of this, but carefully retain the essential core of embarrassment, aiming for a slave that can use her body to titillate the viewer and then offer an authentic blush at herself. - <<set $activeSlave.oralCount += 10, $oralTotal += 10>> - <<case "idealistic">> - still sees sex in a naive light, hoping to be romanced, teased to arousal, and asked permission. Training her directly out of this would shatter the poor girl's world, so you work with her carefully, doing your best to keep sex special for her. - <<case "repressed">> - is repressed. You strike a delicate balance with her, doing your best to train her to fuck as a sex slave should, but trying to retain the rush of doing the forbidden that makes her flush, shiver, and moan. - <<set $activeSlave.oralCount += 10, $oralTotal += 10>> - <<default>> - has something. You should probably report this as nobody knows what is currently happening. Her flaw was supposed to be $activeSlave.sexualFlaw. - <</switch>> - <<set $activeSlave.training += 100-($activeSlave.intelligence*10)+(($activeSlave.devotion+$activeSlave.trust)/10)>> - <<if ($PC.slaving >= 100)>> - <<set $activeSlave.training += 20>> - <</if>> - <<if $activeSlave.training < 100>> - You make progress, but she's the same at the end of the week. - <<else>> - <<set $activeSlave.training = 0>> - By the end of the week, @@.green;you resolve her flaw into something special.@@ @@.hotpink;Her obedience has increased.@@ - <<SoftenSexualFlaw $activeSlave>> - <<set $activeSlave.devotion += 4>> - <</if>> - <<if $activeSlave.fetishKnown != 1>> - <<if ($activeSlave.fetish == "submissive")>> - She really takes to your close attention; @@.pink;she's a natural submissive!@@ - <<set ($activeSlave.fetishKnown = 1)>> - <<elseif ($activeSlave.fetish == "cumslut")>> - While you're giving her personal attention, you discover by chance that @@.pink;she has an oral fixation!@@ - <<set ($activeSlave.fetishKnown = 1)>> - <<elseif ($activeSlave.fetish == "masochist")>> - While you're giving her personal correction, you discover by chance that @@.pink;she likes pain!@@ - <<set ($activeSlave.fetishKnown = 1)>> - <<elseif ($activeSlave.fetish == "humiliation")>> - While you're giving her personal attention in public, you discover by chance that @@.pink;she likes humiliation!@@ - <<set ($activeSlave.fetishKnown = 1)>> + <<if $activeSlave.fetishKnown != 1>> + <<if ($activeSlave.fetish == "submissive")>> + She really takes to your close attention; @@.pink;she's a natural submissive!@@ + <<set ($activeSlave.fetishKnown = 1)>> + <<elseif ($activeSlave.fetish == "cumslut")>> + While you're giving her personal attention, you discover by chance that @@.pink;she has an oral fixation!@@ + <<set ($activeSlave.fetishKnown = 1)>> + <<elseif ($activeSlave.fetish == "masochist")>> + While you're giving her personal correction, you discover by chance that @@.pink;she likes pain!@@ + <<set ($activeSlave.fetishKnown = 1)>> + <<elseif ($activeSlave.fetish == "humiliation")>> + While you're giving her personal attention in public, you discover by chance that @@.pink;she likes humiliation!@@ + <<set ($activeSlave.fetishKnown = 1)>> + <</if>> + <</if>> + <<if ($activeSlave.behavioralFlaw == "none")>> + With her behavioral flaw softened, + @@.yellow;her training assignment has defaulted to + <<if ($activeSlave.sexualFlaw == "none")>> + <<if ($activeSlave.devotion <= 20) && ($activeSlave.trust > -20)>> + breaking her will. + <<set $trainingRegimen = "break her will">> + <<else>> + fostering devotion. + <<set $trainingRegimen = "build her devotion">> + <</if>> + <<else>> + softening her sexual flaw. + <<set $trainingRegimen = "soften her sexual flaw">> + <</if>> + @@ <</if>> <</if>> + +<<case "soften her sexual flaw">> <<if ($activeSlave.sexualFlaw == "none")>> - With her sexual flaw softened, + $activeSlave.slaveName got over her sexual flaw without you, @@.yellow;her training assignment has defaulted to <<if ($activeSlave.behavioralFlaw == "none")>> <<if ($activeSlave.devotion <= 20) && ($activeSlave.trust > -20)>> - breaking her will. - <<set $trainingRegimen = "break her will">> + breaking her will. + <<set $trainingRegimen = "break her will">> <<else>> - fostering devotion. - <<set $trainingRegimen = "build her devotion">> + fostering devotion. + <<set $trainingRegimen = "build her devotion">> <</if>> <<else>> softening her behavioral flaw. <<set $trainingRegimen = "soften her behavioral flaw">> <</if>> @@ + <<else>> + $activeSlave.slaveName + <<switch $activeSlave.sexualFlaw>> + <<case "hates oral">> + has a powerful gag reflex. Though it would be simpler to train her out of it, you do your best to train her to safely take a rough facefuck without losing the fun aspects of forcing a slave to swallow a phallus, like the struggles, the gagging, and the tears. + <<set $activeSlave.oralCount += 10, $oralTotal += 10>> + <<case "hates anal">> + does not like it up the butt. Though it would be simpler to train her out of it, you do your best to train her to safely take a rough buttfuck without losing the fun aspects of anal rape, like the struggles, the whining, and the tears. + <<AnalVCheck 10>> + <<case "hates penetration">> + <<if ($activeSlave.vagina > -1) && ($activeSlave.vaginalAccessory != "chastity belt")>> + does not like sex. Though it would be simpler to train her out of it, you do your best to train her to safely take a hard pounding without losing the fun aspects of forced sex, like the struggles, the whining, and the tears. + <<VaginalVCheck 10>> + <<else>> + does not like it up the butt. Though it would be simpler to train her out of it, you do your best to train her to safely take a rough buttfuck without losing the fun aspects of anal rape, like the struggles, the whining, and the tears. + <<AnalVCheck 10>> + <</if>> + <<case "apathetic">> + doesn't put out much effort when having sex. You do your best to redirect this apathy into caring for her partners; since she obviously doesn't think much of herself, she can spare the effort. + <<set $activeSlave.oralCount += 10, $oralTotal += 10>> + <<case "crude">> + does not pay enough attention to standards when having sex, leading to crude comments and unsexy noises. To remedy this, you have her give you oral regularly: a sacrifice, but you make sacrifices for your slaves' improvement. Oral sex can be difficult to make elegant, but you work with her to make it as pretty as possible, even when you require her to apply her mouth to some of the less common erogenous zones. You do your best to retain her sexual openness while making her more sexually presentable. + <<set $activeSlave.oralCount += 10, $oralTotal += 10>> + <<case "judgemental">> + has a bad habit of being sexually judgemental, belittling anyone who doesn't live up to her pretensions of standards. You do your best to train her to perform regardless of her partners' endowments, aiming for a delicate balance that will allow her to get off with anyone while permitting her to retain and even build on her appetite for big dicks. You permit her to achieve release only when she's done well with <<if $PC.dick == 1>>your thick cock<<else>>a fat dildo<</if>> + <<if $activeSlave.anus > 0>> + lodged up her butt. + <<AnalVCheck 10>> + <<else>> + down her throat. + <<set $activeSlave.oralCount += 10, $oralTotal += 10>> + <</if>> + <<case "shamefast">> + is shamefast. You do your best to train her out of this, but carefully retain the essential core of embarrassment, aiming for a slave that can use her body to titillate the viewer and then offer an authentic blush at herself. + <<set $activeSlave.oralCount += 10, $oralTotal += 10>> + <<case "idealistic">> + still sees sex in a naive light, hoping to be romanced, teased to arousal, and asked permission. Training her directly out of this would shatter the poor girl's world, so you work with her carefully, doing your best to keep sex special for her. + <<case "repressed">> + is repressed. You strike a delicate balance with her, doing your best to train her to fuck as a sex slave should, but trying to retain the rush of doing the forbidden that makes her flush, shiver, and moan. + <<set $activeSlave.oralCount += 10, $oralTotal += 10>> + <<default>> + has something. You should probably report this as nobody knows what is currently happening. Her flaw was supposed to be $activeSlave.sexualFlaw. + <</switch>> + <<set $activeSlave.training += 100-($activeSlave.intelligence*10)+(($activeSlave.devotion+$activeSlave.trust)/10)>> + <<if ($PC.slaving >= 100)>> + <<set $activeSlave.training += 20>> + <</if>> + <<if $activeSlave.training < 100>> + You make progress, but she's the same at the end of the week. + <<else>> + <<set $activeSlave.training = 0>> + By the end of the week, @@.green;you resolve her flaw into something special.@@ @@.hotpink;Her obedience has increased.@@ + <<SoftenSexualFlaw $activeSlave>> + <<set $activeSlave.devotion += 4>> + <</if>> + <<if $activeSlave.fetishKnown != 1>> + <<if ($activeSlave.fetish == "submissive")>> + She really takes to your close attention; @@.pink;she's a natural submissive!@@ + <<set ($activeSlave.fetishKnown = 1)>> + <<elseif ($activeSlave.fetish == "cumslut")>> + While you're giving her personal attention, you discover by chance that @@.pink;she has an oral fixation!@@ + <<set ($activeSlave.fetishKnown = 1)>> + <<elseif ($activeSlave.fetish == "masochist")>> + While you're giving her personal correction, you discover by chance that @@.pink;she likes pain!@@ + <<set ($activeSlave.fetishKnown = 1)>> + <<elseif ($activeSlave.fetish == "humiliation")>> + While you're giving her personal attention in public, you discover by chance that @@.pink;she likes humiliation!@@ + <<set ($activeSlave.fetishKnown = 1)>> + <</if>> + <</if>> + <<if ($activeSlave.sexualFlaw == "none")>> + With her sexual flaw softened, + @@.yellow;her training assignment has defaulted to + <<if ($activeSlave.behavioralFlaw == "none")>> + <<if ($activeSlave.devotion <= 20) && ($activeSlave.trust > -20)>> + breaking her will. + <<set $trainingRegimen = "break her will">> + <<else>> + fostering devotion. + <<set $trainingRegimen = "build her devotion">> + <</if>> + <<else>> + softening her behavioral flaw. + <<set $trainingRegimen = "soften her behavioral flaw">> + <</if>> + @@ + <</if>> <</if>> <<case "learn skills">> diff --git a/src/uncategorized/randomIndividualEvent.tw b/src/uncategorized/randomIndividualEvent.tw index 0f28191ac7ed37245e219fe7c11b3997c7468b3c..9633dfc7a6c113452c077f50a423bfc6c96b84f3 100644 --- a/src/uncategorized/randomIndividualEvent.tw +++ b/src/uncategorized/randomIndividualEvent.tw @@ -1344,7 +1344,7 @@ <<if ($eventSlave.entertainSkill >= 100)>> <<if ($eventSlave.trust > 50)>> -<<if ($eventSlave.assignment == "serve the public")>> +<<if ["serve the public", "serve in the club"].includes($eventSlave.assignment)>> <<set $RESSevent.push("masterful entertainer")>> <</if>> <</if>> diff --git a/src/uncategorized/remoteSurgery.tw b/src/uncategorized/remoteSurgery.tw index 45fdc8ac1d773e7298d97cc92144b2b50d3bebd1..a84dfeef84a59133ca6e893d95b8fef288e1de14 100644 --- a/src/uncategorized/remoteSurgery.tw +++ b/src/uncategorized/remoteSurgery.tw @@ -169,7 +169,7 @@ $pronounCap has <</if>> <<if $activeSlave.lipsImplant == 0>> <<elseif $activeSlave.lipsImplant <= 10>> - $pronounCap has normal lip implants. + $pronounCap has moderate lip implants. <<elseif $activeSlave.lipsImplant <= 20>> $pronounCap has large lip implants. <<else>> @@ -304,7 +304,7 @@ Work on her chest: <<elseif $activeSlave.boobsImplant > 400>> $pronounCap has large, <<print $activeSlave.boobsImplant>>cc breast implants. <<elseif $activeSlave.boobsImplant > 200>> - $pronounCap has normal, <<print $activeSlave.boobsImplant>>cc breast implants. + $pronounCap has moderate, <<print $activeSlave.boobsImplant>>cc breast implants. <<elseif $activeSlave.boobsImplant > 0>> $pronounCap has small, <<print $activeSlave.boobsImplant>>cc breast implants. <</if>> @@ -595,7 +595,7 @@ $pronounCap's got a <<if $activeSlave.buttImplant == 0>> <<elseif $activeSlave.buttImplant == 1>> - $pronounCap has normal butt implants. + $pronounCap has moderate butt implants. <<elseif $activeSlave.buttImplant > 1>> $pronounCap has enormous butt implants. <</if>>