1.0.1.5
|
@ -0,0 +1,343 @@
|
||||||
|
## Ignore Visual Studio temporary files, build results, and
|
||||||
|
## files generated by popular Visual Studio add-ons.
|
||||||
|
##
|
||||||
|
## Get latest from https://github.com/github/gitignore/blob/master/VisualStudio.gitignore
|
||||||
|
|
||||||
|
# User-specific files
|
||||||
|
*.rsuser
|
||||||
|
*.suo
|
||||||
|
*.user
|
||||||
|
*.userosscache
|
||||||
|
*.sln.docstates
|
||||||
|
|
||||||
|
# User-specific files (MonoDevelop/Xamarin Studio)
|
||||||
|
*.userprefs
|
||||||
|
|
||||||
|
# Build results
|
||||||
|
[Dd]ebug/
|
||||||
|
[Dd]ebugPublic/
|
||||||
|
[Rr]elease/
|
||||||
|
[Rr]eleases/
|
||||||
|
x64/
|
||||||
|
x86/
|
||||||
|
[Aa][Rr][Mm]/
|
||||||
|
[Aa][Rr][Mm]64/
|
||||||
|
bld/
|
||||||
|
[Bb]in/
|
||||||
|
[Oo]bj/
|
||||||
|
[Ll]og/
|
||||||
|
|
||||||
|
# Visual Studio 2015/2017 cache/options directory
|
||||||
|
.vs/
|
||||||
|
# Uncomment if you have tasks that create the project's static files in wwwroot
|
||||||
|
#wwwroot/
|
||||||
|
|
||||||
|
# Visual Studio 2017 auto generated files
|
||||||
|
Generated\ Files/
|
||||||
|
|
||||||
|
# MSTest test Results
|
||||||
|
[Tt]est[Rr]esult*/
|
||||||
|
[Bb]uild[Ll]og.*
|
||||||
|
|
||||||
|
# NUNIT
|
||||||
|
*.VisualState.xml
|
||||||
|
TestResult.xml
|
||||||
|
|
||||||
|
# Build Results of an ATL Project
|
||||||
|
[Dd]ebugPS/
|
||||||
|
[Rr]eleasePS/
|
||||||
|
dlldata.c
|
||||||
|
|
||||||
|
# Benchmark Results
|
||||||
|
BenchmarkDotNet.Artifacts/
|
||||||
|
|
||||||
|
# .NET Core
|
||||||
|
project.lock.json
|
||||||
|
project.fragment.lock.json
|
||||||
|
artifacts/
|
||||||
|
|
||||||
|
# StyleCop
|
||||||
|
StyleCopReport.xml
|
||||||
|
|
||||||
|
# Files built by Visual Studio
|
||||||
|
*_i.c
|
||||||
|
*_p.c
|
||||||
|
*_h.h
|
||||||
|
*.ilk
|
||||||
|
*.meta
|
||||||
|
*.obj
|
||||||
|
*.iobj
|
||||||
|
*.pch
|
||||||
|
*.pdb
|
||||||
|
*.ipdb
|
||||||
|
*.pgc
|
||||||
|
*.pgd
|
||||||
|
*.rsp
|
||||||
|
*.sbr
|
||||||
|
*.tlb
|
||||||
|
*.tli
|
||||||
|
*.tlh
|
||||||
|
*.tmp
|
||||||
|
*.tmp_proj
|
||||||
|
*_wpftmp.csproj
|
||||||
|
*.log
|
||||||
|
*.vspscc
|
||||||
|
*.vssscc
|
||||||
|
.builds
|
||||||
|
*.pidb
|
||||||
|
*.svclog
|
||||||
|
*.scc
|
||||||
|
|
||||||
|
# Chutzpah Test files
|
||||||
|
_Chutzpah*
|
||||||
|
|
||||||
|
# Visual C++ cache files
|
||||||
|
ipch/
|
||||||
|
*.aps
|
||||||
|
*.ncb
|
||||||
|
*.opendb
|
||||||
|
*.opensdf
|
||||||
|
*.sdf
|
||||||
|
*.cachefile
|
||||||
|
*.VC.db
|
||||||
|
*.VC.VC.opendb
|
||||||
|
|
||||||
|
# Visual Studio profiler
|
||||||
|
*.psess
|
||||||
|
*.vsp
|
||||||
|
*.vspx
|
||||||
|
*.sap
|
||||||
|
|
||||||
|
# Visual Studio Trace Files
|
||||||
|
*.e2e
|
||||||
|
|
||||||
|
# TFS 2012 Local Workspace
|
||||||
|
$tf/
|
||||||
|
|
||||||
|
# Guidance Automation Toolkit
|
||||||
|
*.gpState
|
||||||
|
|
||||||
|
# ReSharper is a .NET coding add-in
|
||||||
|
_ReSharper*/
|
||||||
|
*.[Rr]e[Ss]harper
|
||||||
|
*.DotSettings.user
|
||||||
|
|
||||||
|
# JustCode is a .NET coding add-in
|
||||||
|
.JustCode
|
||||||
|
|
||||||
|
# TeamCity is a build add-in
|
||||||
|
_TeamCity*
|
||||||
|
|
||||||
|
# DotCover is a Code Coverage Tool
|
||||||
|
*.dotCover
|
||||||
|
|
||||||
|
# AxoCover is a Code Coverage Tool
|
||||||
|
.axoCover/*
|
||||||
|
!.axoCover/settings.json
|
||||||
|
|
||||||
|
# Visual Studio code coverage results
|
||||||
|
*.coverage
|
||||||
|
*.coveragexml
|
||||||
|
|
||||||
|
# NCrunch
|
||||||
|
_NCrunch_*
|
||||||
|
.*crunch*.local.xml
|
||||||
|
nCrunchTemp_*
|
||||||
|
|
||||||
|
# MightyMoose
|
||||||
|
*.mm.*
|
||||||
|
AutoTest.Net/
|
||||||
|
|
||||||
|
# Web workbench (sass)
|
||||||
|
.sass-cache/
|
||||||
|
|
||||||
|
# Installshield output folder
|
||||||
|
[Ee]xpress/
|
||||||
|
|
||||||
|
# DocProject is a documentation generator add-in
|
||||||
|
DocProject/buildhelp/
|
||||||
|
DocProject/Help/*.HxT
|
||||||
|
DocProject/Help/*.HxC
|
||||||
|
DocProject/Help/*.hhc
|
||||||
|
DocProject/Help/*.hhk
|
||||||
|
DocProject/Help/*.hhp
|
||||||
|
DocProject/Help/Html2
|
||||||
|
DocProject/Help/html
|
||||||
|
|
||||||
|
# Click-Once directory
|
||||||
|
publish/
|
||||||
|
|
||||||
|
# Publish Web Output
|
||||||
|
*.[Pp]ublish.xml
|
||||||
|
*.azurePubxml
|
||||||
|
# Note: Comment the next line if you want to checkin your web deploy settings,
|
||||||
|
# but database connection strings (with potential passwords) will be unencrypted
|
||||||
|
*.pubxml
|
||||||
|
*.publishproj
|
||||||
|
|
||||||
|
# Microsoft Azure Web App publish settings. Comment the next line if you want to
|
||||||
|
# checkin your Azure Web App publish settings, but sensitive information contained
|
||||||
|
# in these scripts will be unencrypted
|
||||||
|
PublishScripts/
|
||||||
|
|
||||||
|
# NuGet Packages
|
||||||
|
*.nupkg
|
||||||
|
# The packages folder can be ignored because of Package Restore
|
||||||
|
**/[Pp]ackages/*
|
||||||
|
# except build/, which is used as an MSBuild target.
|
||||||
|
!**/[Pp]ackages/build/
|
||||||
|
# Uncomment if necessary however generally it will be regenerated when needed
|
||||||
|
#!**/[Pp]ackages/repositories.config
|
||||||
|
# NuGet v3's project.json files produces more ignorable files
|
||||||
|
*.nuget.props
|
||||||
|
*.nuget.targets
|
||||||
|
|
||||||
|
# Microsoft Azure Build Output
|
||||||
|
csx/
|
||||||
|
*.build.csdef
|
||||||
|
|
||||||
|
# Microsoft Azure Emulator
|
||||||
|
ecf/
|
||||||
|
rcf/
|
||||||
|
|
||||||
|
# Windows Store app package directories and files
|
||||||
|
AppPackages/
|
||||||
|
BundleArtifacts/
|
||||||
|
Package.StoreAssociation.xml
|
||||||
|
_pkginfo.txt
|
||||||
|
*.appx
|
||||||
|
|
||||||
|
# Visual Studio cache files
|
||||||
|
# files ending in .cache can be ignored
|
||||||
|
*.[Cc]ache
|
||||||
|
# but keep track of directories ending in .cache
|
||||||
|
!?*.[Cc]ache/
|
||||||
|
|
||||||
|
# Others
|
||||||
|
ClientBin/
|
||||||
|
~$*
|
||||||
|
*~
|
||||||
|
*.dbmdl
|
||||||
|
*.dbproj.schemaview
|
||||||
|
*.jfm
|
||||||
|
*.pfx
|
||||||
|
*.publishsettings
|
||||||
|
orleans.codegen.cs
|
||||||
|
|
||||||
|
# Including strong name files can present a security risk
|
||||||
|
# (https://github.com/github/gitignore/pull/2483#issue-259490424)
|
||||||
|
#*.snk
|
||||||
|
|
||||||
|
# Since there are multiple workflows, uncomment next line to ignore bower_components
|
||||||
|
# (https://github.com/github/gitignore/pull/1529#issuecomment-104372622)
|
||||||
|
#bower_components/
|
||||||
|
|
||||||
|
# RIA/Silverlight projects
|
||||||
|
Generated_Code/
|
||||||
|
|
||||||
|
# Backup & report files from converting an old project file
|
||||||
|
# to a newer Visual Studio version. Backup files are not needed,
|
||||||
|
# because we have git ;-)
|
||||||
|
_UpgradeReport_Files/
|
||||||
|
Backup*/
|
||||||
|
UpgradeLog*.XML
|
||||||
|
UpgradeLog*.htm
|
||||||
|
ServiceFabricBackup/
|
||||||
|
*.rptproj.bak
|
||||||
|
|
||||||
|
# SQL Server files
|
||||||
|
*.mdf
|
||||||
|
*.ldf
|
||||||
|
*.ndf
|
||||||
|
|
||||||
|
# Business Intelligence projects
|
||||||
|
*.rdl.data
|
||||||
|
*.bim.layout
|
||||||
|
*.bim_*.settings
|
||||||
|
*.rptproj.rsuser
|
||||||
|
*- Backup*.rdl
|
||||||
|
|
||||||
|
# Microsoft Fakes
|
||||||
|
FakesAssemblies/
|
||||||
|
|
||||||
|
# GhostDoc plugin setting file
|
||||||
|
*.GhostDoc.xml
|
||||||
|
|
||||||
|
# Node.js Tools for Visual Studio
|
||||||
|
.ntvs_analysis.dat
|
||||||
|
node_modules/
|
||||||
|
|
||||||
|
# Visual Studio 6 build log
|
||||||
|
*.plg
|
||||||
|
|
||||||
|
# Visual Studio 6 workspace options file
|
||||||
|
*.opt
|
||||||
|
|
||||||
|
# Visual Studio 6 auto-generated workspace file (contains which files were open etc.)
|
||||||
|
*.vbw
|
||||||
|
|
||||||
|
# Visual Studio LightSwitch build output
|
||||||
|
**/*.HTMLClient/GeneratedArtifacts
|
||||||
|
**/*.DesktopClient/GeneratedArtifacts
|
||||||
|
**/*.DesktopClient/ModelManifest.xml
|
||||||
|
**/*.Server/GeneratedArtifacts
|
||||||
|
**/*.Server/ModelManifest.xml
|
||||||
|
_Pvt_Extensions
|
||||||
|
|
||||||
|
# Paket dependency manager
|
||||||
|
.paket/paket.exe
|
||||||
|
paket-files/
|
||||||
|
|
||||||
|
# FAKE - F# Make
|
||||||
|
.fake/
|
||||||
|
|
||||||
|
# JetBrains Rider
|
||||||
|
.idea/
|
||||||
|
*.sln.iml
|
||||||
|
|
||||||
|
# CodeRush personal settings
|
||||||
|
.cr/personal
|
||||||
|
|
||||||
|
# Python Tools for Visual Studio (PTVS)
|
||||||
|
__pycache__/
|
||||||
|
*.pyc
|
||||||
|
|
||||||
|
# Cake - Uncomment if you are using it
|
||||||
|
# tools/**
|
||||||
|
# !tools/packages.config
|
||||||
|
|
||||||
|
# Tabs Studio
|
||||||
|
*.tss
|
||||||
|
|
||||||
|
# Telerik's JustMock configuration file
|
||||||
|
*.jmconfig
|
||||||
|
|
||||||
|
# BizTalk build output
|
||||||
|
*.btp.cs
|
||||||
|
*.btm.cs
|
||||||
|
*.odx.cs
|
||||||
|
*.xsd.cs
|
||||||
|
|
||||||
|
# OpenCover UI analysis results
|
||||||
|
OpenCover/
|
||||||
|
|
||||||
|
# Azure Stream Analytics local run output
|
||||||
|
ASALocalRun/
|
||||||
|
|
||||||
|
# MSBuild Binary and Structured Log
|
||||||
|
*.binlog
|
||||||
|
|
||||||
|
# NVidia Nsight GPU debugger configuration file
|
||||||
|
*.nvuser
|
||||||
|
|
||||||
|
# MFractors (Xamarin productivity tool) working folder
|
||||||
|
.mfractor/
|
||||||
|
|
||||||
|
# Local History for Visual Studio
|
||||||
|
.localhistory/
|
||||||
|
|
||||||
|
# BeatPulse healthcheck temp database
|
||||||
|
healthchecksdb
|
||||||
|
|
||||||
|
*.psd
|
||||||
|
*.dds
|
|
@ -0,0 +1,27 @@
|
||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<ModMetaData>
|
||||||
|
<name>RJW Sexperience</name>
|
||||||
|
<author>a</author>
|
||||||
|
<supportedVersions>
|
||||||
|
<li>1.3</li>
|
||||||
|
</supportedVersions>
|
||||||
|
<modDependencies>
|
||||||
|
<li>
|
||||||
|
<packageId>brrainz.harmony</packageId>
|
||||||
|
<displayName>Harmony</displayName>
|
||||||
|
<steamWorkshopUrl>steam://url/CommunityFilePage/2009463077</steamWorkshopUrl>
|
||||||
|
<downloadUrl>https://github.com/pardeike/HarmonyRimWorld/releases/latest</downloadUrl>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<packageId>rim.job.world</packageId>
|
||||||
|
<displayName>RimJobWorld</displayName>
|
||||||
|
<downloadUrl>https://gitgud.io/Ed86/rjw</downloadUrl>
|
||||||
|
</li>
|
||||||
|
</modDependencies>
|
||||||
|
<loadAfter>
|
||||||
|
<li>brrainz.harmony</li>
|
||||||
|
<li>rim.job.world</li>
|
||||||
|
</loadAfter>
|
||||||
|
<packageId>rjw.sexperience</packageId>
|
||||||
|
<description>EXPERIMENTAL yes yes</description>
|
||||||
|
</ModMetaData>
|
|
@ -0,0 +1,12 @@
|
||||||
|
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
|
||||||
|
<Manifest>
|
||||||
|
<identifier>RJW Sexperience</identifier>
|
||||||
|
<version>1.0.1.5</version>
|
||||||
|
<dependencies>
|
||||||
|
</dependencies>
|
||||||
|
<incompatibleWith />
|
||||||
|
<loadAfter>
|
||||||
|
</loadAfter>
|
||||||
|
<suggests>
|
||||||
|
</suggests>
|
||||||
|
</Manifest>
|
|
@ -0,0 +1,33 @@
|
||||||
|
<?xml version="1.0" encoding="utf-8" ?>
|
||||||
|
<Defs>
|
||||||
|
<!-- Agreement - same -->
|
||||||
|
|
||||||
|
<GoodwillSituationDef>
|
||||||
|
<defName>Zoophile_Zoophile</defName>
|
||||||
|
<label>zoophile agreement</label>
|
||||||
|
<workerClass>GoodwillSituationWorker_MemeCompatibility</workerClass>
|
||||||
|
<meme>Zoophile</meme>
|
||||||
|
<otherMeme>Zoophile</otherMeme>
|
||||||
|
<naturalGoodwillOffset>30</naturalGoodwillOffset>
|
||||||
|
</GoodwillSituationDef>
|
||||||
|
|
||||||
|
<!-- Disagreement -->
|
||||||
|
|
||||||
|
<GoodwillSituationDef>
|
||||||
|
<defName>Zoophile_All</defName>
|
||||||
|
<label>zoophile</label>
|
||||||
|
<workerClass>RJWSexperience.GoodwillSituationWorker_OneWayReceive</workerClass>
|
||||||
|
<meme>Zoophile</meme>
|
||||||
|
<versusAll>true</versusAll>
|
||||||
|
<naturalGoodwillOffset>-50</naturalGoodwillOffset>
|
||||||
|
</GoodwillSituationDef>
|
||||||
|
|
||||||
|
<GoodwillSituationDef>
|
||||||
|
<defName>Rapist_All</defName>
|
||||||
|
<label>rapist</label>
|
||||||
|
<workerClass>RJWSexperience.GoodwillSituationWorker_OneWayReceive</workerClass>
|
||||||
|
<meme>Rapist</meme>
|
||||||
|
<versusAll>true</versusAll>
|
||||||
|
<naturalGoodwillOffset>-20</naturalGoodwillOffset>
|
||||||
|
</GoodwillSituationDef>
|
||||||
|
</Defs>
|
|
@ -0,0 +1,154 @@
|
||||||
|
<?xml version="1.0" encoding="utf-8" ?>
|
||||||
|
<Defs>
|
||||||
|
<MemeGroupDef>
|
||||||
|
<defName>SexualDissolutely</defName>
|
||||||
|
<drawOffset>(0.65, 0.23)</drawOffset>
|
||||||
|
<maxRows>1</maxRows>
|
||||||
|
<renderOrder>3000</renderOrder>
|
||||||
|
</MemeGroupDef>
|
||||||
|
|
||||||
|
<MemeDef Name="SexualDissoulutelyBase" Abstract="True">
|
||||||
|
<groupDef>SexualDissolutely</groupDef>
|
||||||
|
<selectOneOrNone>
|
||||||
|
<noneChance>1.0</noneChance>
|
||||||
|
<preceptThingPairs>
|
||||||
|
</preceptThingPairs>
|
||||||
|
</selectOneOrNone>
|
||||||
|
</MemeDef>
|
||||||
|
|
||||||
|
<MemeDef ParentName="SexualDissoulutelyBase">
|
||||||
|
<defName>Zoophile</defName>
|
||||||
|
<label>zoophile</label>
|
||||||
|
<description>Animal fuckers.</description>
|
||||||
|
<iconPath>UI/Commands/Breeding_Pawn_off</iconPath>
|
||||||
|
<impact>3</impact>
|
||||||
|
<requireOne>
|
||||||
|
<li>
|
||||||
|
<li>Bestiality_Acceptable</li>
|
||||||
|
<li>Bestiality_OnlyVenerated</li>
|
||||||
|
<li>Bestiality_Honorable</li>
|
||||||
|
</li>
|
||||||
|
</requireOne>
|
||||||
|
<generalRules>
|
||||||
|
<rulesStrings>
|
||||||
|
<li>memeAdjective->bestial</li>
|
||||||
|
<li>memeAdjective->zoophile</li>
|
||||||
|
<li>memeHyphenPrefix->bestial</li>
|
||||||
|
<li>memeConcept->breeding</li>
|
||||||
|
<li>memeConcept->bestiality</li>
|
||||||
|
<li>memeConcept->zoophile</li>
|
||||||
|
<li>memeLeaderNoun->livestock</li>
|
||||||
|
</rulesStrings>
|
||||||
|
</generalRules>
|
||||||
|
<descriptionMaker>
|
||||||
|
<rules>
|
||||||
|
<rulesStrings>
|
||||||
|
<!-- theist myth -->
|
||||||
|
<li>creation(tag=meme_Zoophile) ->[deity0_name] loves breeding with beasts.</li>
|
||||||
|
<li>episode(uses=1,tag=meme_Zoophile) ->[deity0_name] said to all, "Sigmar forbids this!"</li>
|
||||||
|
<!-- ideological founder -->
|
||||||
|
<li>setup(tag=meme_Zoophile) ->Someday, [founderName] was so horny that accidentally fucked with an animal and loved it. </li>
|
||||||
|
<li>story(uses=1,tag=meme_Zoophile) ->For spreading animals, [founderName] started to breed with animals.</li>
|
||||||
|
<!-- ideological lesson -->
|
||||||
|
<li>lessonIntro(tag=meme_Zoophile) ->Someday, i had sex with animal. It was much better than humans!</li>
|
||||||
|
<li>lesson(tag=meme_Zoophile) ->Only the animals can satisfy me.</li>
|
||||||
|
<li>lessonReinforcement(tag=meme_Zoophile) ->Breed with animals. It is the eternal hapiness.</li>
|
||||||
|
<!-- archist -->
|
||||||
|
<li>archistBasis(tag=meme_Zoophile) ->Archists are always seeking ultimate pleasure.</li>
|
||||||
|
<li>archistFact(tag=meme_Zoophile) ->That was breeding with animals.</li>
|
||||||
|
<li>archistProphecy(tag=meme_Zoophile) ->[inTheEnd], the archotechs will finally unlock the interspecies breeding, so that they may lead ultimate pleasure.</li>
|
||||||
|
<!-- animist -->
|
||||||
|
<li>animistFact(tag=meme_Zoophile) ->The most powerful spirits are those of beasts, and spirits of beasts will be restless unless beasts rule.</li>
|
||||||
|
<li>animistProphecy(tag=meme_Zoophile) ->[itIsSaid] that a powerful spirit of destruction will seek to end the universe, but that a human-born beast will wield the spirit of the [relic0_name] and destroy the destroyer.</li>
|
||||||
|
</rulesStrings>
|
||||||
|
</rules>
|
||||||
|
</descriptionMaker>
|
||||||
|
<symbolPacks>
|
||||||
|
<li>
|
||||||
|
<ideoName>Breeders</ideoName>
|
||||||
|
<theme>breed</theme>
|
||||||
|
<adjective>bestiality</adjective>
|
||||||
|
<member>breeder</member>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<ideoName>Zoophilia</ideoName>
|
||||||
|
<theme>zoophile</theme>
|
||||||
|
<adjective>zoophile</adjective>
|
||||||
|
<member>zoophiliac</member>
|
||||||
|
</li>
|
||||||
|
</symbolPacks>
|
||||||
|
<agreeableTraits>
|
||||||
|
<li>Zoophile</li>
|
||||||
|
</agreeableTraits>
|
||||||
|
</MemeDef>
|
||||||
|
|
||||||
|
|
||||||
|
<MemeDef ParentName="SexualDissoulutelyBase">
|
||||||
|
<defName>Rapist</defName>
|
||||||
|
<label>rapist</label>
|
||||||
|
<description>Rape is best.</description>
|
||||||
|
<iconPath>UI/Memes/Rape</iconPath>
|
||||||
|
<impact>2</impact>
|
||||||
|
<requireOne>
|
||||||
|
<li>
|
||||||
|
<li>Rape_Honorable</li>
|
||||||
|
<li>Rape_Acceptable</li>
|
||||||
|
</li>
|
||||||
|
</requireOne>
|
||||||
|
<generalRules>
|
||||||
|
<rulesStrings>
|
||||||
|
<li>memeAdjective->violent</li>
|
||||||
|
<li>memeAdjective->raping</li>
|
||||||
|
<li>memeHyphenPrefix->rapist</li>
|
||||||
|
<li>memeHyphenPrefix->molester</li>
|
||||||
|
<li>memeHyphenPrefix->pervert</li>
|
||||||
|
<li>memeConcept->rapist</li>
|
||||||
|
<li>memeConcept->pervert</li>
|
||||||
|
<li>memeGod->slaanesh</li>
|
||||||
|
<li>memeLeaderNoun->stallion</li>
|
||||||
|
<li>memeLeaderNoun->grand rapist</li>
|
||||||
|
</rulesStrings>
|
||||||
|
</generalRules>
|
||||||
|
<descriptionMaker>
|
||||||
|
<rules>
|
||||||
|
<rulesStrings>
|
||||||
|
<!-- theist myth -->
|
||||||
|
<li>creation(tag=meme_Rapist) ->[deity0_name] loves rape.</li>
|
||||||
|
<li>episode(uses=1,tag=meme_Rapist) ->[deity0_name] raped everyone until death during rape.</li>
|
||||||
|
<!-- ideological founder -->
|
||||||
|
<li>setup(tag=meme_Rapist) ->[founderName] is always horny. </li>
|
||||||
|
<li>story(uses=1,tag=meme_Rapist) ->[founderName] raped everyone. No one can stop [founderName]. [founderName] died trying to rape planet.</li>
|
||||||
|
<!-- ideological lesson -->
|
||||||
|
<li>lessonIntro(tag=meme_Rapist) ->Rape is best! Rape is best! Rape is best!</li>
|
||||||
|
<li>lesson(tag=meme_Rapist) ->Rape is best! Rape is best! Rape is best! Rape is best!</li>
|
||||||
|
<li>lessonReinforcement(tag=meme_Rapist) ->Rape is best! Rape is best! Rape is best! Rape is best! Rape is best!</li>
|
||||||
|
<!-- archist -->
|
||||||
|
<li>archistBasis(tag=meme_Rapist) ->Human history is history of rape.</li>
|
||||||
|
<li>archistFact(tag=meme_Rapist) ->Even archotechs cannot stop rapists.</li>
|
||||||
|
<li>archistProphecy(tag=meme_Rapist) ->[inTheEnd], the rapists never stop raping.</li>
|
||||||
|
<!-- animist -->
|
||||||
|
<li>animistFact(tag=meme_Rapist) ->The most powerful spirits are those of rapists, and spirits of rapists will rape all.</li>
|
||||||
|
<li>animistProphecy(tag=meme_Rapist) ->[itIsSaid] that a powerful spirit of destruction will seek to end the universe, but that a million-raped rapist will wield the spirit of the [relic0_name] and rape the destroyer.</li>
|
||||||
|
</rulesStrings>
|
||||||
|
</rules>
|
||||||
|
</descriptionMaker>
|
||||||
|
<symbolPacks>
|
||||||
|
<li>
|
||||||
|
<ideoName>Rapists</ideoName>
|
||||||
|
<theme>rapist</theme>
|
||||||
|
<adjective>raping</adjective>
|
||||||
|
<member>rapist</member>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<ideoName>Cult of Slaanesh</ideoName>
|
||||||
|
<theme>pleasure</theme>
|
||||||
|
<adjective>decadent</adjective>
|
||||||
|
<member>heretic</member>
|
||||||
|
</li>
|
||||||
|
</symbolPacks>
|
||||||
|
<agreeableTraits>
|
||||||
|
<li>Rapist</li>
|
||||||
|
</agreeableTraits>
|
||||||
|
</MemeDef>
|
||||||
|
|
||||||
|
</Defs>
|
|
@ -0,0 +1,25 @@
|
||||||
|
<?xml version="1.0" encoding="utf-8" ?>
|
||||||
|
<Defs>
|
||||||
|
<PawnRelationDef>
|
||||||
|
<workerClass>PawnRelationWorker_Child</workerClass>
|
||||||
|
<defName>Bastard</defName>
|
||||||
|
<label>bastard</label>
|
||||||
|
<labelFemale>bastard</labelFemale>
|
||||||
|
<importance>190</importance>
|
||||||
|
<diedThought>MySonDied</diedThought>
|
||||||
|
<diedThoughtFemale>MyDaughterDied</diedThoughtFemale>
|
||||||
|
<killedThought>KilledMySon</killedThought>
|
||||||
|
<killedThoughtFemale>KilledMyDaughter</killedThoughtFemale>
|
||||||
|
<lostThought>MySonLost</lostThought>
|
||||||
|
<lostThoughtFemale>MyDaughterLost</lostThoughtFemale>
|
||||||
|
<soldThoughts>
|
||||||
|
<li>SoldMyLovedOne</li>
|
||||||
|
</soldThoughts>
|
||||||
|
<opinionOffset>30</opinionOffset>
|
||||||
|
<generationChanceFactor>1.0</generationChanceFactor>
|
||||||
|
<romanceChanceFactor>0.03</romanceChanceFactor>
|
||||||
|
<incestOpinionOffset>-30</incestOpinionOffset>
|
||||||
|
<implied>true</implied>
|
||||||
|
<familyByBloodRelation>true</familyByBloodRelation>
|
||||||
|
</PawnRelationDef>
|
||||||
|
</Defs>
|
|
@ -0,0 +1,413 @@
|
||||||
|
<?xml version="1.0" encoding="utf-8" ?>
|
||||||
|
<Defs>
|
||||||
|
|
||||||
|
<!-- Issues -->
|
||||||
|
<IssueDef>
|
||||||
|
<defName>Bestiality</defName>
|
||||||
|
<label>bestiality</label>
|
||||||
|
<iconPath>UI/Commands/Breeding_Pawn_off</iconPath>
|
||||||
|
</IssueDef>
|
||||||
|
|
||||||
|
<HistoryEventDef>
|
||||||
|
<defName>SexWithAnimal</defName>
|
||||||
|
<label>sex with animal</label>
|
||||||
|
</HistoryEventDef>
|
||||||
|
|
||||||
|
<HistoryEventDef>
|
||||||
|
<defName>SexWithVeneratedAnimal</defName>
|
||||||
|
<label>sex with venerated animal</label>
|
||||||
|
</HistoryEventDef>
|
||||||
|
|
||||||
|
<!-- Precepts -->
|
||||||
|
|
||||||
|
<PreceptDef>
|
||||||
|
<defName>Bestiality_Abhorrent</defName>
|
||||||
|
<issue>Bestiality</issue>
|
||||||
|
<label>abhorrent</label>
|
||||||
|
<description>Bestiality beings is deeply evil.</description>
|
||||||
|
<impact>Low</impact>
|
||||||
|
<displayOrderInIssue>40</displayOrderInIssue>
|
||||||
|
<displayOrderInImpact>100</displayOrderInImpact>
|
||||||
|
<defaultSelectionWeight>30</defaultSelectionWeight>
|
||||||
|
<conflictingMemes>
|
||||||
|
<li>Zoophile</li>
|
||||||
|
</conflictingMemes>
|
||||||
|
<associatedMemes>
|
||||||
|
<li>HumanPrimacy</li>
|
||||||
|
</associatedMemes>
|
||||||
|
<comps>
|
||||||
|
<li Class="PreceptComp_SelfTookMemoryThought">
|
||||||
|
<eventDef>SexWithVeneratedAnimal</eventDef>
|
||||||
|
<thought>Bestiality_Abhorrent</thought>
|
||||||
|
</li>
|
||||||
|
<li Class="PreceptComp_KnowsMemoryThought">
|
||||||
|
<eventDef>SexWithVeneratedAnimal</eventDef>
|
||||||
|
<thought>Bestiality_Know_Abhorrent</thought>
|
||||||
|
</li>
|
||||||
|
<li Class="PreceptComp_SelfTookMemoryThought">
|
||||||
|
<eventDef>SexWithAnimal</eventDef>
|
||||||
|
<thought>Bestiality_Abhorrent</thought>
|
||||||
|
</li>
|
||||||
|
<li Class="PreceptComp_KnowsMemoryThought">
|
||||||
|
<eventDef>SexWithAnimal</eventDef>
|
||||||
|
<thought>Bestiality_Know_Abhorrent</thought>
|
||||||
|
</li>
|
||||||
|
</comps>
|
||||||
|
</PreceptDef>
|
||||||
|
|
||||||
|
<PreceptDef>
|
||||||
|
<defName>Bestiality_Horrible</defName>
|
||||||
|
<issue>Bestiality</issue>
|
||||||
|
<label>horrible</label>
|
||||||
|
<description>Bestiality is a horrible thing.</description>
|
||||||
|
<impact>Low</impact>
|
||||||
|
<displayOrderInIssue>30</displayOrderInIssue>
|
||||||
|
<displayOrderInImpact>200</displayOrderInImpact>
|
||||||
|
<defaultSelectionWeight>30</defaultSelectionWeight>
|
||||||
|
<conflictingMemes>
|
||||||
|
<li>Zoophile</li>
|
||||||
|
</conflictingMemes>
|
||||||
|
<associatedMemes>
|
||||||
|
<li>HumanPrimacy</li>
|
||||||
|
</associatedMemes>
|
||||||
|
<comps>
|
||||||
|
<li Class="PreceptComp_SelfTookMemoryThought">
|
||||||
|
<eventDef>SexWithVeneratedAnimal</eventDef>
|
||||||
|
<thought>Bestiality_Horrible</thought>
|
||||||
|
</li>
|
||||||
|
<li Class="PreceptComp_KnowsMemoryThought">
|
||||||
|
<eventDef>SexWithVeneratedAnimal</eventDef>
|
||||||
|
<thought>Bestiality_Know_Horrible</thought>
|
||||||
|
</li>
|
||||||
|
<li Class="PreceptComp_SelfTookMemoryThought">
|
||||||
|
<eventDef>SexWithAnimal</eventDef>
|
||||||
|
<thought>Bestiality_Horrible</thought>
|
||||||
|
</li>
|
||||||
|
<li Class="PreceptComp_KnowsMemoryThought">
|
||||||
|
<eventDef>SexWithAnimal</eventDef>
|
||||||
|
<thought>Bestiality_Know_Horrible</thought>
|
||||||
|
</li>
|
||||||
|
</comps>
|
||||||
|
</PreceptDef>
|
||||||
|
|
||||||
|
<PreceptDef>
|
||||||
|
<defName>Bestiality_Disapproved</defName>
|
||||||
|
<issue>Bestiality</issue>
|
||||||
|
<label>disapproved</label>
|
||||||
|
<description>Bestiality is extremely distasteful.</description>
|
||||||
|
<impact>Low</impact>
|
||||||
|
<displayOrderInIssue>20</displayOrderInIssue>
|
||||||
|
<displayOrderInImpact>300</displayOrderInImpact>
|
||||||
|
<defaultSelectionWeight>20</defaultSelectionWeight>
|
||||||
|
<conflictingMemes>
|
||||||
|
<li>Zoophile</li>
|
||||||
|
</conflictingMemes>
|
||||||
|
<associatedMemes>
|
||||||
|
<li>HumanPrimacy</li>
|
||||||
|
</associatedMemes>
|
||||||
|
<comps>
|
||||||
|
<li Class="PreceptComp_SelfTookMemoryThought">
|
||||||
|
<eventDef>SexWithVeneratedAnimal</eventDef>
|
||||||
|
<thought>Bestiality_Disapproved</thought>
|
||||||
|
</li>
|
||||||
|
<li Class="PreceptComp_KnowsMemoryThought">
|
||||||
|
<eventDef>SexWithVeneratedAnimal</eventDef>
|
||||||
|
<thought>Bestiality_Know_Disapproved</thought>
|
||||||
|
</li>
|
||||||
|
<li Class="PreceptComp_SelfTookMemoryThought">
|
||||||
|
<eventDef>SexWithAnimal</eventDef>
|
||||||
|
<thought>Bestiality_Disapproved</thought>
|
||||||
|
</li>
|
||||||
|
<li Class="PreceptComp_KnowsMemoryThought">
|
||||||
|
<eventDef>SexWithAnimal</eventDef>
|
||||||
|
<thought>Bestiality_Know_Disapproved</thought>
|
||||||
|
</li>
|
||||||
|
</comps>
|
||||||
|
</PreceptDef>
|
||||||
|
|
||||||
|
<PreceptDef>
|
||||||
|
<defName>Bestiality_Acceptable</defName>
|
||||||
|
<issue>Bestiality</issue>
|
||||||
|
<label>acceptable</label>
|
||||||
|
<description>Bestiality is a normal, unremarkable part of life.</description>
|
||||||
|
<impact>Medium</impact>
|
||||||
|
<displayOrderInIssue>10</displayOrderInIssue>
|
||||||
|
<defaultSelectionWeight>10</defaultSelectionWeight>
|
||||||
|
<approvesOfSlavery>true</approvesOfSlavery>
|
||||||
|
</PreceptDef>
|
||||||
|
|
||||||
|
|
||||||
|
<PreceptDef>
|
||||||
|
<defName>Bestiality_OnlyVenerated</defName>
|
||||||
|
<issue>Bestiality</issue>
|
||||||
|
<label>only venerated</label>
|
||||||
|
<description>One who sex with venerated animals should be honored and respected. But having sex with other animals will be denounced</description>
|
||||||
|
<impact>High</impact>
|
||||||
|
<displayOrderInIssue>0</displayOrderInIssue>
|
||||||
|
<displayOrderInImpact>1000</displayOrderInImpact>
|
||||||
|
<conflictingMemes>
|
||||||
|
<li>HumanPrimacy</li>
|
||||||
|
</conflictingMemes>
|
||||||
|
<requiredMemes>
|
||||||
|
<li>Zoophile</li>
|
||||||
|
</requiredMemes>
|
||||||
|
<comps>
|
||||||
|
<li Class="PreceptComp_SelfTookMemoryThought">
|
||||||
|
<eventDef>SexWithAnimal</eventDef>
|
||||||
|
<thought>Bestiality_Nonvenerated_Disapproved</thought>
|
||||||
|
<onlyForNonSlaves>true</onlyForNonSlaves>
|
||||||
|
</li>
|
||||||
|
<li Class="PreceptComp_KnowsMemoryThought">
|
||||||
|
<eventDef>SexWithAnimal</eventDef>
|
||||||
|
<thought>Bestiality_Nonvenerated_Know_Disapproved</thought>
|
||||||
|
<description>Someone sex with any animal</description>
|
||||||
|
<onlyForNonSlaves>true</onlyForNonSlaves>
|
||||||
|
</li>
|
||||||
|
<li Class="PreceptComp_SelfTookMemoryThought">
|
||||||
|
<eventDef>SexWithVeneratedAnimal</eventDef>
|
||||||
|
<thought>Bestiality_Honorable</thought>
|
||||||
|
<onlyForNonSlaves>true</onlyForNonSlaves>
|
||||||
|
</li>
|
||||||
|
<li Class="PreceptComp_KnowsMemoryThought">
|
||||||
|
<eventDef>SexWithVeneratedAnimal</eventDef>
|
||||||
|
<thought>Bestiality_Know_Honorable</thought>
|
||||||
|
<description>Someone sex with animal</description>
|
||||||
|
<onlyForNonSlaves>true</onlyForNonSlaves>
|
||||||
|
</li>
|
||||||
|
</comps>
|
||||||
|
</PreceptDef>
|
||||||
|
|
||||||
|
<PreceptDef>
|
||||||
|
<defName>Bestiality_Honorable</defName>
|
||||||
|
<issue>Bestiality</issue>
|
||||||
|
<label>encouraging</label>
|
||||||
|
<description>One who sex with animals should be encouraged.</description>
|
||||||
|
<impact>High</impact>
|
||||||
|
<displayOrderInIssue>0</displayOrderInIssue>
|
||||||
|
<displayOrderInImpact>1000</displayOrderInImpact>
|
||||||
|
<conflictingMemes>
|
||||||
|
<li>HumanPrimacy</li>
|
||||||
|
</conflictingMemes>
|
||||||
|
<requiredMemes>
|
||||||
|
<li>Zoophile</li>
|
||||||
|
</requiredMemes>
|
||||||
|
<comps>
|
||||||
|
<li Class="PreceptComp_SelfTookMemoryThought">
|
||||||
|
<eventDef>SexWithAnimal</eventDef>
|
||||||
|
<thought>Bestiality_Honorable</thought>
|
||||||
|
<onlyForNonSlaves>true</onlyForNonSlaves>
|
||||||
|
</li>
|
||||||
|
<li Class="PreceptComp_KnowsMemoryThought">
|
||||||
|
<eventDef>SexWithAnimal</eventDef>
|
||||||
|
<thought>Bestiality_Know_Honorable</thought>
|
||||||
|
<description>Someone sex with animal</description>
|
||||||
|
<onlyForNonSlaves>true</onlyForNonSlaves>
|
||||||
|
</li>
|
||||||
|
</comps>
|
||||||
|
</PreceptDef>
|
||||||
|
|
||||||
|
<!-- Thoughts -->
|
||||||
|
|
||||||
|
|
||||||
|
<ThoughtDef>
|
||||||
|
<defName>Bestiality_Abhorrent</defName>
|
||||||
|
<durationDays>6</durationDays>
|
||||||
|
<stackLimit>1</stackLimit>
|
||||||
|
<nullifyingTraits>
|
||||||
|
<li>Zoophile</li>
|
||||||
|
</nullifyingTraits>
|
||||||
|
<nullifyingPrecepts>
|
||||||
|
<li>Bestiality_Honorable</li>
|
||||||
|
<li>Bestiality_OnlyVenerated</li>
|
||||||
|
<li>Bestiality_Acceptable</li>
|
||||||
|
</nullifyingPrecepts>
|
||||||
|
<stages>
|
||||||
|
<li>
|
||||||
|
<label>sex with animal</label>
|
||||||
|
<description>I had sex with animal. I want to die.</description>
|
||||||
|
<baseMoodEffect>-15</baseMoodEffect>
|
||||||
|
</li>
|
||||||
|
</stages>
|
||||||
|
</ThoughtDef>
|
||||||
|
|
||||||
|
<ThoughtDef>
|
||||||
|
<defName>Bestiality_Know_Abhorrent</defName>
|
||||||
|
<thoughtClass>Thought_MemorySocial</thoughtClass>
|
||||||
|
<durationDays>15</durationDays>
|
||||||
|
<stackLimit>100</stackLimit>
|
||||||
|
<stackLimitForSameOtherPawn>3</stackLimitForSameOtherPawn>
|
||||||
|
<nullifyingTraits>
|
||||||
|
<li>Zoophile</li>
|
||||||
|
</nullifyingTraits>
|
||||||
|
<nullifyingPrecepts>
|
||||||
|
<li>Bestiality_Honorable</li>
|
||||||
|
<li>Bestiality_OnlyVenerated</li>
|
||||||
|
<li>Bestiality_Acceptable</li>
|
||||||
|
</nullifyingPrecepts>
|
||||||
|
<stages>
|
||||||
|
<li>
|
||||||
|
<label>sex with animal</label>
|
||||||
|
<baseOpinionOffset>-30</baseOpinionOffset>
|
||||||
|
</li>
|
||||||
|
</stages>
|
||||||
|
</ThoughtDef>
|
||||||
|
|
||||||
|
<ThoughtDef>
|
||||||
|
<defName>Bestiality_Horrible</defName>
|
||||||
|
<durationDays>6</durationDays>
|
||||||
|
<stackLimit>1</stackLimit>
|
||||||
|
<nullifyingTraits>
|
||||||
|
<li>Zoophile</li>
|
||||||
|
</nullifyingTraits>
|
||||||
|
<nullifyingPrecepts>
|
||||||
|
<li>Bestiality_Honorable</li>
|
||||||
|
<li>Bestiality_OnlyVenerated</li>
|
||||||
|
<li>Bestiality_Acceptable</li>
|
||||||
|
</nullifyingPrecepts>
|
||||||
|
<stages>
|
||||||
|
<li>
|
||||||
|
<label>sex with animal</label>
|
||||||
|
<description>I had sex with animal. I'm not sure I can forgive myself.</description>
|
||||||
|
<baseMoodEffect>-10</baseMoodEffect>
|
||||||
|
</li>
|
||||||
|
</stages>
|
||||||
|
</ThoughtDef>
|
||||||
|
|
||||||
|
<ThoughtDef>
|
||||||
|
<defName>Bestiality_Know_Horrible</defName>
|
||||||
|
<thoughtClass>Thought_MemorySocial</thoughtClass>
|
||||||
|
<durationDays>15</durationDays>
|
||||||
|
<stackLimit>100</stackLimit>
|
||||||
|
<stackLimitForSameOtherPawn>3</stackLimitForSameOtherPawn>
|
||||||
|
<nullifyingTraits>
|
||||||
|
<li>Zoophile</li>
|
||||||
|
</nullifyingTraits>
|
||||||
|
<nullifyingPrecepts>
|
||||||
|
<li>Bestiality_Honorable</li>
|
||||||
|
<li>Bestiality_OnlyVenerated</li>
|
||||||
|
<li>Bestiality_Acceptable</li>
|
||||||
|
</nullifyingPrecepts>
|
||||||
|
<stages>
|
||||||
|
<li>
|
||||||
|
<label>sex with animal</label>
|
||||||
|
<baseOpinionOffset>-20</baseOpinionOffset>
|
||||||
|
</li>
|
||||||
|
</stages>
|
||||||
|
</ThoughtDef>
|
||||||
|
|
||||||
|
<ThoughtDef>
|
||||||
|
<defName>Bestiality_Disapproved</defName>
|
||||||
|
<durationDays>6</durationDays>
|
||||||
|
<stackLimit>1</stackLimit>
|
||||||
|
<nullifyingTraits>
|
||||||
|
<li>Zoophile</li>
|
||||||
|
</nullifyingTraits>
|
||||||
|
<nullifyingPrecepts>
|
||||||
|
<li>Bestiality_Honorable</li>
|
||||||
|
<li>Bestiality_OnlyVenerated</li>
|
||||||
|
<li>Bestiality_Acceptable</li>
|
||||||
|
</nullifyingPrecepts>
|
||||||
|
<stages>
|
||||||
|
<li>
|
||||||
|
<label>sex with animal</label>
|
||||||
|
<description>I had sex with animal. I hope nothing terrible happens to them.</description>
|
||||||
|
<baseMoodEffect>-5</baseMoodEffect>
|
||||||
|
</li>
|
||||||
|
</stages>
|
||||||
|
</ThoughtDef>
|
||||||
|
|
||||||
|
<ThoughtDef>
|
||||||
|
<defName>Bestiality_Know_Disapproved</defName>
|
||||||
|
<thoughtClass>Thought_MemorySocial</thoughtClass>
|
||||||
|
<durationDays>15</durationDays>
|
||||||
|
<stackLimit>100</stackLimit>
|
||||||
|
<stackLimitForSameOtherPawn>3</stackLimitForSameOtherPawn>
|
||||||
|
<nullifyingTraits>
|
||||||
|
<li>Zoophile</li>
|
||||||
|
</nullifyingTraits>
|
||||||
|
<nullifyingPrecepts>
|
||||||
|
<li>Bestiality_Honorable</li>
|
||||||
|
<li>Bestiality_OnlyVenerated</li>
|
||||||
|
<li>Bestiality_Acceptable</li>
|
||||||
|
</nullifyingPrecepts>
|
||||||
|
<stages>
|
||||||
|
<li>
|
||||||
|
<label>sex with animal</label>
|
||||||
|
<baseOpinionOffset>-10</baseOpinionOffset>
|
||||||
|
</li>
|
||||||
|
</stages>
|
||||||
|
</ThoughtDef>
|
||||||
|
|
||||||
|
<ThoughtDef>
|
||||||
|
<defName>Bestiality_Nonvenerated_Disapproved</defName>
|
||||||
|
<durationDays>6</durationDays>
|
||||||
|
<stackLimit>1</stackLimit>
|
||||||
|
<nullifyingPrecepts>
|
||||||
|
<li>Bestiality_Honorable</li>
|
||||||
|
<li>Bestiality_Acceptable</li>
|
||||||
|
</nullifyingPrecepts>
|
||||||
|
<stages>
|
||||||
|
<li>
|
||||||
|
<label>sex with non-venerated animal</label>
|
||||||
|
<description>I had sex with any animal. I hope nothing terrible happens to them.</description>
|
||||||
|
<baseMoodEffect>-5</baseMoodEffect>
|
||||||
|
</li>
|
||||||
|
</stages>
|
||||||
|
</ThoughtDef>
|
||||||
|
|
||||||
|
<ThoughtDef>
|
||||||
|
<defName>Bestiality_Nonvenerated_Know_Disapproved</defName>
|
||||||
|
<thoughtClass>Thought_MemorySocial</thoughtClass>
|
||||||
|
<durationDays>15</durationDays>
|
||||||
|
<stackLimit>100</stackLimit>
|
||||||
|
<stackLimitForSameOtherPawn>3</stackLimitForSameOtherPawn>
|
||||||
|
<nullifyingPrecepts>
|
||||||
|
<li>Bestiality_Honorable</li>
|
||||||
|
<li>Bestiality_Acceptable</li>
|
||||||
|
</nullifyingPrecepts>
|
||||||
|
<stages>
|
||||||
|
<li>
|
||||||
|
<label>sex with any animal</label>
|
||||||
|
<baseOpinionOffset>-10</baseOpinionOffset>
|
||||||
|
</li>
|
||||||
|
</stages>
|
||||||
|
</ThoughtDef>
|
||||||
|
|
||||||
|
<ThoughtDef>
|
||||||
|
<defName>Bestiality_Honorable</defName>
|
||||||
|
<durationDays>6</durationDays>
|
||||||
|
<stackLimit>1</stackLimit>
|
||||||
|
<nullifyingPrecepts>
|
||||||
|
<li>Bestiality_Abhorrent</li>
|
||||||
|
<li>Bestiality_Horrible</li>
|
||||||
|
<li>Bestiality_Disapproved</li>
|
||||||
|
</nullifyingPrecepts>
|
||||||
|
<stages>
|
||||||
|
<li>
|
||||||
|
<label>sex with animal</label>
|
||||||
|
<description>I had sex with animal.</description>
|
||||||
|
<baseMoodEffect>4</baseMoodEffect>
|
||||||
|
</li>
|
||||||
|
</stages>
|
||||||
|
</ThoughtDef>
|
||||||
|
|
||||||
|
<ThoughtDef>
|
||||||
|
<defName>Bestiality_Know_Honorable</defName>
|
||||||
|
<thoughtClass>Thought_MemorySocial</thoughtClass>
|
||||||
|
<durationDays>25</durationDays>
|
||||||
|
<stackLimit>100</stackLimit>
|
||||||
|
<stackLimitForSameOtherPawn>3</stackLimitForSameOtherPawn>
|
||||||
|
<nullifyingPrecepts>
|
||||||
|
<li>Bestiality_Abhorrent</li>
|
||||||
|
<li>Bestiality_Horrible</li>
|
||||||
|
<li>Bestiality_Disapproved</li>
|
||||||
|
</nullifyingPrecepts>
|
||||||
|
<stages>
|
||||||
|
<li>
|
||||||
|
<label>sex with animal</label>
|
||||||
|
<baseOpinionOffset>5</baseOpinionOffset>
|
||||||
|
</li>
|
||||||
|
</stages>
|
||||||
|
</ThoughtDef>
|
||||||
|
|
||||||
|
</Defs>
|
|
@ -0,0 +1,389 @@
|
||||||
|
<?xml version="1.0" encoding="utf-8" ?>
|
||||||
|
<Defs>
|
||||||
|
|
||||||
|
<!-- Issues -->
|
||||||
|
<IssueDef>
|
||||||
|
<defName>Incestuos</defName>
|
||||||
|
<label>incest</label>
|
||||||
|
<iconPath>UI/Issues/Incest</iconPath>
|
||||||
|
</IssueDef>
|
||||||
|
|
||||||
|
<HistoryEventDef>
|
||||||
|
<defName>Incestuos_Marriage</defName>
|
||||||
|
<label>Incestuos marriage</label>
|
||||||
|
</HistoryEventDef>
|
||||||
|
|
||||||
|
<!-- Precepts -->
|
||||||
|
|
||||||
|
<PreceptDef>
|
||||||
|
<defName>Incestuos_Free</defName>
|
||||||
|
<issue>Incestuos</issue>
|
||||||
|
<label>free</label>
|
||||||
|
<description>Open minded.</description>
|
||||||
|
<impact>Medium</impact>
|
||||||
|
<displayOrderInIssue>60</displayOrderInIssue>
|
||||||
|
<displayOrderInImpact>1000</displayOrderInImpact>
|
||||||
|
<defaultSelectionWeight>100</defaultSelectionWeight>
|
||||||
|
</PreceptDef>
|
||||||
|
|
||||||
|
|
||||||
|
<PreceptDef>
|
||||||
|
<defName>Incestuos_Disapproved_CloseOnly</defName>
|
||||||
|
<issue>Incestuos</issue>
|
||||||
|
<label>disapproved on close relatives</label>
|
||||||
|
<description>Incest is disapproved socially. Relations farther than cousin are recognized as not incest.</description>
|
||||||
|
<impact>Low</impact>
|
||||||
|
<displayOrderInIssue>50</displayOrderInIssue>
|
||||||
|
<displayOrderInImpact>1000</displayOrderInImpact>
|
||||||
|
<defaultSelectionWeight>100</defaultSelectionWeight>
|
||||||
|
<comps>
|
||||||
|
<li Class="PreceptComp_SelfTookMemoryThought">
|
||||||
|
<eventDef>Incestuos_Marriage</eventDef>
|
||||||
|
<thought>IncestuosMarriage_Disapproved</thought>
|
||||||
|
</li>
|
||||||
|
<li Class="RJWSexperience.PreceptComp_KnowsMemoryThoughtTagged">
|
||||||
|
<eventDef>VaginalSex</eventDef>
|
||||||
|
<thought>Sex_Know_Incest_Disapproved</thought>
|
||||||
|
<tag>Incestuos</tag>
|
||||||
|
</li>
|
||||||
|
<li Class="RJWSexperience.PreceptComp_KnowsMemoryThoughtTagged">
|
||||||
|
<eventDef>AnalSex</eventDef>
|
||||||
|
<thought>Sex_Know_Incest_Disapproved</thought>
|
||||||
|
<tag>Incestuos</tag>
|
||||||
|
</li>
|
||||||
|
<li Class="RJWSexperience.PreceptComp_KnowsMemoryThoughtTagged">
|
||||||
|
<eventDef>OralSex</eventDef>
|
||||||
|
<thought>Sex_Know_Incest_Disapproved</thought>
|
||||||
|
<tag>Incestuos</tag>
|
||||||
|
</li>
|
||||||
|
<li Class="RJWSexperience.PreceptComp_KnowsMemoryThoughtTagged">
|
||||||
|
<eventDef>MiscSex</eventDef>
|
||||||
|
<thought>Sex_Know_Incest_Disapproved</thought>
|
||||||
|
<tag>Incestuos</tag>
|
||||||
|
</li>
|
||||||
|
<li Class="RJWSexperience.PreceptComp_KnowsMemoryThoughtTagged">
|
||||||
|
<eventDef>PromiscuousSex</eventDef>
|
||||||
|
<thought>Sex_Know_Incest_Disapproved</thought>
|
||||||
|
<tag>Incestuos</tag>
|
||||||
|
</li>
|
||||||
|
</comps>
|
||||||
|
</PreceptDef>
|
||||||
|
|
||||||
|
<PreceptDef>
|
||||||
|
<defName>Incestuos_Disapproved</defName>
|
||||||
|
<issue>Incestuos</issue>
|
||||||
|
<label>disapproved</label>
|
||||||
|
<description>Incest is disapproved socially.</description>
|
||||||
|
<impact>Low</impact>
|
||||||
|
<displayOrderInIssue>40</displayOrderInIssue>
|
||||||
|
<displayOrderInImpact>1000</displayOrderInImpact>
|
||||||
|
<defaultSelectionWeight>100</defaultSelectionWeight>
|
||||||
|
<comps>
|
||||||
|
<li Class="PreceptComp_SelfTookMemoryThought">
|
||||||
|
<eventDef>Incestuos_Marriage</eventDef>
|
||||||
|
<thought>IncestuosMarriage_Disapproved</thought>
|
||||||
|
</li>
|
||||||
|
<li Class="RJWSexperience.PreceptComp_KnowsMemoryThoughtTagged">
|
||||||
|
<eventDef>Incestuos_Marriage</eventDef>
|
||||||
|
<thought>Sex_Know_IncestMarriage_Disapproved</thought>
|
||||||
|
</li>
|
||||||
|
<li Class="RJWSexperience.PreceptComp_KnowsMemoryThoughtTagged">
|
||||||
|
<eventDef>VaginalSex</eventDef>
|
||||||
|
<thought>Sex_Know_Incest_Disapproved</thought>
|
||||||
|
<tag>Incestuos</tag>
|
||||||
|
</li>
|
||||||
|
<li Class="RJWSexperience.PreceptComp_KnowsMemoryThoughtTagged">
|
||||||
|
<eventDef>AnalSex</eventDef>
|
||||||
|
<thought>Sex_Know_Incest_Disapproved</thought>
|
||||||
|
<tag>Incestuos</tag>
|
||||||
|
</li>
|
||||||
|
<li Class="RJWSexperience.PreceptComp_KnowsMemoryThoughtTagged">
|
||||||
|
<eventDef>OralSex</eventDef>
|
||||||
|
<thought>Sex_Know_Incest_Disapproved</thought>
|
||||||
|
<tag>Incestuos</tag>
|
||||||
|
</li>
|
||||||
|
<li Class="RJWSexperience.PreceptComp_KnowsMemoryThoughtTagged">
|
||||||
|
<eventDef>MiscSex</eventDef>
|
||||||
|
<thought>Sex_Know_Incest_Disapproved</thought>
|
||||||
|
<tag>Incestuos</tag>
|
||||||
|
</li>
|
||||||
|
<li Class="RJWSexperience.PreceptComp_KnowsMemoryThoughtTagged">
|
||||||
|
<eventDef>PromiscuousSex</eventDef>
|
||||||
|
<thought>Sex_Know_Incest_Disapproved</thought>
|
||||||
|
<tag>Incestuos</tag>
|
||||||
|
</li>
|
||||||
|
</comps>
|
||||||
|
</PreceptDef>
|
||||||
|
|
||||||
|
<PreceptDef>
|
||||||
|
<defName>Incestuos_Forbidden</defName>
|
||||||
|
<issue>Incestuos</issue>
|
||||||
|
<label>forbidden</label>
|
||||||
|
<description>Incest is forbidden.</description>
|
||||||
|
<impact>Low</impact>
|
||||||
|
<displayOrderInIssue>30</displayOrderInIssue>
|
||||||
|
<displayOrderInImpact>1000</displayOrderInImpact>
|
||||||
|
<defaultSelectionWeight>100</defaultSelectionWeight>
|
||||||
|
<comps>
|
||||||
|
<li Class="PreceptComp_SelfTookMemoryThought">
|
||||||
|
<eventDef>Incestuos_Marriage</eventDef>
|
||||||
|
<thought>IncestuosMarriage_Forbidden</thought>
|
||||||
|
</li>
|
||||||
|
<li Class="RJWSexperience.PreceptComp_KnowsMemoryThoughtTagged">
|
||||||
|
<eventDef>Incestuos_Marriage</eventDef>
|
||||||
|
<thought>Sex_Know_IncestMarriage_Forbidden</thought>
|
||||||
|
</li>
|
||||||
|
<li Class="RJWSexperience.PreceptComp_KnowsMemoryThoughtTagged">
|
||||||
|
<eventDef>VaginalSex</eventDef>
|
||||||
|
<thought>Sex_Know_Incest_Forbidden</thought>
|
||||||
|
<tag>Incestuos</tag>
|
||||||
|
</li>
|
||||||
|
<li Class="RJWSexperience.PreceptComp_KnowsMemoryThoughtTagged">
|
||||||
|
<eventDef>AnalSex</eventDef>
|
||||||
|
<thought>Sex_Know_Incest_Forbidden</thought>
|
||||||
|
<tag>Incestuos</tag>
|
||||||
|
</li>
|
||||||
|
<li Class="RJWSexperience.PreceptComp_KnowsMemoryThoughtTagged">
|
||||||
|
<eventDef>OralSex</eventDef>
|
||||||
|
<thought>Sex_Know_Incest_Forbidden</thought>
|
||||||
|
<tag>Incestuos</tag>
|
||||||
|
</li>
|
||||||
|
<li Class="RJWSexperience.PreceptComp_KnowsMemoryThoughtTagged">
|
||||||
|
<eventDef>MiscSex</eventDef>
|
||||||
|
<thought>Sex_Know_Incest_Forbidden</thought>
|
||||||
|
<tag>Incestuos</tag>
|
||||||
|
</li>
|
||||||
|
<li Class="RJWSexperience.PreceptComp_KnowsMemoryThoughtTagged">
|
||||||
|
<eventDef>PromiscuousSex</eventDef>
|
||||||
|
<thought>Sex_Know_Incest_Forbidden</thought>
|
||||||
|
<tag>Incestuos</tag>
|
||||||
|
</li>
|
||||||
|
</comps>
|
||||||
|
</PreceptDef>
|
||||||
|
|
||||||
|
<PreceptDef>
|
||||||
|
<defName>Incestuos_IncestOnly</defName>
|
||||||
|
<issue>Incestuos</issue>
|
||||||
|
<label>incest only</label>
|
||||||
|
<description>For preserving pure blood, only incest allowed.</description>
|
||||||
|
<impact>High</impact>
|
||||||
|
<displayOrderInIssue>0</displayOrderInIssue>
|
||||||
|
<displayOrderInImpact>1000</displayOrderInImpact>
|
||||||
|
<conflictingMemes>
|
||||||
|
<li>Zoophile</li>
|
||||||
|
</conflictingMemes>
|
||||||
|
<comps>
|
||||||
|
<li Class="RJWSexperience.PreceptComp_KnowsMemoryThoughtTagged">
|
||||||
|
<eventDef>GotMarried_SpouseCount_OneOrFewer</eventDef>
|
||||||
|
<thought>Sex_Know_IncestMarriage_Violated</thought>
|
||||||
|
<tag>Incestuos</tag>
|
||||||
|
<exclusive>true</exclusive>
|
||||||
|
</li>
|
||||||
|
<li Class="RJWSexperience.PreceptComp_KnowsMemoryThoughtTagged">
|
||||||
|
<eventDef>VaginalSex</eventDef>
|
||||||
|
<thought>Sex_Know_Incest_Violated</thought>
|
||||||
|
<tag>Incestuos</tag>
|
||||||
|
<exclusive>true</exclusive>
|
||||||
|
</li>
|
||||||
|
<li Class="RJWSexperience.PreceptComp_KnowsMemoryThoughtTagged">
|
||||||
|
<eventDef>AnalSex</eventDef>
|
||||||
|
<thought>Sex_Know_Incest_Violated</thought>
|
||||||
|
<tag>Incestuos</tag>
|
||||||
|
<exclusive>true</exclusive>
|
||||||
|
</li>
|
||||||
|
<li Class="RJWSexperience.PreceptComp_KnowsMemoryThoughtTagged">
|
||||||
|
<eventDef>OralSex</eventDef>
|
||||||
|
<thought>Sex_Know_Incest_Violated</thought>
|
||||||
|
<tag>Incestuos</tag>
|
||||||
|
<exclusive>true</exclusive>
|
||||||
|
</li>
|
||||||
|
<li Class="RJWSexperience.PreceptComp_KnowsMemoryThoughtTagged">
|
||||||
|
<eventDef>MiscSex</eventDef>
|
||||||
|
<thought>Sex_Know_Incest_Violated</thought>
|
||||||
|
<tag>Incestuos</tag>
|
||||||
|
<exclusive>true</exclusive>
|
||||||
|
</li>
|
||||||
|
<li Class="RJWSexperience.PreceptComp_KnowsMemoryThoughtTagged">
|
||||||
|
<eventDef>PromiscuousSex</eventDef>
|
||||||
|
<thought>Sex_Know_Incest_Violated</thought>
|
||||||
|
<tag>Incestuos</tag>
|
||||||
|
<exclusive>true</exclusive>
|
||||||
|
</li>
|
||||||
|
</comps>
|
||||||
|
</PreceptDef>
|
||||||
|
|
||||||
|
|
||||||
|
<!-- Thoughts -->
|
||||||
|
<ThoughtDef>
|
||||||
|
<defName>IncestuosMarriage_Forbidden</defName>
|
||||||
|
<durationDays>30</durationDays>
|
||||||
|
<stackLimit>1</stackLimit>
|
||||||
|
<nullifyingTraits>
|
||||||
|
<li>Psychopath</li>
|
||||||
|
<li>Nymphomaniac</li>
|
||||||
|
</nullifyingTraits>
|
||||||
|
<nullifyingPrecepts>
|
||||||
|
<li>Incestuos_IncestOnly</li>
|
||||||
|
<li>Incestuos_Free</li>
|
||||||
|
</nullifyingPrecepts>
|
||||||
|
<stages>
|
||||||
|
<li>
|
||||||
|
<label>social condemnation</label>
|
||||||
|
<description>No one bless our marriage.</description>
|
||||||
|
<baseMoodEffect>-10</baseMoodEffect>
|
||||||
|
</li>
|
||||||
|
</stages>
|
||||||
|
</ThoughtDef>
|
||||||
|
|
||||||
|
<ThoughtDef>
|
||||||
|
<defName>IncestuosMarriage_Disapproved</defName>
|
||||||
|
<durationDays>30</durationDays>
|
||||||
|
<stackLimit>1</stackLimit>
|
||||||
|
<nullifyingTraits>
|
||||||
|
<li>Psychopath</li>
|
||||||
|
<li>Nymphomaniac</li>
|
||||||
|
</nullifyingTraits>
|
||||||
|
<nullifyingPrecepts>
|
||||||
|
<li>Incestuos_IncestOnly</li>
|
||||||
|
<li>Incestuos_Free</li>
|
||||||
|
</nullifyingPrecepts>
|
||||||
|
<stages>
|
||||||
|
<li>
|
||||||
|
<label>being gossip</label>
|
||||||
|
<description>They are speaking behind our back.</description>
|
||||||
|
<baseMoodEffect>-5</baseMoodEffect>
|
||||||
|
</li>
|
||||||
|
</stages>
|
||||||
|
</ThoughtDef>
|
||||||
|
|
||||||
|
<ThoughtDef>
|
||||||
|
<defName>Sex_Know_Incest_Disapproved</defName>
|
||||||
|
<thoughtClass>Thought_MemorySocial</thoughtClass>
|
||||||
|
<durationDays>15</durationDays>
|
||||||
|
<stackLimit>100</stackLimit>
|
||||||
|
<stackLimitForSameOtherPawn>3</stackLimitForSameOtherPawn>
|
||||||
|
<nullifyingTraits>
|
||||||
|
<li>Nymphomaniac</li>
|
||||||
|
</nullifyingTraits>
|
||||||
|
<nullifyingPrecepts>
|
||||||
|
<li>Incestuos_IncestOnly</li>
|
||||||
|
<li>Incestuos_Free</li>
|
||||||
|
</nullifyingPrecepts>
|
||||||
|
<stages>
|
||||||
|
<li>
|
||||||
|
<label>incest</label>
|
||||||
|
<baseOpinionOffset>-15</baseOpinionOffset>
|
||||||
|
</li>
|
||||||
|
</stages>
|
||||||
|
</ThoughtDef>
|
||||||
|
|
||||||
|
<ThoughtDef>
|
||||||
|
<defName>Sex_Know_Incest_Forbidden</defName>
|
||||||
|
<thoughtClass>Thought_MemorySocial</thoughtClass>
|
||||||
|
<durationDays>15</durationDays>
|
||||||
|
<stackLimit>100</stackLimit>
|
||||||
|
<stackLimitForSameOtherPawn>3</stackLimitForSameOtherPawn>
|
||||||
|
<nullifyingTraits>
|
||||||
|
<li>Nymphomaniac</li>
|
||||||
|
</nullifyingTraits>
|
||||||
|
<nullifyingPrecepts>
|
||||||
|
<li>Incestuos_IncestOnly</li>
|
||||||
|
<li>Incestuos_Free</li>
|
||||||
|
</nullifyingPrecepts>
|
||||||
|
<stages>
|
||||||
|
<li>
|
||||||
|
<label>incest</label>
|
||||||
|
<baseOpinionOffset>-30</baseOpinionOffset>
|
||||||
|
</li>
|
||||||
|
</stages>
|
||||||
|
</ThoughtDef>
|
||||||
|
|
||||||
|
<ThoughtDef>
|
||||||
|
<defName>Sex_Know_IncestMarriage_Disapproved</defName>
|
||||||
|
<thoughtClass>Thought_MemorySocial</thoughtClass>
|
||||||
|
<durationDays>60</durationDays>
|
||||||
|
<stackLimit>100</stackLimit>
|
||||||
|
<stackLimitForSameOtherPawn>3</stackLimitForSameOtherPawn>
|
||||||
|
<nullifyingTraits>
|
||||||
|
<li>Nymphomaniac</li>
|
||||||
|
</nullifyingTraits>
|
||||||
|
<nullifyingPrecepts>
|
||||||
|
<li>Incestuos_IncestOnly</li>
|
||||||
|
<li>Incestuos_Free</li>
|
||||||
|
</nullifyingPrecepts>
|
||||||
|
<stages>
|
||||||
|
<li>
|
||||||
|
<label>incest</label>
|
||||||
|
<baseOpinionOffset>-15</baseOpinionOffset>
|
||||||
|
</li>
|
||||||
|
</stages>
|
||||||
|
</ThoughtDef>
|
||||||
|
|
||||||
|
<ThoughtDef>
|
||||||
|
<defName>Sex_Know_IncestMarriage_Forbidden</defName>
|
||||||
|
<thoughtClass>Thought_MemorySocial</thoughtClass>
|
||||||
|
<durationDays>60</durationDays>
|
||||||
|
<stackLimit>100</stackLimit>
|
||||||
|
<stackLimitForSameOtherPawn>3</stackLimitForSameOtherPawn>
|
||||||
|
<nullifyingTraits>
|
||||||
|
<li>Nymphomaniac</li>
|
||||||
|
</nullifyingTraits>
|
||||||
|
<nullifyingPrecepts>
|
||||||
|
<li>Incestuos_IncestOnly</li>
|
||||||
|
<li>Incestuos_Free</li>
|
||||||
|
</nullifyingPrecepts>
|
||||||
|
<stages>
|
||||||
|
<li>
|
||||||
|
<label>incest</label>
|
||||||
|
<baseOpinionOffset>-30</baseOpinionOffset>
|
||||||
|
</li>
|
||||||
|
</stages>
|
||||||
|
</ThoughtDef>
|
||||||
|
|
||||||
|
|
||||||
|
<ThoughtDef>
|
||||||
|
<defName>Sex_Know_Incest_Violated</defName>
|
||||||
|
<thoughtClass>Thought_MemorySocial</thoughtClass>
|
||||||
|
<durationDays>15</durationDays>
|
||||||
|
<stackLimit>100</stackLimit>
|
||||||
|
<stackLimitForSameOtherPawn>3</stackLimitForSameOtherPawn>
|
||||||
|
<nullifyingTraits>
|
||||||
|
<li>Nymphomaniac</li>
|
||||||
|
</nullifyingTraits>
|
||||||
|
<nullifyingPrecepts>
|
||||||
|
<li>Incestuos_Disapproved_CloseOnly</li>
|
||||||
|
<li>Incestuos_Disapproved</li>
|
||||||
|
<li>Incestuos_Forbidden</li>
|
||||||
|
<li>Incestuos_Free</li>
|
||||||
|
</nullifyingPrecepts>
|
||||||
|
<stages>
|
||||||
|
<li>
|
||||||
|
<label>sex with non-family</label>
|
||||||
|
<baseOpinionOffset>-15</baseOpinionOffset>
|
||||||
|
</li>
|
||||||
|
</stages>
|
||||||
|
</ThoughtDef>
|
||||||
|
|
||||||
|
<ThoughtDef>
|
||||||
|
<defName>Sex_Know_IncestMarriage_Violated</defName>
|
||||||
|
<thoughtClass>Thought_MemorySocial</thoughtClass>
|
||||||
|
<durationDays>300</durationDays>
|
||||||
|
<stackLimit>100</stackLimit>
|
||||||
|
<stackLimitForSameOtherPawn>3</stackLimitForSameOtherPawn>
|
||||||
|
<nullifyingTraits>
|
||||||
|
<li>Nymphomaniac</li>
|
||||||
|
</nullifyingTraits>
|
||||||
|
<nullifyingPrecepts>
|
||||||
|
<li>Incestuos_Disapproved_CloseOnly</li>
|
||||||
|
<li>Incestuos_Disapproved</li>
|
||||||
|
<li>Incestuos_Forbidden</li>
|
||||||
|
<li>Incestuos_Free</li>
|
||||||
|
</nullifyingPrecepts>
|
||||||
|
<stages>
|
||||||
|
<li>
|
||||||
|
<label>corrupt the blood</label>
|
||||||
|
<baseOpinionOffset>-50</baseOpinionOffset>
|
||||||
|
</li>
|
||||||
|
</stages>
|
||||||
|
</ThoughtDef>
|
||||||
|
</Defs>
|
|
@ -0,0 +1,366 @@
|
||||||
|
<?xml version="1.0" encoding="utf-8" ?>
|
||||||
|
<Defs>
|
||||||
|
|
||||||
|
<!-- Issues -->
|
||||||
|
<IssueDef>
|
||||||
|
<defName>Rape</defName>
|
||||||
|
<label>rape</label>
|
||||||
|
<iconPath>UI/Issues/Rape</iconPath>
|
||||||
|
</IssueDef>
|
||||||
|
|
||||||
|
<HistoryEventDef>
|
||||||
|
<defName>Raped</defName>
|
||||||
|
<label>raped</label>
|
||||||
|
</HistoryEventDef>
|
||||||
|
|
||||||
|
<HistoryEventDef>
|
||||||
|
<defName>RapedSlave</defName>
|
||||||
|
<label>raped slave</label>
|
||||||
|
</HistoryEventDef>
|
||||||
|
|
||||||
|
<HistoryEventDef>
|
||||||
|
<defName>RapedPrisoner</defName>
|
||||||
|
<label>raped prisoner</label>
|
||||||
|
</HistoryEventDef>
|
||||||
|
|
||||||
|
<HistoryEventDef>
|
||||||
|
<defName>WasRaped</defName>
|
||||||
|
<label>was raped</label>
|
||||||
|
</HistoryEventDef>
|
||||||
|
|
||||||
|
<HistoryEventDef>
|
||||||
|
<defName>WasRapedSlave</defName>
|
||||||
|
<label>was raped</label>
|
||||||
|
</HistoryEventDef>
|
||||||
|
|
||||||
|
<HistoryEventDef>
|
||||||
|
<defName>WasRapedPrisoner</defName>
|
||||||
|
<label>was raped</label>
|
||||||
|
</HistoryEventDef>
|
||||||
|
<!-- Precepts -->
|
||||||
|
|
||||||
|
<PreceptDef>
|
||||||
|
<defName>Rape_Abhorrent</defName>
|
||||||
|
<issue>Rape</issue>
|
||||||
|
<label>abhorrent</label>
|
||||||
|
<description>Rape beings is deeply evil.</description>
|
||||||
|
<impact>Low</impact>
|
||||||
|
<displayOrderInIssue>40</displayOrderInIssue>
|
||||||
|
<displayOrderInImpact>1000</displayOrderInImpact>
|
||||||
|
<defaultSelectionWeight>30</defaultSelectionWeight>
|
||||||
|
<conflictingMemes>
|
||||||
|
<li>Rapist</li>
|
||||||
|
</conflictingMemes>
|
||||||
|
<associatedMemes>
|
||||||
|
<li>HumanPrimacy</li>
|
||||||
|
<li>Collectivist</li>
|
||||||
|
</associatedMemes>
|
||||||
|
<comps>
|
||||||
|
<li Class="PreceptComp_SelfTookMemoryThought">
|
||||||
|
<eventDef>Raped</eventDef>
|
||||||
|
<thought>Rape_Abhorrent</thought>
|
||||||
|
</li>
|
||||||
|
<li Class="PreceptComp_KnowsMemoryThought">
|
||||||
|
<eventDef>Raped</eventDef>
|
||||||
|
<thought>Rape_Know_Abhorrent</thought>
|
||||||
|
<description>Someone raped other</description>
|
||||||
|
</li>
|
||||||
|
<li Class="PreceptComp_SelfTookMemoryThought">
|
||||||
|
<eventDef>RapedPrisoner</eventDef>
|
||||||
|
<thought>Rape_Horrible</thought>
|
||||||
|
<description>Raped prisoner</description>
|
||||||
|
</li>
|
||||||
|
<li Class="PreceptComp_KnowsMemoryThought">
|
||||||
|
<eventDef>RapedPrisoner</eventDef>
|
||||||
|
<thought>Rape_Know_Horrible</thought>
|
||||||
|
<description>Someone raped prisoner</description>
|
||||||
|
</li>
|
||||||
|
<li Class="PreceptComp_SelfTookMemoryThought">
|
||||||
|
<eventDef>RapedSlave</eventDef>
|
||||||
|
<thought>Rape_Disapproved</thought>
|
||||||
|
<description>Raped slave</description>
|
||||||
|
</li>
|
||||||
|
<li Class="PreceptComp_KnowsMemoryThought">
|
||||||
|
<eventDef>RapedSlave</eventDef>
|
||||||
|
<thought>Rape_Know_Disapproved</thought>
|
||||||
|
<description>Someone raped slave</description>
|
||||||
|
</li>
|
||||||
|
</comps>
|
||||||
|
</PreceptDef>
|
||||||
|
|
||||||
|
<PreceptDef>
|
||||||
|
<defName>Rape_Horrible</defName>
|
||||||
|
<issue>Rape</issue>
|
||||||
|
<label>horrible</label>
|
||||||
|
<description>Raping other is a horrible thing.</description>
|
||||||
|
<impact>Low</impact>
|
||||||
|
<displayOrderInIssue>30</displayOrderInIssue>
|
||||||
|
<displayOrderInImpact>1000</displayOrderInImpact>
|
||||||
|
<defaultSelectionWeight>30</defaultSelectionWeight>
|
||||||
|
<conflictingMemes>
|
||||||
|
<li>Rapist</li>
|
||||||
|
</conflictingMemes>
|
||||||
|
<associatedMemes>
|
||||||
|
<li>HumanPrimacy</li>
|
||||||
|
</associatedMemes>
|
||||||
|
<comps>
|
||||||
|
<li Class="PreceptComp_SelfTookMemoryThought">
|
||||||
|
<eventDef>Raped</eventDef>
|
||||||
|
<thought>Rape_Horrible</thought>
|
||||||
|
</li>
|
||||||
|
<li Class="PreceptComp_KnowsMemoryThought">
|
||||||
|
<eventDef>Raped</eventDef>
|
||||||
|
<thought>Rape_Know_Horrible</thought>
|
||||||
|
<description>Someone raped other</description>
|
||||||
|
</li>
|
||||||
|
<li Class="PreceptComp_SelfTookMemoryThought">
|
||||||
|
<eventDef>RapedPrisoner</eventDef>
|
||||||
|
<thought>Rape_Disapproved</thought>
|
||||||
|
<description>Raped prisoner</description>
|
||||||
|
</li>
|
||||||
|
<li Class="PreceptComp_KnowsMemoryThought">
|
||||||
|
<eventDef>RapedPrisoner</eventDef>
|
||||||
|
<thought>Rape_Know_Disapproved</thought>
|
||||||
|
<description>Someone raped prisoner</description>
|
||||||
|
</li>
|
||||||
|
</comps>
|
||||||
|
</PreceptDef>
|
||||||
|
|
||||||
|
<PreceptDef>
|
||||||
|
<defName>Rape_Disapproved</defName>
|
||||||
|
<issue>Rape</issue>
|
||||||
|
<label>disapproved</label>
|
||||||
|
<description>Rape is part of life, though it is extremely distasteful.</description>
|
||||||
|
<impact>Medium</impact>
|
||||||
|
<displayOrderInIssue>20</displayOrderInIssue>
|
||||||
|
<displayOrderInImpact>1000</displayOrderInImpact>
|
||||||
|
<defaultSelectionWeight>20</defaultSelectionWeight>
|
||||||
|
<conflictingMemes>
|
||||||
|
<li>Rapist</li>
|
||||||
|
</conflictingMemes>
|
||||||
|
<associatedMemes>
|
||||||
|
<li>HumanPrimacy</li>
|
||||||
|
</associatedMemes>
|
||||||
|
<comps>
|
||||||
|
<li Class="PreceptComp_SelfTookMemoryThought">
|
||||||
|
<eventDef>Raped</eventDef>
|
||||||
|
<thought>Rape_Disapproved</thought>
|
||||||
|
</li>
|
||||||
|
<li Class="PreceptComp_KnowsMemoryThought">
|
||||||
|
<eventDef>Raped</eventDef>
|
||||||
|
<thought>Rape_Know_Disapproved</thought>
|
||||||
|
<description>Someone raped other</description>
|
||||||
|
</li>
|
||||||
|
</comps>
|
||||||
|
</PreceptDef>
|
||||||
|
|
||||||
|
<PreceptDef>
|
||||||
|
<defName>Rape_Acceptable</defName>
|
||||||
|
<issue>Rape</issue>
|
||||||
|
<label>acceptable</label>
|
||||||
|
<description>Rape is a normal, unremarkable part of life.</description>
|
||||||
|
<impact>High</impact>
|
||||||
|
<displayOrderInIssue>10</displayOrderInIssue>
|
||||||
|
<defaultSelectionWeight>10</defaultSelectionWeight>
|
||||||
|
<approvesOfSlavery>true</approvesOfSlavery>
|
||||||
|
</PreceptDef>
|
||||||
|
|
||||||
|
<PreceptDef>
|
||||||
|
<defName>Rape_Honorable</defName>
|
||||||
|
<issue>Rape</issue>
|
||||||
|
<label>proud</label>
|
||||||
|
<description>Raping is one of proud behavior.</description>
|
||||||
|
<impact>High</impact>
|
||||||
|
<displayOrderInIssue>0</displayOrderInIssue>
|
||||||
|
<displayOrderInImpact>1000</displayOrderInImpact>
|
||||||
|
<conflictingMemes>
|
||||||
|
<li>HumanPrimacy</li>
|
||||||
|
</conflictingMemes>
|
||||||
|
<requiredMemes>
|
||||||
|
<li>Rapist</li>
|
||||||
|
</requiredMemes>
|
||||||
|
<statFactors>
|
||||||
|
<Vulnerability>0.75</Vulnerability>
|
||||||
|
</statFactors>
|
||||||
|
<comps>
|
||||||
|
<li Class="PreceptComp_SelfTookMemoryThought">
|
||||||
|
<eventDef>Raped</eventDef>
|
||||||
|
<thought>BloodlustStoleSomeLovin</thought>
|
||||||
|
<onlyForNonSlaves>true</onlyForNonSlaves>
|
||||||
|
</li>
|
||||||
|
<li Class="RJWSexperience.PreceptComp_KnowsMemoryThoughtTagged">
|
||||||
|
<eventDef>Raped</eventDef>
|
||||||
|
<thought>Rape_Know_Honorable</thought>
|
||||||
|
<description>Someone raped other</description>
|
||||||
|
<onlyForNonSlaves>true</onlyForNonSlaves>
|
||||||
|
</li>
|
||||||
|
<li Class="PreceptComp_SelfTookMemoryThought">
|
||||||
|
<eventDef>RapedPrisoner</eventDef>
|
||||||
|
<thought>BloodlustStoleSomeLovin</thought>
|
||||||
|
<onlyForNonSlaves>true</onlyForNonSlaves>
|
||||||
|
</li>
|
||||||
|
<li Class="PreceptComp_KnowsMemoryThought">
|
||||||
|
<eventDef>RapedPrisoner</eventDef>
|
||||||
|
<thought>Rape_Know_Honorable</thought>
|
||||||
|
<description>Someone raped other</description>
|
||||||
|
<onlyForNonSlaves>true</onlyForNonSlaves>
|
||||||
|
</li>
|
||||||
|
<li Class="PreceptComp_SelfTookMemoryThought">
|
||||||
|
<eventDef>RapedSlave</eventDef>
|
||||||
|
<thought>BloodlustStoleSomeLovin</thought>
|
||||||
|
<onlyForNonSlaves>true</onlyForNonSlaves>
|
||||||
|
</li>
|
||||||
|
<li Class="PreceptComp_KnowsMemoryThought">
|
||||||
|
<eventDef>RapedSlave</eventDef>
|
||||||
|
<thought>Rape_Know_Honorable</thought>
|
||||||
|
<description>Someone raped other</description>
|
||||||
|
<onlyForNonSlaves>true</onlyForNonSlaves>
|
||||||
|
</li>
|
||||||
|
</comps>
|
||||||
|
</PreceptDef>
|
||||||
|
|
||||||
|
<!-- Thoughts -->
|
||||||
|
|
||||||
|
|
||||||
|
<ThoughtDef>
|
||||||
|
<defName>Rape_Abhorrent</defName>
|
||||||
|
<durationDays>6</durationDays>
|
||||||
|
<stackLimit>1</stackLimit>
|
||||||
|
<nullifyingTraits>
|
||||||
|
<li>Rapist</li>
|
||||||
|
</nullifyingTraits>
|
||||||
|
<nullifyingPrecepts>
|
||||||
|
<li>Rape_Honorable</li>
|
||||||
|
<li>Rape_Acceptable</li>
|
||||||
|
</nullifyingPrecepts>
|
||||||
|
<stages>
|
||||||
|
<li>
|
||||||
|
<label>raped someone</label>
|
||||||
|
<description>I raped someone. I shouldn't do that.</description>
|
||||||
|
<baseMoodEffect>-5</baseMoodEffect>
|
||||||
|
</li>
|
||||||
|
</stages>
|
||||||
|
</ThoughtDef>
|
||||||
|
|
||||||
|
<ThoughtDef>
|
||||||
|
<defName>Rape_Know_Abhorrent</defName>
|
||||||
|
<thoughtClass>Thought_MemorySocial</thoughtClass>
|
||||||
|
<durationDays>15</durationDays>
|
||||||
|
<stackLimit>100</stackLimit>
|
||||||
|
<stackLimitForSameOtherPawn>3</stackLimitForSameOtherPawn>
|
||||||
|
<nullifyingTraits>
|
||||||
|
<li>Rapist</li>
|
||||||
|
</nullifyingTraits>
|
||||||
|
<nullifyingPrecepts>
|
||||||
|
<li>Rape_Honorable</li>
|
||||||
|
<li>Rape_Acceptable</li>
|
||||||
|
</nullifyingPrecepts>
|
||||||
|
<stages>
|
||||||
|
<li>
|
||||||
|
<label>raped someone</label>
|
||||||
|
<baseOpinionOffset>-30</baseOpinionOffset>
|
||||||
|
</li>
|
||||||
|
</stages>
|
||||||
|
</ThoughtDef>
|
||||||
|
|
||||||
|
<ThoughtDef>
|
||||||
|
<defName>Rape_Horrible</defName>
|
||||||
|
<durationDays>6</durationDays>
|
||||||
|
<stackLimit>1</stackLimit>
|
||||||
|
<nullifyingTraits>
|
||||||
|
<li>Rapist</li>
|
||||||
|
</nullifyingTraits>
|
||||||
|
<nullifyingPrecepts>
|
||||||
|
<li>Rape_Honorable</li>
|
||||||
|
<li>Rape_Acceptable</li>
|
||||||
|
</nullifyingPrecepts>
|
||||||
|
<stages>
|
||||||
|
<li>
|
||||||
|
<label>raped someone</label>
|
||||||
|
<description>I raped someone. I shouldn't do that.</description>
|
||||||
|
<baseMoodEffect>-3</baseMoodEffect>
|
||||||
|
</li>
|
||||||
|
</stages>
|
||||||
|
</ThoughtDef>
|
||||||
|
|
||||||
|
<ThoughtDef>
|
||||||
|
<defName>Rape_Know_Horrible</defName>
|
||||||
|
<thoughtClass>Thought_MemorySocial</thoughtClass>
|
||||||
|
<durationDays>15</durationDays>
|
||||||
|
<stackLimit>100</stackLimit>
|
||||||
|
<stackLimitForSameOtherPawn>3</stackLimitForSameOtherPawn>
|
||||||
|
<nullifyingTraits>
|
||||||
|
<li>Rapist</li>
|
||||||
|
</nullifyingTraits>
|
||||||
|
<nullifyingPrecepts>
|
||||||
|
<li>Rape_Honorable</li>
|
||||||
|
<li>Rape_Acceptable</li>
|
||||||
|
</nullifyingPrecepts>
|
||||||
|
<stages>
|
||||||
|
<li>
|
||||||
|
<label>raped someone</label>
|
||||||
|
<baseOpinionOffset>-15</baseOpinionOffset>
|
||||||
|
</li>
|
||||||
|
</stages>
|
||||||
|
</ThoughtDef>
|
||||||
|
|
||||||
|
<ThoughtDef>
|
||||||
|
<defName>Rape_Disapproved</defName>
|
||||||
|
<durationDays>6</durationDays>
|
||||||
|
<stackLimit>1</stackLimit>
|
||||||
|
<nullifyingTraits>
|
||||||
|
<li>Rapist</li>
|
||||||
|
</nullifyingTraits>
|
||||||
|
<nullifyingPrecepts>
|
||||||
|
<li>Rape_Honorable</li>
|
||||||
|
<li>Rape_Acceptable</li>
|
||||||
|
</nullifyingPrecepts>
|
||||||
|
<stages>
|
||||||
|
<li>
|
||||||
|
<label>raped someone</label>
|
||||||
|
<description>I raped someone. I shouldn't do that.</description>
|
||||||
|
<baseMoodEffect>-1</baseMoodEffect>
|
||||||
|
</li>
|
||||||
|
</stages>
|
||||||
|
</ThoughtDef>
|
||||||
|
|
||||||
|
<ThoughtDef>
|
||||||
|
<defName>Rape_Know_Disapproved</defName>
|
||||||
|
<thoughtClass>Thought_MemorySocial</thoughtClass>
|
||||||
|
<durationDays>15</durationDays>
|
||||||
|
<stackLimit>100</stackLimit>
|
||||||
|
<stackLimitForSameOtherPawn>3</stackLimitForSameOtherPawn>
|
||||||
|
<nullifyingTraits>
|
||||||
|
<li>Rapist</li>
|
||||||
|
</nullifyingTraits>
|
||||||
|
<nullifyingPrecepts>
|
||||||
|
<li>Rape_Honorable</li>
|
||||||
|
<li>Rape_Acceptable</li>
|
||||||
|
</nullifyingPrecepts>
|
||||||
|
<stages>
|
||||||
|
<li>
|
||||||
|
<label>raped someone</label>
|
||||||
|
<baseOpinionOffset>-5</baseOpinionOffset>
|
||||||
|
</li>
|
||||||
|
</stages>
|
||||||
|
</ThoughtDef>
|
||||||
|
|
||||||
|
<ThoughtDef>
|
||||||
|
<defName>Rape_Know_Honorable</defName>
|
||||||
|
<thoughtClass>Thought_MemorySocial</thoughtClass>
|
||||||
|
<durationDays>25</durationDays>
|
||||||
|
<stackLimit>100</stackLimit>
|
||||||
|
<stackLimitForSameOtherPawn>3</stackLimitForSameOtherPawn>
|
||||||
|
<nullifyingPrecepts>
|
||||||
|
<li>Rape_Abhorrent</li>
|
||||||
|
<li>Rape_Disapproved</li>
|
||||||
|
</nullifyingPrecepts>
|
||||||
|
<stages>
|
||||||
|
<li>
|
||||||
|
<label>raped someone</label>
|
||||||
|
<baseOpinionOffset>1</baseOpinionOffset>
|
||||||
|
</li>
|
||||||
|
</stages>
|
||||||
|
</ThoughtDef>
|
||||||
|
|
||||||
|
</Defs>
|
|
@ -0,0 +1,332 @@
|
||||||
|
<?xml version="1.0" encoding="utf-8" ?>
|
||||||
|
<Defs>
|
||||||
|
|
||||||
|
<!-- Issues -->
|
||||||
|
<IssueDef>
|
||||||
|
<defName>Sextype</defName>
|
||||||
|
<label>sex type</label>
|
||||||
|
<iconPath>UI/Issues/Bestiality</iconPath>
|
||||||
|
</IssueDef>
|
||||||
|
|
||||||
|
<HistoryEventDef>
|
||||||
|
<defName>VaginalSex</defName>
|
||||||
|
<label>vaginal sex</label>
|
||||||
|
</HistoryEventDef>
|
||||||
|
|
||||||
|
<HistoryEventDef>
|
||||||
|
<defName>AnalSex</defName>
|
||||||
|
<label>anal sex</label>
|
||||||
|
</HistoryEventDef>
|
||||||
|
|
||||||
|
<HistoryEventDef>
|
||||||
|
<defName>OralSex</defName>
|
||||||
|
<label>oral sex</label>
|
||||||
|
</HistoryEventDef>
|
||||||
|
|
||||||
|
<HistoryEventDef>
|
||||||
|
<defName>MiscSex</defName>
|
||||||
|
<label>sex</label>
|
||||||
|
</HistoryEventDef>
|
||||||
|
|
||||||
|
<HistoryEventDef>
|
||||||
|
<defName>PromiscuousSex</defName>
|
||||||
|
<label>promiscuous sex</label>
|
||||||
|
</HistoryEventDef>
|
||||||
|
<!-- Precepts -->
|
||||||
|
|
||||||
|
<PreceptDef>
|
||||||
|
<defName>Sex_Free</defName>
|
||||||
|
<issue>Sextype</issue>
|
||||||
|
<label>free</label>
|
||||||
|
<description>Open minded.</description>
|
||||||
|
<impact>Low</impact>
|
||||||
|
<displayOrderInIssue>50</displayOrderInIssue>
|
||||||
|
<displayOrderInImpact>1000</displayOrderInImpact>
|
||||||
|
<defaultSelectionWeight>100</defaultSelectionWeight>
|
||||||
|
</PreceptDef>
|
||||||
|
|
||||||
|
<PreceptDef>
|
||||||
|
<defName>Sex_VaginalOnly</defName>
|
||||||
|
<issue>Sextype</issue>
|
||||||
|
<label>vaginal only</label>
|
||||||
|
<description>Only vaginal sex is approval and others are crude.</description>
|
||||||
|
<impact>Low</impact>
|
||||||
|
<displayOrderInIssue>40</displayOrderInIssue>
|
||||||
|
<displayOrderInImpact>1000</displayOrderInImpact>
|
||||||
|
<defaultSelectionWeight>100</defaultSelectionWeight>
|
||||||
|
<comps>
|
||||||
|
<li Class="PreceptComp_SelfTookMemoryThought">
|
||||||
|
<eventDef>AnalSex</eventDef>
|
||||||
|
<thought>Sex_Promiscuous</thought>
|
||||||
|
</li>
|
||||||
|
<li Class="RJWSexperience.PreceptComp_KnowsMemoryThoughtTagged">
|
||||||
|
<eventDef>AnalSex</eventDef>
|
||||||
|
<thought>Sex_Know_Promiscuous</thought>
|
||||||
|
</li>
|
||||||
|
<li Class="PreceptComp_SelfTookMemoryThought">
|
||||||
|
<eventDef>OralSex</eventDef>
|
||||||
|
<thought>Sex_Promiscuous</thought>
|
||||||
|
</li>
|
||||||
|
<li Class="RJWSexperience.PreceptComp_KnowsMemoryThoughtTagged">
|
||||||
|
<eventDef>OralSex</eventDef>
|
||||||
|
<thought>Sex_Know_Promiscuous</thought>
|
||||||
|
</li>
|
||||||
|
<li Class="PreceptComp_SelfTookMemoryThought">
|
||||||
|
<eventDef>MiscSex</eventDef>
|
||||||
|
<thought>Sex_Promiscuous</thought>
|
||||||
|
</li>
|
||||||
|
<li Class="RJWSexperience.PreceptComp_KnowsMemoryThoughtTagged">
|
||||||
|
<eventDef>MiscSex</eventDef>
|
||||||
|
<thought>Sex_Know_Promiscuous</thought>
|
||||||
|
</li>
|
||||||
|
<li Class="PreceptComp_SelfTookMemoryThought">
|
||||||
|
<eventDef>PromiscuousSex</eventDef>
|
||||||
|
<thought>Sex_Promiscuous</thought>
|
||||||
|
</li>
|
||||||
|
<li Class="RJWSexperience.PreceptComp_KnowsMemoryThoughtTagged">
|
||||||
|
<eventDef>PromiscuousSex</eventDef>
|
||||||
|
<thought>Sex_Know_Promiscuous</thought>
|
||||||
|
</li>
|
||||||
|
</comps>
|
||||||
|
</PreceptDef>
|
||||||
|
|
||||||
|
<PreceptDef>
|
||||||
|
<defName>Sex_AnalOnly</defName>
|
||||||
|
<issue>Sextype</issue>
|
||||||
|
<label>anal only</label>
|
||||||
|
<description>Only anal sex is approval and others are crude.</description>
|
||||||
|
<impact>Medium</impact>
|
||||||
|
<displayOrderInIssue>30</displayOrderInIssue>
|
||||||
|
<displayOrderInImpact>1000</displayOrderInImpact>
|
||||||
|
<defaultSelectionWeight>10</defaultSelectionWeight>
|
||||||
|
<comps>
|
||||||
|
<li Class="PreceptComp_SelfTookMemoryThought">
|
||||||
|
<eventDef>VaginalSex</eventDef>
|
||||||
|
<thought>Sex_Promiscuous</thought>
|
||||||
|
</li>
|
||||||
|
<li Class="RJWSexperience.PreceptComp_KnowsMemoryThoughtTagged">
|
||||||
|
<eventDef>VaginalSex</eventDef>
|
||||||
|
<thought>Sex_Know_Promiscuous</thought>
|
||||||
|
</li>
|
||||||
|
<li Class="PreceptComp_SelfTookMemoryThought">
|
||||||
|
<eventDef>OralSex</eventDef>
|
||||||
|
<thought>Sex_Promiscuous</thought>
|
||||||
|
</li>
|
||||||
|
<li Class="RJWSexperience.PreceptComp_KnowsMemoryThoughtTagged">
|
||||||
|
<eventDef>OralSex</eventDef>
|
||||||
|
<thought>Sex_Know_Promiscuous</thought>
|
||||||
|
</li>
|
||||||
|
<li Class="PreceptComp_SelfTookMemoryThought">
|
||||||
|
<eventDef>MiscSex</eventDef>
|
||||||
|
<thought>Sex_Promiscuous</thought>
|
||||||
|
</li>
|
||||||
|
<li Class="RJWSexperience.PreceptComp_KnowsMemoryThoughtTagged">
|
||||||
|
<eventDef>MiscSex</eventDef>
|
||||||
|
<thought>Sex_Know_Promiscuous</thought>
|
||||||
|
</li>
|
||||||
|
<li Class="PreceptComp_SelfTookMemoryThought">
|
||||||
|
<eventDef>PromiscuousSex</eventDef>
|
||||||
|
<thought>Sex_Promiscuous</thought>
|
||||||
|
</li>
|
||||||
|
<li Class="RJWSexperience.PreceptComp_KnowsMemoryThoughtTagged">
|
||||||
|
<eventDef>PromiscuousSex</eventDef>
|
||||||
|
<thought>Sex_Know_Promiscuous</thought>
|
||||||
|
</li>
|
||||||
|
</comps>
|
||||||
|
</PreceptDef>
|
||||||
|
|
||||||
|
<PreceptDef>
|
||||||
|
<defName>Sex_OralOnly</defName>
|
||||||
|
<issue>Sextype</issue>
|
||||||
|
<label>oral only</label>
|
||||||
|
<description>Only oral sex is approval and others are crude.</description>
|
||||||
|
<impact>Medium</impact>
|
||||||
|
<displayOrderInIssue>20</displayOrderInIssue>
|
||||||
|
<displayOrderInImpact>1000</displayOrderInImpact>
|
||||||
|
<defaultSelectionWeight>5</defaultSelectionWeight>
|
||||||
|
<comps>
|
||||||
|
<li Class="PreceptComp_SelfTookMemoryThought">
|
||||||
|
<eventDef>VaginalSex</eventDef>
|
||||||
|
<thought>Sex_Promiscuous</thought>
|
||||||
|
</li>
|
||||||
|
<li Class="RJWSexperience.PreceptComp_KnowsMemoryThoughtTagged">
|
||||||
|
<eventDef>VaginalSex</eventDef>
|
||||||
|
<thought>Sex_Know_Promiscuous</thought>
|
||||||
|
</li>
|
||||||
|
<li Class="PreceptComp_SelfTookMemoryThought">
|
||||||
|
<eventDef>AnalSex</eventDef>
|
||||||
|
<thought>Sex_Promiscuous</thought>
|
||||||
|
</li>
|
||||||
|
<li Class="RJWSexperience.PreceptComp_KnowsMemoryThoughtTagged">
|
||||||
|
<eventDef>AnalSex</eventDef>
|
||||||
|
<thought>Sex_Know_Promiscuous</thought>
|
||||||
|
</li>
|
||||||
|
<li Class="PreceptComp_SelfTookMemoryThought">
|
||||||
|
<eventDef>MiscSex</eventDef>
|
||||||
|
<thought>Sex_Promiscuous</thought>
|
||||||
|
</li>
|
||||||
|
<li Class="RJWSexperience.PreceptComp_KnowsMemoryThoughtTagged">
|
||||||
|
<eventDef>MiscSex</eventDef>
|
||||||
|
<thought>Sex_Know_Promiscuous</thought>
|
||||||
|
</li>
|
||||||
|
<li Class="PreceptComp_SelfTookMemoryThought">
|
||||||
|
<eventDef>PromiscuousSex</eventDef>
|
||||||
|
<thought>Sex_Promiscuous</thought>
|
||||||
|
</li>
|
||||||
|
<li Class="RJWSexperience.PreceptComp_KnowsMemoryThoughtTagged">
|
||||||
|
<eventDef>PromiscuousSex</eventDef>
|
||||||
|
<thought>Sex_Know_Promiscuous</thought>
|
||||||
|
</li>
|
||||||
|
</comps>
|
||||||
|
</PreceptDef>
|
||||||
|
|
||||||
|
<PreceptDef>
|
||||||
|
<defName>Sex_Promiscuous</defName>
|
||||||
|
<issue>Sextype</issue>
|
||||||
|
<label>promiscuous</label>
|
||||||
|
<description>Messy sex life is approved.</description>
|
||||||
|
<impact>High</impact>
|
||||||
|
<displayOrderInIssue>0</displayOrderInIssue>
|
||||||
|
<displayOrderInImpact>1000</displayOrderInImpact>
|
||||||
|
<statFactors>
|
||||||
|
<SexFrequency>1.5</SexFrequency>
|
||||||
|
<SexAbility>1.25</SexAbility>
|
||||||
|
</statFactors>
|
||||||
|
<comps>
|
||||||
|
<li Class="PreceptComp_SelfTookMemoryThought">
|
||||||
|
<eventDef>VaginalSex</eventDef>
|
||||||
|
<thought>Sex_NonPromiscuous</thought>
|
||||||
|
</li>
|
||||||
|
<li Class="PreceptComp_KnowsMemoryThought">
|
||||||
|
<eventDef>VaginalSex</eventDef>
|
||||||
|
<thought>Sex_Know_NonPromiscuous</thought>
|
||||||
|
</li>
|
||||||
|
<li Class="PreceptComp_SelfTookMemoryThought">
|
||||||
|
<eventDef>AnalSex</eventDef>
|
||||||
|
<thought>Sex_NonPromiscuous</thought>
|
||||||
|
</li>
|
||||||
|
<li Class="PreceptComp_KnowsMemoryThought">
|
||||||
|
<eventDef>AnalSex</eventDef>
|
||||||
|
<thought>Sex_Know_NonPromiscuous</thought>
|
||||||
|
</li>
|
||||||
|
<li Class="PreceptComp_SelfTookMemoryThought">
|
||||||
|
<eventDef>OralSex</eventDef>
|
||||||
|
<thought>Sex_NonPromiscuous</thought>
|
||||||
|
</li>
|
||||||
|
<li Class="PreceptComp_KnowsMemoryThought">
|
||||||
|
<eventDef>OralSex</eventDef>
|
||||||
|
<thought>Sex_Know_NonPromiscuous</thought>
|
||||||
|
</li>
|
||||||
|
<li Class="PreceptComp_SelfTookMemoryThought">
|
||||||
|
<eventDef>MiscSex</eventDef>
|
||||||
|
<thought>Sex_NonPromiscuous</thought>
|
||||||
|
</li>
|
||||||
|
<li Class="PreceptComp_KnowsMemoryThought">
|
||||||
|
<eventDef>MiscSex</eventDef>
|
||||||
|
<thought>Sex_Know_NonPromiscuous</thought>
|
||||||
|
</li>
|
||||||
|
<li Class="PreceptComp_KnowsMemoryThought">
|
||||||
|
<eventDef>PromiscuousSex</eventDef>
|
||||||
|
<thought>Sex_Know_Promiscuous_Approval</thought>
|
||||||
|
</li>
|
||||||
|
</comps>
|
||||||
|
</PreceptDef>
|
||||||
|
|
||||||
|
|
||||||
|
<!-- Thoughts -->
|
||||||
|
|
||||||
|
|
||||||
|
<RJWSexperience.ThoughtDef_Recordbased>
|
||||||
|
<defName>Sex_Promiscuous</defName>
|
||||||
|
<durationDays>1</durationDays>
|
||||||
|
<stackLimit>1</stackLimit>
|
||||||
|
<thoughtClass>RJWSexperience.Thought_IncreaseRecord</thoughtClass>
|
||||||
|
<recordDef>Lust</recordDef>
|
||||||
|
<increment>3.0</increment>
|
||||||
|
<stages>
|
||||||
|
<li>
|
||||||
|
<label>promiscuous sex</label>
|
||||||
|
<description>I was immoral. It makes me aroused.</description>
|
||||||
|
<baseMoodEffect>5</baseMoodEffect>
|
||||||
|
</li>
|
||||||
|
</stages>
|
||||||
|
</RJWSexperience.ThoughtDef_Recordbased>
|
||||||
|
|
||||||
|
<ThoughtDef>
|
||||||
|
<defName>Sex_NonPromiscuous</defName>
|
||||||
|
<durationDays>1</durationDays>
|
||||||
|
<stackLimit>1</stackLimit>
|
||||||
|
<stages>
|
||||||
|
<li>
|
||||||
|
<label>ordinary sex</label>
|
||||||
|
<description>It cannot satisfy me.</description>
|
||||||
|
<baseMoodEffect>-1</baseMoodEffect>
|
||||||
|
</li>
|
||||||
|
</stages>
|
||||||
|
</ThoughtDef>
|
||||||
|
|
||||||
|
<ThoughtDef>
|
||||||
|
<defName>Sex_Know_Promiscuous</defName>
|
||||||
|
<thoughtClass>Thought_MemorySocial</thoughtClass>
|
||||||
|
<durationDays>15</durationDays>
|
||||||
|
<stackLimit>100</stackLimit>
|
||||||
|
<stackLimitForSameOtherPawn>3</stackLimitForSameOtherPawn>
|
||||||
|
<nullifyingTraits>
|
||||||
|
<li>Nymphomaniac</li>
|
||||||
|
<li>Zoophile</li>
|
||||||
|
<li>Rapist</li>
|
||||||
|
<li>Necrophiliac</li>
|
||||||
|
<li>Gay</li>
|
||||||
|
<li>Bisexual</li>
|
||||||
|
</nullifyingTraits>
|
||||||
|
<nullifyingPrecepts>
|
||||||
|
<li>Sex_Free</li>
|
||||||
|
<li>Sex_Promiscuous</li>
|
||||||
|
</nullifyingPrecepts>
|
||||||
|
<stages>
|
||||||
|
<li>
|
||||||
|
<label>promiscuous</label>
|
||||||
|
<baseOpinionOffset>-10</baseOpinionOffset>
|
||||||
|
</li>
|
||||||
|
</stages>
|
||||||
|
</ThoughtDef>
|
||||||
|
|
||||||
|
<ThoughtDef>
|
||||||
|
<defName>Sex_Know_Promiscuous_Approval</defName>
|
||||||
|
<thoughtClass>Thought_MemorySocial</thoughtClass>
|
||||||
|
<durationDays>15</durationDays>
|
||||||
|
<stackLimit>100</stackLimit>
|
||||||
|
<stackLimitForSameOtherPawn>3</stackLimitForSameOtherPawn>
|
||||||
|
<nullifyingPrecepts>
|
||||||
|
<li>Sex_VaginalOnly</li>
|
||||||
|
<li>Sex_AnalOnly</li>
|
||||||
|
<li>Sex_OralOnly</li>
|
||||||
|
</nullifyingPrecepts>
|
||||||
|
<stages>
|
||||||
|
<li>
|
||||||
|
<label>promiscuous</label>
|
||||||
|
<baseOpinionOffset>3</baseOpinionOffset>
|
||||||
|
</li>
|
||||||
|
</stages>
|
||||||
|
</ThoughtDef>
|
||||||
|
|
||||||
|
<ThoughtDef>
|
||||||
|
<defName>Sex_Know_NonPromiscuous</defName>
|
||||||
|
<thoughtClass>Thought_MemorySocial</thoughtClass>
|
||||||
|
<durationDays>15</durationDays>
|
||||||
|
<stackLimit>100</stackLimit>
|
||||||
|
<stackLimitForSameOtherPawn>3</stackLimitForSameOtherPawn>
|
||||||
|
<nullifyingPrecepts>
|
||||||
|
<li>Sex_VaginalOnly</li>
|
||||||
|
<li>Sex_AnalOnly</li>
|
||||||
|
<li>Sex_OralOnly</li>
|
||||||
|
<li>Sex_Free</li>
|
||||||
|
</nullifyingPrecepts>
|
||||||
|
<stages>
|
||||||
|
<li>
|
||||||
|
<label>boring</label>
|
||||||
|
<baseOpinionOffset>-3</baseOpinionOffset>
|
||||||
|
</li>
|
||||||
|
</stages>
|
||||||
|
</ThoughtDef>
|
||||||
|
</Defs>
|
|
@ -0,0 +1,19 @@
|
||||||
|
<?xml version="1.0" encoding="utf-8" ?>
|
||||||
|
|
||||||
|
<Defs>
|
||||||
|
<RecordDef>
|
||||||
|
<defName>NumofEatenCum</defName>
|
||||||
|
<label>swallowed cum</label>
|
||||||
|
<description>The number of times that i swalloed cum.</description>
|
||||||
|
<type>Int</type>
|
||||||
|
</RecordDef>
|
||||||
|
|
||||||
|
<RecordDef>
|
||||||
|
<defName>Lust</defName>
|
||||||
|
<label>lust</label>
|
||||||
|
<description>How lustful i am.</description>
|
||||||
|
<type>Float</type>
|
||||||
|
</RecordDef>
|
||||||
|
|
||||||
|
|
||||||
|
</Defs>
|
|
@ -0,0 +1,10 @@
|
||||||
|
<?xml version="1.0" encoding="utf-8" ?>
|
||||||
|
<Defs>
|
||||||
|
<SkillDef>
|
||||||
|
<defName>Sex</defName>
|
||||||
|
<description>Sex skill.</description>
|
||||||
|
<skillLabel>sex</skillLabel>
|
||||||
|
<listOrder>5</listOrder>
|
||||||
|
</SkillDef>
|
||||||
|
|
||||||
|
</Defs>
|
|
@ -0,0 +1,73 @@
|
||||||
|
<?xml version="1.0" encoding="utf-8" ?>
|
||||||
|
<Defs>
|
||||||
|
<ThingDef ParentName="OrganicProductBase">
|
||||||
|
<defName>GatheredCum</defName>
|
||||||
|
<label>cum</label>
|
||||||
|
<description>Gathered cum.</description>
|
||||||
|
<thingCategories>
|
||||||
|
<li>AnimalProductRaw</li>
|
||||||
|
</thingCategories>
|
||||||
|
<graphicData>
|
||||||
|
<texPath>Things/Item/GatheredCum</texPath>
|
||||||
|
<drawSize>1</drawSize>
|
||||||
|
<graphicClass>Graphic_StackCount</graphicClass>
|
||||||
|
</graphicData>
|
||||||
|
<socialPropernessMatters>true</socialPropernessMatters>
|
||||||
|
<statBases>
|
||||||
|
<MarketValue>0.1</MarketValue>
|
||||||
|
<Mass>0.1</Mass>
|
||||||
|
<Nutrition>0.01</Nutrition>
|
||||||
|
<Beauty>-5</Beauty>
|
||||||
|
<Cleanliness>-1</Cleanliness>
|
||||||
|
<FoodPoisonChanceFixedHuman>0.00</FoodPoisonChanceFixedHuman>
|
||||||
|
<DeteriorationRate>60</DeteriorationRate>
|
||||||
|
<Flammability>0.1</Flammability>
|
||||||
|
</statBases>
|
||||||
|
<ingestible>
|
||||||
|
<foodType>Fluid, AnimalProduct</foodType>
|
||||||
|
<preferability>DesperateOnlyForHumanlikes</preferability>
|
||||||
|
<tasteThought>AteCum</tasteThought>
|
||||||
|
<specialThoughtAsIngredient>AteCum</specialThoughtAsIngredient>
|
||||||
|
<optimalityOffsetHumanlikes>-10</optimalityOffsetHumanlikes>
|
||||||
|
<optimalityOffsetFeedingAnimals>-10</optimalityOffsetFeedingAnimals>
|
||||||
|
</ingestible>
|
||||||
|
</ThingDef>
|
||||||
|
|
||||||
|
<ThingDef ParentName="PlantFoodRawBase">
|
||||||
|
<defName>UsedCondom</defName>
|
||||||
|
<label>Used Condom</label>
|
||||||
|
<description>A condom filled with sperm. MMMM So good and tasty!</description>
|
||||||
|
<graphicData>
|
||||||
|
<texPath>Things/Item/UsedCondom</texPath>
|
||||||
|
<graphicClass>Graphic_StackCount</graphicClass>
|
||||||
|
</graphicData>
|
||||||
|
<stackLimit>50</stackLimit>
|
||||||
|
<useHitPoints>true</useHitPoints>
|
||||||
|
<selectable>true</selectable>
|
||||||
|
<generateCommonality>0.0</generateCommonality>
|
||||||
|
<techLevel>Industrial</techLevel>
|
||||||
|
<statBases>
|
||||||
|
<Beauty>-10</Beauty>
|
||||||
|
<MarketValue>1</MarketValue>
|
||||||
|
<Mass>0.05</Mass>
|
||||||
|
<Nutrition>0.05</Nutrition>
|
||||||
|
</statBases>
|
||||||
|
<ingestible>
|
||||||
|
<foodType>Fluid, AnimalProduct</foodType>
|
||||||
|
<preferability>DesperateOnlyForHumanlikes</preferability>
|
||||||
|
<tasteThought>AteCum</tasteThought>
|
||||||
|
<specialThoughtAsIngredient>AteCum</specialThoughtAsIngredient>
|
||||||
|
</ingestible>
|
||||||
|
<altitudeLayer>Item</altitudeLayer>
|
||||||
|
<tickerType>Never</tickerType>
|
||||||
|
<tradeTags>
|
||||||
|
<li>Exotic</li>
|
||||||
|
</tradeTags>
|
||||||
|
<tradeability>Sellable</tradeability>
|
||||||
|
<thingCategories>
|
||||||
|
<li>AnimalProductRaw</li>
|
||||||
|
</thingCategories>
|
||||||
|
</ThingDef>
|
||||||
|
|
||||||
|
|
||||||
|
</Defs>
|
|
@ -0,0 +1,41 @@
|
||||||
|
<?xml version="1.0" encoding="utf-8" ?>
|
||||||
|
|
||||||
|
<Defs>
|
||||||
|
<RJWSexperience.ThoughtDef_Recordbased>
|
||||||
|
<defName>AteCum</defName>
|
||||||
|
<durationDays>0.5</durationDays>
|
||||||
|
<stackLimit>1</stackLimit>
|
||||||
|
<stackedEffectMultiplier>0.4</stackedEffectMultiplier>
|
||||||
|
<recordDef>NumofEatenCum</recordDef>
|
||||||
|
<thoughtClass>RJWSexperience.Thought_AteCum</thoughtClass>
|
||||||
|
<minimumValueforStage>
|
||||||
|
<li>10</li>
|
||||||
|
<li>60</li>
|
||||||
|
<li>120</li>
|
||||||
|
</minimumValueforStage>
|
||||||
|
<stages>
|
||||||
|
<li>
|
||||||
|
<label>ate cum</label>
|
||||||
|
<description>Disgusting.</description>
|
||||||
|
<baseMoodEffect>-5</baseMoodEffect>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<label>ate cum</label>
|
||||||
|
<description>Tastes bad and stinky.</description>
|
||||||
|
<baseMoodEffect>-2</baseMoodEffect>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<label>ate cum</label>
|
||||||
|
<description>Tastes bad. But i liked it.</description>
|
||||||
|
<baseMoodEffect>1</baseMoodEffect>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<label>ate cum</label>
|
||||||
|
<description>Delicious.</description>
|
||||||
|
<baseMoodEffect>3</baseMoodEffect>
|
||||||
|
</li>
|
||||||
|
</stages>
|
||||||
|
</RJWSexperience.ThoughtDef_Recordbased>
|
||||||
|
|
||||||
|
|
||||||
|
</Defs>
|
|
@ -0,0 +1,21 @@
|
||||||
|
MIT License
|
||||||
|
|
||||||
|
Copyright (c) 2021 motd1233
|
||||||
|
|
||||||
|
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||||
|
of this software and associated documentation files (the "Software"), to deal
|
||||||
|
in the Software without restriction, including without limitation the rights
|
||||||
|
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||||
|
copies of the Software, and to permit persons to whom the Software is
|
||||||
|
furnished to do so, subject to the following conditions:
|
||||||
|
|
||||||
|
The above copyright notice and this permission notice shall be included in all
|
||||||
|
copies or substantial portions of the Software.
|
||||||
|
|
||||||
|
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||||
|
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||||
|
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||||
|
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||||
|
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||||
|
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||||
|
SOFTWARE.
|
|
@ -0,0 +1,7 @@
|
||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<LanguageData>
|
||||||
|
<LustStatFactor>Lust: x{0}%</LustStatFactor>
|
||||||
|
<SlaveStatFactor>Slave: x{0}%</SlaveStatFactor>
|
||||||
|
<SlaveStatFactorDefault>Not Slave: x100%</SlaveStatFactorDefault>
|
||||||
|
<MemeStatFactor>Meme: x{0}%</MemeStatFactor>
|
||||||
|
</LanguageData>
|
|
@ -0,0 +1,14 @@
|
||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<LanguageData>
|
||||||
|
<SexWithAnimal.label>동물과 교미</SexWithAnimal.label>
|
||||||
|
<SexWithVeneratedAnimal.label>숭배받는 동물과 교미</SexWithVeneratedAnimal.label>
|
||||||
|
<Raped.label>강간</Raped.label>
|
||||||
|
<RapedSlave.label>노예 강간</RapedSlave.label>
|
||||||
|
<RapedPrisoner.label>죄수 강간</RapedPrisoner.label>
|
||||||
|
<VaginalSex.label>보지 섹스</VaginalSex.label>
|
||||||
|
<AnalSex.label>항문 성교</AnalSex.label>
|
||||||
|
<OralSex.label>구강 성교</OralSex.label>
|
||||||
|
<MiscSex.label>섹스</MiscSex.label>
|
||||||
|
<PromiscuousSex.label>문란한 섹스</PromiscuousSex.label>
|
||||||
|
<Incestuos_Marriage.label>근친혼</Incestuos_Marriage.label>
|
||||||
|
</LanguageData>
|
|
@ -0,0 +1,7 @@
|
||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<LanguageData>
|
||||||
|
<Sextype.label>섹스 종류</Sextype.label>
|
||||||
|
<Rape.label>강간</Rape.label>
|
||||||
|
<Bestiality.label>수간</Bestiality.label>
|
||||||
|
<Incestuos.label>근친상간</Incestuos.label>
|
||||||
|
</LanguageData>
|
|
@ -0,0 +1,65 @@
|
||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<LanguageData>
|
||||||
|
<Zoophile.label>수간</Zoophile.label>
|
||||||
|
<Zoophile.description>동물박이들</Zoophile.description>
|
||||||
|
<Zoophile.descriptionMaker.rules.rulesStrings.0>creation(tag=meme_Zoophile) ->[deity0_name]는 동물과 교미하는것을 즐겼습니다.</Zoophile.descriptionMaker.rules.rulesStrings.0>
|
||||||
|
<Zoophile.descriptionMaker.rules.rulesStrings.1>episode(uses=1,tag=meme_Zoophile) ->[deity0_name]는 모두에게 말했습니다, "Sigmar forbids this!"</Zoophile.descriptionMaker.rules.rulesStrings.1>
|
||||||
|
<Zoophile.descriptionMaker.rules.rulesStrings.2>setup(tag=meme_Zoophile) ->어느날, [founderName]은(는) 너무 발정이나서 동물을 따먹었고 그것을 좋아하게 되었습니다.</Zoophile.descriptionMaker.rules.rulesStrings.2>
|
||||||
|
<Zoophile.descriptionMaker.rules.rulesStrings.3>story(uses=1,tag=meme_Zoophile) ->동물들을 퍼뜨리기 위해, [founderName]은(는) 동물과 교미하고 다니기 시작했습니다.</Zoophile.descriptionMaker.rules.rulesStrings.3>
|
||||||
|
<Zoophile.descriptionMaker.rules.rulesStrings.4>lessonIntro(tag=meme_Zoophile) ->어느날, 나는 동물과 섹스했습니다. 그리고 사람보다 훨씬 나았습니다!</Zoophile.descriptionMaker.rules.rulesStrings.4>
|
||||||
|
<Zoophile.descriptionMaker.rules.rulesStrings.5>lesson(tag=meme_Zoophile) ->오직 동물만 나를 만족시킬수 있습니다.</Zoophile.descriptionMaker.rules.rulesStrings.5>
|
||||||
|
<Zoophile.descriptionMaker.rules.rulesStrings.6>lessonReinforcement(tag=meme_Zoophile) ->동물과 교미하는것은 영원한 행복입니다.</Zoophile.descriptionMaker.rules.rulesStrings.6>
|
||||||
|
<Zoophile.descriptionMaker.rules.rulesStrings.7>archistBasis(tag=meme_Zoophile) ->초월주의자들은 항상 궁극의 쾌락을 찾고 있었습니다.</Zoophile.descriptionMaker.rules.rulesStrings.7>
|
||||||
|
<Zoophile.descriptionMaker.rules.rulesStrings.8>archistFact(tag=meme_Zoophile) ->그것은 동물과 교미하는 것이었습니다..</Zoophile.descriptionMaker.rules.rulesStrings.8>
|
||||||
|
<Zoophile.descriptionMaker.rules.rulesStrings.9>archistProphecy(tag=meme_Zoophile) ->[inTheEnd], 초월공학은 이종간 번식을 가능하게 했습니다. 이것이 그들을 궁극의 쾌락으로 인도할지도 모릅니다.</Zoophile.descriptionMaker.rules.rulesStrings.9>
|
||||||
|
<Zoophile.descriptionMaker.rules.rulesStrings.10>animistFact(tag=meme_Zoophile) ->가장 강력한 영혼은 짐승의 것입니다, 그리고 짐승의 영혼은 짐승에게 지배받지 않는 한 날뛸것입니다.</Zoophile.descriptionMaker.rules.rulesStrings.10>
|
||||||
|
<Zoophile.descriptionMaker.rules.rulesStrings.11>animistProphecy(tag=meme_Zoophile) ->[itIsSaid] 그 강력한 파괴의 영혼은 우주의 파멸을 찾아다닐 것입니다. 하지만 인간에게서 태어난 짐승이 [relic0_name]의 힘을 사용하여 파괴자를 파괴할 것입니다.</Zoophile.descriptionMaker.rules.rulesStrings.11>
|
||||||
|
<Zoophile.generalRules.rulesStrings.0>memeAdjective->수간</Zoophile.generalRules.rulesStrings.0>
|
||||||
|
<Zoophile.generalRules.rulesStrings.1>memeAdjective->수간</Zoophile.generalRules.rulesStrings.1>
|
||||||
|
<Zoophile.generalRules.rulesStrings.2>memeHyphenPrefix->수간</Zoophile.generalRules.rulesStrings.2>
|
||||||
|
<Zoophile.generalRules.rulesStrings.3>memeConcept->수태</Zoophile.generalRules.rulesStrings.3>
|
||||||
|
<Zoophile.generalRules.rulesStrings.4>memeConcept->수간</Zoophile.generalRules.rulesStrings.4>
|
||||||
|
<Zoophile.generalRules.rulesStrings.5>memeConcept->수간</Zoophile.generalRules.rulesStrings.5>
|
||||||
|
<Zoophile.generalRules.rulesStrings.6>memeLeaderNoun->가축</Zoophile.generalRules.rulesStrings.6>
|
||||||
|
<Zoophile.symbolPacks.0.ideoName>번식모판</Zoophile.symbolPacks.0.ideoName>
|
||||||
|
<Zoophile.symbolPacks.0.theme>번식</Zoophile.symbolPacks.0.theme>
|
||||||
|
<Zoophile.symbolPacks.0.adjective>수간</Zoophile.symbolPacks.0.adjective>
|
||||||
|
<Zoophile.symbolPacks.0.member>번식기</Zoophile.symbolPacks.0.member>
|
||||||
|
<Zoophile.symbolPacks.1.ideoName>포켓몬스터 갤러리</Zoophile.symbolPacks.1.ideoName>
|
||||||
|
<Zoophile.symbolPacks.1.theme>수간</Zoophile.symbolPacks.1.theme>
|
||||||
|
<Zoophile.symbolPacks.1.adjective>수간</Zoophile.symbolPacks.1.adjective>
|
||||||
|
<Zoophile.symbolPacks.1.member>수간충</Zoophile.symbolPacks.1.member>
|
||||||
|
|
||||||
|
<Rapist.label>강간</Rapist.label>
|
||||||
|
<Rapist.description>강간은 최고야</Rapist.description>
|
||||||
|
<Rapist.descriptionMaker.rules.rulesStrings.0>creation(tag=meme_Rapist) ->[deity0_name]는 강간을 사랑합니다.</Rapist.descriptionMaker.rules.rulesStrings.0>
|
||||||
|
<Rapist.descriptionMaker.rules.rulesStrings.1>episode(uses=1,tag=meme_Rapist) ->[deity0_name]는 복상사 할때까지 강간하다 죽었습니다.</Rapist.descriptionMaker.rules.rulesStrings.1>
|
||||||
|
<Rapist.descriptionMaker.rules.rulesStrings.2>setup(tag=meme_Rapist) ->[founderName]은(는) 항상 발정나있습니다.</Rapist.descriptionMaker.rules.rulesStrings.2>
|
||||||
|
<Rapist.descriptionMaker.rules.rulesStrings.3>story(uses=1,tag=meme_Rapist) ->[founderName]은(는) 모두를 강간했습니다. 아무도 [founderName]을(를) 멈출수 없었습니다. [founderName]은(는) 행성을 강간하려다 죽었습니다.</Rapist.descriptionMaker.rules.rulesStrings.3>
|
||||||
|
<Rapist.descriptionMaker.rules.rulesStrings.4>lessonIntro(tag=meme_Rapist) ->강간은 최고야! 강간은 최고야! 강간은 최고야!</Rapist.descriptionMaker.rules.rulesStrings.4>
|
||||||
|
<Rapist.descriptionMaker.rules.rulesStrings.5>lesson(tag=meme_Rapist) ->강간은 최고야! 강간은 최고야! 강간은 최고야! 강간은 최고야!</Rapist.descriptionMaker.rules.rulesStrings.5>
|
||||||
|
<Rapist.descriptionMaker.rules.rulesStrings.6>lessonReinforcement(tag=meme_Rapist) ->강간은 최고야! 강간은 최고야! 강간은 최고야! 강간은 최고야! 강간은 최고야!</Rapist.descriptionMaker.rules.rulesStrings.6>
|
||||||
|
<Rapist.descriptionMaker.rules.rulesStrings.7>archistBasis(tag=meme_Rapist) ->인간의 역사는 강간의 역사입니다.</Rapist.descriptionMaker.rules.rulesStrings.7>
|
||||||
|
<Rapist.descriptionMaker.rules.rulesStrings.8>archistFact(tag=meme_Rapist) ->초월공학 조차도 강간범들을 막지는 못했습니다.</Rapist.descriptionMaker.rules.rulesStrings.8>
|
||||||
|
<Rapist.descriptionMaker.rules.rulesStrings.9>archistProphecy(tag=meme_Rapist) ->[inTheEnd], 강간범들은 절대 강간을 멈추지 않을겁니다.</Rapist.descriptionMaker.rules.rulesStrings.9>
|
||||||
|
<Rapist.descriptionMaker.rules.rulesStrings.10>animistFact(tag=meme_Rapist) ->가장 강력한 영혼을 가진 것은 강간범들입니다. 그리고 그들은 모두를 강간할것입니다.</Rapist.descriptionMaker.rules.rulesStrings.10>
|
||||||
|
<Rapist.descriptionMaker.rules.rulesStrings.11>animistProphecy(tag=meme_Rapist) ->[itIsSaid] 그 강력한 파괴의 영혼은 우주의 파멸을 찾아다닐 것입니다. 하지만 백만번을 강간한 강간범이 [relic0_name]의 힘을 사용하여 파괴자를 강간할 것입니다.</Rapist.descriptionMaker.rules.rulesStrings.11>
|
||||||
|
<Rapist.generalRules.rulesStrings.0>memeAdjective->강간하는</Rapist.generalRules.rulesStrings.0>
|
||||||
|
<Rapist.generalRules.rulesStrings.1>memeAdjective->겁탈하는</Rapist.generalRules.rulesStrings.1>
|
||||||
|
<Rapist.generalRules.rulesStrings.2>memeHyphenPrefix->강간범</Rapist.generalRules.rulesStrings.2>
|
||||||
|
<Rapist.generalRules.rulesStrings.3>memeHyphenPrefix->치한</Rapist.generalRules.rulesStrings.3>
|
||||||
|
<Rapist.generalRules.rulesStrings.4>memeHyphenPrefix->변태</Rapist.generalRules.rulesStrings.4>
|
||||||
|
<Rapist.generalRules.rulesStrings.5>memeConcept->강간 </Rapist.generalRules.rulesStrings.5>
|
||||||
|
<Rapist.generalRules.rulesStrings.6>memeConcept->변태적인</Rapist.generalRules.rulesStrings.6>
|
||||||
|
<Rapist.generalRules.rulesStrings.7>memeGod->슬라네쉬</Rapist.generalRules.rulesStrings.7>
|
||||||
|
<Rapist.generalRules.rulesStrings.8>memeLeaderNoun->종마</Rapist.generalRules.rulesStrings.8>
|
||||||
|
<Rapist.generalRules.rulesStrings.9>memeLeaderNoun->위대한 강간범</Rapist.generalRules.rulesStrings.9>
|
||||||
|
<Rapist.symbolPacks.0.ideoName>강간범들</Rapist.symbolPacks.0.ideoName>
|
||||||
|
<Rapist.symbolPacks.0.theme>강간</Rapist.symbolPacks.0.theme>
|
||||||
|
<Rapist.symbolPacks.0.adjective>강간하는</Rapist.symbolPacks.0.adjective>
|
||||||
|
<Rapist.symbolPacks.0.member>강간범</Rapist.symbolPacks.0.member>
|
||||||
|
<Rapist.symbolPacks.1.ideoName>슬라네쉬 교단</Rapist.symbolPacks.1.ideoName>
|
||||||
|
<Rapist.symbolPacks.1.theme>쾌락</Rapist.symbolPacks.1.theme>
|
||||||
|
<Rapist.symbolPacks.1.adjective>타락한</Rapist.symbolPacks.1.adjective>
|
||||||
|
<Rapist.symbolPacks.1.member>이교도</Rapist.symbolPacks.1.member>
|
||||||
|
</LanguageData>
|
|
@ -0,0 +1,59 @@
|
||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<LanguageData>
|
||||||
|
<Bestiality_Abhorrent.label>혐오스러움</Bestiality_Abhorrent.label>
|
||||||
|
<Bestiality_Abhorrent.description>수간은 절대 용납할수 없는 행위입니다.</Bestiality_Abhorrent.description>
|
||||||
|
<Bestiality_Horrible.label>끔찍함</Bestiality_Horrible.label>
|
||||||
|
<Bestiality_Horrible.description>수간은 끔찍한 짓입니다.</Bestiality_Horrible.description>
|
||||||
|
<Bestiality_Disapproved.label>싫어함</Bestiality_Disapproved.label>
|
||||||
|
<Bestiality_Disapproved.description>수간충을 좋아하는 사람은 없습니다.</Bestiality_Disapproved.description>
|
||||||
|
<Bestiality_Horrible.description>수간은 끔찍한 짓입니다.</Bestiality_Horrible.description>
|
||||||
|
<Bestiality_Acceptable.label>수용가능</Bestiality_Acceptable.label>
|
||||||
|
<Bestiality_Acceptable.description>수간은 일반적인 일입니다.</Bestiality_Acceptable.description>
|
||||||
|
<Bestiality_OnlyVenerated.label>숭배동물만</Bestiality_OnlyVenerated.label>
|
||||||
|
<Bestiality_OnlyVenerated.description>숭배받는 동물과 교미하는것은 존중받을 일입니다. 하지만 다른 동물들과 교미하는것은 규탄받습니다.</Bestiality_OnlyVenerated.description>
|
||||||
|
<Bestiality_OnlyVenerated.comps.1.description>수간</Bestiality_OnlyVenerated.comps.1.description>
|
||||||
|
<Bestiality_OnlyVenerated.comps.3.description>수간</Bestiality_OnlyVenerated.comps.3.description>
|
||||||
|
<Bestiality_Honorable.label>장려됨</Bestiality_Honorable.label>
|
||||||
|
<Bestiality_Honorable.description>수간은 장려되어야 합니다.</Bestiality_Honorable.description>
|
||||||
|
<Bestiality_Honorable.comps.1.description>수간</Bestiality_Honorable.comps.1.description>
|
||||||
|
<Rape_Abhorrent.label>혐오스러움</Rape_Abhorrent.label>
|
||||||
|
<Rape_Abhorrent.description>강간은 절대 용납할수 없는 행위입니다.</Rape_Abhorrent.description>
|
||||||
|
<Rape_Abhorrent.comps.1.description>강간</Rape_Abhorrent.comps.1.description>
|
||||||
|
<Rape_Abhorrent.comps.2.description>수감자를 강간함</Rape_Abhorrent.comps.2.description>
|
||||||
|
<Rape_Abhorrent.comps.3.description>수감자 강간</Rape_Abhorrent.comps.3.description>
|
||||||
|
<Rape_Abhorrent.comps.4.description>노예를 강간함</Rape_Abhorrent.comps.4.description>
|
||||||
|
<Rape_Abhorrent.comps.5.description>노예 강간</Rape_Abhorrent.comps.5.description>
|
||||||
|
<Rape_Horrible.label>끔찍함</Rape_Horrible.label>
|
||||||
|
<Rape_Horrible.description>강간은 끔찍한 짓입니다.</Rape_Horrible.description>
|
||||||
|
<Rape_Horrible.comps.1.description>강간</Rape_Horrible.comps.1.description>
|
||||||
|
<Rape_Horrible.comps.2.description>수감자를 강간함</Rape_Horrible.comps.2.description>
|
||||||
|
<Rape_Horrible.comps.3.description>수감자 강간</Rape_Horrible.comps.3.description>
|
||||||
|
<Rape_Disapproved.label>싫어함</Rape_Disapproved.label>
|
||||||
|
<Rape_Disapproved.description>강간은 흔한 일이지만 나쁜짓으로 간주됩니다.</Rape_Disapproved.description>
|
||||||
|
<Rape_Disapproved.comps.1.description>강간</Rape_Disapproved.comps.1.description>
|
||||||
|
<Rape_Acceptable.label>수용가능</Rape_Acceptable.label>
|
||||||
|
<Rape_Acceptable.description>강간이 일상입니다.</Rape_Acceptable.description>
|
||||||
|
<Rape_Honorable.label>자랑스러움</Rape_Honorable.label>
|
||||||
|
<Rape_Honorable.description>강간은 자랑할만한 일입니다.</Rape_Honorable.description>
|
||||||
|
<Rape_Honorable.comps.1.description>강간</Rape_Honorable.comps.1.description>
|
||||||
|
<Sex_Free.label>자유</Sex_Free.label>
|
||||||
|
<Sex_Free.description>어떠한것도 배척받지 않습니다.</Sex_Free.description>
|
||||||
|
<Sex_VaginalOnly.label>성기만 사용</Sex_VaginalOnly.label>
|
||||||
|
<Sex_VaginalOnly.description>성기만 사용한 성행위만이 일반적인 것으로 받아들여집니다. 그 외에는 문란한것으로 간주됩니다.</Sex_VaginalOnly.description>
|
||||||
|
<Sex_AnalOnly.label>항문성교만</Sex_AnalOnly.label>
|
||||||
|
<Sex_AnalOnly.description>항문을 사용한 성행위만이 일반적인 것으로 받아들여집니다. 그 외에는 문란한것으로 간주됩니다.</Sex_AnalOnly.description>
|
||||||
|
<Sex_OralOnly.label>구강성교만</Sex_OralOnly.label>
|
||||||
|
<Sex_OralOnly.description>구강성교만이 일반적인 것으로 받아들여집니다. 그 외에는 문란한것으로 간주됩니다.</Sex_OralOnly.description>
|
||||||
|
<Sex_Promiscuous.label>문란함</Sex_Promiscuous.label>
|
||||||
|
<Sex_Promiscuous.description>문란한 성생활이 선호됩니다.</Sex_Promiscuous.description>
|
||||||
|
<Incestuos_Free.label>자유</Incestuos_Free.label>
|
||||||
|
<Incestuos_Free.description>근친상간이 허용됩니다.</Incestuos_Free.description>
|
||||||
|
<Incestuos_Disapproved_CloseOnly.label>가까운 친척만 싫어함</Incestuos_Disapproved_CloseOnly.label>
|
||||||
|
<Incestuos_Disapproved_CloseOnly.description>근친상간은 인정받지 못합니다. 사촌보다 먼 관계일경우 근친으로 인식하지 않습니다.</Incestuos_Disapproved_CloseOnly.description>
|
||||||
|
<Incestuos_Disapproved.label>싫어함</Incestuos_Disapproved.label>
|
||||||
|
<Incestuos_Disapproved.description>근친상간은 인정받지 못합니다.</Incestuos_Disapproved.description>
|
||||||
|
<Incestuos_Forbidden.label>금지됨</Incestuos_Forbidden.label>
|
||||||
|
<Incestuos_Forbidden.description>근친상간은 용납되지 않습니다.</Incestuos_Forbidden.description>
|
||||||
|
<Incestuos_IncestOnly.label>근친만 가능</Incestuos_IncestOnly.label>
|
||||||
|
<Incestuos_IncestOnly.description>순수혈통을 보존하기위해 근친상간만을 허용합니다.</Incestuos_IncestOnly.description>
|
||||||
|
</LanguageData>
|
|
@ -0,0 +1,8 @@
|
||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<LanguageData>
|
||||||
|
<NumofEatenCum.label>정액을 먹은 횟수</NumofEatenCum.label>
|
||||||
|
<NumofEatenCum.description>내가 정액을 삼킨 횟수.</NumofEatenCum.description>
|
||||||
|
<Lust.label>음란함</Lust.label>
|
||||||
|
<Lust.description>내가 음란한 정도.</Lust.description>
|
||||||
|
|
||||||
|
</LanguageData>
|
|
@ -0,0 +1,46 @@
|
||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<LanguageData>
|
||||||
|
<Rape_Abhorrent.stages.0.label>누군가를 강간함</Rape_Abhorrent.stages.0.label>
|
||||||
|
<Rape_Abhorrent.stages.0.description>그랬으면 안됐는데.</Rape_Abhorrent.stages.0.description>
|
||||||
|
<Rape_Know_Abhorrent.stages.0.label>누군가를 강간함</Rape_Know_Abhorrent.stages.0.label>
|
||||||
|
<Rape_Horrible.stages.0.label>누군가를 강간함</Rape_Horrible.stages.0.label>
|
||||||
|
<Rape_Horrible.stages.0.description>그랬으면 안됐는데.</Rape_Horrible.stages.0.description>
|
||||||
|
<Rape_Know_Horrible.stages.0.label>누군가를 강간함</Rape_Know_Horrible.stages.0.label>
|
||||||
|
<Rape_Disapproved.stages.0.label>누군가를 강간함</Rape_Disapproved.stages.0.label>
|
||||||
|
<Rape_Disapproved.stages.0.description>그랬으면 안됐는데.</Rape_Disapproved.stages.0.description>
|
||||||
|
<Rape_Know_Disapproved.stages.0.label>누군가를 강간함</Rape_Know_Disapproved.stages.0.label>
|
||||||
|
<Rape_Know_Honorable.stages.0.label>누군가를 강간함</Rape_Know_Honorable.stages.0.label>
|
||||||
|
<Sex_Promiscuous.stages.0.label>문란한 섹스</Sex_Promiscuous.stages.0.label>
|
||||||
|
<Sex_Promiscuous.stages.0.description>배덕감에 흥분돼...</Sex_Promiscuous.stages.0.description>
|
||||||
|
<Sex_NonPromiscuous.stages.0.label>평범한 섹스</Sex_NonPromiscuous.stages.0.label>
|
||||||
|
<Sex_NonPromiscuous.stages.0.description>이걸론 만족할수 없어.</Sex_NonPromiscuous.stages.0.description>
|
||||||
|
<Sex_Know_Promiscuous.stages.0.label>문란함</Sex_Know_Promiscuous.stages.0.label>
|
||||||
|
<Sex_Know_Promiscuous_Approval.stages.0.label>문란함</Sex_Know_Promiscuous_Approval.stages.0.label>
|
||||||
|
<Sex_Know_NonPromiscuous.stages.0.label>시시함</Sex_Know_NonPromiscuous.stages.0.label>
|
||||||
|
<Bestiality_Abhorrent.stages.0.label>수간</Bestiality_Abhorrent.stages.0.label>
|
||||||
|
<Bestiality_Abhorrent.stages.0.description>수간을 하다니... 죽고싶다...</Bestiality_Abhorrent.stages.0.description>
|
||||||
|
<Bestiality_Know_Abhorrent.stages.0.label>수간</Bestiality_Know_Abhorrent.stages.0.label>
|
||||||
|
<Bestiality_Horrible.stages.0.label>수간</Bestiality_Horrible.stages.0.label>
|
||||||
|
<Bestiality_Horrible.stages.0.description>수간을 하다니... 나 스스로를 용서할수 없을것 같아.</Bestiality_Horrible.stages.0.description>
|
||||||
|
<Bestiality_Know_Horrible.stages.0.label>수간</Bestiality_Know_Horrible.stages.0.label>
|
||||||
|
<Bestiality_Disapproved.stages.0.label>수간</Bestiality_Disapproved.stages.0.label>
|
||||||
|
<Bestiality_Disapproved.stages.0.description>수간을 하다니... 다시는 그러지 않을거야.</Bestiality_Disapproved.stages.0.description>
|
||||||
|
<Bestiality_Know_Disapproved.stages.0.label>수간</Bestiality_Know_Disapproved.stages.0.label>
|
||||||
|
<Bestiality_Nonvenerated_Disapproved.stages.0.label>숭배받지 않는 동물과 교미</Bestiality_Nonvenerated_Disapproved.stages.0.label>
|
||||||
|
<Bestiality_Nonvenerated_Disapproved.stages.0.description>수간을 하다니... 다시는 그러지 않을거야.</Bestiality_Nonvenerated_Disapproved.stages.0.description>
|
||||||
|
<Bestiality_Nonvenerated_Know_Disapproved.stages.0.label>숭배받지 않는 동물과 교미</Bestiality_Nonvenerated_Know_Disapproved.stages.0.label>
|
||||||
|
<Bestiality_Honorable.stages.0.label>수간</Bestiality_Honorable.stages.0.label>
|
||||||
|
<Bestiality_Honorable.stages.0.description>동물과 교미했어.</Bestiality_Honorable.stages.0.description>
|
||||||
|
<Bestiality_Know_Honorable.stages.0.label>수간</Bestiality_Know_Honorable.stages.0.label>
|
||||||
|
<IncestuosMarriage_Forbidden.stages.0.label>사회적 규탄</IncestuosMarriage_Forbidden.stages.0.label>
|
||||||
|
<IncestuosMarriage_Forbidden.stages.0.description>아무도 우리를 축복해주지 않아.</IncestuosMarriage_Forbidden.stages.0.description>
|
||||||
|
<IncestuosMarriage_Disapproved.stages.0.label>가십거리가 됨</IncestuosMarriage_Disapproved.stages.0.label>
|
||||||
|
<IncestuosMarriage_Disapproved.stages.0.description>남들이 우리의 뒷담을 하고있어.</IncestuosMarriage_Disapproved.stages.0.description>
|
||||||
|
<Sex_Know_Incest_Disapproved.stages.0.label>근친</Sex_Know_Incest_Disapproved.stages.0.label>
|
||||||
|
<Sex_Know_Incest_Forbidden.stages.0.label>근친</Sex_Know_Incest_Forbidden.stages.0.label>
|
||||||
|
<Sex_Know_IncestMarriage_Disapproved.stages.0.label>근친</Sex_Know_IncestMarriage_Disapproved.stages.0.label>
|
||||||
|
<Sex_Know_IncestMarriage_Forbidden.stages.0.label>근친</Sex_Know_IncestMarriage_Forbidden.stages.0.label>
|
||||||
|
<Sex_Know_Incest_Violated.stages.0.label>혈족이 아닌사람과 성관계</Sex_Know_Incest_Violated.stages.0.label>
|
||||||
|
<Sex_Know_IncestMarriage_Violated.stages.0.label>혈통을 더럽힘</Sex_Know_IncestMarriage_Violated.stages.0.label>
|
||||||
|
|
||||||
|
</LanguageData>
|
|
@ -0,0 +1,7 @@
|
||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<LanguageData>
|
||||||
|
<LustStatFactor>음란함: x{0}%</LustStatFactor>
|
||||||
|
<SlaveStatFactor>노예: x{0}%</SlaveStatFactor>
|
||||||
|
<SlaveStatFactorDefault>노예가 아님: x100%</SlaveStatFactorDefault>
|
||||||
|
<MemeStatFactor>문화 요소: x{0}%</MemeStatFactor>
|
||||||
|
</LanguageData>
|
|
@ -0,0 +1,39 @@
|
||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
|
||||||
|
<Patch>
|
||||||
|
<Operation Class="PatchOperationAdd">
|
||||||
|
<xpath>Defs/StatDef[defName="SexAbility"]</xpath>
|
||||||
|
<value>
|
||||||
|
<skillNeedFactors>
|
||||||
|
<li Class="rjw_CORE_EXPOSED.SkillNeed_BaseBonus">
|
||||||
|
<skill>Sex</skill>
|
||||||
|
<baseValue>0.40</baseValue>
|
||||||
|
<bonusPerLevel>0.15</bonusPerLevel>
|
||||||
|
</li>
|
||||||
|
</skillNeedFactors>
|
||||||
|
</value>
|
||||||
|
</Operation>
|
||||||
|
|
||||||
|
<Operation Class="PatchOperationAdd">
|
||||||
|
<xpath>Defs/StatDef[defName="SexFrequency"]/parts</xpath>
|
||||||
|
<value>
|
||||||
|
<li Class="RJWSexperience.StatPart_Lust">
|
||||||
|
<factor>1.0</factor>
|
||||||
|
</li>
|
||||||
|
</value>
|
||||||
|
</Operation>
|
||||||
|
|
||||||
|
<Operation Class="PatchOperationAdd">
|
||||||
|
<xpath>Defs/StatDef[defName="Vulnerability"]/parts</xpath>
|
||||||
|
<value>
|
||||||
|
<li Class="RJWSexperience.StatPart_GenderPrimacy">
|
||||||
|
<modifier>0.5</modifier>
|
||||||
|
</li>
|
||||||
|
<li Class="RJWSexperience.StatPart_Slave">
|
||||||
|
<factor>3.0</factor>
|
||||||
|
</li>
|
||||||
|
</value>
|
||||||
|
</Operation>
|
||||||
|
|
||||||
|
|
||||||
|
</Patch>
|
|
@ -0,0 +1,82 @@
|
||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
|
||||||
|
<Patch>
|
||||||
|
<Operation Class="PatchOperationAdd">
|
||||||
|
<xpath>Defs/ThoughtDef[defName="GotBredByAnimal"]</xpath>
|
||||||
|
<value>
|
||||||
|
<nullifyingPrecepts>
|
||||||
|
<li>Bestiality_OnlyVenerated</li>
|
||||||
|
<li>Bestiality_Honorable</li>
|
||||||
|
</nullifyingPrecepts>
|
||||||
|
</value>
|
||||||
|
</Operation>
|
||||||
|
|
||||||
|
<Operation Class="PatchOperationAdd">
|
||||||
|
<xpath>Defs/ThoughtDef[defName="GotAnalBredByAnimal"]</xpath>
|
||||||
|
<value>
|
||||||
|
<nullifyingPrecepts>
|
||||||
|
<li>Bestiality_OnlyVenerated</li>
|
||||||
|
<li>Bestiality_Honorable</li>
|
||||||
|
</nullifyingPrecepts>
|
||||||
|
</value>
|
||||||
|
</Operation>
|
||||||
|
|
||||||
|
<Operation Class="PatchOperationAdd">
|
||||||
|
<xpath>Defs/ThoughtDef[defName="AllowedAnimalToBreed"]</xpath>
|
||||||
|
<value>
|
||||||
|
<nullifyingPrecepts>
|
||||||
|
<li>Bestiality_OnlyVenerated</li>
|
||||||
|
<li>Bestiality_Honorable</li>
|
||||||
|
</nullifyingPrecepts>
|
||||||
|
</value>
|
||||||
|
</Operation>
|
||||||
|
|
||||||
|
<Operation Class="PatchOperationAdd">
|
||||||
|
<xpath>Defs/ThoughtDef[defName="GotLickedByAnimal"]</xpath>
|
||||||
|
<value>
|
||||||
|
<nullifyingPrecepts>
|
||||||
|
<li>Bestiality_OnlyVenerated</li>
|
||||||
|
<li>Bestiality_Honorable</li>
|
||||||
|
</nullifyingPrecepts>
|
||||||
|
</value>
|
||||||
|
</Operation>
|
||||||
|
|
||||||
|
<Operation Class="PatchOperationAdd">
|
||||||
|
<xpath>Defs/ThoughtDef[defName="GotGropedByAnimal"]</xpath>
|
||||||
|
<value>
|
||||||
|
<nullifyingPrecepts>
|
||||||
|
<li>Bestiality_OnlyVenerated</li>
|
||||||
|
<li>Bestiality_Honorable</li>
|
||||||
|
</nullifyingPrecepts>
|
||||||
|
</value>
|
||||||
|
</Operation>
|
||||||
|
|
||||||
|
<Operation Class="PatchOperationAdd">
|
||||||
|
<xpath>Defs/ThoughtDef[defName="AllowedAnimalToGrope"]</xpath>
|
||||||
|
<value>
|
||||||
|
<nullifyingPrecepts>
|
||||||
|
<li>Bestiality_OnlyVenerated</li>
|
||||||
|
<li>Bestiality_Honorable</li>
|
||||||
|
</nullifyingPrecepts>
|
||||||
|
</value>
|
||||||
|
</Operation>
|
||||||
|
|
||||||
|
<Operation Class="PatchOperationAdd">
|
||||||
|
<xpath>Defs/ThoughtDef[defName="StoleSomeLovin"]</xpath>
|
||||||
|
<value>
|
||||||
|
<nullifyingPrecepts>
|
||||||
|
<li>Rape_Honorable</li>
|
||||||
|
</nullifyingPrecepts>
|
||||||
|
</value>
|
||||||
|
</Operation>
|
||||||
|
|
||||||
|
<Operation Class="PatchOperationAdd">
|
||||||
|
<xpath>Defs/ThoughtDef[defName="Incestuous"]</xpath>
|
||||||
|
<value>
|
||||||
|
<nullifyingPrecepts>
|
||||||
|
<li>Incestuos_Free</li>
|
||||||
|
<li>Incestuos_IncestOnly</li>
|
||||||
|
</nullifyingPrecepts>
|
||||||
|
</value>
|
||||||
|
</Operation>
|
||||||
|
</Patch>
|
|
@ -0,0 +1,25 @@
|
||||||
|
|
||||||
|
Microsoft Visual Studio Solution File, Format Version 12.00
|
||||||
|
# Visual Studio Version 16
|
||||||
|
VisualStudioVersion = 16.0.31424.327
|
||||||
|
MinimumVisualStudioVersion = 10.0.40219.1
|
||||||
|
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "RJWSexperience", "RJWSexperience\RJWSexperience.csproj", "{9C728E06-573B-4B04-A07F-ACBF60CB424D}"
|
||||||
|
EndProject
|
||||||
|
Global
|
||||||
|
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||||
|
Debug|Any CPU = Debug|Any CPU
|
||||||
|
Release|Any CPU = Release|Any CPU
|
||||||
|
EndGlobalSection
|
||||||
|
GlobalSection(ProjectConfigurationPlatforms) = postSolution
|
||||||
|
{9C728E06-573B-4B04-A07F-ACBF60CB424D}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||||
|
{9C728E06-573B-4B04-A07F-ACBF60CB424D}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||||
|
{9C728E06-573B-4B04-A07F-ACBF60CB424D}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||||
|
{9C728E06-573B-4B04-A07F-ACBF60CB424D}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||||
|
EndGlobalSection
|
||||||
|
GlobalSection(SolutionProperties) = preSolution
|
||||||
|
HideSolutionNode = FALSE
|
||||||
|
EndGlobalSection
|
||||||
|
GlobalSection(ExtensibilityGlobals) = postSolution
|
||||||
|
SolutionGuid = {03C87A93-F76D-49B3-AE25-67E14F20EACD}
|
||||||
|
EndGlobalSection
|
||||||
|
EndGlobal
|
|
@ -0,0 +1,32 @@
|
||||||
|
using System;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
using System.Linq;
|
||||||
|
using System.Text;
|
||||||
|
using System.Threading.Tasks;
|
||||||
|
using RimWorld;
|
||||||
|
using Verse;
|
||||||
|
|
||||||
|
|
||||||
|
namespace RJWSexperience
|
||||||
|
{
|
||||||
|
public class GoodwillSituationWorker_OneWayReceive : GoodwillSituationWorker_MemeCompatibility
|
||||||
|
{
|
||||||
|
public override int GetNaturalGoodwillOffset(Faction other)
|
||||||
|
{
|
||||||
|
|
||||||
|
if (!Applies(other)) return 0;
|
||||||
|
return def.naturalGoodwillOffset;
|
||||||
|
}
|
||||||
|
|
||||||
|
protected bool Applies(Faction other)
|
||||||
|
{
|
||||||
|
Ideo primaryideo = Faction.OfPlayer.ideos?.PrimaryIdeo;
|
||||||
|
Ideo primaryideo2 = other.ideos?.PrimaryIdeo;
|
||||||
|
if (primaryideo == null || primaryideo2 == null) return false;
|
||||||
|
|
||||||
|
return primaryideo.memes.Contains(def.meme) && !primaryideo2.memes.Contains(def.meme);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,22 @@
|
||||||
|
using System;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
using System.Linq;
|
||||||
|
using System.Text;
|
||||||
|
using System.Threading.Tasks;
|
||||||
|
using System.Reflection;
|
||||||
|
using Verse;
|
||||||
|
using HarmonyLib;
|
||||||
|
|
||||||
|
|
||||||
|
namespace RJWSexperience
|
||||||
|
{
|
||||||
|
[StaticConstructorOnStartup]
|
||||||
|
internal static class First
|
||||||
|
{
|
||||||
|
static First()
|
||||||
|
{
|
||||||
|
var har = new Harmony("RJW_Sexperience");
|
||||||
|
har.PatchAll(Assembly.GetExecutingAssembly());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,67 @@
|
||||||
|
using System;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
using System.Linq;
|
||||||
|
using System.Text;
|
||||||
|
using System.Threading.Tasks;
|
||||||
|
using Verse;
|
||||||
|
using Verse.AI;
|
||||||
|
using RimWorld;
|
||||||
|
using rjw;
|
||||||
|
|
||||||
|
namespace RJWSexperience
|
||||||
|
{
|
||||||
|
public class JobGiver_Orgy : ThinkNode_JobGiver
|
||||||
|
{
|
||||||
|
/// <summary> Checks all of our potential partners to see if anyone's eligible, returning the most attractive and convenient one. </summary>
|
||||||
|
protected override Job TryGiveJob(Pawn pawn)
|
||||||
|
{
|
||||||
|
if (!RJWHookupSettings.HookupsEnabled || !RJWHookupSettings.QuickHookupsEnabled)
|
||||||
|
return null;
|
||||||
|
|
||||||
|
if (pawn.Drafted)
|
||||||
|
return null;
|
||||||
|
|
||||||
|
if (!SexUtility.ReadyForHookup(pawn))
|
||||||
|
return null;
|
||||||
|
|
||||||
|
// We increase the time right away to prevent the fairly expensive check from happening too frequently
|
||||||
|
SexUtility.IncreaseTicksToNextHookup(pawn);
|
||||||
|
|
||||||
|
// If the pawn is a whore, or recently had sex, skip the job unless they're really horny
|
||||||
|
if (!xxx.is_frustrated(pawn) && (xxx.is_whore(pawn) || !SexUtility.ReadyForLovin(pawn)))
|
||||||
|
return null;
|
||||||
|
|
||||||
|
// This check attempts to keep groups leaving the map, like guests or traders, from turning around to hook up
|
||||||
|
if (pawn.mindState?.duty?.def == DutyDefOf.TravelOrLeave)
|
||||||
|
{
|
||||||
|
// TODO: Some guest pawns keep the TravelOrLeave duty the whole time, I think the ones assigned to guard the pack animals.
|
||||||
|
// That's probably ok, though it wasn't the intention.
|
||||||
|
if (RJWSettings.DebugLogJoinInBed) ModLog.Message($" Quickie.TryGiveJob:({xxx.get_pawnname(pawn)}): has TravelOrLeave, no time for lovin!");
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (pawn.CurJob == null)
|
||||||
|
{
|
||||||
|
//--Log.Message(" checking pawn and abilities");
|
||||||
|
if (CasualSex_Helper.CanHaveSex(pawn))
|
||||||
|
{
|
||||||
|
//--Log.Message(" finding partner");
|
||||||
|
Pawn partner = CasualSex_Helper.find_partner(pawn, pawn.Map, false);
|
||||||
|
|
||||||
|
//--Log.Message(" checking partner");
|
||||||
|
if (partner == null)
|
||||||
|
return null;
|
||||||
|
|
||||||
|
// Interrupt current job.
|
||||||
|
if (pawn.CurJob != null && pawn.jobs.curDriver != null)
|
||||||
|
pawn.jobs.curDriver.EndJobWith(JobCondition.InterruptForced);
|
||||||
|
|
||||||
|
//--Log.Message(" returning job");
|
||||||
|
return JobMaker.MakeJob(xxx.quick_sex, partner);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,21 @@
|
||||||
|
using System;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
using System.Linq;
|
||||||
|
using System.Text;
|
||||||
|
using System.Threading.Tasks;
|
||||||
|
using Verse;
|
||||||
|
using RimWorld;
|
||||||
|
|
||||||
|
|
||||||
|
namespace RJWSexperience
|
||||||
|
{
|
||||||
|
public static class Keyed
|
||||||
|
{
|
||||||
|
public static string LustStatFactor(float value) => "LustStatFactor".Translate(value);
|
||||||
|
public static string SlaveStatFactor(float value) => "SlaveStatFactor".Translate(value);
|
||||||
|
public static string MemeStatFactor(float value) => "MemeStatFactor".Translate(value);
|
||||||
|
|
||||||
|
public static readonly string SlaveStatFactorDefault = "SlaveStatFactorDefault".Translate();
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,90 @@
|
||||||
|
using System;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
using System.Linq;
|
||||||
|
using System.Text;
|
||||||
|
using System.Threading.Tasks;
|
||||||
|
using RimWorld;
|
||||||
|
using Verse;
|
||||||
|
|
||||||
|
namespace RJWSexperience
|
||||||
|
{
|
||||||
|
public static class HistoryEventArgsNamesCustom
|
||||||
|
{
|
||||||
|
public const string Tag = "TAG";
|
||||||
|
public const string Partner = "PARTNER";
|
||||||
|
}
|
||||||
|
|
||||||
|
public static class HETag
|
||||||
|
{
|
||||||
|
public const string Incestous = "[Incestuos]";
|
||||||
|
public const string Raped = "[Raped]";
|
||||||
|
public const string Rape = "[Rape]";
|
||||||
|
}
|
||||||
|
|
||||||
|
public class PreceptComp_SelfTookThoughtTagged : PreceptComp_SelfTookMemoryThought
|
||||||
|
{
|
||||||
|
public string tag;
|
||||||
|
public bool exclusive = false;
|
||||||
|
|
||||||
|
|
||||||
|
public PreceptComp_SelfTookThoughtTagged() { }
|
||||||
|
|
||||||
|
public override void Notify_MemberTookAction(HistoryEvent ev, Precept precept, bool canApplySelfTookThoughts)
|
||||||
|
{
|
||||||
|
if (tag != null)
|
||||||
|
{
|
||||||
|
if (ev.args.TryGetArg(HistoryEventArgsNamesCustom.Tag, out string tags))
|
||||||
|
{
|
||||||
|
if (tags.ToLower().Contains(tag.ToLower()) ^ exclusive) base.Notify_MemberTookAction(ev, precept, canApplySelfTookThoughts);
|
||||||
|
}
|
||||||
|
else if (exclusive)
|
||||||
|
{
|
||||||
|
base.Notify_MemberTookAction(ev, precept, canApplySelfTookThoughts);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
base.Notify_MemberTookAction(ev, precept, canApplySelfTookThoughts);
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
public class PreceptComp_KnowsMemoryThoughtTagged : PreceptComp_KnowsMemoryThought
|
||||||
|
{
|
||||||
|
public string tag;
|
||||||
|
public bool exclusive = false;
|
||||||
|
public bool applyonpartner = false;
|
||||||
|
|
||||||
|
public PreceptComp_KnowsMemoryThoughtTagged() { }
|
||||||
|
|
||||||
|
public override void Notify_MemberWitnessedAction(HistoryEvent ev, Precept precept, Pawn member)
|
||||||
|
{
|
||||||
|
if (!applyonpartner)
|
||||||
|
{
|
||||||
|
if (ev.args.TryGetArg(HistoryEventArgsNamesCustom.Partner, out Pawn pawn))
|
||||||
|
{
|
||||||
|
if (pawn == member) return;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (tag != null)
|
||||||
|
{
|
||||||
|
if (ev.args.TryGetArg(HistoryEventArgsNamesCustom.Tag, out string tags))
|
||||||
|
{
|
||||||
|
if (tags.ToLower().Contains(tag.ToLower()) ^ exclusive) base.Notify_MemberWitnessedAction(ev, precept, member);
|
||||||
|
}
|
||||||
|
else if (exclusive)
|
||||||
|
{
|
||||||
|
base.Notify_MemberWitnessedAction(ev, precept, member);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
base.Notify_MemberWitnessedAction(ev, precept, member);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
|
@ -0,0 +1,36 @@
|
||||||
|
using System.Reflection;
|
||||||
|
using System.Runtime.CompilerServices;
|
||||||
|
using System.Runtime.InteropServices;
|
||||||
|
|
||||||
|
// 어셈블리에 대한 일반 정보는 다음 특성 집합을 통해
|
||||||
|
// 제어됩니다. 어셈블리와 관련된 정보를 수정하려면
|
||||||
|
// 이러한 특성 값을 변경하세요.
|
||||||
|
[assembly: AssemblyTitle("RJWSexperience")]
|
||||||
|
[assembly: AssemblyDescription("")]
|
||||||
|
[assembly: AssemblyConfiguration("")]
|
||||||
|
[assembly: AssemblyCompany("")]
|
||||||
|
[assembly: AssemblyProduct("RJWSexperience")]
|
||||||
|
[assembly: AssemblyCopyright("Copyright © 2021")]
|
||||||
|
[assembly: AssemblyTrademark("")]
|
||||||
|
[assembly: AssemblyCulture("")]
|
||||||
|
|
||||||
|
// ComVisible을 false로 설정하면 이 어셈블리의 형식이 COM 구성 요소에
|
||||||
|
// 표시되지 않습니다. COM에서 이 어셈블리의 형식에 액세스하려면
|
||||||
|
// 해당 형식에 대해 ComVisible 특성을 true로 설정하세요.
|
||||||
|
[assembly: ComVisible(false)]
|
||||||
|
|
||||||
|
// 이 프로젝트가 COM에 노출되는 경우 다음 GUID는 typelib의 ID를 나타냅니다.
|
||||||
|
[assembly: Guid("9c728e06-573b-4b04-a07f-acbf60cb424d")]
|
||||||
|
|
||||||
|
// 어셈블리의 버전 정보는 다음 네 가지 값으로 구성됩니다.
|
||||||
|
//
|
||||||
|
// 주 버전
|
||||||
|
// 부 버전
|
||||||
|
// 빌드 번호
|
||||||
|
// 수정 버전
|
||||||
|
//
|
||||||
|
// 모든 값을 지정하거나 아래와 같이 '*'를 사용하여 빌드 번호 및 수정 번호를
|
||||||
|
// 기본값으로 할 수 있습니다.
|
||||||
|
// [assembly: AssemblyVersion("1.0.*")]
|
||||||
|
[assembly: AssemblyVersion("1.0.0.0")]
|
||||||
|
[assembly: AssemblyFileVersion("1.0.0.0")]
|
|
@ -0,0 +1,93 @@
|
||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<Project ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||||
|
<Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
|
||||||
|
<PropertyGroup>
|
||||||
|
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
|
||||||
|
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
|
||||||
|
<ProjectGuid>{9C728E06-573B-4B04-A07F-ACBF60CB424D}</ProjectGuid>
|
||||||
|
<OutputType>Library</OutputType>
|
||||||
|
<AppDesignerFolder>Properties</AppDesignerFolder>
|
||||||
|
<RootNamespace>RJWSexperience</RootNamespace>
|
||||||
|
<AssemblyName>RJWSexperience</AssemblyName>
|
||||||
|
<TargetFrameworkVersion>v4.7.2</TargetFrameworkVersion>
|
||||||
|
<FileAlignment>512</FileAlignment>
|
||||||
|
<Deterministic>true</Deterministic>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
|
||||||
|
<DebugSymbols>true</DebugSymbols>
|
||||||
|
<DebugType>full</DebugType>
|
||||||
|
<Optimize>false</Optimize>
|
||||||
|
<OutputPath>..\..\Assemblies\</OutputPath>
|
||||||
|
<DefineConstants>DEBUG;TRACE</DefineConstants>
|
||||||
|
<ErrorReport>prompt</ErrorReport>
|
||||||
|
<WarningLevel>4</WarningLevel>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
|
||||||
|
<DebugType>pdbonly</DebugType>
|
||||||
|
<Optimize>true</Optimize>
|
||||||
|
<OutputPath>..\..\Assemblies\</OutputPath>
|
||||||
|
<DefineConstants>TRACE</DefineConstants>
|
||||||
|
<ErrorReport>prompt</ErrorReport>
|
||||||
|
<WarningLevel>4</WarningLevel>
|
||||||
|
</PropertyGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<Reference Include="0Harmony">
|
||||||
|
<HintPath>D:\잉어\Lib\Harmony.2.0.4.0\net472\0Harmony.dll</HintPath>
|
||||||
|
<Private>False</Private>
|
||||||
|
</Reference>
|
||||||
|
<Reference Include="Assembly-CSharp">
|
||||||
|
<HintPath>..\..\..\..\RimWorldWin64_Data\Managed\Assembly-CSharp.dll</HintPath>
|
||||||
|
<Private>False</Private>
|
||||||
|
</Reference>
|
||||||
|
<Reference Include="RJW">
|
||||||
|
<HintPath>..\..\..\RJW\1.3\Assemblies\RJW.dll</HintPath>
|
||||||
|
<Private>False</Private>
|
||||||
|
</Reference>
|
||||||
|
<Reference Include="System" />
|
||||||
|
<Reference Include="System.Core" />
|
||||||
|
<Reference Include="System.Xml.Linq" />
|
||||||
|
<Reference Include="System.Data.DataSetExtensions" />
|
||||||
|
<Reference Include="Microsoft.CSharp" />
|
||||||
|
<Reference Include="System.Data" />
|
||||||
|
<Reference Include="System.Net.Http" />
|
||||||
|
<Reference Include="System.Xml" />
|
||||||
|
<Reference Include="UnityEngine">
|
||||||
|
<HintPath>..\..\..\..\RimWorldWin64_Data\Managed\UnityEngine.dll</HintPath>
|
||||||
|
<Private>False</Private>
|
||||||
|
</Reference>
|
||||||
|
<Reference Include="UnityEngine.CoreModule">
|
||||||
|
<HintPath>..\..\..\..\RimWorldWin64_Data\Managed\UnityEngine.CoreModule.dll</HintPath>
|
||||||
|
<Private>False</Private>
|
||||||
|
</Reference>
|
||||||
|
<Reference Include="UnityEngine.IMGUIModule">
|
||||||
|
<HintPath>..\..\..\..\RimWorldWin64_Data\Managed\UnityEngine.IMGUIModule.dll</HintPath>
|
||||||
|
<Private>False</Private>
|
||||||
|
</Reference>
|
||||||
|
<Reference Include="UnityEngine.UI">
|
||||||
|
<HintPath>..\..\..\..\RimWorldWin64_Data\Managed\UnityEngine.UI.dll</HintPath>
|
||||||
|
<Private>False</Private>
|
||||||
|
</Reference>
|
||||||
|
<Reference Include="UnityEngine.UIElementsModule">
|
||||||
|
<HintPath>..\..\..\..\RimWorldWin64_Data\Managed\UnityEngine.UIElementsModule.dll</HintPath>
|
||||||
|
<Private>False</Private>
|
||||||
|
</Reference>
|
||||||
|
<Reference Include="UnityEngine.UIModule">
|
||||||
|
<HintPath>..\..\..\..\RimWorldWin64_Data\Managed\UnityEngine.UIModule.dll</HintPath>
|
||||||
|
<Private>False</Private>
|
||||||
|
</Reference>
|
||||||
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<Compile Include="GoodwillSituationWorker_MemeCompatibility.cs" />
|
||||||
|
<Compile Include="Harmony.cs" />
|
||||||
|
<Compile Include="Keyed.cs" />
|
||||||
|
<Compile Include="PreceptComp_SelftTookThoughtExtended.cs" />
|
||||||
|
<Compile Include="Rimworld_Patch.cs" />
|
||||||
|
<Compile Include="RJW_Patch.cs" />
|
||||||
|
<Compile Include="StatParts.cs" />
|
||||||
|
<Compile Include="Thought_Recordbased.cs" />
|
||||||
|
<Compile Include="Properties\AssemblyInfo.cs" />
|
||||||
|
<Compile Include="Utility.cs" />
|
||||||
|
<Compile Include="VariousDefOf.cs" />
|
||||||
|
</ItemGroup>
|
||||||
|
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
|
||||||
|
</Project>
|
|
@ -0,0 +1,420 @@
|
||||||
|
using System;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
using System.Linq;
|
||||||
|
using System.Text;
|
||||||
|
using System.Threading.Tasks;
|
||||||
|
using HarmonyLib;
|
||||||
|
using rjw;
|
||||||
|
using RimWorld;
|
||||||
|
using Verse;
|
||||||
|
|
||||||
|
|
||||||
|
namespace RJWSexperience
|
||||||
|
{
|
||||||
|
public static class RJWUtility
|
||||||
|
{
|
||||||
|
public static float GetSexStat(this Pawn pawn)
|
||||||
|
{
|
||||||
|
if (xxx.is_human(pawn))
|
||||||
|
{
|
||||||
|
return pawn.GetStatValue(xxx.sex_stat);
|
||||||
|
}
|
||||||
|
else return 1.0f;
|
||||||
|
}
|
||||||
|
|
||||||
|
public static HistoryEvent TaggedEvent(this HistoryEventDef def ,Pawn pawn, string tag, Pawn partner)
|
||||||
|
{
|
||||||
|
return new HistoryEvent(def, pawn.Named(HistoryEventArgsNames.Doer), tag.Named(HistoryEventArgsNamesCustom.Tag), partner.Named(HistoryEventArgsNamesCustom.Partner));
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
[HarmonyPatch(typeof(JobDriver_Sex), "Orgasm")]
|
||||||
|
public static class RJW_Patch_Orgasm
|
||||||
|
{
|
||||||
|
public static void Postfix(JobDriver_Sex __instance)
|
||||||
|
{
|
||||||
|
if (__instance.sexType != xxx.rjwSextype.Masturbation && !(__instance is JobDriver_Masturbate))
|
||||||
|
{
|
||||||
|
if (__instance.isRape)
|
||||||
|
{
|
||||||
|
__instance.pawn?.skills?.Learn(VariousDefOf.SexSkill, 0.05f, true);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
__instance.pawn?.skills?.Learn(VariousDefOf.SexSkill, 0.35f, true);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
[HarmonyPatch(typeof(WhoringHelper), "WhoreAbilityAdjustmentMin")]
|
||||||
|
public static class RJW_Patch_WhoreAbilityAdjustmentMin
|
||||||
|
{
|
||||||
|
public static void Postfix(Pawn whore, ref float __result)
|
||||||
|
{
|
||||||
|
__result *= whore.GetSexStat();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
[HarmonyPatch(typeof(WhoringHelper), "WhoreAbilityAdjustmentMax")]
|
||||||
|
public static class RJW_Patch_WhoreAbilityAdjustmentMax
|
||||||
|
{
|
||||||
|
public static void Postfix(Pawn whore, ref float __result)
|
||||||
|
{
|
||||||
|
__result *= whore.GetSexStat();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
[HarmonyPatch(typeof(SexUtility), "SatisfyPersonal")]
|
||||||
|
public static class RJW_Patch_SatisfyPersonal_Pre
|
||||||
|
{
|
||||||
|
public static void Prefix(Pawn pawn, Pawn partner, xxx.rjwSextype sextype, bool violent, bool pawn_is_raping, ref float satisfaction)
|
||||||
|
{
|
||||||
|
satisfaction *= partner.GetSexStat();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
[HarmonyPatch(typeof(SexUtility), "SatisfyPersonal")]
|
||||||
|
public static class RJW_Patch_SatisfyPersonal_Post
|
||||||
|
{
|
||||||
|
private const float base_sat_per_fuck = 0.3f;
|
||||||
|
public static void Postfix(Pawn pawn, Pawn partner, xxx.rjwSextype sextype, bool violent, bool pawn_is_raping, float satisfaction)
|
||||||
|
{
|
||||||
|
float? lust = pawn.records?.GetValue(VariousDefOf.Lust);
|
||||||
|
if (lust != null)
|
||||||
|
{
|
||||||
|
if (sextype != xxx.rjwSextype.Masturbation) pawn.records.AddTo(VariousDefOf.Lust, satisfaction - base_sat_per_fuck); // If the sex is satisfactory, lust grows up. Declines at the opposite.
|
||||||
|
else pawn.records.AddTo(VariousDefOf.Lust, satisfaction * satisfaction); // Masturbation always increases lust.
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
[HarmonyPatch(typeof(ThinkNode_ChancePerHour_Bestiality), "MtbHours")]
|
||||||
|
public static class RJW_Patch_ChancePerHour_Bestiality
|
||||||
|
{
|
||||||
|
public static void Postfix(Pawn pawn, ref float __result)
|
||||||
|
{
|
||||||
|
Ideo ideo = pawn.Ideo;
|
||||||
|
if (ideo != null) __result = BestialityByPrecept(ideo); // ideo is null if don't have dlc
|
||||||
|
}
|
||||||
|
|
||||||
|
public static float BestialityByPrecept(Ideo ideo)
|
||||||
|
{
|
||||||
|
if (ideo.HasPrecept(VariousDefOf.Bestiality_Honorable)) return 0.3f;
|
||||||
|
else if (ideo.HasPrecept(VariousDefOf.Bestiality_OnlyVenerated)) return 0.6f;
|
||||||
|
else if (ideo.HasPrecept(VariousDefOf.Bestiality_Acceptable)) return 0.75f;
|
||||||
|
else if (ideo.HasPrecept(VariousDefOf.Bestiality_Disapproved)) return 1.0f;
|
||||||
|
else return 5f;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
[HarmonyPatch(typeof(ThinkNode_ChancePerHour_RapeCP), "MtbHours")]
|
||||||
|
public static class RJW_Patch_ChancePerHour_RapeCP
|
||||||
|
{
|
||||||
|
public static void Postfix(Pawn pawn, ref float __result)
|
||||||
|
{
|
||||||
|
Ideo ideo = pawn.Ideo;
|
||||||
|
if (ideo != null) __result *= RapeByPrecept(ideo); // ideo is null if don't have dlc
|
||||||
|
}
|
||||||
|
|
||||||
|
public static float RapeByPrecept(Ideo ideo)
|
||||||
|
{
|
||||||
|
if (ideo.HasPrecept(VariousDefOf.Rape_Honorable)) return 0.25f;
|
||||||
|
else if (ideo.HasPrecept(VariousDefOf.Rape_Acceptable)) return 0.5f;
|
||||||
|
else if (ideo.HasPrecept(VariousDefOf.Rape_Disapproved)) return 1.0f;
|
||||||
|
else return 3f;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
[HarmonyPatch(typeof(xxx), "TransferNutrition")]
|
||||||
|
public static class RJW_Patch_TransferNutrition
|
||||||
|
{
|
||||||
|
public static void Postfix(Pawn pawn, Pawn partner, xxx.rjwSextype sextype)
|
||||||
|
{
|
||||||
|
Pawn receiver = null;
|
||||||
|
if (Genital_Helper.has_penis_fertile(pawn)) receiver = partner;
|
||||||
|
else if (Genital_Helper.has_penis_fertile(partner)) receiver = pawn;
|
||||||
|
|
||||||
|
if (receiver != null && (
|
||||||
|
sextype == xxx.rjwSextype.Oral ||
|
||||||
|
sextype == xxx.rjwSextype.Fellatio ||
|
||||||
|
sextype == xxx.rjwSextype.Sixtynine))
|
||||||
|
{
|
||||||
|
receiver.needs?.mood?.thoughts?.memories?.TryGainMemoryFast(VariousDefOf.AteCum);
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
[HarmonyPatch(typeof(xxx), "is_rapist")]
|
||||||
|
public static class RJW_Patch_is_rapist
|
||||||
|
{
|
||||||
|
public static void Postfix(Pawn pawn, ref bool __result)
|
||||||
|
{
|
||||||
|
Ideo ideo = pawn.Ideo;
|
||||||
|
if (ideo != null)
|
||||||
|
{
|
||||||
|
__result = __result || ideo.HasMeme(VariousDefOf.Rapist);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
[HarmonyPatch(typeof(xxx), "is_zoophile")]
|
||||||
|
public static class RJW_Patch_is_zoophile
|
||||||
|
{
|
||||||
|
public static void Postfix(Pawn pawn, ref bool __result)
|
||||||
|
{
|
||||||
|
Ideo ideo = pawn.Ideo;
|
||||||
|
if (ideo != null)
|
||||||
|
{
|
||||||
|
__result = __result || ideo.HasMeme(VariousDefOf.Zoophile);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
[HarmonyPatch(typeof(SexUtility), "Aftersex", new Type[] {typeof(Pawn), typeof(Pawn), typeof(bool), typeof(bool), typeof(bool), typeof(xxx.rjwSextype) })]
|
||||||
|
public static class RJW_Patch_Aftersex
|
||||||
|
{
|
||||||
|
|
||||||
|
|
||||||
|
public static void Postfix(Pawn pawn, Pawn partner, bool usedCondom, bool rape, bool isCoreLovin, xxx.rjwSextype sextype)
|
||||||
|
{
|
||||||
|
//Log.Message("Aftersex " + pawn.Label + ": " + sextype);
|
||||||
|
if (xxx.is_human(pawn)) AfterSexHuman(pawn, partner, usedCondom, rape, isCoreLovin, sextype);
|
||||||
|
else if (xxx.is_human(partner)) AfterSexHuman(partner, pawn, usedCondom, false, isCoreLovin, sextype, true);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
public static void AfterSexHuman(Pawn human, Pawn partner, bool usedCondom, bool rape, bool isCoreLovin, xxx.rjwSextype sextype, bool isHumanReceiving = false)
|
||||||
|
{
|
||||||
|
string tag = "";
|
||||||
|
if (human.IsIncest(partner))
|
||||||
|
{
|
||||||
|
tag += HETag.Incestous;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (partner.IsAnimal())
|
||||||
|
{
|
||||||
|
if (isHumanReceiving && rape)
|
||||||
|
{
|
||||||
|
if (human.IsSlave) RapeEffectSlave(human);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
if (human.Ideo?.IsVeneratedAnimal(partner) ?? false) Find.HistoryEventsManager.RecordEvent(VariousDefOf.SexWithVeneratedAnimal.TaggedEvent(human, tag, partner));
|
||||||
|
else Find.HistoryEventsManager.RecordEvent(VariousDefOf.SexWithAnimal.TaggedEvent(human, tag, partner));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else if (xxx.is_human(partner))
|
||||||
|
{
|
||||||
|
if (rape)
|
||||||
|
{
|
||||||
|
if (partner.IsSlave)
|
||||||
|
{
|
||||||
|
Find.HistoryEventsManager.RecordEvent(VariousDefOf.RapedSlave.TaggedEvent(human ,tag + HETag.Rape ,partner));
|
||||||
|
Find.HistoryEventsManager.RecordEvent(VariousDefOf.WasRapedSlave.TaggedEvent(partner, tag + HETag.Raped, human));
|
||||||
|
RapeEffectSlave(partner);
|
||||||
|
}
|
||||||
|
else if (partner.IsPrisoner)
|
||||||
|
{
|
||||||
|
Find.HistoryEventsManager.RecordEvent(VariousDefOf.RapedPrisoner.TaggedEvent(human, tag + HETag.Rape, partner));
|
||||||
|
Find.HistoryEventsManager.RecordEvent(VariousDefOf.WasRapedPrisoner.TaggedEvent(partner, tag + HETag.Raped, human));
|
||||||
|
partner.guest.will = Math.Max(0, partner.guest.will - 0.2f);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
Find.HistoryEventsManager.RecordEvent(VariousDefOf.Raped.TaggedEvent(human, tag + HETag.Rape, partner));
|
||||||
|
Find.HistoryEventsManager.RecordEvent(VariousDefOf.WasRaped.TaggedEvent(partner, tag + HETag.Raped, human));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
HistoryEventDef sexevent = GetSexHistoryDef(sextype);
|
||||||
|
if (sexevent != null)
|
||||||
|
{
|
||||||
|
Find.HistoryEventsManager.RecordEvent(sexevent.TaggedEvent(human, tag, partner));
|
||||||
|
Find.HistoryEventsManager.RecordEvent(sexevent.TaggedEvent(partner, tag, human));
|
||||||
|
if (sexevent == VariousDefOf.PromiscuousSex)
|
||||||
|
{
|
||||||
|
human.records.AddTo(VariousDefOf.Lust, 3.0f);
|
||||||
|
partner.records.AddTo(VariousDefOf.Lust, 3.0f);
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public static void RapeEffectSlave(Pawn victim)
|
||||||
|
{
|
||||||
|
Need_Suppression suppression = victim.needs.TryGetNeed<Need_Suppression>();
|
||||||
|
if (suppression != null)
|
||||||
|
{
|
||||||
|
Hediff broken = victim.health.hediffSet.GetFirstHediffOfDef(xxx.feelingBroken);
|
||||||
|
if (broken != null) suppression.CurLevel += 0.3f * broken.Severity + 0.05f;
|
||||||
|
else suppression.CurLevel += 0.05f;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// only for non-violate human sex
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="pawn"></param>
|
||||||
|
/// <param name="partner"></param>
|
||||||
|
/// <param name="sextype"></param>
|
||||||
|
/// <returns></returns>
|
||||||
|
public static HistoryEventDef GetSexHistoryDef(xxx.rjwSextype sextype)
|
||||||
|
{
|
||||||
|
switch (sextype)
|
||||||
|
{
|
||||||
|
case xxx.rjwSextype.None:
|
||||||
|
case xxx.rjwSextype.MechImplant:
|
||||||
|
default:
|
||||||
|
return null;
|
||||||
|
case xxx.rjwSextype.Vaginal:
|
||||||
|
return VariousDefOf.VaginalSex;
|
||||||
|
case xxx.rjwSextype.Anal:
|
||||||
|
case xxx.rjwSextype.Rimming:
|
||||||
|
return VariousDefOf.AnalSex;
|
||||||
|
case xxx.rjwSextype.Oral:
|
||||||
|
case xxx.rjwSextype.Fellatio:
|
||||||
|
case xxx.rjwSextype.Cunnilingus:
|
||||||
|
return VariousDefOf.OralSex;
|
||||||
|
|
||||||
|
case xxx.rjwSextype.Masturbation:
|
||||||
|
case xxx.rjwSextype.Boobjob:
|
||||||
|
case xxx.rjwSextype.Handjob:
|
||||||
|
case xxx.rjwSextype.Footjob:
|
||||||
|
case xxx.rjwSextype.Fingering:
|
||||||
|
case xxx.rjwSextype.MutualMasturbation:
|
||||||
|
return VariousDefOf.MiscSex;
|
||||||
|
case xxx.rjwSextype.DoublePenetration :
|
||||||
|
case xxx.rjwSextype.Scissoring :
|
||||||
|
case xxx.rjwSextype.Fisting :
|
||||||
|
case xxx.rjwSextype.Sixtynine :
|
||||||
|
return VariousDefOf.PromiscuousSex;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Set prefer sextype using precepts
|
||||||
|
/// </summary>
|
||||||
|
[HarmonyPatch(typeof(SexUtility), "DetermineSexScores")]
|
||||||
|
public static class RJW_Patch_DetermineSexScores
|
||||||
|
{
|
||||||
|
public static void Postfix(Pawn pawn, Pawn partner, bool rape, bool whoring, Pawn receiving, List<float> __result)
|
||||||
|
{
|
||||||
|
Ideo ideo = pawn.Ideo;
|
||||||
|
if (ideo != null) PreceptSextype(ideo, pawn.GetStatValue(xxx.sex_drive_stat), __result, 0);
|
||||||
|
|
||||||
|
ideo = partner.Ideo;
|
||||||
|
if (!rape && ideo != null) PreceptSextype(ideo, pawn.GetStatValue(xxx.sex_drive_stat), __result, 1);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
public static void PreceptSextype(Ideo ideo, float sexdrive, List<float> result, int offset)
|
||||||
|
{
|
||||||
|
float mult = 8.0f * Math.Max(0.3f, 1 / Math.Max(0.01f, sexdrive));
|
||||||
|
if (ideo.HasPrecept(VariousDefOf.Sex_VaginalOnly))
|
||||||
|
{
|
||||||
|
result[0 + offset] *= mult;
|
||||||
|
}
|
||||||
|
else if (ideo.HasPrecept(VariousDefOf.Sex_AnalOnly))
|
||||||
|
{
|
||||||
|
result[2 + offset] *= mult;
|
||||||
|
result[6 + offset] *= mult;
|
||||||
|
}
|
||||||
|
else if (ideo.HasPrecept(VariousDefOf.Sex_OralOnly))
|
||||||
|
{
|
||||||
|
result[4 + offset] *= mult;
|
||||||
|
result[8 + offset] *= mult;
|
||||||
|
}
|
||||||
|
else if (ideo.HasPrecept(VariousDefOf.Sex_Promiscuous))
|
||||||
|
{
|
||||||
|
result[10 + offset] *= mult;
|
||||||
|
result[20 + offset] *= mult;
|
||||||
|
result[24 + offset] *= mult;
|
||||||
|
result[26 + offset] *= mult;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
[HarmonyPatch(typeof(Nymph_Generator), "set_skills")]
|
||||||
|
public static class RJW_Patch_Nymph_set_skills
|
||||||
|
{
|
||||||
|
public static void Postfix(Pawn pawn)
|
||||||
|
{
|
||||||
|
SkillRecord sexskill = pawn.skills.GetSkill(VariousDefOf.SexSkill);
|
||||||
|
if (sexskill != null)
|
||||||
|
{
|
||||||
|
sexskill.passion = Passion.Major;
|
||||||
|
sexskill.Level = (int)Utility.RandGaussianLike(7f, 20.99f);
|
||||||
|
sexskill.xpSinceLastLevel = sexskill.XpRequiredForLevelUp * Rand.Range(0.10f, 0.90f);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
[HarmonyPatch(typeof(SexAppraiser), "would_fuck", new Type[] {typeof(Pawn), typeof(Pawn), typeof(bool), typeof(bool), typeof(bool) })]
|
||||||
|
public static class RJW_Patch_would_fuck
|
||||||
|
{
|
||||||
|
public static void Postfix(Pawn fucker, Pawn fucked, bool invert_opinion, bool ignore_bleeding, bool ignore_gender, ref float __result)
|
||||||
|
{
|
||||||
|
Ideo ideo = fucker.Ideo;
|
||||||
|
if (ideo != null)
|
||||||
|
{
|
||||||
|
if (fucker.IsIncest(fucked))
|
||||||
|
{
|
||||||
|
if (ideo.HasPrecept(VariousDefOf.Incestuos_IncestOnly)) __result *= 2.0f;
|
||||||
|
else if (!fucker.relations?.DirectRelationExists(PawnRelationDefOf.Spouse, fucked) ?? false)
|
||||||
|
{
|
||||||
|
if (ideo.HasPrecept(VariousDefOf.Incestuos_Disapproved)) __result *= 0.5f;
|
||||||
|
else if (ideo.HasPrecept(VariousDefOf.Incestuos_Forbidden)) __result *= 0.1f;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (fucked.IsAnimal())
|
||||||
|
{
|
||||||
|
if (ideo.HasPrecept(VariousDefOf.Bestiality_Honorable)) __result *= 2.0f;
|
||||||
|
else if (ideo.HasPrecept(VariousDefOf.Bestiality_OnlyVenerated) && ideo.IsVeneratedAnimal(fucked)) __result *= 2.0f;
|
||||||
|
else if (ideo.HasPrecept(VariousDefOf.Bestiality_Acceptable)) __result *= 1.0f;
|
||||||
|
else __result *= 0.5f;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
[HarmonyPatch(typeof(PawnDesignations_Breedee), "UpdateCanDesignateBreeding")]
|
||||||
|
public static class RJW_Patch_UpdateCanDesignateBreeding
|
||||||
|
{
|
||||||
|
public static void Postfix(Pawn pawn, ref bool __result)
|
||||||
|
{
|
||||||
|
Ideo ideo = pawn.Ideo;
|
||||||
|
if (ideo != null && ideo.HasMeme(VariousDefOf.Zoophile))
|
||||||
|
{
|
||||||
|
SaveStorage.DataStore.GetPawnData(pawn).CanDesignateBreeding = true;
|
||||||
|
__result = true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
}
|
|
@ -0,0 +1,105 @@
|
||||||
|
using System;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
using System.Linq;
|
||||||
|
using System.Text;
|
||||||
|
using System.Threading.Tasks;
|
||||||
|
using HarmonyLib;
|
||||||
|
using RimWorld;
|
||||||
|
using Verse;
|
||||||
|
using rjw;
|
||||||
|
|
||||||
|
namespace RJWSexperience
|
||||||
|
{
|
||||||
|
[HarmonyPatch(typeof(MarriageCeremonyUtility), "Married")]
|
||||||
|
public static class Rimworld_Patch_Marriage
|
||||||
|
{
|
||||||
|
public static void Postfix(Pawn firstPawn, Pawn secondPawn)
|
||||||
|
{
|
||||||
|
if (firstPawn.IsIncest(secondPawn))
|
||||||
|
{
|
||||||
|
Find.HistoryEventsManager.RecordEvent(new HistoryEvent(VariousDefOf.Incestuos_Marriage, firstPawn.Named(HistoryEventArgsNames.Doer)));
|
||||||
|
Find.HistoryEventsManager.RecordEvent(new HistoryEvent(VariousDefOf.Incestuos_Marriage, secondPawn.Named(HistoryEventArgsNames.Doer)));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
[HarmonyPatch(typeof(Pawn_RelationsTracker), "SecondaryRomanceChanceFactor")]
|
||||||
|
public static class Rimworld_Patch_SecondaryRomanceChanceFactor
|
||||||
|
{
|
||||||
|
public static void Postfix(Pawn otherPawn, Pawn ___pawn, ref float __result)
|
||||||
|
{
|
||||||
|
Ideo ideo = ___pawn.Ideo;
|
||||||
|
if (ideo != null)
|
||||||
|
{
|
||||||
|
if (ideo.HasPrecept(VariousDefOf.Incestuos_IncestOnly) && ___pawn.IsIncest(otherPawn))
|
||||||
|
{
|
||||||
|
__result *= 8f;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
[HarmonyPatch(typeof(PawnGenerator), "GeneratePawn", new Type[] { typeof(PawnGenerationRequest) })]
|
||||||
|
public static class Rimworld_Patch_GeneratePawn
|
||||||
|
{
|
||||||
|
public static void Postfix(PawnGenerationRequest request, ref Pawn __result)
|
||||||
|
{
|
||||||
|
if (__result != null && !request.Newborn && xxx.is_human(__result))
|
||||||
|
{
|
||||||
|
float avgsex = -500;
|
||||||
|
float lust = __result.RecordRandomizer(VariousDefOf.Lust, 0, 500, float.MinValue);
|
||||||
|
float sexableage = 0;
|
||||||
|
if (__result.ageTracker.AgeBiologicalYears > RJWSettings.sex_minimum_age)
|
||||||
|
{
|
||||||
|
sexableage = __result.ageTracker.AgeBiologicalYearsFloat - RJWSettings.sex_minimum_age;
|
||||||
|
avgsex = sexableage * Rand.Range(0,30) + lust;
|
||||||
|
}
|
||||||
|
float totalsex = 0;
|
||||||
|
float totalbirth = 0;
|
||||||
|
if (__result.story != null)
|
||||||
|
{
|
||||||
|
|
||||||
|
if (xxx.is_rapist(__result))
|
||||||
|
{
|
||||||
|
if (xxx.is_zoophile(__result))
|
||||||
|
{
|
||||||
|
if (__result.Has(Quirk.ChitinLover)) totalsex += __result.RecordRandomizer(xxx.CountOfRapedInsects, avgsex, 90);
|
||||||
|
else totalsex += __result.RecordRandomizer(xxx.CountOfRapedAnimals, avgsex, 90);
|
||||||
|
}
|
||||||
|
else totalsex += __result.RecordRandomizer(xxx.CountOfRapedHumanlikes, avgsex, 90);
|
||||||
|
avgsex /= 2;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (xxx.is_zoophile(__result))
|
||||||
|
{
|
||||||
|
if (__result.Has(Quirk.ChitinLover)) totalsex += __result.RecordRandomizer(xxx.CountOfRapedInsects, avgsex, 90);
|
||||||
|
else totalsex += __result.RecordRandomizer(xxx.CountOfSexWithAnimals, avgsex, 90);
|
||||||
|
avgsex /= 2;
|
||||||
|
}
|
||||||
|
else if (xxx.is_necrophiliac(__result))
|
||||||
|
{
|
||||||
|
totalsex += __result.RecordRandomizer(xxx.CountOfSexWithCorpse, avgsex, 90);
|
||||||
|
avgsex /= 2;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (__result.IsSlave)
|
||||||
|
{
|
||||||
|
totalsex += __result.RecordRandomizer(xxx.CountOfBeenRapedByHumanlikes, 0, Rand.Range(0,100)*sexableage);
|
||||||
|
totalsex += __result.RecordRandomizer(xxx.CountOfBeenRapedByAnimals, Rand.Range(-50,10), Rand.Range(0,10)*sexableage);
|
||||||
|
}
|
||||||
|
|
||||||
|
totalsex += __result.RecordRandomizer(xxx.CountOfSexWithHumanlikes, avgsex, 90);
|
||||||
|
if (__result.relations != null)
|
||||||
|
if (__result.relations != null && __result.gender == Gender.Female)
|
||||||
|
{
|
||||||
|
totalbirth += __result.relations.GetDirectRelationsCount(PawnRelationDefOf.Child);
|
||||||
|
__result.records?.SetTo(xxx.CountOfBirthHuman, totalbirth);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
__result.records?.SetTo(xxx.CountOfSex, totalsex);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
}
|
|
@ -0,0 +1,120 @@
|
||||||
|
using System;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
using System.Linq;
|
||||||
|
using System.Text;
|
||||||
|
using System.Threading.Tasks;
|
||||||
|
using rjw;
|
||||||
|
using RimWorld;
|
||||||
|
using Verse;
|
||||||
|
|
||||||
|
|
||||||
|
namespace RJWSexperience
|
||||||
|
{
|
||||||
|
public class StatPart_Lust : StatPart
|
||||||
|
{
|
||||||
|
public float factor;
|
||||||
|
|
||||||
|
public override string ExplanationPart(StatRequest req)
|
||||||
|
{
|
||||||
|
Pawn pawn = req.Thing as Pawn;
|
||||||
|
return Keyed.LustStatFactor(LustFactor(pawn) * factor * 100);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
public override void TransformValue(StatRequest req, ref float val)
|
||||||
|
{
|
||||||
|
Pawn pawn = req.Thing as Pawn;
|
||||||
|
if (pawn != null) val *= LustFactor(pawn) * factor;
|
||||||
|
}
|
||||||
|
|
||||||
|
protected float LustFactor(Pawn pawn)
|
||||||
|
{
|
||||||
|
return 1 + pawn.records.GetValue(VariousDefOf.Lust) / 100;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
public class StatPart_GenderPrimacy : StatPart
|
||||||
|
{
|
||||||
|
public float modifier;
|
||||||
|
|
||||||
|
public override string ExplanationPart(StatRequest req)
|
||||||
|
{
|
||||||
|
Pawn pawn = req.Thing as Pawn;
|
||||||
|
Ideo ideo = null;
|
||||||
|
if (pawn != null) ideo = pawn.Ideo;
|
||||||
|
float fact = 1f;
|
||||||
|
if (ideo != null && !ideo.memes.NullOrEmpty()) for (int i = 0; i < ideo.memes.Count; i++)
|
||||||
|
{
|
||||||
|
if (ideo.memes[i] == MemeDefOf.MaleSupremacy)
|
||||||
|
{
|
||||||
|
if (pawn.gender == Gender.Male) fact = modifier;
|
||||||
|
else if (pawn.gender == Gender.Female) fact = 1/modifier;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
else if (ideo.memes[i] == MemeDefOf.FemaleSupremacy)
|
||||||
|
{
|
||||||
|
if (pawn.gender == Gender.Male) fact = 1/modifier;
|
||||||
|
else if (pawn.gender == Gender.Female) fact = modifier;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return Keyed.MemeStatFactor(fact * 100);
|
||||||
|
}
|
||||||
|
|
||||||
|
public override void TransformValue(StatRequest req, ref float val)
|
||||||
|
{
|
||||||
|
Pawn pawn = req.Thing as Pawn;
|
||||||
|
Ideo ideo = null;
|
||||||
|
if (pawn != null) ideo = pawn.Ideo;
|
||||||
|
if (ideo != null && !ideo.memes.NullOrEmpty()) for(int i=0; i< ideo.memes.Count; i++)
|
||||||
|
{
|
||||||
|
if (ideo.memes[i] == MemeDefOf.MaleSupremacy)
|
||||||
|
{
|
||||||
|
if (pawn.gender == Gender.Male) val *= modifier;
|
||||||
|
else if (pawn.gender == Gender.Female) val /= modifier;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
else if(ideo.memes[i] == MemeDefOf.FemaleSupremacy)
|
||||||
|
{
|
||||||
|
if (pawn.gender == Gender.Male) val /= modifier;
|
||||||
|
else if (pawn.gender == Gender.Female) val *= modifier;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public class StatPart_Slave : StatPart
|
||||||
|
{
|
||||||
|
public float factor;
|
||||||
|
public override string ExplanationPart(StatRequest req)
|
||||||
|
{
|
||||||
|
float fact = factor * 100;
|
||||||
|
Pawn pawn = req.Thing as Pawn;
|
||||||
|
if (pawn != null)
|
||||||
|
{
|
||||||
|
if (pawn.IsSlave)
|
||||||
|
{
|
||||||
|
return Keyed.SlaveStatFactor(fact);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return Keyed.SlaveStatFactorDefault;
|
||||||
|
}
|
||||||
|
|
||||||
|
public override void TransformValue(StatRequest req, ref float val)
|
||||||
|
{
|
||||||
|
Pawn pawn = req.Thing as Pawn;
|
||||||
|
if (pawn != null)
|
||||||
|
{
|
||||||
|
if (pawn.IsSlave)
|
||||||
|
{
|
||||||
|
val *= factor;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
}
|
|
@ -0,0 +1,152 @@
|
||||||
|
using System;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
using System.Linq;
|
||||||
|
using System.Text;
|
||||||
|
using System.Threading.Tasks;
|
||||||
|
using Verse;
|
||||||
|
using RimWorld;
|
||||||
|
|
||||||
|
|
||||||
|
namespace RJWSexperience
|
||||||
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// ThoughtDef using record
|
||||||
|
/// </summary>
|
||||||
|
public class ThoughtDef_Recordbased : ThoughtDef
|
||||||
|
{
|
||||||
|
public RecordDef recordDef;
|
||||||
|
public List<float> minimumValueforStage = new List<float>();
|
||||||
|
public float increment;
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Thought class using record.
|
||||||
|
/// </summary>
|
||||||
|
public class Thought_Recordbased : Thought_Memory
|
||||||
|
{
|
||||||
|
protected ThoughtDef_Recordbased Def => (ThoughtDef_Recordbased)def;
|
||||||
|
protected RecordDef recordDef => Def.recordDef;
|
||||||
|
protected List<float> minimumValueforStage => Def.minimumValueforStage;
|
||||||
|
protected float increment => Def.increment;
|
||||||
|
|
||||||
|
public override int CurStageIndex
|
||||||
|
{
|
||||||
|
get
|
||||||
|
{
|
||||||
|
float value = pawn.records.GetValue(recordDef);
|
||||||
|
for (int i = minimumValueforStage.Count - 1; i > 0; i--)
|
||||||
|
{
|
||||||
|
if (minimumValueforStage[i] < value) return i + 1;
|
||||||
|
}
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public class Thought_AteCum : Thought_Recordbased
|
||||||
|
{
|
||||||
|
|
||||||
|
protected int recordIncrement = 1;
|
||||||
|
|
||||||
|
public override void ExposeData()
|
||||||
|
{
|
||||||
|
base.ExposeData();
|
||||||
|
Scribe_Values.Look(ref recordIncrement, "recordIncrement", recordIncrement, true);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
//There is no direct way to modify custom records via ingestion. So i increase it from thought.
|
||||||
|
public override void ThoughtInterval()
|
||||||
|
{
|
||||||
|
base.ThoughtInterval();
|
||||||
|
if (recordIncrement >= 1)
|
||||||
|
{
|
||||||
|
recordIncrement--;
|
||||||
|
pawn.records.AddTo(VariousDefOf.NumofEatenCum, 1);
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
public override bool TryMergeWithExistingMemory(out bool showBubble)
|
||||||
|
{
|
||||||
|
ThoughtHandler thoughts = pawn.needs.mood.thoughts;
|
||||||
|
if (thoughts.memories.NumMemoriesInGroup(this) >= def.stackLimit)
|
||||||
|
{
|
||||||
|
Thought_AteCum thought_Memory = (Thought_AteCum)thoughts.memories.OldestMemoryInGroup(this);
|
||||||
|
if (thought_Memory != null)
|
||||||
|
{
|
||||||
|
showBubble = (thought_Memory.age > thought_Memory.def.DurationTicks / 2);
|
||||||
|
thought_Memory.Merged();
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
showBubble = true;
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
public override void Init()
|
||||||
|
{
|
||||||
|
base.Init();
|
||||||
|
recordIncrement = 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
protected virtual void Merged()
|
||||||
|
{
|
||||||
|
age = 0;
|
||||||
|
recordIncrement += 1;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public class Thought_IncreaseRecord : Thought_Recordbased
|
||||||
|
{
|
||||||
|
protected float recordIncrement;
|
||||||
|
|
||||||
|
public override void ExposeData()
|
||||||
|
{
|
||||||
|
base.ExposeData();
|
||||||
|
Scribe_Values.Look(ref recordIncrement, "recordIncrement", recordIncrement, true);
|
||||||
|
}
|
||||||
|
|
||||||
|
public override void ThoughtInterval()
|
||||||
|
{
|
||||||
|
base.ThoughtInterval();
|
||||||
|
if (recordIncrement != 0)
|
||||||
|
{
|
||||||
|
pawn.records.AddTo(recordDef, recordIncrement);
|
||||||
|
recordIncrement = 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
public override bool TryMergeWithExistingMemory(out bool showBubble)
|
||||||
|
{
|
||||||
|
ThoughtHandler thoughts = pawn.needs.mood.thoughts;
|
||||||
|
if (thoughts.memories.NumMemoriesInGroup(this) >= def.stackLimit)
|
||||||
|
{
|
||||||
|
Thought_IncreaseRecord thought_Memory = (Thought_IncreaseRecord)thoughts.memories.OldestMemoryInGroup(this);
|
||||||
|
if (thought_Memory != null)
|
||||||
|
{
|
||||||
|
showBubble = (thought_Memory.age > thought_Memory.def.DurationTicks / 2);
|
||||||
|
thought_Memory.Merged();
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
showBubble = true;
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
public override void Init()
|
||||||
|
{
|
||||||
|
base.Init();
|
||||||
|
recordIncrement = increment;
|
||||||
|
}
|
||||||
|
protected virtual void Merged()
|
||||||
|
{
|
||||||
|
age = 0;
|
||||||
|
recordIncrement += increment;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
}
|
|
@ -0,0 +1,64 @@
|
||||||
|
using System;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
using System.Linq;
|
||||||
|
using System.Text;
|
||||||
|
using System.Threading.Tasks;
|
||||||
|
using RimWorld;
|
||||||
|
using Verse;
|
||||||
|
using rjw;
|
||||||
|
using UnityEngine;
|
||||||
|
|
||||||
|
namespace RJWSexperience
|
||||||
|
{
|
||||||
|
public static class Utility
|
||||||
|
{
|
||||||
|
public static System.Random random = new System.Random(Environment.TickCount);
|
||||||
|
|
||||||
|
public static float RandGaussianLike(float min, float max, int iterations = 3)
|
||||||
|
{
|
||||||
|
double res = 0;
|
||||||
|
for (int i = 0; i < iterations; i++)
|
||||||
|
{
|
||||||
|
res += random.NextDouble();
|
||||||
|
}
|
||||||
|
res = res / iterations;
|
||||||
|
|
||||||
|
return (float)res * (max - min) + min;
|
||||||
|
}
|
||||||
|
|
||||||
|
public static void SetTo(this Pawn_RecordsTracker records, RecordDef record ,float value)
|
||||||
|
{
|
||||||
|
float recordval = records.GetValue(record);
|
||||||
|
records.AddTo(record, value - recordval);
|
||||||
|
}
|
||||||
|
|
||||||
|
public static bool IsIncest(this Pawn pawn, Pawn partner)
|
||||||
|
{
|
||||||
|
IEnumerable<PawnRelationDef> relations = pawn.GetRelations(partner);
|
||||||
|
Ideo ideo = pawn.Ideo;
|
||||||
|
bool wide = false;
|
||||||
|
if (ideo != null) wide = ideo.HasPrecept(VariousDefOf.Incestuos_Disapproved_CloseOnly);
|
||||||
|
if (!relations.EnumerableNullOrEmpty()) foreach(PawnRelationDef relation in relations)
|
||||||
|
{
|
||||||
|
if(wide)
|
||||||
|
{
|
||||||
|
if (relation.incestOpinionOffset < 0) return true;
|
||||||
|
}
|
||||||
|
else if (relation.familyByBloodRelation) return true;
|
||||||
|
}
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
public static float RecordRandomizer(this Pawn pawn, RecordDef record, float avg, float dist, float min = 0, float max = float.MaxValue)
|
||||||
|
{
|
||||||
|
float value = Mathf.Clamp(RandGaussianLike(avg - dist,avg + dist),min,max);
|
||||||
|
float recordvalue = pawn.records.GetValue(record);
|
||||||
|
pawn.records.AddTo(record, value - recordvalue);
|
||||||
|
|
||||||
|
return value;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,56 @@
|
||||||
|
using System;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
using System.Linq;
|
||||||
|
using System.Text;
|
||||||
|
using System.Threading.Tasks;
|
||||||
|
using Verse;
|
||||||
|
using RimWorld;
|
||||||
|
|
||||||
|
namespace RJWSexperience
|
||||||
|
{
|
||||||
|
public class VariousDefOf
|
||||||
|
{
|
||||||
|
public static readonly RecordDef NumofEatenCum = DefDatabase<RecordDef>.GetNamed("NumofEatenCum");
|
||||||
|
public static readonly RecordDef Lust = DefDatabase<RecordDef>.GetNamed("Lust");
|
||||||
|
public static readonly SkillDef SexSkill = DefDatabase<SkillDef>.GetNamed("Sex");
|
||||||
|
public static readonly ThoughtDef_Recordbased AteCum = DefDatabase<ThoughtDef_Recordbased>.GetNamed("AteCum");
|
||||||
|
|
||||||
|
[MayRequireIdeology] public static readonly MemeDef Zoophile = DefDatabase<MemeDef>.GetNamed("Zoophile");
|
||||||
|
[MayRequireIdeology] public static readonly MemeDef Rapist = DefDatabase<MemeDef>.GetNamed("Rapist");
|
||||||
|
[MayRequireIdeology] public static readonly HistoryEventDef SexWithAnimal = DefDatabase<HistoryEventDef>.GetNamed("SexWithAnimal");
|
||||||
|
[MayRequireIdeology] public static readonly HistoryEventDef SexWithVeneratedAnimal = DefDatabase<HistoryEventDef>.GetNamed("SexWithVeneratedAnimal");
|
||||||
|
[MayRequireIdeology] public static readonly HistoryEventDef Raped = DefDatabase<HistoryEventDef>.GetNamed("Raped");
|
||||||
|
[MayRequireIdeology] public static readonly HistoryEventDef RapedSlave = DefDatabase<HistoryEventDef>.GetNamed("RapedSlave");
|
||||||
|
[MayRequireIdeology] public static readonly HistoryEventDef RapedPrisoner = DefDatabase<HistoryEventDef>.GetNamed("RapedPrisoner");
|
||||||
|
[MayRequireIdeology] public static readonly HistoryEventDef WasRaped = DefDatabase<HistoryEventDef>.GetNamed("WasRaped");
|
||||||
|
[MayRequireIdeology] public static readonly HistoryEventDef WasRapedSlave = DefDatabase<HistoryEventDef>.GetNamed("WasRapedSlave");
|
||||||
|
[MayRequireIdeology] public static readonly HistoryEventDef WasRapedPrisoner = DefDatabase<HistoryEventDef>.GetNamed("WasRapedPrisoner");
|
||||||
|
[MayRequireIdeology] public static readonly HistoryEventDef VaginalSex = DefDatabase<HistoryEventDef>.GetNamed("VaginalSex");
|
||||||
|
[MayRequireIdeology] public static readonly HistoryEventDef AnalSex = DefDatabase<HistoryEventDef>.GetNamed("AnalSex");
|
||||||
|
[MayRequireIdeology] public static readonly HistoryEventDef OralSex = DefDatabase<HistoryEventDef>.GetNamed("OralSex");
|
||||||
|
[MayRequireIdeology] public static readonly HistoryEventDef MiscSex = DefDatabase<HistoryEventDef>.GetNamed("MiscSex");
|
||||||
|
[MayRequireIdeology] public static readonly HistoryEventDef PromiscuousSex = DefDatabase<HistoryEventDef>.GetNamed("PromiscuousSex");
|
||||||
|
[MayRequireIdeology] public static readonly HistoryEventDef Incestuos_Marriage = DefDatabase<HistoryEventDef>.GetNamed("Incestuos_Marriage");
|
||||||
|
[MayRequireIdeology] public static readonly PreceptDef Bestiality_Abhorrent = DefDatabase<PreceptDef>.GetNamed("Bestiality_Abhorrent");
|
||||||
|
[MayRequireIdeology] public static readonly PreceptDef Bestiality_Horrible = DefDatabase<PreceptDef>.GetNamed("Bestiality_Horrible");
|
||||||
|
[MayRequireIdeology] public static readonly PreceptDef Bestiality_Disapproved = DefDatabase<PreceptDef>.GetNamed("Bestiality_Disapproved");
|
||||||
|
[MayRequireIdeology] public static readonly PreceptDef Bestiality_Acceptable = DefDatabase<PreceptDef>.GetNamed("Bestiality_Acceptable");
|
||||||
|
[MayRequireIdeology] public static readonly PreceptDef Bestiality_OnlyVenerated = DefDatabase<PreceptDef>.GetNamed("Bestiality_OnlyVenerated");
|
||||||
|
[MayRequireIdeology] public static readonly PreceptDef Bestiality_Honorable = DefDatabase<PreceptDef>.GetNamed("Bestiality_Honorable");
|
||||||
|
[MayRequireIdeology] public static readonly PreceptDef Rape_Abhorrent = DefDatabase<PreceptDef>.GetNamed("Rape_Abhorrent");
|
||||||
|
[MayRequireIdeology] public static readonly PreceptDef Rape_Horrible = DefDatabase<PreceptDef>.GetNamed("Rape_Horrible");
|
||||||
|
[MayRequireIdeology] public static readonly PreceptDef Rape_Disapproved = DefDatabase<PreceptDef>.GetNamed("Rape_Disapproved");
|
||||||
|
[MayRequireIdeology] public static readonly PreceptDef Rape_Acceptable = DefDatabase<PreceptDef>.GetNamed("Rape_Acceptable");
|
||||||
|
[MayRequireIdeology] public static readonly PreceptDef Rape_Honorable = DefDatabase<PreceptDef>.GetNamed("Rape_Honorable");
|
||||||
|
[MayRequireIdeology] public static readonly PreceptDef Sex_Free = DefDatabase<PreceptDef>.GetNamed("Sex_Free");
|
||||||
|
[MayRequireIdeology] public static readonly PreceptDef Sex_VaginalOnly = DefDatabase<PreceptDef>.GetNamed("Sex_VaginalOnly");
|
||||||
|
[MayRequireIdeology] public static readonly PreceptDef Sex_AnalOnly = DefDatabase<PreceptDef>.GetNamed("Sex_AnalOnly");
|
||||||
|
[MayRequireIdeology] public static readonly PreceptDef Sex_OralOnly = DefDatabase<PreceptDef>.GetNamed("Sex_OralOnly");
|
||||||
|
[MayRequireIdeology] public static readonly PreceptDef Sex_Promiscuous = DefDatabase<PreceptDef>.GetNamed("Sex_Promiscuous");
|
||||||
|
[MayRequireIdeology] public static readonly PreceptDef Incestuos_Free = DefDatabase<PreceptDef>.GetNamed("Incestuos_Free");
|
||||||
|
[MayRequireIdeology] public static readonly PreceptDef Incestuos_Disapproved = DefDatabase<PreceptDef>.GetNamed("Incestuos_Disapproved");
|
||||||
|
[MayRequireIdeology] public static readonly PreceptDef Incestuos_Forbidden = DefDatabase<PreceptDef>.GetNamed("Incestuos_Forbidden");
|
||||||
|
[MayRequireIdeology] public static readonly PreceptDef Incestuos_IncestOnly = DefDatabase<PreceptDef>.GetNamed("Incestuos_IncestOnly");
|
||||||
|
[MayRequireIdeology] public static readonly PreceptDef Incestuos_Disapproved_CloseOnly = DefDatabase<PreceptDef>.GetNamed("Incestuos_Disapproved_CloseOnly");
|
||||||
|
}
|
||||||
|
}
|
After Width: | Height: | Size: 5.3 KiB |
After Width: | Height: | Size: 5.5 KiB |
After Width: | Height: | Size: 5.7 KiB |
After Width: | Height: | Size: 5.6 KiB |
After Width: | Height: | Size: 5.6 KiB |
After Width: | Height: | Size: 402 B |
After Width: | Height: | Size: 3.4 KiB |
After Width: | Height: | Size: 9.7 KiB |
After Width: | Height: | Size: 9.4 KiB |
After Width: | Height: | Size: 5.6 KiB |
|
@ -0,0 +1,21 @@
|
||||||
|
Version Beta 1.0.1.5
|
||||||
|
- changed icon for precepts and memes
|
||||||
|
- added stat factors to precepts
|
||||||
|
- added record randomizing on pawn generation
|
||||||
|
- pawns will have different sex drive
|
||||||
|
|
||||||
|
Version Beta 1.0.1.4
|
||||||
|
- gender supremacy affects to pawn's vulnerability
|
||||||
|
- nymps will get passion for sex skill always
|
||||||
|
- raping prisoner reduces will
|
||||||
|
- added incestous precepts
|
||||||
|
- more detailed implementations
|
||||||
|
|
||||||
|
Version Beta 1.0.1.3
|
||||||
|
- added sextype precepts
|
||||||
|
|
||||||
|
Version Beta 1.0.1.2
|
||||||
|
- added precept interactions
|
||||||
|
|
||||||
|
Version Beta 1.0.1.1
|
||||||
|
- added ideologies
|