diff --git a/slave variables documentation - Pregmod.txt b/slave variables documentation - Pregmod.txt index 33796ab3d949e89f6e75a2625b2a4b7f59b697bc..866fefd380c3de3e40e0db5121ec5d30a11837ec 100644 --- a/slave variables documentation - Pregmod.txt +++ b/slave variables documentation - Pregmod.txt @@ -2693,6 +2693,7 @@ drugs: "penis enhancement" "testicle enhancement" "psychosuppressants" +"psychostimulants" "steroids" "hormone enhancers" "hormone blockers" @@ -2997,10 +2998,11 @@ slave intelligence intelligenceImplant: Degree of slave's education -0 - uneducated -1+ - partial education (not really used) -15+ - educated -30 - well educated +-15+ - miseducated (slave appears to be dumber than they really are) + 0 - uneducated + 1+ - partial education (not really used) + 15+ - educated + 30 - well educated energy: diff --git a/src/init/storyInit.tw b/src/init/storyInit.tw index 8b97158118390249ba6498bfb204ed32fab7be9a..cae71feb93d16a430bb82fe74f78ff8238be2ab6 100644 --- a/src/init/storyInit.tw +++ b/src/init/storyInit.tw @@ -1486,7 +1486,7 @@ You should have received a copy of the GNU General Public License along with thi })>> -<<set $merchantFSWares = ["AssetExpansionistResearch", "GenderRadicalistResearch", "HedonisticDecadenceResearch", "SlimnessEnthusiastResearch", "TransformationFetishistResearch", "YouthPreferentialistResearch"]>> +<<set $merchantFSWares = ["AssetExpansionistResearch", "GenderRadicalistResearch", "HedonisticDecadenceResearch", "SlaveProfessionalismResearch", "SlimnessEnthusiastResearch", "TransformationFetishistResearch", "YouthPreferentialistResearch"]>> <<set $merchantIllegalWares = ["asexualReproduction", "childhoodFertilityInducedNCS", "PGHack", "RapidCellGrowthFormula", "sympatheticOvaries", "UterineRestraintMesh"]>> /* "AnimalOrgans" for future use */ <<set $RapidCellGrowthFormula = 0>> <<set $UterineRestraintMesh = 0>> diff --git a/src/js/DefaultRules.js b/src/js/DefaultRules.js index 17788bda923b2c2e95d3ae41be214a16d4e4e79e..e2b4b18a0027d248e598cf1b9cd17c27663d2bc4 100644 --- a/src/js/DefaultRules.js +++ b/src/js/DefaultRules.js @@ -1325,6 +1325,13 @@ window.DefaultRules = (function() { } break; + case "psychostimulants": + let origIntel = V.genePool.find(s => s.ID === slave.ID).intelligence; + if (!((slave.intelligence < 100) && (origIntel < slave.intelligence + 15))) { + flag = false; + } + break; + case "breast injections": if (slave.boobs >= 48000) { flag = false; diff --git a/src/js/SlaveState.js b/src/js/SlaveState.js index 2e42c873df6553e5cc94c126cfb5b47987751d96..ef3382df4249cd8da3e386fb9b1d19b4690b8595 100644 --- a/src/js/SlaveState.js +++ b/src/js/SlaveState.js @@ -1670,6 +1670,7 @@ App.Entity.SlaveState = class SlaveState { * * "penis enhancement" * * "testicle enhancement" * * "psychosuppressants" + * * "psychostimulants" * * "steroids" * * "hormone enhancers" * * "hormone blockers" @@ -1958,6 +1959,7 @@ App.Entity.SlaveState = class SlaveState { this.intelligence = 0; /** * Degree of slave 's education + * * -15+: miseducated (slave appears to be dumber than they really are) * * 0: uneducated * * 1+: partial education (not really used) * * 15+: educated diff --git a/src/js/economyJS.js b/src/js/economyJS.js index 4cc75717feaf129ca4ac2bdecd6539e063707217..431470e0903190179356ce8f5da9a0874d3e770c 100644 --- a/src/js/economyJS.js +++ b/src/js/economyJS.js @@ -821,6 +821,7 @@ window.getSlaveCost = function(s) { case 'hyper testicle enhancement': case 'hyper lip injections': case 'growth stimulants': + case 'psychostimulants': cost += drugsCost * 5; break; case 'sag-B-gone': diff --git a/src/js/rulesAssistantOptions.js b/src/js/rulesAssistantOptions.js index 97617fa7a37261f1a910e334d5c3e475f1e52a39..506dc861fc2fb1ef7ad2aac1814078820ab53bd4 100644 --- a/src/js/rulesAssistantOptions.js +++ b/src/js/rulesAssistantOptions.js @@ -2464,6 +2464,9 @@ window.rulesAssistantOptions = (function() { // Mind drugs.push(["psychosuppressants"]); + if (V.arcologies[0].FSSlaveProfessionalismResearch === 1) { + drugs.push(["Mental stimulants (FS)", "psychostimulants"]); + } // Hormones drugs.push(["hormone blockers"]); diff --git a/src/js/slaveSummaryWidgets.js b/src/js/slaveSummaryWidgets.js index 57bde0e490cb8e1000953421397bd8c0b27dbd42..53290e8a5a4cf8d5002dae2975c8113d905b1d3d 100644 --- a/src/js/slaveSummaryWidgets.js +++ b/src/js/slaveSummaryWidgets.js @@ -813,7 +813,10 @@ window.SlaveSummaryUncached = (function() { drugDesc = "Balls+++"; break; case "psychosuppressants": - drugDesc = "Psych"; + drugDesc = "Psych-"; + break; + case "psychostimulants": + drugDesc = "Psych+"; break; case "steroids": drugDesc = "Ster"; diff --git a/src/npc/fFeelings.tw b/src/npc/fFeelings.tw index 4b285f127ab5463577ca4741285316f75fef7fc0..eea803babfb98dd33ae2fb53120f6b1f407172a3 100644 --- a/src/npc/fFeelings.tw +++ b/src/npc/fFeelings.tw @@ -933,6 +933,8 @@ My favorite part of my body i<<s>> The<<s>>e will get me pregnant, right? Like, <<s>>o pregnant I won't be able to <<s>>tand in the end? <</if>> <</if>> +<<case "psychostimulants">> + My thought<<s>> are <<s>>o <<sh>>arp <<Master>>, I feel like I'm actually getting <<s>>marter. <<case "anti-aging cream">> <<if $activeSlave.visualAge+20 < $activeSlave.actualAge>> I look <<s>>o young, <<Master>>, I can barely recogni<<z>>e my<<s>>elf anymore. diff --git a/src/pregmod/theBlackMarket.tw b/src/pregmod/theBlackMarket.tw index a91941294ee8bf45fff4d05aa16a0a3b4cee12fe..2084e5108e524139079e567f94bc996dbe110c08 100644 --- a/src/pregmod/theBlackMarket.tw +++ b/src/pregmod/theBlackMarket.tw @@ -83,6 +83,22 @@ Of all the wonders present, the thing that catches your eye the most is a shady <<run $merchantFSWares.delete("GenderRadicalistResearch")>> <</if>> <</if>> + <<if $thisWeeksFSWares[_bm] == "SlaveProfessionalismResearch">> + <<if $arcologies[0].FSSlaveProfessionalismResearch == 0>> + <<if $dispensary == 1>> + <<if $cash >= 90000>> + [[Purchase the recipe for a proven intelligence boosting compound|The Black Market][cashX(-90000, "capEx"), $arcologies[0].FSSlaveProfessionalismResearch = 1, _dump = $merchantFSWares.delete("SlaveProfessionalismResearch")]] //@@.yellowgreen;<<print cashFormat(90000)>>.@@// + <<else>> + You cannot afford the asking price of @@.red;<<print cashFormat(90000)>>@@ for a proven intelligence boosting compound. "A cup of tea brewed from this compound makes one smarter. Too bad I don't hand out free samples so people like you can remember where they left their money." + <</if>> + <<else>> + You lack the facilities needed to produce drugs of this complexity, so the recipe for a proven intelligence boosting compound is currently unobtainable. + <</if>> + <<else>> + You already possess a recipe for a mind improving tea. + <<run $merchantFSWares.delete("SlaveProfessionalismResearch")>> + <</if>> + <</if>> <<if $thisWeeksFSWares[_bm] == "TransformationFetishistResearch">> <<if $arcologies[0].FSTransformationFetishistResearch == 0>> <<if $ImplantProductionUpgrade == 1>> diff --git a/src/uncategorized/BackwardsCompatibility.tw b/src/uncategorized/BackwardsCompatibility.tw index d7ec71a84fe3ca8b1d2cbf3eeda78bfeae77ad82..a7fdce1b38731a3467e22b13089b5f2eb525b10c 100644 --- a/src/uncategorized/BackwardsCompatibility.tw +++ b/src/uncategorized/BackwardsCompatibility.tw @@ -1195,7 +1195,15 @@ <<set $eugenicsFullControl = 0>> <</if>> <<if ndef $merchantFSWares>> - <<set $merchantFSWares = ["AssetExpansionistResearch", "GenderRadicalistResearch", "HedonisticDecadenceResearch", "SlimnessEnthusiastResearch", "TransformationFetishistResearch", "YouthPreferentialistResearch"]>> + <<set $merchantFSWares = ["AssetExpansionistResearch", "GenderRadicalistResearch", "HedonisticDecadenceResearch", "SlaveProfessionalismResearch", "SlimnessEnthusiastResearch", "TransformationFetishistResearch", "YouthPreferentialistResearch"]>> +<<elseif $merchantFSWares.length == 0>> + <<set $merchantFSWares.push("AssetExpansionistResearch")>> + <<set $merchantFSWares.push("GenderRadicalistResearch")>> + <<set $merchantFSWares.push("HedonisticDecadenceResearch")>> + <<set $merchantFSWares.push("SlaveProfessionalismResearch")>> + <<set $merchantFSWares.push("SlimnessEnthusiastResearch")>> + <<set $merchantFSWares.push("TransformationFetishistResearch")>> + <<set $merchantFSWares.push("YouthPreferentialistResearch")>> <</if>> <<if ndef $merchantIllegalWares>> <<set $merchantIllegalWares = ["asexualReproduction", "childhoodFertilityInducedNCS", "PGHack", "RapidCellGrowthFormula", "sympatheticOvaries", "UterineRestraintMesh"]>> diff --git a/src/uncategorized/costsReport.tw b/src/uncategorized/costsReport.tw index 06f0efb4c51cb308bf4bb595d7507066c3a74c89..fd7b539649069de52ec7fbaeba169a1b2885cef3 100644 --- a/src/uncategorized/costsReport.tw +++ b/src/uncategorized/costsReport.tw @@ -814,6 +814,10 @@ $researchLab.level > 0>> <br> <i>Growth stimulants:</i> @@.yellowgreen;<<print cashFormat(($drugsCost*5))>>@@ <<set _individualCosts += ($drugsCost*5)>> + <<case "psychostimulants">> + <br> <i>Mental stimulants:</i> + @@.yellowgreen;<<print cashFormat(($drugsCost*5))>>@@ + <<set _individualCosts += ($drugsCost*5)>> <<case "intensive breast injections" "intensive butt injections" "intensive penis enhancement" "intensive testicle enhancement" "intensive lip injections" "hyper breast injections" "hyper butt injections" "hyper penis enhancement" "hyper testicle enhancement" "hyper lip injections">> <br> <i>Intensive drugs:</i> @@.yellowgreen;<<print cashFormat($drugsCost*5)>>@@ diff --git a/src/uncategorized/costsWidgets.tw b/src/uncategorized/costsWidgets.tw index 7a5bb8e29e9d168af18f6486b7a1c9eea70dec7a..e7d8932868c5e1476f65100a53ccfab5ae4adeca 100644 --- a/src/uncategorized/costsWidgets.tw +++ b/src/uncategorized/costsWidgets.tw @@ -355,6 +355,10 @@ <br> <i>Growth stimulants:</i> @@.yellowgreen;<<print cashFormat(($drugsCost*5))>>@@ <<set _individualCosts += ($drugsCost*5)>> + <<case "psychostimulants">> + <br> <i>Mental stimulants:</i> + @@.yellowgreen;<<print cashFormat(($drugsCost*5))>>@@ + <<set _individualCosts += ($drugsCost*5)>> <<case "intensive breast injections" "intensive butt injections" "intensive penis enhancement" "intensive testicle enhancement" "intensive lip injections" "hyper breast injections" "hyper butt injections" "hyper penis enhancement" "hyper testicle enhancement" "hyper lip injections">> <br> <i>Intensive drugs:</i> @@.yellowgreen;<<print cashFormat($drugsCost*5)>>@@ diff --git a/src/uncategorized/dispensary.tw b/src/uncategorized/dispensary.tw index aa42bcb21e50d3a73eec68f4f82ac13ee389e405..23b024763d7f0c6d69550543e2170d9fadf7e915 100644 --- a/src/uncategorized/dispensary.tw +++ b/src/uncategorized/dispensary.tw @@ -367,6 +367,27 @@ Future Societies Research <br> <</if>> +<<if $arcologies[0].FSSlaveProfessionalismDecoration == 100>> + <<if ($arcologies[0].FSSlaveProfessionalismResearch == 0)>> + <<if ($rep >= 5000*_PCSkillCheck)>> + [[Fund research into producing an intelligence boosting compound|Dispensary][cashX(forceNeg(60000*_PCSkillCheck), "capEx"),$arcologies[0].FSSlimnessEnthusiastResearch = 1]] //Costs <<print cashFormat(60000*_PCSkillCheck)>>. Will allow the creation of a drug that improves mental faculties.// + <br> + <<else>> + // You lack the reputation to access the research necessary to produce an intelligence boosting compound. // + <br> + <</if>> + <<else>> + The fabricator has been upgraded to manufacture a compound that steadily improves intelligence. + <br> + <</if>> +<<elseif $arcologies[0].FSSlaveProfessionalismResearch == 1>> + The fabricator has been upgraded to manufacture a compound that steadily improves intelligence. + <br> +<<else>> + // Slave Professionalism focused research unavailable. // + <br> +<</if>> + <<if $arcologies[0].FSSlimnessEnthusiastDecoration == 100>> <<if ($arcologies[0].FSSlimnessEnthusiastResearch == 0)>> <<if ($rep >= 5000*_PCSkillCheck)>> diff --git a/src/uncategorized/neighborsDevelopment.tw b/src/uncategorized/neighborsDevelopment.tw index b24656477c6048269dc50f51cde29183604c79c8..57a72413ed299782968758bebb93aa7b2d6b004d 100644 --- a/src/uncategorized/neighborsDevelopment.tw +++ b/src/uncategorized/neighborsDevelopment.tw @@ -1168,6 +1168,7 @@ has an estimated GSP of @@.yellowgreen;<<print cashFormat(_prosperity)>><<if $sh <<set $arcologies[$i].FSSlaveProfessionalism = $FSLockinLevel>> <<set $toSearch = $arcologies[$i].name>> <<if ($toSearch.indexOf("Arcology") != -1) && (random(0,2) == 0)>> + <<set $arcologies[$i].FSSlaveProfessionalismResearch = 1>> Slave Professionalism has reached stability and acceptance there. The arcology has been renamed <<set $arcologies[$i].name = setup.ArcologyNamesSlaveProfessionalism.random()>> '' $arcologies[$i].name'' to mark the occasion. diff --git a/src/uncategorized/saDrugs.tw b/src/uncategorized/saDrugs.tw index 88ac6d61f2ca7a8c9ee4ed34d80a2327dfba4458..d619426034c2ca2645061a4b5e35ec6812a114f1 100644 --- a/src/uncategorized/saDrugs.tw +++ b/src/uncategorized/saDrugs.tw @@ -50,6 +50,34 @@ The psychosuppressants have little effect on $his passive mind. <</if>> +<<case "psychostimulants">> + $He takes a cup of @@.deepskyblue;mind stimulating@@ tea with each meal; + <<if ($slaves[$i].fetish != "mindbroken")>> + the soothing drink @@.mediumaquamarine;sets $his thoughts at ease.@@ + <<if $slaves[$i].devotion < -50>> + <<set $slaves[$i].trust += 6>> + <<elseif $slaves[$i].devotion < -20>> + <<set $slaves[$i].trust += 4>> + <<elseif $slaves[$i].devotion <= 20>> + <<set $slaves[$i].trust += 2>> + <<else>> + <<set $slaves[$i].trust += 1>> + <</if>> + <<set $slaves[$i].intelligence += 1>> + <<if $slaves[$i].energy > 60>> + $He spends @@.red;less time thinking about sex,@@ as well. + <<if $slaves[$i].energy > 95>> + <<set $slaves[$i].energy -= 3>> + <<elseif $slaves[$i].energy > 80>> + <<set $slaves[$i].energy -= 2>> + <<else>> + <<set $slaves[$i].energy -= 1>> + <</if>> + <</if>> + <<else>> + it has little effect on $his passive mind. + <</if>> + <<case "hyper breast injections">> <<set _gigantomastiaMod = $slaves[$i].geneticQuirks.gigantomastia == 2 ? ($slaves[$i].geneticQuirks.macromastia == 2 ? 3 : 2) : 1>> <<set $slaves[$i].chem += 2>> @@ -1428,4 +1456,10 @@ $He is so moronic that drug treatment can't really make $him more willing to obey others than $he already is. @@.yellow;$His drug regimen has been ended.@@ <<set $slaves[$i].drugs = "no drugs">> <</if>> +<<case "psychostimulants">> + <<set _origIntel = $genePool.find(function(s) { return s.ID == $slaves[$i].ID; }).intelligence>> + <<if (_origIntel+15 <= $slaves[$i].intelligence) || ($slaves[$i].intelligence >= 100)>> + $His intelligence has been improved as much as a drink possibly can. @@.yellow;$His drug regimen has been ended.@@ + <<set $slaves[$i].drugs = "no drugs">> + <</if>> <</switch>> diff --git a/src/uncategorized/schoolroom.tw b/src/uncategorized/schoolroom.tw index 00bd71b96387145c1c5331e5b03aa5c4db008a5e..247a9dfa5deb3bb0403a3a8b2e61afc58c5ae50f 100644 --- a/src/uncategorized/schoolroom.tw +++ b/src/uncategorized/schoolroom.tw @@ -114,7 +114,7 @@ $schoolroomNameCaps is well-equipped, with wallscreens to display lessons. These $schoolroomNameCaps teaches woefully smart slaves using its modified methods. [[Purchase specialized materials to help smart slaves get on the right track|Schoolroom][cashX(forceNeg(_Tmult2), "capEx"), $schoolroomUpgradeRemedial = 1]] //Costs <<print cashFormat(_Tmult2)>>// <</if>> <<else>> - <<if $arcologies[0].FSIntellectualDependency > 800>> /* temp disabled */ + <<if $arcologies[0].FSIntellectualDependency > 80>> <<set _Tmult3 = Math.trunc(7500*$upgradeMultiplierArcology*$HackingSkillMultiplier)>> $schoolroomNameCaps is designed with intelligent slaves in mind and seeks to smarten slaves by providing them with an education. [[Redesign the curriculum to undo pesky educations and retard slaves while benefiting the most simple of minds|Schoolroom][cashX(forceNeg(_Tmult3), "capEx"), $schoolroomRemodelBimbo = 1]] //Costs <<print cashFormat(_Tmult3)>>// <br> diff --git a/src/uncategorized/sellSlave.tw b/src/uncategorized/sellSlave.tw index 08ad5774daba78a7b27074eea4923955cc0802c4..05cecf7709900017559762997890695944357710 100644 --- a/src/uncategorized/sellSlave.tw +++ b/src/uncategorized/sellSlave.tw @@ -455,8 +455,9 @@ A reputable slave appraiser arrives promptly to inspect $him and certify $his qu <<if $activeSlave.pregWeek < 0>> $He seems a little uncomfortable with $his holes being touched. By the feel of it, $he is a new mother, no? A lack of receptivity will not go over well with buyers; it may more profitable to let $him recover first. <</if>> +<<set _intelligenceScore = ($activeSlave.intelligenceImplant < 0 ? $activeSlave.intelligence+$activeSlave.intelligenceImplant : $activeSlave.intelligence)>> /* negative education makes a slave seem slower than they are */ <<if $arcologies[0].FSIntellectualDependencySMR == 1>> - <<if $activeSlave.intelligence >= -15>> + <<if _intelligenceScore >= -15>> $He's too smart to be of interest to local bidders, but there is still a demand for smart slaves elsewhere. <<if $activeSlave.intelligenceImplant >= 15>> $His education is an added positive too, in that regard. @@ -465,7 +466,7 @@ A reputable slave appraiser arrives promptly to inspect $him and certify $his qu $His idiotic mind will draw in local bids. <</if>> <<elseif $arcologies[0].FSSlaveProfessionalismSMR == 1>> - <<if $activeSlave.intelligence <= 50>> + <<if _intelligenceScore <= 50>> $He's no where near smart enough to compete with the local markets, so outside bids are going to be the only option. <<else>> $His brain is probably going to bring in very generous bids on its own. @@ -476,24 +477,24 @@ A reputable slave appraiser arrives promptly to inspect $him and certify $his qu <</if>> <</if>> <<else>> - <<if $activeSlave.intelligence > 95>> + <<if _intelligenceScore > 95>> $His genius is probably going to bring in very generous bids. <<if $activeSlave.intelligenceImplant >= 15>> $His education is an added positive, beyond that. <</if>> - <<elseif $activeSlave.intelligence > 15>> + <<elseif _intelligenceScore > 15>> Of course, $his intelligence is an asset outside of its sexual applications. <<if $activeSlave.intelligenceImplant >= 15>> $His education is an added positive, beyond that. <</if>> - <<elseif $activeSlave.intelligence < -15>> + <<elseif _intelligenceScore < -15>> Of course, $his stupidity will be a minor negative. <<if $activeSlave.intelligenceImplant >= 15>> $His education will help ameliorate that in price terms. <<else>> $He's uneducated, too. <</if>> - <<elseif $activeSlave.intelligence < -95>> + <<elseif _intelligenceScore < -95>> $His sheer idiocy will likely hamper bids. <<if $activeSlave.intelligenceImplant >= 15>> $His education will help a little, though I can't imagine the hassle it must have been to get $him to remember anything. diff --git a/src/uncategorized/slaveInteract.tw b/src/uncategorized/slaveInteract.tw index af71e623b09781fc0db3efb1a7999928b5b6a7df..d27a5913c597aaccd2352bcbd2f362b036d68c82 100644 --- a/src/uncategorized/slaveInteract.tw +++ b/src/uncategorized/slaveInteract.tw @@ -1045,6 +1045,14 @@ <<else>> | Psychosuppressants <</if>> + <<if $arcologies[0].FSSlaveProfessionalismResearch == 1>> + <<set _origIntel = $genePool.find(function(s) { return s.ID == $activeSlave.ID; }).intelligence>> + <<if (_origIntel < $activeSlave.intelligence+15) && ($activeSlave.intelligence < 100)>> + | <<link "Psychostimulants">><<set $activeSlave.drugs = "psychostimulants">><<SlaveInteractDrugs>><</link>> + <<else>> + | Psychostimulants + <</if>> + <</if>> <<if ($activeSlave.boobs < 48000)>> | <<link "Breasts">><<set $activeSlave.drugs = "breast injections">><<SlaveInteractDrugs>><</link>> <<else>> diff --git a/src/utility/miscWidgets.tw b/src/utility/miscWidgets.tw index ca728b3c576f5a4022e0ea96670c8103bd36424e..be239bb594a9846df6e5715a353d75ff4e801068 100644 --- a/src/utility/miscWidgets.tw +++ b/src/utility/miscWidgets.tw @@ -140,10 +140,18 @@ Call as <<SlaveInteractDrugs>> <</link>> <</if>> <<if ($activeSlave.intelligence+$activeSlave.intelligenceImplant > -100) && $activeSlave.indentureRestrictions < 1>> - | <<link "Psychosuppressants">><<set $activeSlave.drugs = "psychosuppressants">><<SlaveInteractDrugs>><</link>> + | <<link "Psychosuppressants">><<set $activeSlave.drugs = "sychosuppressants">><<SlaveInteractDrugs>><</link>> <<else>> | Psychosuppressants <</if>> + <<if $arcologies[0].FSSlaveProfessionalismResearch == 1>> + <<set _origIntel = $genePool.find(function(s) { return s.ID == $activeSlave.ID; }).intelligence>> + <<if (_origIntel < $activeSlave.intelligence+15) && ($activeSlave.intelligence < 100)>> + | <<link "Psychostimulants">><<set $activeSlave.drugs = "psychostimulants">><<SlaveInteractDrugs>><</link>> + <<else>> + | Psychostimulants + <</if>> + <</if>> <<if ($activeSlave.boobs < 48000)>> | <<link "Breasts">><<set $activeSlave.drugs = "breast injections">><<SlaveInteractDrugs>><</link>> <<else>>