Merge Cumeater and follow up changes

This commit is contained in:
Vegapnk 2023-01-20 08:40:09 +01:00
commit 7220accf4a
38 changed files with 1022 additions and 162 deletions

View file

@ -30,7 +30,7 @@
<li Class="RJW_Genes.CompProperties_AbilityLifeForceCost">
<fertilinCost>0.2</fertilinCost>
</li>
<li Class="RJW_Genes.CompProperties_AbilityPussyHeal"> <!-- namespace needs to be changed when copied to another mod-->
<li Class="RJW_Genes.CompProperties_AbilityPussyHeal">
<tendQualityRange>0.4~0.8</tendQualityRange>
</li>
<li Class="RJW_Genes.CompProperties_SexInteractionRequirements">

View file

@ -0,0 +1,69 @@
<?xml version="1.0" encoding="utf-8" ?>
<Defs>
<DutyDef>
<defName>rjw_genes_flirt</defName>
<thinkNode Class="ThinkNode_Priority">
<subNodes>
<!-- first fulfill needs -->
<li Class="ThinkNode_Tagger">
<tagToGive>SatisfyingNeeds</tagToGive>
<subNodes>
<li Class="ThinkNode_PrioritySorter">
<subNodes>
<li Class="JobGiver_GetFood"/>
<li Class="JobGiver_GetRest"/>
<li Class="JobGiver_SatisfyChemicalNeed"/>
<li Class="JobGiver_SatifyChemicalDependency" MayRequire="Ludeon.RimWorld.Biotech" />
</subNodes>
</li>
</subNodes>
</li>
<!-- switch target randomly or when target is unreachable/sleeping (similar to insults) -->
<li Class="RJW_Genes.ThinkNode_ConditionalCannotInteract">
<subNodes>
<li Class="RJW_Genes.ThinkNode_NewFlirtTarget" />
</subNodes>
</li>
<li Class="ThinkNode_ConditionalRandom">
<chance>0.05</chance>
<subNodes>
<li Class="RJW_Genes.ThinkNode_NewFlirtTarget" />
</subNodes>
</li>
<!--Go to target pawn-->
<li Class="JobGiver_AIFollowEscortee" />
<li Class="rjw.ThinkNode_ConditionalSexChecks">
<subNodes>
<!--If sexneed is low do rape or masturbate (like a nymph)-->
<li Class="rjw.ThinkNode_ConditionalFrustrated">
<subNodes>
<li Class="rjw.JobGiver_ViolateCorpse" />
<li Class="rjw.JobGiver_RandomRape" />
<li Class="rjw.JobGiver_Masturbate"/>
</subNodes>
</li>
<!--Will sometimes try and hookup with target pawn-->
<li Class="ThinkNode_ConditionalRandom">
<chance>0.1</chance>
<subNodes>
<li Class="RJW_Genes.JobGiver_TryQuickieWith" />
</subNodes>
</li>
</subNodes>
</li>
<!--Flirt with target pawn and try hookup with them, increases sexneed in target pawn, maybe flirt has custom text-->
<li Class="RJW_Genes.JobGiver_Flirt" />
<li Class="JobGiver_WanderNearDutyLocation">
<wanderRadius>5</wanderRadius>
</li>
</subNodes>
</thinkNode>
</DutyDef>
</Defs>

View file

@ -27,7 +27,6 @@
<li><symbol>fert</symbol></li>
</prefixSymbols>
</symbolPack>
<mentalBreakDef>rjw_genes_lifeforce_randomrape</mentalBreakDef>
<resourceLossPerDay>0.05</resourceLossPerDay>
<biostatCpx>1</biostatCpx>
<biostatMet>1</biostatMet>
@ -50,7 +49,7 @@
</GeneDef>
<GeneDef>
<defName>rjw_genes_pussyhealer</defName>
<defName>rjw_genes_pussyhealing</defName>
<label>Pussy Healer</label>
<labelShortAdj>pussyhealer</labelShortAdj>
<description>Carriers of this gene are able use vaginal sex to tend to other's wounds.</description>
@ -152,10 +151,21 @@
</symbolPack>
</GeneDef>
<GeneDef>
<defName>rjw_genes_cum_eater</defName>
<label>Cum eater</label>
<description>Carriers of this gene are able to absorb fertilin through eating cum.</description>
<iconPath>Things/Mote/Heart</iconPath>
<prerequisite>rjw_genes_lifeforce</prerequisite>
<displayOrderInCategory>1</displayOrderInCategory>
<displayCategory>rjw_genes_fertilin</displayCategory>
<biostatCpx>1</biostatCpx>
</GeneDef>
<GeneDef>
<defName>rjw_genes_vaginal_absorber</defName>
<label>Vaginal Fertilin Absorber</label>
<description>Carriers of this gene are able to absorb fertilin through their vagina.</description>
<description>Carriers of this gene are able to absorb the fertilin inside sperm through their vagina.</description>
<iconPath>Things/Mote/Heart</iconPath>
<prerequisite>rjw_genes_lifeforce</prerequisite>
<displayOrderInCategory>2</displayOrderInCategory>
@ -166,7 +176,7 @@
<GeneDef>
<defName>rjw_genes_anal_absorber</defName>
<label>Anal Fertilin Absorber</label>
<description>Carriers of this gene are able to absorb fertilin through their anus.</description>
<description>Carriers of this gene are able to absorb the fertilin inside sperm through their anus.</description>
<iconPath>Things/Mote/Heart</iconPath>
<prerequisite>rjw_genes_lifeforce</prerequisite>
<displayOrderInCategory>3</displayOrderInCategory>

