diff --git a/src/SecExp/edicts.tw b/src/SecExp/edicts.tw index 7c20e4ab86bd4dc155afc0fdc806f0c87f7c7d97..8505010daa1ad935c1e5155ec8c46003fa5f7ba0 100644 --- a/src/SecExp/edicts.tw +++ b/src/SecExp/edicts.tw @@ -56,10 +56,10 @@ <br>''Troops detachment:'' <<= App.SF.Caps()>> has currently transferred troops to the security department HQ in addition to providing advanced equipment and training to security HQ personnel. [[Repeal|edicts][$SFSupportLevel--]] <<elseif $SFSupportLevel === 4>> - <br>''Full support:''<<= App.SF.Caps()>> is currently providing its full support to the security department, while transferring troops to the security department HQ in addition to providing advanced equipment and training to security HQ personnel. + <br>''Full support:'' <<= App.SF.Caps()>> is currently providing its full support to the security department, while transferring troops to the security department HQ in addition to providing advanced equipment and training to security HQ personnel. [[Repeal|edicts][$SFSupportLevel--]] <<elseif $SFSupportLevel === 5>> - <br>''Network assistance:''<<= App.SF.Caps()>> is currently assisting with a local install of its custom network full support and has transferred troops to the security department HQ in addition to providing advanced equipment and training to security HQ personnel. + <br>''Network assistance:'' <<= App.SF.Caps()>> is currently assisting with a local install of its custom network full support and has transferred troops to the security department HQ in addition to providing advanced equipment and training to security HQ personnel. [[Repeal|edicts][$SFSupportLevel--]] <</if>> <</if>> diff --git a/src/arcologyBuilding/manufacturing.js b/src/arcologyBuilding/manufacturing.js index bac40cf74914a409ee3f81a0aa067ed590783c20..a29724021cff2704e75e4ca57b6e6f61fa761278 100644 --- a/src/arcologyBuilding/manufacturing.js +++ b/src/arcologyBuilding/manufacturing.js @@ -196,7 +196,7 @@ App.Arcology.Cell.Manufacturing = class extends App.Arcology.Cell.BaseCell { )); } - if (V.cheatMode === 1) { + if (V.experimental.food === 1) { if (V.farmyard === 0) { fragment.append(thisCell._makeUpgrade( "Construct a farming facility to grow food for your arcology and house animals", diff --git a/src/init/storyInit.tw b/src/init/storyInit.tw index 91dbffff3400f099fc3b8c426f90a2ec48bd0387..6cdb9ae6ad1b3f670f1dc6ff103fa30121f7516c 100644 --- a/src/init/storyInit.tw +++ b/src/init/storyInit.tw @@ -1287,6 +1287,12 @@ You should have received a copy of the GNU General Public License along with thi <<set $cheatMode = 0>> <<set $cheatModeM = 1>> +<<set $experimental = { + nursery: 0, + food: 0, + animalOvaries: 0, + dinnerParty: 0 +}>> <<set $NaNArray = []>> <<set $fcnn = []>> diff --git a/src/js/futureSocietyJS.js b/src/js/futureSocietyJS.js index eade18a5c8af12b1a5f8b2673336a59ad3d2bd1f..0b33a2d0674bf95b602ec0880ce66bdc669988f6 100644 --- a/src/js/futureSocietyJS.js +++ b/src/js/futureSocietyJS.js @@ -100,6 +100,11 @@ window.FutureSocieties = (function() { arcology.FSGenderFundamentalistLawBimbo = 0; arcology.FSGenderFundamentalistSMR = 0; break; + case "FSSupremacist": + arcology[FSLaw] = 0; + arcology[FSSMR] = 0; + V.noSubhumansInArmy = 0; + break; case "FSTransformationFetishist": case "FSAssetExpansionist": arcology[FSSMR] = 0; @@ -126,6 +131,7 @@ window.FutureSocieties = (function() { arcology[FSLaw] = 0; arcology[FSSMR] = 0; V.universalRulesChildrenBecomeBreeders = 0; + V.pregExemption = 0; break; case "FSRestart": arcology[FSLaw] = 0; diff --git a/src/pregmod/organFarm.tw b/src/pregmod/organFarm.tw index ee9a5c6f4772fdfb3a71af2d538ae98a77a974af..63c37890bee896b3087e0fcfd5cbda413132b9c1 100644 --- a/src/pregmod/organFarm.tw +++ b/src/pregmod/organFarm.tw @@ -77,7 +77,7 @@ </div> <</if>> - <<if $seePreg != 0 && $seeBestiality == 1 && $cheatMode == 1>> + <<if $seePreg != 0 && $seeBestiality == 1 && $experimental.animalOvaries == 1>> <<if $farmyardLabUpgrades.animalOvaries > 0>> <<if $animalOvaries < 1>> <div class="note"> diff --git a/src/uncategorized/BackwardsCompatibility.tw b/src/uncategorized/BackwardsCompatibility.tw index c235961c8f88ad4e16b7510aba580fe803e735d6..70b0f6adc7f281133f9bd8a2411f9428991749f0 100644 --- a/src/uncategorized/BackwardsCompatibility.tw +++ b/src/uncategorized/BackwardsCompatibility.tw @@ -1387,6 +1387,14 @@ <<if ndef $cheatModeM>> <<set $cheatModeM = 1>> <</if>> +<<if ndef $experimental>> + <<set $experimental = { + nursery: 0, + food: 0, + animalOvaries: 0, + dinnerParty: 0 + }>> +<</if>> <<if ndef $MercenariesMessageSent>> <<set $MercenariesMessageSent = 0>> <</if>> diff --git a/src/uncategorized/manageArcology.tw b/src/uncategorized/manageArcology.tw index b385cf29d8a6a9ee707e66ab72d870572b0237f8..896280bfdda15ee90a4bbde23b26a6439e9528a3 100644 --- a/src/uncategorized/manageArcology.tw +++ b/src/uncategorized/manageArcology.tw @@ -521,7 +521,7 @@ Your arcology is named <<textbox "$arcologies[0].name" $arcologies[0].name "Manage Arcology">> </p> -<<if $cheatMode == 1 && $seeExtreme == 1>> +<<if $experimental.dinnerParty == 1 && $seeExtreme == 1>> <p> [[Host Dinner Party|Dinner Party Preparations]] </p> diff --git a/src/uncategorized/managePenthouse.tw b/src/uncategorized/managePenthouse.tw index 938219a78967b8407df3db7f9fe3d38eb1bd1423..f59c83755ff599b9ef88923e8e1061bde871b8e8 100644 --- a/src/uncategorized/managePenthouse.tw +++ b/src/uncategorized/managePenthouse.tw @@ -88,15 +88,15 @@ </div> <<if $familyTesting == 1 && $seePreg != 0>> - <<if $cheatMode == 1>> - <div> - <<if $nursery == 0>> - [[Build a nursery to raise children from birth|Manage Penthouse][cashX(forceNeg(Math.trunc(5000*$upgradeMultiplierArcology)), "capEx"), $nursery = 5, $nurseryNannies = 1, $PC.skill.engineering += 1]] - <span class="detail">Costs <<print cashFormat(Math.trunc(5000*$upgradeMultiplierArcology))>></span> - <<else>> - The penthouse has a nursery built where infants can be brought up. - <</if>> - </div> + <<if $experimental.nursery == 1>> + <div> + <<if $nursery == 0>> + [[Build a nursery to raise children from birth|Manage Penthouse][cashX(forceNeg(Math.trunc(5000*$upgradeMultiplierArcology)), "capEx"), $nursery = 5, $nurseryNannies = 1, $PC.skill.engineering += 1]] + <span class="detail">Costs <<print cashFormat(Math.trunc(5000*$upgradeMultiplierArcology))>></span> + <<else>> + The penthouse has a nursery built where infants can be brought up. + <</if>> + </div> <</if>> <</if>> diff --git a/src/uncategorized/nonRandomEvent.tw b/src/uncategorized/nonRandomEvent.tw index af321d54b07444ac3db3d5b946c780d92b135734..aa9f340454b7ba070ecf7d68e51fcd4845e505aa 100644 --- a/src/uncategorized/nonRandomEvent.tw +++ b/src/uncategorized/nonRandomEvent.tw @@ -60,7 +60,7 @@ <</if>> <<elseif (_effectiveWeek == 46) && ($mercenaries > 0)>> <<goto "P raid invitation">> -<<elseif (_effectiveWeek == 48) && ($cheatMode == 1)>> +<<elseif (_effectiveWeek == 48) && ($experimental.food == 1)>> <<set $foodCrisis = 1>> <<goto "P food crisis">> <<elseif (_effectiveWeek == 50) && ($rations > 0)>> diff --git a/src/uncategorized/options.tw b/src/uncategorized/options.tw index 18ec7934246cce11c0c653b3621c0ecb1f1f280d..d23f707e2f72d9d31d9ebfba40b1b7e52c0c656e 100644 --- a/src/uncategorized/options.tw +++ b/src/uncategorized/options.tw @@ -90,6 +90,7 @@ This save was created using FC version $ver build $releaseID. <button class="tablinks" onclick="App.UI.tabbar.openTab(event, 'CONTENT&FLAVOR')" id="tab CONTENT&FLAVOR">Content & flavour</button> <button class="tablinks" onclick="App.UI.tabbar.openTab(event, 'MODS')" id="tab MODS">Mods</button> <button class="tablinks" onclick="App.UI.tabbar.openTab(event, 'DEBUG/CHEATING')" id="tab DEBUG/CHEATING">Debug/cheating</button> +<button class="tablinks" onclick="App.UI.tabbar.openTab(event, 'Experimental')" id="tab Experimental">Experimental</button> <br> <div id="Display" class="tabcontent"> @@ -1033,3 +1034,46 @@ This save was created using FC version $ver build $releaseID. <</if>> </div> </div> + +<div id="Experimental" class="tabcontent"> + <div class="subHeading" style="fontWeight:bold"> + Experimental means just that: experimental. Options below are likely to be in an <span class="yellow">even more incomplete or broken state than usual.</span> <span class="red">THEY MAY NOT WORK AT ALL.</span> Make sure you back up your save before enabling any of these, and if you are that interested, consider helping to improve them. + </div> + <<if ($familyTesting === 1 && $seePreg !== 0)>> + <<options $experimental.nursery>> + Nursery is + <<option 1 "Enabled">> + <<option 0 "Disabled">> + <<comment>> + This will enable the experimental nursery, which allows players to interact with growing slave children. An alternative to the incubator. + <</options>> + <</if>> + + <<options $experimental.food>> + Food is + <<option 1 "Enabled">> + <<option 0 "Disabled">> + <<comment>> + This will enable the experimental food supply and demand system, as well as a new farmyard building and assignments. + <</options>> + + <<if $seeExtreme === 1 && $seeBestiality === 1>> + <<options $experimental.animalOvaries>> + Animal Ovaries + <<option 1 "Enabled">> + <<option 0 "Disabled">> + <<comment>> + This will allow slaves to be impregnated by animals. + <</options>> + <</if>> + + <<if $seeExtreme === 1>> + <<options $experimental.dinnerParty>> + Dinner party + <<option 1 "Enabled">> + <<option 0 "Disabled">> + <<comment>> + This will enable a controversial but very broken event. Warning: Snuff, cannibalism. + <</options>> + <</if>> +</div>