diff --git a/Makefile b/Makefile index f4b3de97d6d31200cd1f3eacad5000a668ac9baf..fff7afb5c1ffe44b03b8b80bed149c92da8a49ed 100644 --- a/Makefile +++ b/Makefile @@ -1,7 +1,22 @@ -all: ./src/config/start.tw FC.html +PYTHON?= python +ifeq (${MAKE_HOST}, x86_64-unknown-cygwin) + TWEEGOBIN?= tweego.exe +else + TWEEGOBIN?= tweego +endif -./src/config/start.tw: $(shell find src -type d) - python ./devTools/scripts/includes_linux.py +SRCDIR?= src +STARTFILE?= $(SRCDIR)/config/start.tw +FCTARG?= bin/FC.html +GENINCLUDES?= ./devTools/scripts/includes.py +all: $(FCTARG) -FC.html: $(shell find src -type f) - ./devTools/tweeGo/tweego -o ./bin/FC.html ./src/config/start.tw +$(STARTFILE): $(SRCDIR)/config/start.tw.proto $(GENINCLUDES) \ + $(shell find ${SRCDIR} -type d -print) + $(PYTHON) $(GENINCLUDES) $< $@ $(SRCDIR) + +$(FCTARG): $(STARTFILE) $(shell find ${SRCDIR} -type f -name \*.tw -print) + ./devTools/tweeGo/$(TWEEGOBIN) -o $(FCTARG) $(STARTFILE) + +clean: + -$(RM) $(STARTFILE) $(FCTARG) diff --git a/devTools/python-3.5.3/_bz2.pyd b/devTools/python-3.5.3/_bz2.pyd deleted file mode 100644 index 0c312bd7a5921652ddf3861a2bcafe45d89ec279..0000000000000000000000000000000000000000 Binary files a/devTools/python-3.5.3/_bz2.pyd and /dev/null differ diff --git a/devTools/python-3.5.3/_ctypes.pyd b/devTools/python-3.5.3/_ctypes.pyd deleted file mode 100644 index 581152fe653a2e37c2e454addd2a52247e600ece..0000000000000000000000000000000000000000 Binary files a/devTools/python-3.5.3/_ctypes.pyd and /dev/null differ diff --git a/devTools/python-3.5.3/_decimal.pyd b/devTools/python-3.5.3/_decimal.pyd deleted file mode 100644 index 7cd2a0648811fb1100ba968c2c9d7540db89e9e3..0000000000000000000000000000000000000000 Binary files a/devTools/python-3.5.3/_decimal.pyd and /dev/null differ diff --git a/devTools/python-3.5.3/_elementtree.pyd b/devTools/python-3.5.3/_elementtree.pyd deleted file mode 100644 index 5bf4622b298c30a11ca87af8d6363308d2ba75cd..0000000000000000000000000000000000000000 Binary files a/devTools/python-3.5.3/_elementtree.pyd and /dev/null differ diff --git a/devTools/python-3.5.3/_hashlib.pyd b/devTools/python-3.5.3/_hashlib.pyd deleted file mode 100644 index 4634c1545fb1e953964570bf055ba617cb7c1edb..0000000000000000000000000000000000000000 Binary files a/devTools/python-3.5.3/_hashlib.pyd and /dev/null differ diff --git a/devTools/python-3.5.3/_lzma.pyd b/devTools/python-3.5.3/_lzma.pyd deleted file mode 100644 index 17a62a03002c28ca1e573ba18e56f891c13ceaee..0000000000000000000000000000000000000000 Binary files a/devTools/python-3.5.3/_lzma.pyd and /dev/null differ diff --git a/devTools/python-3.5.3/_msi.pyd b/devTools/python-3.5.3/_msi.pyd deleted file mode 100644 index 7e6847d1c599a4f7d9e094a0ebd77b99df9e1015..0000000000000000000000000000000000000000 Binary files a/devTools/python-3.5.3/_msi.pyd and /dev/null differ diff --git a/devTools/python-3.5.3/_multiprocessing.pyd b/devTools/python-3.5.3/_multiprocessing.pyd deleted file mode 100644 index 6f106d66d9a73d98e120deb2b9435c09951a93dd..0000000000000000000000000000000000000000 Binary files a/devTools/python-3.5.3/_multiprocessing.pyd and /dev/null differ diff --git a/devTools/python-3.5.3/_overlapped.pyd b/devTools/python-3.5.3/_overlapped.pyd deleted file mode 100644 index 526d20f2e78e2739f7420bde1f51da1e25168ee1..0000000000000000000000000000000000000000 Binary files a/devTools/python-3.5.3/_overlapped.pyd and /dev/null differ diff --git a/devTools/python-3.5.3/_socket.pyd b/devTools/python-3.5.3/_socket.pyd deleted file mode 100644 index 2faf13a36be06cdef552e2a7e5ca15b72b8d9e22..0000000000000000000000000000000000000000 Binary files a/devTools/python-3.5.3/_socket.pyd and /dev/null differ diff --git a/devTools/python-3.5.3/_sqlite3.pyd b/devTools/python-3.5.3/_sqlite3.pyd deleted file mode 100644 index fed14435c795550d7197da2566257f16aeece4c8..0000000000000000000000000000000000000000 Binary files a/devTools/python-3.5.3/_sqlite3.pyd and /dev/null differ diff --git a/devTools/python-3.5.3/_ssl.pyd b/devTools/python-3.5.3/_ssl.pyd deleted file mode 100644 index da709fd154b1a11b600cc4e66b5421d0c558ead2..0000000000000000000000000000000000000000 Binary files a/devTools/python-3.5.3/_ssl.pyd and /dev/null differ diff --git a/devTools/python-3.5.3/pyexpat.pyd b/devTools/python-3.5.3/pyexpat.pyd deleted file mode 100644 index b950ad092bfec3fbf09841566a8e096ab983b68c..0000000000000000000000000000000000000000 Binary files a/devTools/python-3.5.3/pyexpat.pyd and /dev/null differ diff --git a/devTools/python-3.5.3/pyshellext.dll b/devTools/python-3.5.3/pyshellext.dll old mode 100644 new mode 100755 diff --git a/devTools/python-3.5.3/python.exe b/devTools/python-3.5.3/python.exe old mode 100644 new mode 100755 diff --git a/devTools/python-3.5.3/python3.dll b/devTools/python-3.5.3/python3.dll old mode 100644 new mode 100755 diff --git a/devTools/python-3.5.3/python35.dll b/devTools/python-3.5.3/python35.dll old mode 100644 new mode 100755 diff --git a/devTools/python-3.5.3/python35.zip b/devTools/python-3.5.3/python35.zip old mode 100644 new mode 100755 diff --git a/devTools/python-3.5.3/pythonw.exe b/devTools/python-3.5.3/pythonw.exe old mode 100644 new mode 100755 diff --git a/devTools/python-3.5.3/pyvenv.cfg b/devTools/python-3.5.3/pyvenv.cfg old mode 100644 new mode 100755 diff --git a/devTools/python-3.5.3/select.pyd b/devTools/python-3.5.3/select.pyd deleted file mode 100644 index f44ea687b4cc3a07c15b63fb6d869cb3d246686d..0000000000000000000000000000000000000000 Binary files a/devTools/python-3.5.3/select.pyd and /dev/null differ diff --git a/devTools/python-3.5.3/sqlite3.dll b/devTools/python-3.5.3/sqlite3.dll old mode 100644 new mode 100755 diff --git a/devTools/python-3.5.3/unicodedata.pyd b/devTools/python-3.5.3/unicodedata.pyd deleted file mode 100644 index 2890bc97d00f042085f616a61b5c078bc9874ccf..0000000000000000000000000000000000000000 Binary files a/devTools/python-3.5.3/unicodedata.pyd and /dev/null differ diff --git a/devTools/python-3.5.3/vcruntime140.dll b/devTools/python-3.5.3/vcruntime140.dll old mode 100644 new mode 100755 diff --git a/devTools/python-3.5.3/winsound.pyd b/devTools/python-3.5.3/winsound.pyd deleted file mode 100644 index df46559f65859e2c83b34549df61525335c3a347..0000000000000000000000000000000000000000 Binary files a/devTools/python-3.5.3/winsound.pyd and /dev/null differ diff --git a/devTools/scripts/includes.py b/devTools/scripts/includes.py new file mode 100644 index 0000000000000000000000000000000000000000..35a7727d4c2b3f34312e26d0ef3301525b4d144b --- /dev/null +++ b/devTools/scripts/includes.py @@ -0,0 +1,38 @@ +#!python + +import sys +import os.path + +FN = sys.argv[1] +OUT = sys.argv[2] +DIR = sys.argv[3] + +def main(): + if not os.path.exists(FN): + print >>sys.stderr, FN, 'not found' + sys.exit(1) + + with open(FN, 'r') as fin: + lines = fin.readlines() + fin.close() + fout = open(OUT, 'w') + fout.write("".join(lines)) + + # os.sep can be changed to \\ or / as appropriate + # can also os.path.abspath() which will canonicalize + + pnames = [] + for path, subdirs, files in os.walk(DIR): + for filename in files: + if filename.endswith('.tw'): + pathname = os.path.join(path, filename) + if pathname != OUT: + pnames.append(pathname + '\n') + + fout.write("".join(sorted(pnames))) + fout.close() + + return 0 + +if __name__ == '__main__': + sys.exit(main()) diff --git a/devTools/scripts/includes_linux.py b/devTools/scripts/includes_linux.py deleted file mode 100644 index 884f1bac3e00c52f6e3dc4401db8428d728db029..0000000000000000000000000000000000000000 --- a/devTools/scripts/includes_linux.py +++ /dev/null @@ -1,37 +0,0 @@ -# In loving memory of Benis. - -import subprocess -import sys -import os.path - -FN = './src/config/start.tw' - -def main(): - if not os.path.exists(FN): - print >>sys.stderr, FN, 'not found' - sys.exit(1) - lines = [] - included = False - drop = False - with open(FN, 'r') as f: - for l in f: - if drop and l.startswith('::'): - drop = False - if not drop: - lines.append(l) - if l.startswith(':: StoryIncludes'): - drop = True - included = True - found = subprocess.check_output(["find", ".", "-name", "*.tw", "-print0"]).split('\0') - found.sort() - lines += [x+'\n' for x in found if x != './src/config/start.tw'] - - with open(FN, 'w') as f: - for l in lines: - f.write(l) - - print >>sys.stderr, 'Include list updated' - return 0 - -if __name__ == '__main__': - sys.exit(main()) diff --git a/devTools/scripts/includes_windows.py b/devTools/scripts/includes_windows.py deleted file mode 100644 index 41817ad93ca42071abdc5a7e9bbc41b7fe63c9e7..0000000000000000000000000000000000000000 --- a/devTools/scripts/includes_windows.py +++ /dev/null @@ -1,25 +0,0 @@ -# Add all *.tw files (excluding start.tw) to start.tw - -# Yes this is a pile of shit. The original includes.py doesn't work on Windows. -# I will clean it up eventually (TM). - -import os -import sys - -f = open("./src/config/start.tw","r+") -d = f.readlines() -f.seek(0) -for i in d: - if '.tw' not in i: - f.write(i) -f.truncate() -f.close() - -with open("./src/config/start.tw", "a") as a: - for path, subdirs, files in os.walk(r'./src'): - for filename in files: - if filename.endswith('.tw'): - if not filename.endswith('start.tw'): - f = os.path.join(path, filename) - f = f.replace('\\','/').replace('.tw','.tw\n') - a.write(str(f)) diff --git a/devTools/tweeGo/tweego.exe b/devTools/tweeGo/tweego.exe old mode 100644 new mode 100755 diff --git a/src/config/start.tw b/src/config/start.tw deleted file mode 100644 index cfdf5db527daced85cab5fe298b69f21cd454a87..0000000000000000000000000000000000000000 --- a/src/config/start.tw +++ /dev/null @@ -1,410 +0,0 @@ -:: Start [nobr] - - -:: StoryTitle - -Free Cities - -:: StoryIncludes - -./src/cheats/mod_EditArcologyCheat.tw -./src/cheats/mod_EditArcologyCheatDatatypeCleanup.tw -./src/cheats/mod_EditFSCheat.tw -./src/cheats/mod_EditFSCheatDatatypeCleanup.tw -./src/cheats/mod_EditSlaveCheat.tw -./src/cheats/mod_EditSlaveCheatDatatypeCleanup.tw -./src/config/sugarCubeConfig.tw -./src/events/gameover.tw -./src/events/intro/economyIntro.tw -./src/events/intro/extremeIntro.tw -./src/events/intro/genderIntro.tw -./src/events/intro/initNationalities.tw -./src/events/intro/introSummary.tw -./src/events/intro/locationIntro.tw -./src/events/intro/pcBodyIntro.tw -./src/events/intro/pcExperienceIntro.tw -./src/events/intro/pcRumorIntro.tw -./src/events/intro/terrainIntro.tw -./src/events/intro/tradeIntro.tw -./src/facilities/brothel/brothelAssignmentScene.tw -./src/gui/Encyclopedia/encyclopedia.tw -./src/gui/css/mainStyleSheet.tw -./src/gui/mainMenu/AlphaDisclaimer.tw -./src/init/storyInit.tw -./src/js/storyJS.tw -./src/npc/abort.tw -./src/npc/acquisition.tw -./src/npc/agent/agentCompany.tw -./src/npc/agent/agentRetrieve.tw -./src/npc/agent/agentSelect.tw -./src/npc/agent/agentWorkaround.tw -./src/npc/asDump.tw -./src/npc/databases/cheatmodeDatabase.tw -./src/npc/databases/dSlavesDatabase.tw -./src/npc/databases/ddSlavesDatabase.tw -./src/npc/databases/dfSlavesDatabase.tw -./src/npc/descriptions/fAnus.tw -./src/npc/descriptions/fBoobs.tw -./src/npc/descriptions/fButt.tw -./src/npc/descriptions/fLips.tw -./src/npc/descriptions/fVagina.tw -./src/npc/exportSlave.tw -./src/npc/fAbuse.tw -./src/npc/fFeelings.tw -./src/npc/fKiss.tw -./src/npc/fPCImpreg.tw -./src/npc/fRelation.tw -./src/npc/fRival.tw -./src/npc/fSlaveImpreg.tw -./src/npc/fSlaveImpregConsummate.tw -./src/npc/fucktoyWorkaround.tw -./src/npc/importSlave.tw -./src/npc/removeActiveSlave.tw -./src/npc/restWorkaround.tw -./src/npc/rgASDump.tw -./src/npc/servantWorkaround.tw -./src/npc/startingGirls/commitStartingGirl.tw -./src/npc/startingGirls/moreCustomOptions.tw -./src/npc/startingGirls/startingGirls.tw -./src/npc/uploadSlave.tw -./src/player/actions/fCaress.tw -./src/player/actions/fEmbrace.tw -./src/player/actions/fondleDick.tw -./src/pregmod/agingTest.tw -./src/pregmod/birthStorm.tw -./src/pregmod/breederProposal.tw -./src/pregmod/breedingTest.tw -./src/pregmod/fDick.tw -./src/pregmod/fSelf.tw -./src/pregmod/fSlaveFeed.tw -./src/pregmod/fillUpButt.tw -./src/pregmod/fillUpFace.tw -./src/pregmod/huskSlave.tw -./src/pregmod/managePersonalAffairs.tw -./src/pregmod/pInsemination.tw -./src/pregmod/pRaped.tw -./src/pregmod/pcAppearanceIntro.tw -./src/pregmod/pcPregIntro.tw -./src/pregmod/physicalDevelopment.tw -./src/pregmod/pregmodWidgets.tw -./src/pregmod/reLegendaryWomb.tw -./src/pregmod/reMaleArcologyOwner.tw -./src/pregmod/saInflation.tw -./src/pregmod/seBurst.tw -./src/pregmod/seHuskSlaveDelivery.tw -./src/pregmod/sePlayerBirth.tw -./src/pregmod/slaveAgeIntro.tw -./src/pregmod/slaveOnSlaveFeedingWorkAround.tw -./src/uncategorized/PESS.tw -./src/uncategorized/PETS.tw -./src/uncategorized/RECI.tw -./src/uncategorized/REFI.tw -./src/uncategorized/RESS.tw -./src/uncategorized/RESSTR.tw -./src/uncategorized/RETS.tw -./src/uncategorized/addCustomDescriptors.tw -./src/uncategorized/arcade.tw -./src/uncategorized/arcadeReport.tw -./src/uncategorized/arcologyDescription.tw -./src/uncategorized/arcologyOpinion.tw -./src/uncategorized/assign.tw -./src/uncategorized/assistantAutosurgery.tw -./src/uncategorized/assistantEvents.tw -./src/uncategorized/attendantSelect.tw -./src/uncategorized/attendantWorkaround.tw -./src/uncategorized/autosurgerySettings.tw -./src/uncategorized/barracks.tw -./src/uncategorized/bgSelect.tw -./src/uncategorized/bodyModRulesAssistantSettings.tw -./src/uncategorized/bodyModification.tw -./src/uncategorized/bodyModificationDegradation.tw -./src/uncategorized/bodyModificationReaction.tw -./src/uncategorized/bodyguardWorkaround.tw -./src/uncategorized/brothel.tw -./src/uncategorized/brothelAdvertisement.tw -./src/uncategorized/brothelReport.tw -./src/uncategorized/buySlaves.tw -./src/uncategorized/cellblock.tw -./src/uncategorized/cellblockReport.tw -./src/uncategorized/changeLanguage.tw -./src/uncategorized/checkAutoRulesActivate.tw -./src/uncategorized/checkinChecks.tw -./src/uncategorized/classesWorkaround.tw -./src/uncategorized/clinic.tw -./src/uncategorized/clinicReport.tw -./src/uncategorized/club.tw -./src/uncategorized/clubAdvertisement.tw -./src/uncategorized/clubReport.tw -./src/uncategorized/completeCatalog.tw -./src/uncategorized/concubineSelect.tw -./src/uncategorized/concubineWorkaround.tw -./src/uncategorized/confinementWorkaround.tw -./src/uncategorized/corporationDevelopments.tw -./src/uncategorized/cosmeticRulesAssistantSettings.tw -./src/uncategorized/costs.tw -./src/uncategorized/costsReport.tw -./src/uncategorized/coursingAssociation.tw -./src/uncategorized/customSlave.tw -./src/uncategorized/dairy.tw -./src/uncategorized/dairyReport.tw -./src/uncategorized/defaultRules.tw -./src/uncategorized/degradingName.tw -./src/uncategorized/descriptionOptions.tw -./src/uncategorized/discardConfirm.tw -./src/uncategorized/dispensary.tw -./src/uncategorized/djSelect.tw -./src/uncategorized/djWorkaround.tw -./src/uncategorized/economics.tw -./src/uncategorized/endWeek.tw -./src/uncategorized/exportRule.tw -./src/uncategorized/fMarry.tw -./src/uncategorized/fondleBoobs.tw -./src/uncategorized/fondleButt.tw -./src/uncategorized/fondleVagina.tw -./src/uncategorized/freeRangeDairyAssignmentScene.tw -./src/uncategorized/fsDevelopments.tw -./src/uncategorized/fullReport.tw -./src/uncategorized/futureSocities.tw -./src/uncategorized/generateNewSlave.tw -./src/uncategorized/generateXXSlave.tw -./src/uncategorized/generateXYSlave.tw -./src/uncategorized/genericPlotEvents.tw -./src/uncategorized/growthResearchInstitute.tw -./src/uncategorized/headGirlSuite.tw -./src/uncategorized/hgApplication.tw -./src/uncategorized/hgSelect.tw -./src/uncategorized/hgWorkaround.tw -./src/uncategorized/holeWorkaround.tw -./src/uncategorized/householdLiquidator.tw -./src/uncategorized/importRule.tw -./src/uncategorized/incrementPiercings.tw -./src/uncategorized/industrialDairyAssignmentScene.tw -./src/uncategorized/initRules.tw -./src/uncategorized/jeSlaveDispute.tw -./src/uncategorized/lawCompliance.tw -./src/uncategorized/lecoleDesEnculees.tw -./src/uncategorized/longSlaveDescription.tw -./src/uncategorized/madamSelect.tw -./src/uncategorized/madamWorkaround.tw -./src/uncategorized/main.tw -./src/uncategorized/manageArcology.tw -./src/uncategorized/managePenthouse.tw -./src/uncategorized/masterSuite.tw -./src/uncategorized/masterSuiteReport.tw -./src/uncategorized/matchmaking.tw -./src/uncategorized/milkingWorkaround.tw -./src/uncategorized/milkmaidSelect.tw -./src/uncategorized/milkmaidWorkaround.tw -./src/uncategorized/minorInjuryResponse.tw -./src/uncategorized/mod_BackwardsCompatibility.tw -./src/uncategorized/motherDaughterWorkaround.tw -./src/uncategorized/nationalityToAccent.tw -./src/uncategorized/nationalityToName.tw -./src/uncategorized/neighborDescription.tw -./src/uncategorized/neighborInteract.tw -./src/uncategorized/neighborsDevelopment.tw -./src/uncategorized/neighborsFSAdoption.tw -./src/uncategorized/newGamePlus.tw -./src/uncategorized/newSlaveIntro.tw -./src/uncategorized/newSlaveRaceNationalityAndName.tw -./src/uncategorized/nextSlaveInLine.tw -./src/uncategorized/nextWeek.tw -./src/uncategorized/ngpWorkaround.tw -./src/uncategorized/nonRandomEvent.tw -./src/uncategorized/nurseSelect.tw -./src/uncategorized/nurseWorkaround.tw -./src/uncategorized/officeDescription.tw -./src/uncategorized/options.tw -./src/uncategorized/pBioreactorPerfected.tw -./src/uncategorized/pBombing.tw -./src/uncategorized/pCitizensAndCivilians.tw -./src/uncategorized/pCollaborationChoice.tw -./src/uncategorized/pCorpAnnouncement.tw -./src/uncategorized/pCoupAftermath.tw -./src/uncategorized/pCoupAttempt.tw -./src/uncategorized/pCoupCollaboration.tw -./src/uncategorized/pCoupLoss.tw -./src/uncategorized/pDefenseFears.tw -./src/uncategorized/pFSAnnouncement.tw -./src/uncategorized/pHackerSupport.tw -./src/uncategorized/pHostageAcquisition.tw -./src/uncategorized/pInvasion.tw -./src/uncategorized/pMercenaries.tw -./src/uncategorized/pMercenaryRomeo.tw -./src/uncategorized/pMercsHelpCorp.tw -./src/uncategorized/pRaidInvitation.tw -./src/uncategorized/pRaidResult.tw -./src/uncategorized/pRivalInitiation.tw -./src/uncategorized/pRivalryActions.tw -./src/uncategorized/pRivalryHostage.tw -./src/uncategorized/pRivalryVictory.tw -./src/uncategorized/pSchoolSuggestion.tw -./src/uncategorized/pSlaveMedic.tw -./src/uncategorized/pSnatchAndGrab.tw -./src/uncategorized/pSnatchAndGrabResult.tw -./src/uncategorized/pTraitorMessage.tw -./src/uncategorized/pUndergroundRailroad.tw -./src/uncategorized/peCombatTraining.tw -./src/uncategorized/peConcubineInterview.tw -./src/uncategorized/peHeadgirlConcubine.tw -./src/uncategorized/peLonelyBodyguard.tw -./src/uncategorized/pePitFight.tw -./src/uncategorized/pePitFightInvite.tw -./src/uncategorized/personalAssistantAppearance.tw -./src/uncategorized/personalAssistantOptions.tw -./src/uncategorized/personalAttentionSelect.tw -./src/uncategorized/pit.tw -./src/uncategorized/placeInLine.tw -./src/uncategorized/policies.tw -./src/uncategorized/prestigiousSlave.tw -./src/uncategorized/previousSlaveInLine.tw -./src/uncategorized/ptWorkaround.tw -./src/uncategorized/publicServantWorkaround.tw -./src/uncategorized/randomEventRoll.tw -./src/uncategorized/randomEventSelect.tw -./src/uncategorized/randomIndividualEvent.tw -./src/uncategorized/randomNonindividualEvent.tw -./src/uncategorized/reAnalPunishment.tw -./src/uncategorized/reBusyArcade.tw -./src/uncategorized/reBusyArcadeWorkaround.tw -./src/uncategorized/reBusyBrothel.tw -./src/uncategorized/reBusyClub.tw -./src/uncategorized/reBusyDairy.tw -./src/uncategorized/reBusyMasterSuite.tw -./src/uncategorized/reBusyServantsQuarters.tw -./src/uncategorized/reDevotedMotherDaughter.tw -./src/uncategorized/reDevotedTwins.tw -./src/uncategorized/reDevotees.tw -./src/uncategorized/reFSAcquisition.tw -./src/uncategorized/reFSEgyptianRevivalistAcquisition.tw -./src/uncategorized/reFSEgyptianRevivalistAcquisitionWorkaround.tw -./src/uncategorized/reFSNonconformist.tw -./src/uncategorized/reFemaleArcologyOwner.tw -./src/uncategorized/reFormerAbolitionist.tw -./src/uncategorized/reFullBed.tw -./src/uncategorized/reHGReplacement.tw -./src/uncategorized/reLegendaryBalls.tw -./src/uncategorized/reLegendaryCow.tw -./src/uncategorized/reLegendaryEntertainer.tw -./src/uncategorized/reLegendaryWhore.tw -./src/uncategorized/reMalefactor.tw -./src/uncategorized/reMilfTourist.tw -./src/uncategorized/reNickname.tw -./src/uncategorized/reNoEvent.tw -./src/uncategorized/reRebels.tw -./src/uncategorized/reRecruit.tw -./src/uncategorized/reRelationshipAdvice.tw -./src/uncategorized/reRelativeRecruiter.tw -./src/uncategorized/reShelterInspection.tw -./src/uncategorized/reShippingContainer.tw -./src/uncategorized/reShowerPunishment.tw -./src/uncategorized/reSiblingRevenge.tw -./src/uncategorized/reSlaveMarriage.tw -./src/uncategorized/reStaffedMorning.tw -./src/uncategorized/reStandardPunishment.tw -./src/uncategorized/recETS.tw -./src/uncategorized/recETSWorkaround.tw -./src/uncategorized/recruiterSelect.tw -./src/uncategorized/recruiterWorkaround.tw -./src/uncategorized/remFluctuations.tw -./src/uncategorized/remMerger.tw -./src/uncategorized/remoteSurgery.tw -./src/uncategorized/rename.tw -./src/uncategorized/resEndowment.tw -./src/uncategorized/resFailure.tw -./src/uncategorized/resMove.tw -./src/uncategorized/resSale.tw -./src/uncategorized/retrieve.tw -./src/uncategorized/rieEligibilityCheck.tw -./src/uncategorized/rulesAssistant.tw -./src/uncategorized/rulesAutosurgery.tw -./src/uncategorized/rulesFacilityRemove.tw -./src/uncategorized/rulesSlaveDeselectWorkaround.tw -./src/uncategorized/rulesSlaveExclude.tw -./src/uncategorized/rulesSlaveExcludeWorkaround.tw -./src/uncategorized/rulesSlaveNoExcludeWorkaround.tw -./src/uncategorized/rulesSlaveSelect.tw -./src/uncategorized/rulesSlaveSelectWorkaround.tw -./src/uncategorized/saBeYourHeadGirl.tw -./src/uncategorized/saChoosesOwnClothes.tw -./src/uncategorized/saChoosesOwnJob.tw -./src/uncategorized/saDevotion.tw -./src/uncategorized/saDiet.tw -./src/uncategorized/saDrugs.tw -./src/uncategorized/saGetMilked.tw -./src/uncategorized/saGuardsYou.tw -./src/uncategorized/saHormoneEffects.tw -./src/uncategorized/saLiveWithHG.tw -./src/uncategorized/saLongTermEffects.tw -./src/uncategorized/saPleaseYou.tw -./src/uncategorized/saRecruitGirls.tw -./src/uncategorized/saRelationships.tw -./src/uncategorized/saRest.tw -./src/uncategorized/saRivalries.tw -./src/uncategorized/saRules.tw -./src/uncategorized/saServant.tw -./src/uncategorized/saServeThePublic.tw -./src/uncategorized/saServeYourOtherSlaves.tw -./src/uncategorized/saStayConfined.tw -./src/uncategorized/saTakeClasses.tw -./src/uncategorized/saWhore.tw -./src/uncategorized/saWorkAGloryHole.tw -./src/uncategorized/salon.tw -./src/uncategorized/scheduledEvent.tw -./src/uncategorized/schoolroom.tw -./src/uncategorized/schoolroomReport.tw -./src/uncategorized/schoolteacherSelect.tw -./src/uncategorized/schoolteacherWorkaround.tw -./src/uncategorized/seBirth.tw -./src/uncategorized/seCoursing.tw -./src/uncategorized/seCustomSlaveDelivery.tw -./src/uncategorized/seExpiration.tw -./src/uncategorized/seIndependenceDay.tw -./src/uncategorized/seLethalPit.tw -./src/uncategorized/seNonlethalPit.tw -./src/uncategorized/seRecruiterSuccess.tw -./src/uncategorized/seRetirement.tw -./src/uncategorized/seWedding.tw -./src/uncategorized/securityForceEOWReport.tw -./src/uncategorized/securityForceNamingColonel.tw -./src/uncategorized/securityForceProposal.tw -./src/uncategorized/sellSlave.tw -./src/uncategorized/servantsQuarters.tw -./src/uncategorized/servantsQuartersReport.tw -./src/uncategorized/siblingsWorkaround.tw -./src/uncategorized/slaveAssignmentsReport.tw -./src/uncategorized/slaveInteract.tw -./src/uncategorized/slaveMarkets.tw -./src/uncategorized/slaveShelter.tw -./src/uncategorized/slaveSold.tw -./src/uncategorized/slaveSummary.tw -./src/uncategorized/spa.tw -./src/uncategorized/spaReport.tw -./src/uncategorized/specialSlave.tw -./src/uncategorized/stClaverPreparatory.tw -./src/uncategorized/stewardessSelect.tw -./src/uncategorized/stewardessWorkaround.tw -./src/uncategorized/storyCaption.tw -./src/uncategorized/subordinateTargeting.tw -./src/uncategorized/summaryOptions.tw -./src/uncategorized/surgeryDegradation.tw -./src/uncategorized/tfsFarmUpgrade.tw -./src/uncategorized/theFutanariSisters.tw -./src/uncategorized/theGymnasiumAcademy.tw -./src/uncategorized/theSlavegirlSchool.tw -./src/uncategorized/toychest.tw -./src/uncategorized/twinsWorkaround.tw -./src/uncategorized/universalRules.tw -./src/uncategorized/useGuard.tw -./src/uncategorized/walkPast.tw -./src/uncategorized/wardenessSelect.tw -./src/uncategorized/wardenessWorkaround.tw -./src/uncategorized/wardrobe.tw -./src/uncategorized/whoreWorkaround.tw -./src/utility/assayWidgets.tw -./src/utility/birthWidgets.tw -./src/utility/descriptionWidgets.tw -./src/utility/miscWidgets.tw -./src/utility/ptWidgets.tw -./src/utility/raWidgets.tw -./src/utility/slaveCreationWidgets.tw diff --git a/src/config/start.tw.proto b/src/config/start.tw.proto new file mode 100644 index 0000000000000000000000000000000000000000..873a9ba6d6e74e439e7dc61ec120d6d54212344c --- /dev/null +++ b/src/config/start.tw.proto @@ -0,0 +1,8 @@ +:: Start [nobr] + + +:: StoryTitle + +Free Cities + +:: StoryIncludes