View file

@ -4,7 +4,7 @@
<defName>rjw_genes_aphrodisiac_pheromone</defName>
<hediffClass>HediffWithComps</hediffClass>
<label>induced libido</label>
<description>Aphrodisiac pheromone effects.</description>
<description>sex drive increasing due to smelling aphrodisiac pheromones.</description>
<defaultLabelColor>(1,0,0.5)</defaultLabelColor>
<maxSeverity>1.0</maxSeverity>
<comps>
@ -16,7 +16,7 @@
<li>
<becomeVisible>true</becomeVisible>
<statFactors>
<SexFrequency>2</SexFrequency>
<SexFrequency>2</SexFrequency> <!--This is a lie, it gets changed when applied -->
</statFactors>
</li>
</stages>
@ -24,7 +24,7 @@
<HediffDef>
<defName>rjw_genes_fertilin_lost</defName>
<hediffClass>RJW_Genes.HediffWithComps_tank</hediffClass>
<hediffClass>Hediff_HemogenCraving</hediffClass>
<label>lost fertilin</label>
<description>Percentage of fertilin lost.</description>
<defaultLabelColor>(1,1,1)</defaultLabelColor>
@ -86,4 +86,54 @@
</li>
</stages>
</HediffDef>
<HediffDef>
<defName>rjw_genes_fertilin_craving</defName>
<label>fertilin craving</label>
<hediffClass>Hediff_HemogenCraving</hediffClass>
<description>weakened due to running out of fertilin.</description>
<defaultLabelColor>(1,0,0.5)</defaultLabelColor>
<maxSeverity>1.0</maxSeverity>
<initialSeverity>0.01</initialSeverity>
<stages>
<li>
<label>minor</label>
<painOffset>0.05</painOffset>
<capMods>
<li>
<capacity>Consciousness</capacity>
<setMax>0.9</setMax>
</li>
</capMods>
</li>
<li>
<label>moderate</label>
<minSeverity>0.35</minSeverity>
<painOffset>0.1</painOffset>
<capMods>
<li>
<capacity>Consciousness</capacity>
<setMax>0.8</setMax>
</li>
</capMods>
</li>
<li>
<label>major</label>
<minSeverity>0.7</minSeverity>
<painOffset>0.15</painOffset>
<capMods>
<li>
<capacity>Consciousness</capacity>
<setMax>0.5</setMax>
</li>
</capMods>
</li>
</stages>
<comps>
<li Class="RJW_Genes.HediffCompProperties_SeverityFromFertilin">
<severityPerHourEmpty>0.05</severityPerHourEmpty>
<severityPerHourHemogen>-0.1</severityPerHourHemogen>
</li>
</comps>
</HediffDef>
</Defs>

View file

@ -0,0 +1,16 @@
<?xml version="1.0" encoding="utf-8" ?>
<Defs>
<IncidentDef>
<defName>SuccubusDreamVisit</defName>
<label>dirty dreams</label>
<category>Misc</category>
<targetTags>
<li>Map_PlayerHome</li>
</targetTags>
<workerClass>RJW_Genes.IncidentWorker_SuccubusDreamVisit</workerClass>
<baseChance>1.0</baseChance>
<minRefireDays>10</minRefireDays>
<pointsScaleable>false</pointsScaleable>
</IncidentDef>
</Defs>

View file

@ -0,0 +1,33 @@
<?xml version="1.0" encoding="utf-8" ?>
<Defs>
<!--Chitchat reduced copy-->
<InteractionDef>
<defName>rjw_genes_flirt</defName>
<label>flirt</label>
<symbol>Things/Mote/SpeechSymbols/Chitchat</symbol>
<logRulesInitiator>
<rulesStrings>
<li>r_logentry->[INITIATOR_nameDef] and [RECIPIENT_nameDef] [talkedabout] [TalkTopicLight].</li>
<li>r_logentry->[INITIATOR_nameDef] [talkedabout] [TalkTopicLight] with [RECIPIENT_nameDef].</li>
<li>r_logentry(p=0.8)->[INITIATOR_nameDef] [commentedabout] [TalkTopicLight] to [RECIPIENT_nameDef].</li>
<li>talkedabout(p=4)->chatted about</li>
<li>talkedabout->shared a word about</li>
<li>talkedabout->spoke about</li>
<li>talkedabout->gabbed about</li>
<li>talkedabout->talked about</li>
<li>talkedabout->joked about</li>
<li>talkedabout->quipped about</li>
<li>commentedabout->said something about</li>
<li>commentedabout->said a word about</li>
<li>commentedabout->made a comment about</li>
<li>commentedabout->commented about</li>
<li>commentedabout->told a joke about</li>
</rulesStrings>
</logRulesInitiator>
</InteractionDef>
</Defs>

View file

@ -22,4 +22,11 @@
<casualInterruptible>false</casualInterruptible>
<playerInterruptible>false</playerInterruptible>
</JobDef>
<JobDef>
<defName>rjw_genes_flirt</defName>
<driverClass>RJW_Genes.JobDriver_Flirt</driverClass>
<reportString>Seduced.</reportString>
<casualInterruptible>false</casualInterruptible>
</JobDef>
</Defs>

View file

@ -0,0 +1,45 @@
<?xml version="1.0" encoding="utf-8" ?>
<Defs>
<PawnKindDef>
<defName>rjw_genes_succubus</defName>
<label>succubus</label>
<combatPower>50</combatPower>
<race>Human</race>
<xenotypeSet>
<xenotypeChances>
<rjw_genes_succubus>999</rjw_genes_succubus>
</xenotypeChances>
</xenotypeSet>
<acceptArrestChanceFactor>0.5</acceptArrestChanceFactor>
<useFactionXenotypes>false</useFactionXenotypes>
<minGenerationAge>18</minGenerationAge>
<maxGenerationAge>27</maxGenerationAge>
<itemQuality>Poor</itemQuality>
<backstoryCryptosleepCommonality>0.0</backstoryCryptosleepCommonality>
<isFighter>false</isFighter>
<gearHealthRange>
<min>0.3</min>
<max>0.9</max>
</gearHealthRange>
<apparelIgnoreSeasons>true</apparelIgnoreSeasons>
<apparelTags>
<li>Tribal</li>
</apparelTags>
<apparelMoney>
<min>0</min>
<max>0</max>
</apparelMoney>
<apparelAllowHeadgearChance>0</apparelAllowHeadgearChance>
<techHediffsMoney>
<min>0</min>
<max>0</max>
</techHediffsMoney>
<techHediffsTags>
<li>Poor</li>
</techHediffsTags>
<techHediffsChance>0.0</techHediffsChance>
<initialWillRange>2~4</initialWillRange>
<initialResistanceRange>28~44</initialResistanceRange>
</PawnKindDef>
</Defs>

View file

@ -32,13 +32,25 @@
</ThoughtDef>
<ThoughtDef>
<defName>rjw_critical_fertilin</defName>
<stages>
<li>
<label>low on fertilin</label>
<description>I'm almost out of fertilin. I'm scared of losing control.</description>
<baseMoodEffect>-10</baseMoodEffect>
</li>
</stages>
</ThoughtDef>
<defName>rjw_genes_critical_fertilin</defName>
<workerClass>ThoughtWorker_Hediff</workerClass>
<hediff>rjw_genes_fertilin_craving</hediff>
<stages>
<li>
<label>fertilin craving</label>
<description>My bones ache. I really need fertilin.</description>
<baseMoodEffect>-10</baseMoodEffect>
</li>
<li>
<label>fertilin craving</label>
<description>This hurts bad and I can't stop thinking about sex. I would do anything for some cum.</description>
<baseMoodEffect>-15</baseMoodEffect>
</li>
<li>
<label>fertilin craving</label>
<description>Can't think. Sex. Sex. Must. Have. Cum.</description>
<baseMoodEffect>-20</baseMoodEffect>
</li>
</stages>
</ThoughtDef>
</Defs>

View file

@ -5,7 +5,7 @@
<defName>rjw_genes_succubus</defName>
<label>Succubus</label>
<description>Succubi are strongly enhanced xenohumans. Powered by archites, their abilities go far beyond normal genetic enhancements. These overnaturally beautiful creatures strive parasitically on the Fertilin found in semen.</description>
<descriptionShort>Succubi are beautiful and extremely hungry Xenohumans. They strive on having sex and extracting their victims life-force through this.</descriptionShort>
<descriptionShort>Succubi are beautiful and extremely hungry Xenohumans. They strive on having sex and extracting their victims life-force through this. </descriptionShort>
<iconPath>UI/Icons/Xenotypes/Sanguophage</iconPath>
<soundDefOnImplant>PawnBecameSanguophage</soundDefOnImplant>
<generateWithXenogermReplicatingHediffChance>0.5</generateWithXenogermReplicatingHediffChance>
@ -13,6 +13,7 @@
<combatPowerFactor>1</combatPowerFactor>
<displayPriority>-1000</displayPriority>
<factionlessGenerationWeight>0.005</factionlessGenerationWeight>
<inheritable>true</inheritable>
<doubleXenotypeChances>
<Pigskin>0.02</Pigskin>
<Impid>0.02</Impid>
@ -30,12 +31,10 @@
<li>rjw_genes_vaginal_absorber</li>
<li>rjw_genes_anal_absorber</li>
<li>rjw_genes_drainer</li>
<li>rjw_genes_pussyhealer</li>
<li>rjw_genes_paralysingkiss</li>
<li>rjw_genes_seduce</li>
<li>rjw_genes_elasticity</li>
<li>rjw_genes_succubus_wings</li>
<li>rjw_genes_succubus_tail</li>
<li>rjw_genes_aphrodisiac_pheromones</li>