GithubHelp home page GithubHelp logo

rjw-genes's Introduction

RJW-Genes [NSFW]

This mod adds genes related and based on RJW to Rimworld.

Current Features

  • Different Genitalia Types
  • Genitalia Size Scaling
  • Extra Genitalia, Male Pregnancy, Futas, Femboys
  • Most RJW Traits
  • Cum-Amount Changes, Transfer Nutrition Boosts
  • Sexual Vampires that need Cum, Cocks or some other sources.
  • Mech Breeding Additions & Orgasmic Mytosis
  • Human-Animal Gene Inheritance merged from Shabakur
  • Patches for some popular / common Xenotypes from other Mods.

You might not see all of them. Many genes just show up if other mods are loaded.

Conflicts:

  1. Should not be used with the original RJW_Animal_Gene_Inheritance anymore.
  2. There was an issue with other "Male-Only / Female-Only" Mods --- for which we provide our own Genes now.
  3. CAI5000 will not crash, but will make Seduce-Ability fail. I think same goes for Combat Extended.
  4. Alpha Genes "Female / Male Only" Genes might overwrite later Genitalia-Changes and should be avoided in combination with RJW-Genes features.
  5. rjw.sexperience.cumgenes removes fertilin-gain from Cum item - I hope I addressed this by adding a load order but keep me posted (Issue #41)
  6. Consistent Gene Inheritance alters inheritance - it messes a bit with the Insect-Caste Logic. Your game will not crash, but the insect xenotypes will be a bit messed up.

Structure

  • Toplevel: By Function (i.E. "Genes", "Animal Inheritance", "Utility")
  • Then: By Domain, following the Gene-Categories ("Cosmetic","Special", "Damage",...)
  • Last: By Type of Action (Def, Patch, etc.)

So if you want to change / add a gene about shrinking cocks you were to go: Genes -> GenitaliaSize -> Defs.

rjw-genes's People

Contributors

callavico avatar drunkender avatar flock-of-birds avatar jaaldabaoth avatar klassekatze avatar mwcrow avatar shabakur avatar vegapnk avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

rjw-genes's Issues

Futanari gene Restriction

The Futanari gene is restricted VS the -1 Pussy gene, which disallows 'Female' generated pawns from spawning with just a dick, breasts, and ass for anyone who would want such.

Succubi are biased for Females

People were a bit unhappy that most Fertilin-Sources are centered around cum and cocks and thus heterosexual male succubi don't work. And people seem to dislike the incubi, what ingrateful bastards.

Some things discussed:

  • Rename "Drainer" to something more obvious, e.g. "demonic kiss".
  • Gain Fertilin on Partner-Orgasm
  • Maybe: Check nearby pawns, gain Fertilin for sexually satisfied pawns and loose for unhappy ones

Issue Pheromones + Babies

Summary:
Lots of Errors when a pawn with aphrodisiac gene carries or feeds a baby.

I got a bug-report over discord here:
https://gist.github.com/HugsLibRecordKeeper/f28aed8f04d2532824ca47c68e3c5f12

Error starts at L4900 and goes on repeating itself.
Copied here:

Soyuz caught this error. Please don't report this to the RocketMan team unless you're certain RocketMan caused this error. with error System.NullReferenceException: Object reference not set to an instance of an object
  at CombatAI.CompCache.GetComp_Fast[T] (Verse.Map map) [0x0002e] in <ce82bcaeae1c45afb79f0e6c0e85c327>:0 
  at CombatAI.Patches.GenSight_Patch+GenSight_LineOfSight1_Patch.Prefix (Verse.IntVec3 start, Verse.IntVec3 end, Verse.Map map, System.Boolean skipFirstCell, System.Func`2[Verse.IntVec3,System.Boolean]& validator, System.Int32 halfXOffset, System.Int32 halfZOffset) [0x0000e] in <ce82bcaeae1c45afb79f0e6c0e85c327>:0 
  at (wrapper dynamic-method) Verse.GenSight.Verse.GenSight.LineOfSight_Patch1(Verse.IntVec3,Verse.IntVec3,Verse.Map,bool,System.Func`2<Verse.IntVec3, bool>,int,int)
  at RJW_Genes.Gene_Aphrodisiac_Pheromones+<AffectedPawns>d__4.MoveNext () [0x00095] in <e62e4e1721524e27adb32ac39d6ceac0>:0 
  at RJW_Genes.Gene_Aphrodisiac_Pheromones.Tick () [0x00075] in <e62e4e1721524e27adb32ac39d6ceac0>:0 
  at RimWorld.Pawn_GeneTracker.GeneTrackerTick () [0x00073] in <38562b1a2ab64eacb931fb5df05ca994>:0 
  at (wrapper dynamic-method) Verse.Pawn.Verse.Pawn.Tick_Patch2(Verse.Pawn) 
(Filename: C:\buildslave\unity\build\Runtime/Export/Debug/Debug.bindings.h Line: 39)

I can repeat this, but I get the following error:

Exception ticking Prince (at (148, 0, 127)): System.NullReferenceException: Object reference not set to an instance of an object
  at Verse.GenGrid.InBounds (Verse.IntVec3 c, Verse.Map map) [0x00000] in <38562b1a2ab64eacb931fb5df05ca994>:0 
  at Verse.GenSight.LineOfSight (Verse.IntVec3 start, Verse.IntVec3 end, Verse.Map map, System.Boolean skipFirstCell, System.Func`2[T,TResult] validator, System.Int32 halfXOffset, System.Int32 halfZOffset) [0x00000] in <38562b1a2ab64eacb931fb5df05ca994>:0 
  at RJW_Genes.Gene_Aphrodisiac_Pheromones+<AffectedPawns>d__4.MoveNext () [0x00095] in <bb68597e35094c54acf619f9b6d5c4c1>:0 
  at RJW_Genes.Gene_Aphrodisiac_Pheromones.Tick () [0x00075] in <bb68597e35094c54acf619f9b6d5c4c1>:0 
  at RimWorld.Pawn_GeneTracker.GeneTrackerTick () [0x00037] in <38562b1a2ab64eacb931fb5df05ca994>:0 
  at Verse.Pawn.Tick () [0x00241] in <38562b1a2ab64eacb931fb5df05ca994>:0 
  at Verse.TickList.Tick () [0x0015c] in <38562b1a2ab64eacb931fb5df05ca994>:0 
UnityEngine.StackTraceUtility:ExtractStackTrace ()
Verse.Log:Error (string)
Verse.TickList:Tick ()
(wrapper dynamic-method) Verse.TickManager:Verse.TickManager.DoSingleTick_Patch2 (Verse.TickManager)
Verse.TickManager:TickManagerUpdate ()
Verse.Game:UpdatePlay ()
Verse.Root_Play:Update ()

The throwing line is here:

&& pos.DistanceTo(pawn.Position) < APHRODISIAC_DISTANCE && GenSight.LineOfSight(pos, pawn.Position, pawn.Map)

My guess:
The baby is a pawn, but has no position, but has a map, while being fed.

Potential solution:
Check for babies and or being carried. Also maybe check for sex-need that should also rule out babies.

"Youth fountain" gene ages up "youth sex" partners

Steps to reproduce:

  1. Allow "youth sex" in RJW mod settings.
  2. Have a humanlike pawn with a "Youth fountain" gene.
  3. Have another humanlike pawn 16 to 19 years old.
  4. Engage those two pawns in loving'

Expected result:
Ether
The younger pawn retains its age.
Or
The younger pawn get younger till the age of 16.

Actual result:
The younger pawn's age is set to 20.

Make Sex-Apptitude Genes Conditional

At the moment some Xenotypes get Apptitude Genes for Sex, but those are from Sexperience and not BaseRJW.
So I have to check for Sexperience Existance.

Red Text looks like

Could not resolve cross-reference to Verse.GeneDef named AptitudeRemarkable_Sex (wanter=genes)

and full log was
message.txt

Gene_GenitaliaResizingGene.WasApplied is not stored across saves

I have been hunting down an issue where my colonists whose breast sizes have changed seemingly randomly, and I'm pretty sure I've tracked it to here. I just noticed a colonist whose breasts have resized down, and I happened to look at her age and it was her birthday. That sent me looking, and I think I found the issue.

Gene_GenitaliaResizingGene has a bool WasApplied that is set when it runs, either in PostMake, PostAdd, or in the Patch_ResizingOnAdulthood that procs on birthdays. That variable makes sure the gene doesn't run more than once, and it works in a single session, but now that I'm looking at it, there's no way for it to persist between sessions. That means that every time the game is loaded, any pawn with a resizing gene will have it re-execute on their next birthday.

What I think the fix is is adding something like the following to Gene_GenitaliaResizingGene

private bool wasApplied = false;
public bool WasApplied { get => wasApplied; set => wasApplied = value; }

public override void ExposeData()
{
  base.ExposeData();
  Scribe_Values.Look(ref wasApplied, "wasApplied");
}

Scribe_Values can only persist fields, so you have to change WasApplied to be a field-backed property, then you can persist it by overriding ExposeData.

Incompatible with RJW-Race-Support

I got a detailed report by someone that says Race Support is currently incompatible.

Issue:
Babies do not inherit the Animal-Genes. Human Genes are inheritated normal. Genes added to Xenotypes by RJW-Genes (e.g. Demon Penis for impids) are transported correctly.

This seems to be unrelated to the animal and to load order. It appears with Race Support and doesn't without it.
The Father is correctly recorded.

Suspicious lines are

RaceGEneDef_Helper.cs:

	PawnData pawnData = SaveStorage.DataStore.GetPawnData(pawn);
	RaceGroupDef raceGroupDef = pawnData.RaceSupportDef;

This is the race support repo, but I can't find any C# tbh

Puke Explosion on Drained Pawns

I just ... yeah I document the issue.

The drained hediff comes with a mtb for throwing up, which was initially 0.05 which was (per discord) regarded as a bit high.
I then changed it to 0.01 which I hoped would make it 5 times less likely but instead at made it 5 times more likely.

Everyone was now throwing up all the time. Kinda funny, but not what I wanted.

Make Letters Translatable

There are currently some Letters (and maybe other elements) that cannot be translated and someone on Discord asked me if I could make it translatable.

Relevant Letters / Messages:

Should be easy but I don't have an example yet.

eggs are not getting layed from the Hive Breeders

So as the title state for some reason eggs are not actually coming out of the breeders. I will use the queen and put an egg into them but then no matter were the egg is it will just sit there after it has been fertilized. I have some colonists that will have 20-30 eggs. now if I kill them via character editor all 20-30 eggs hatch and I have 20-30 new colonist babies.
image

Shouldn't the extra breast add udder?

Hey guys, I'm just passing through with somewhat of a question and request of a sort.

Like the title implies shouldn't the Extra Breasts gene just replace the Breasts with the Udder instead of adding another Breasts hediff for the extra breasts? It's already there in RJW and have RimNude graphics and component already albeit assigned to another body part(Flank instead of Chest)

If not then will it becomes it's own gene at some point? Again, this is not a bug report just a question I got while I was messing around with it.

Animal Genes for Menstruation Eggs

I got a report that menstruation eggs do not fully work with the Animal Gene Inheritance.

Original chat:

H> Something odd going on in regards the biotech multi preg setting. 
Also @Vegapnk Something strange happening with animal gene inheritance. 
Its throwing an error dunno if I messed something up with the genedef for them and Im not sure if its because its a kyulen 
or because its paired with menstruation. 
When the child was born it had the kyulen race genes but didn't inherit the human 
fathers genes this doesn't appear to happen with other animals. 
Specifically i've had anima fox and house maid neko produce mixed gene types just fine.
[...]
So the first baby has completely broken genes
The other 3 [kyulen] babies that get added after all inherited the fathers genes and not the animals
V> for menstruation pregnancy (which is what you get when the mother is an animal), 
menstruation simply calls PregnancyUtility.GetInheritedGenes(father, mother), 
a vanilla function, to determine the baby's genes 
H> Yea so now I think the problem is on vega's end on to figure out how to apply the inheritance to every egg.
Also need to figure out why genital type isn't being applied by genes on birth
It worked when inherited from kyulen but not when inherited from human 

image
image
image
image

Racedef:

<Defs>
<RJW_BGS.RaceGeneDef>
<defName>NinetailedFox</defName>
<!--
defName can be anything you want, as long as it is unique 
-->
<raceGroup>Ninetail_Group</raceGroup>
<!--
RJW.Racegroupdef, all animals in the raceGroup will be part of this group, RJW race support uses this so those can be used to quickly add a group 
-->
<raceNames>
<li>Ninetailfox</li>
<li>Ninetailfoxwt</li>
</raceNames>
<!--
For more direct control you can use raceNames directly. Use the defName of the animal. Can also use modded animals.
-->
<!--

		<pawnKindNames>
			<li> </li>
		</pawnKindNames>
		For even more direct control you can use pawnKindNames. 
		
		The RaceGeneDef for an animal will first be decided by if it is in the pawnkindNames, after that racenames and lastly racegroup,
		so if there is for a wolf a RaceGeneDef with the canine group and a second which has wolf under raceNames it will always use the second one to determine
		which genes can be inherited
		
-->
<genes>
<li>
<defName>Kyulen_Trait</defName>
<chance>1</chance>
</li>
<li>
<defName>AFU_BA_NineTailedFox</defName>
<chance>1</chance>
</li>
<li>
<defName>AFU_HA_FoxEar</defName>
<chance>1</chance>
</li>
<li>
<defName>StrongStomach</defName>
<chance>1</chance>
</li>
<li>
<defName>MoveSpeed_Quick</defName>
<chance>1</chance>
</li>
<li>
<defName>rjw_genes_big_breasts</defName>
<chance>1</chance>
</li>
<li>
<defName>rjw_genes_evergrowth</defName>
<chance>1</chance>
</li>
<li>
<defName>rjw_genes_canine_genitalia</defName>
<chance>1</chance>
</li>
<li>
<defName>rjw_genes_female_only</defName>
<chance>1</chance>
</li>
<li>
<defName>rjw_genes_extra_breasts</defName>
<chance>1</chance>
</li>
<!--
<li>
				<defName>rjw_genes_lifeforce_empath</defName>
				<chance>1</chance>
			</li>
			<li>
				<defName>rjw_genes_pussyhealing</defName>
				<chance>1</chance>
			</li> 
-->
</genes>
<!--
The genes which may be inherited. Use the defName of the gene, you can also add modded genes. 
-->
<!--
WIP, the chance of each gene to be inherited. Is in same order as genes, so for the second gene the chance to inherit is based on the second line in geweights. 
-->
</RJW_BGS.RaceGeneDef>
</Defs>

Error on Cum Eating

I got the following error via discord:

JobDriver threw exception in toil FinalizeIngest's initAction for pawn Dayna driver=JobDriver_Ingest (toilIndex=9) driver.job=(Ingest (Job_91862) A=Thing_GatheredCum137883)
System.NullReferenceException: Object reference not set to an instance of an object
  at RJW_Genes.GeneUtility.OffsetLifeForce (RimWorld.IGeneResourceDrain drain, System.Single offset) [0x00000] in <be800c845f304b46ac6401f4a38479e7>:0 
  at RJW_Genes.IngestionOutcomeDoer_LifeForceOffset.DoIngestionOutcomeSpecial (Verse.Pawn pawn, Verse.Thing ingested) [0x0002b] in <be800c845f304b46ac6401f4a38479e7>:0 
  at RimWorld.IngestionOutcomeDoer.DoIngestionOutcome (Verse.Pawn pawn, Verse.Thing ingested) [0x0000d] in <95de19971c5d40878d8742747904cdcd>:0 
  at (wrapper dynamic-method) Verse.Thing.Verse.Thing.Ingested_Patch7(Verse.Thing,Verse.Pawn,single)
  at (wrapper dynamic-method) RimWorld.Toils_Ingest+<>c__DisplayClass13_0.RimWorld.Toils_Ingest+c__DisplayClass13_0.<FinalizeIngest>b__0_Patch2(RimWorld.Toils_Ingest/<>c__DisplayClass13_0)
  at Verse.AI.JobDriver.TryActuallyStartNextToil () [0x001b0] in <95de19971c5d40878d8742747904cdcd>:0 
UnityEngine.StackTraceUtility:ExtractStackTrace ()
Verse.Log:Warning (string)
(wrapper dynamic-method) Verse.AI.JobUtility:Verse.AI.JobUtility.TryStartErrorRecoverJob_Patch1 (Verse.Pawn,string,System.Exception,Verse.AI.JobDriver)
Verse.AI.JobDriver:TryActuallyStartNextToil ()
Verse.AI.JobDriver:ReadyForNextToil ()
(wrapper dynamic-method) Verse.AI.JobDriver:Verse.AI.JobDriver.DriverTick_Patch0 (Verse.AI.JobDriver)
(wrapper dynamic-method) Verse.AI.Pawn_JobTracker:Verse.AI.Pawn_JobTracker.JobTrackerTick_Patch0 (Verse.AI.Pawn_JobTracker)
(wrapper dynamic-method) Verse.Pawn:Verse.Pawn.Tick_Patch4 (Verse.Pawn)
Verse.TickList:Tick ()
(wrapper dynamic-method) Verse.TickManager:Verse.TickManager.DoSingleTick_Patch5 (Verse.TickManager)
Verse.TickManager:TickManagerUpdate ()
(wrapper dynamic-method) Verse.Game:Verse.Game.UpdatePlay_Patch2 (Verse.Game)
(wrapper dynamic-method) Verse.Root_Play:Verse.Root_Play.Update_Patch1 (Verse.Root_Play)

update on eating condoms

JobDriver threw exception in toil FinalizeIngest's initAction for pawn Dayna driver=JobDriver_Ingest (toilIndex=9) driver.job=(Ingest (Job_104597) A=Thing_UsedCondom171074)
System.NullReferenceException: Object reference not set to an instance of an object
  at RJW_Genes.GeneUtility.OffsetLifeForce (RimWorld.IGeneResourceDrain drain, System.Single offset) [0x00000] in <be800c845f304b46ac6401f4a38479e7>:0 
  at RJW_Genes.IngestionOutcomeDoer_LifeForceOffset.DoIngestionOutcomeSpecial (Verse.Pawn pawn, Verse.Thing ingested) [0x0002b] in <be800c845f304b46ac6401f4a38479e7>:0 
  at RimWorld.IngestionOutcomeDoer.DoIngestionOutcome (Verse.Pawn pawn, Verse.Thing ingested) [0x0000d] in <95de19971c5d40878d8742747904cdcd>:0 
  at (wrapper dynamic-method) Verse.Thing.Verse.Thing.Ingested_Patch7(Verse.Thing,Verse.Pawn,single)
  at (wrapper dynamic-method) RimWorld.Toils_Ingest+<>c__DisplayClass13_0.RimWorld.Toils_Ingest+c__DisplayClass13_0.<FinalizeIngest>b__0_Patch2(RimWorld.Toils_Ingest/<>c__DisplayClass13_0)
  at Verse.AI.JobDriver.TryActuallyStartNextToil () [0x001b0] in <95de19971c5d40878d8742747904cdcd>:0 
UnityEngine.StackTraceUtility:ExtractStackTrace ()
Verse.Log:Warning (string)
(wrapper dynamic-method) Verse.AI.JobUtility:Verse.AI.JobUtility.TryStartErrorRecoverJob_Patch1 (Verse.Pawn,string,System.Exception,Verse.AI.JobDriver)
Verse.AI.JobDriver:TryActuallyStartNextToil ()
Verse.AI.JobDriver:ReadyForNextToil ()
(wrapper dynamic-method) Verse.AI.JobDriver:Verse.AI.JobDriver.DriverTick_Patch0 (Verse.AI.JobDriver)
(wrapper dynamic-method) Verse.AI.Pawn_JobTracker:Verse.AI.Pawn_JobTracker.JobTrackerTick_Patch0 (Verse.AI.Pawn_JobTracker)
(wrapper dynamic-method) Verse.Pawn:Verse.Pawn.Tick_Patch4 (Verse.Pawn)
Verse.TickList:Tick ()
(wrapper dynamic-method) Verse.TickManager:Verse.TickManager.DoSingleTick_Patch5 (Verse.TickManager)
Verse.TickManager:TickManagerUpdate ()
(wrapper dynamic-method) Verse.Game:Verse.Game.UpdatePlay_Patch2 (Verse.Game)
(wrapper dynamic-method) Verse.Root_Play:Verse.Root_Play.Update_Patch1 (Verse.Root_Play)

The pawn ate cum and has fertilin.

The reporter used Sexperience 1.4.1.1 which I have not tried yet.
Also this might be closely related to #41 and #48.

The reported did not use the cum-addiction revamp mod.

Eating Cum does not Increase Fertilin

I got 2 reports on Discord that eating the Sexperience Cum does not increase Fertilin.
This was reportedly v1.1.4 and v.1.2-beta2

Also, I got the following trace:

Exception in rjw.ThinkNode_ConditionalSexChecks TryIssueJobPackage: System.InvalidOperationException: Sequence contains no matching element
  at System.Linq.Enumerable.First[TSource] (System.Collections.Generic.IEnumerable`1[T] source, System.Func`2[T,TResult] predicate) [0x00011] in <351e49e2a5bf4fd6beabb458ce2255f3>:0 
  at RJW_Genes.JobGiver_GetLifeForce.TryGiveJob (Verse.Pawn pawn) [0x0005a] in <958aef1980a941a7ab5875b00fade900>:0 
  at Verse.AI.ThinkNode_JobGiver.TryIssueJobPackage (Verse.Pawn pawn, Verse.AI.JobIssueParams jobParams) [0x00000] in <badc476ef0d446b498e5b20480e435f8>:0 
  at Verse.AI.ThinkNode_Priority.TryIssueJobPackage (Verse.Pawn pawn, Verse.AI.JobIssueParams jobParams) [0x00022] in <badc476ef0d446b498e5b20480e435f8>:0 
UnityEngine.StackTraceUtility:ExtractStackTrace ()
Verse.Log:Error (string)
Verse.AI.ThinkNode_Priority:TryIssueJobPackage (Verse.Pawn,Verse.AI.JobIssueParams)
Verse.AI.ThinkNode_Conditional:TryIssueJobPackage (Verse.Pawn,Verse.AI.JobIssueParams)
Verse.AI.ThinkNode_Priority:TryIssueJobPackage (Verse.Pawn,Verse.AI.JobIssueParams)
Verse.AI.ThinkNode_Conditional:TryIssueJobPackage (Verse.Pawn,Verse.AI.JobIssueParams)
Verse.AI.ThinkNode_Priority:TryIssueJobPackage (Verse.Pawn,Verse.AI.JobIssueParams)
Verse.AI.ThinkNode_SubtreesByTag:TryIssueJobPackage (Verse.Pawn,Verse.AI.JobIssueParams)
Verse.AI.ThinkNode_Priority:TryIssueJobPackage (Verse.Pawn,Verse.AI.JobIssueParams)
Verse.AI.Pawn_JobTracker:DetermineNextJob (Verse.ThinkTreeDef&)
Verse.AI.Pawn_JobTracker:TryFindAndStartJob ()
Verse.AI.Pawn_JobTracker:EndCurrentJob (Verse.AI.JobCondition,bool,bool)
Verse.AI.Pawn_JobTracker:JobTrackerTick ()
(wrapper dynamic-method) Verse.Pawn:Verse.Pawn.Tick_Patch1 (Verse.Pawn)
Verse.TickList:Tick ()
Verse.TickManager:DoSingleTick ()
Verse.TickManager:TickManagerUpdate ()
Verse.Game:UpdatePlay ()
Verse.Root_Play:Update ()

My code shows up in there but not sure how related this is.

Also, not sure how much #39 is related, but I think not too much.

Male/Female-only genes leave sex-change thoughts on newly-generated pawns

Steps to reproduce:

  1. Have a static xenotype with male/female-only genes as endogenes (patch it onto and existing or create a new one via local mod, since custom xenotypes and inheritance at pawn generation are wonky)
  2. During Pawn Generation at game start, or when finding a new pawn of that xenotype, examine it's hediffs and possibly find "was_boy" and "mtf" (for female-only), along with an "upset about sex change" thought.

Expected: Pawns wouldn't have sex-change thoughts about genders that they never were (and are incapable of being by gene).

Proposed fix: During AdjustPawnToFemale/Male we can check if the pawn has the gene as an endogene or xenogene. If endogene, we can clear the sexchange thoughts, since the assumption would be that the pawn had that gene from birth and thus never was a different gender.

I have code that does this my local, and I've been playing with it for a few days. I tested pawns at pawn generation as well as children inheriting the gene with it as an endogene, and used god mode to add the gene as a xenogene to a pawn, and everything worked as expected (the xenos with the gene as an endogene didn't get sexchange thoughts even if they spawned as male and then were forced female, and the pawn who had it added as a xenogene did get the sexchange thought).

I can send a PR if you'd like, but before I take the time to clean the code up and do the legwork of making the PR itself, I wanted to see if you agreed with this change at all.

Double Outcome Doers for Sexperience Cum

Someone got the following Error in the Discord:

XML error: Duplicate XML node name outcomeDoers in this XML block: <ingestible><foodType>Fluid, AnimalProduct</foodType><preferability>DesperateOnlyForHumanlikes</preferability><tasteThought>AteRawFood</tasteThought><outcomeDoers><li Class="IngestionOutcomeDoer_GiveHediff"><hediffDef>CumTolerance</hediffDef><severity>0.032</severity><divideByBodySize>true</divideByBodySize></li><li Class="IngestionOutcomeDoer_OffsetPsyfocus"><offset>0.05</offset></li><li Class="RJWSexperience.Cum.IngestionOutcomeDoer_RecordEatenCum"><unitAmount>5.2</unitAmount></li></outcomeDoers><outcomeDoers><li Class="RJW_Genes.IngestionOutcomeDoer_LifeForceOffset"><FertilinPerUnit>1</FertilinPerUnit></li></outcomeDoers></ingestible>

XML Formatted:

<ingestible>
<foodType>Fluid, AnimalProduct</foodType>
<preferability>DesperateOnlyForHumanlikes</preferability>
<tasteThought>AteRawFood</tasteThought>
<outcomeDoers>
    <li Class="IngestionOutcomeDoer_GiveHediff"><hediffDef>CumTolerance</hediffDef><severity>0.032</severity><divideByBodySize>true</divideByBodySize></li>
    <li Class="IngestionOutcomeDoer_OffsetPsyfocus"><offset>0.05</offset></li>
    <li Class="RJWSexperience.Cum.IngestionOutcomeDoer_RecordEatenCum"><unitAmount>5.2</unitAmount></li>
</outcomeDoers>
<outcomeDoers>
    <li Class="RJW_Genes.IngestionOutcomeDoer_LifeForceOffset"><FertilinPerUnit>1</FertilinPerUnit></li>
</outcomeDoers>
</ingestible>

Seems the patch is wrong targetted.

Relevant Patch: https://github.com/vegapnk/RJW-Genes/blob/main/Common/Patches/ThingDefs/Sexperience_Cum.xml

Also: Kick out L3 / adjust it

Missing Gene Icons

Some of the Genes are not properly displayed with Images.
I got a report on Discord:

I think it's "simply" a string missmatch but I made this issue so I wont forget.

Error on Orgasmic Mytosis

on game start:

Error in static constructor of RJW_Genes.HarmonyInit: System.TypeInitializationException: The type initializer for 'RJW_Genes.HarmonyInit' threw an exception. ---> HarmonyLib.HarmonyException: Patching exception in method null ---> System.ArgumentException: Undefined target method for patch method static System.Void RJW_Genes.Patch_OrgasmMytosis::Postfix(rjw.JobDriver_Sex instance, System.Int32& result)
  at HarmonyLib.PatchClassProcessor.PatchWithAttributes (System.Reflection.MethodBase& lastOriginal) [0x00047] in <255414689d344b1385ae719f6cce8c55>:0 
  at HarmonyLib.PatchClassProcessor.Patch () [0x00068] in <255414689d344b1385ae719f6cce8c55>:0 
   --- End of inner exception stack trace ---
  at HarmonyLib.PatchClassProcessor.ReportException (System.Exception exception, System.Reflection.MethodBase original) [0x00127] in <255414689d344b1385ae719f6cce8c55>:0 
  at HarmonyLib.PatchClassProcessor.Patch () [0x00093] in <255414689d344b1385ae719f6cce8c55>:0 
  at HarmonyLib.Harmony.<PatchAll>b__10_0 (System.Type type) [0x00007] in <255414689d344b1385ae719f6cce8c55>:0 
  at HarmonyLib.CollectionExtensions.Do[T] (System.Collections.Generic.IEnumerable1[T] sequence, System.Action1[T] action) [0x00014] in <255414689d344b1385ae719f6cce8c55>:0 
  at HarmonyLib.Harmony.PatchAll (System.Reflection.Assembly assembly) [0x00006] in <255414689d344b1385ae719f6cce8c55>:0 
  at HarmonyLib.Harmony.PatchAll () [0x0001b] in <255414689d344b1385ae719f6cce8c55>:0 
  at RJW_Genes.HarmonyInit..cctor () [0x00016] in <183252e3855e4d60b5d7bdedba7e3627>:0 
   --- End of inner exception stack trace ---

This could be related to an RJW Update 5.3.6 and PR 268 and PR 269

Error when Pawns without Fertilin (yet) consume Cum

I got the following BugReport on Discord:

JobDriver threw exception in toil FinalizeIngest's initAction for pawn Liluka driver=JobDriver_Ingest (toilIndex=9) driver.job=(Ingest (Job_5035815) A=Thing_GatheredCum1757000 B=(221, 0, 99))
System.NullReferenceException: Object reference not set to an instance of an object
  at RJW_Genes.GeneUtility.OffsetLifeForce (RimWorld.IGeneResourceDrain drain, System.Single offset) [0x00000] in <8876bd16feee4df7be46d2b9397451bd>:0 
  at RJW_Genes.IngestionOutcomeDoer_LifeForceOffset.DoIngestionOutcomeSpecial (Verse.Pawn pawn, Verse.Thing ingested) [0x0002b] in <8876bd16feee4df7be46d2b9397451bd>:0 
  at RimWorld.IngestionOutcomeDoer.DoIngestionOutcome (Verse.Pawn pawn, Verse.Thing ingested) [0x0000d] in <95de19971c5d40878d8742747904cdcd>:0 
  at (wrapper dynamic-method) Verse.Thing.Verse.Thing.Ingested_Patch7(Verse.Thing,Verse.Pawn,single)
  at (wrapper dynamic-method) RimWorld.Toils_Ingest+<>c__DisplayClass13_0.RimWorld.Toils_Ingest+c__DisplayClass13_0.<FinalizeIngest>b__0_Patch2(RimWorld.Toils_Ingest/<>c__DisplayClass13_0)
  at Verse.AI.JobDriver.TryActuallyStartNextToil () [0x001b0] in <95de19971c5d40878d8742747904cdcd>:0 
UnityEngine.StackTraceUtility:ExtractStackTrace ()
Verse.Log:Warning (string)
(wrapper dynamic-method) Verse.AI.JobUtility:Verse.AI.JobUtility.TryStartErrorRecoverJob_Patch1 (Verse.Pawn,string,System.Exception,Verse.AI.JobDriver)
Verse.AI.JobDriver:TryActuallyStartNextToil ()
Verse.AI.JobDriver:ReadyForNextToil ()
(wrapper dynamic-method) Verse.AI.JobDriver:Verse.AI.JobDriver.DriverTick_Patch0 (Verse.AI.JobDriver)
(wrapper dynamic-method) Verse.AI.Pawn_JobTracker:Verse.AI.Pawn_JobTracker.JobTrackerTick_Patch0 (Verse.AI.Pawn_JobTracker)
(wrapper dynamic-method) Verse.Pawn:Verse.Pawn.Tick_Patch4 (Verse.Pawn)
Verse.TickList:Tick ()
(wrapper dynamic-method) Verse.TickManager:Verse.TickManager.DoSingleTick_Patch5 (Verse.TickManager)
Verse.TickManager:TickManagerUpdate ()
(wrapper dynamic-method) Verse.Game:Verse.Game.UpdatePlay_Patch2 (Verse.Game)
(wrapper dynamic-method) Verse.Root_Play:Verse.Root_Play.Update_Patch1 (Verse.Root_Play)

This happened because a underaged pawn that does not yet have fertilin was ingesting a fertilin source.

Support for more modded xenotypes (specifically Alpha Genes and VE)

Please consider better integration with Alpha Genes (not all xenotypes from that mod are patched) and Vanilla Expanded races. Even those that are, such as Sanguophage, are missing one or two xenotypes.

Also, I understand this doesn't concern this mod directly, but the Highmate/Lowmate xenotypes and their lovin' mechanic doesn't use RJW sex and is broken with it. You already have your own version, so that could be patched too.

I'd do it myself and provide you with xmls if I knew how it all worked. Thanks.

Feature requests

Please consider:

  1. Adding the info about conflicting mods into About.xml, so that we can see it in RimPy.
  2. Disabling any xenotypes and genes this mod adds, if they're unplayable or broken without 3rd party mods. Cum genes, for example. Any xenos using "fertilin'" should also be disabled if you don't have Sexperience, as there's no way to gain this fertilin' otherwise. I don't want to add Sexperience, Licentia or any of the RJW addons, as I find them unrealistic, broken or bloated or all three of those. I don't really understand how the insect xenos this mod adds work without Alpha Genes either (despite their seeming integration with AG, I'm not seeing any eggs genes?), but that part is whatever.
  3. If it's even possible, disabling conflicting RJW options by default, like those for animal inheritance, or adding a better description about what exactly should be disabled in the front page.

Additionally:

  1. The mod patches VE Phytokin xenotypes, but not their "female only" gene. Is this intended? (Since you mentioned other male/female only genes caused issues).
  2. The "hypersexual" trait from RJW has been broken for years now. It disables the recreation and psyfocus gain from types of meditation other than sex, but doesn't actually disable them, resulting in pawns eternally meditating. Yet this mod forces this trait into default xenotypes.

Hive Inheritance for custom Xenotypes.

Seems like only pre-coded (XML) Xenotypes are detected and custom xenotypes are not.
I got the following on Discord:

Ignoring Postfix Hediff_InsectEgg::ProcessHumanLikeInsectEgg - No Queen Parent - No Action.

this was with a custom xenotype, "mother" pawn had the queen gene and the host had the drone gene along with the insectincubator gene that auto-fertilizes eggs.  also had a second pawn with baseline xenotype to act as just a regular host, queen put eggs in her and one of the insects fertilized it.  in both cases the eggs birthed as baseline humans.

tested halamyr scenario again, works fine.

so i went back and tried a very basic test.  took the halamyr scenario, removed every gene but the required ones for each bug pawn (queen/drone genes plus genitals), renamed the new xenotypes test queen/breeder/hiveguard, and started a colony.  got several pawns egg'd and when the birthing happened it was the same baseline human babies with the same error message about no queen parent. 

Seems like something is wrong with my Queen-Detection:

public static XenotypeDef TryFindParentQueenXenotype(Pawn pawn)

Print is from

if (RJW_Genes_Settings.rjw_genes_detailed_debug) ModLog.Message($"Ignoring Postfix Hediff_InsectEgg::ProcessHumanLikeInsectEgg - No Queen Parent - No Action.");

"Empathic Lifeforce" breaks the UI

The "Empathic Lifeforce" gene is currently broken in that you can't save it using the xenotype editor. When you add it to your xenotype (I tested this right after world generation) and click "save and apply", the editor instead of saving it and closing the window will glitch out. The UI is completely unusable after it. If you go back and regenerate the world, the UI is usable again, but adding this new xenotype onto any colonist will break it again.

Tested with only those 2 genes (Fertilin' and Empathic Lifeforce).
Turned off all mods except RJW and RJW-Genes.

Log:
Error while generating pawn. Rethrowing. Exception: System.MissingMethodException: Default constructor not found for type RJW_Genes.Gene_LifeForce_Empath at System.RuntimeType.CreateInstanceMono (System.Boolean nonPublic) [0x0007b] in <eae584ce26bc40229c1b1aa476bfa589>:0 at System.RuntimeType.CreateInstanceSlow (System.Boolean publicOnly, System.Boolean skipCheckThis, System.Boolean fillCache, System.Threading.StackCrawlMark& stackMark) [0x00009] in <eae584ce26bc40229c1b1aa476bfa589>:0 at System.RuntimeType.CreateInstanceDefaultCtor (System.Boolean publicOnly, System.Boolean skipCheckThis, System.Boolean fillCache, System.Threading.StackCrawlMark& stackMark) [0x00027] in <eae584ce26bc40229c1b1aa476bfa589>:0 at System.Activator.CreateInstance (System.Type type, System.Boolean nonPublic) [0x00020] in <eae584ce26bc40229c1b1aa476bfa589>:0 at System.Activator.CreateInstance (System.Type type) [0x00000] in <eae584ce26bc40229c1b1aa476bfa589>:0 at RimWorld.GeneMaker.MakeGene (Verse.GeneDef def, Verse.Pawn pawn) [0x00000] in <95de19971c5d40878d8742747904cdcd>:0 at RimWorld.Pawn_GeneTracker.AddGene (Verse.GeneDef geneDef, System.Boolean xenogene) [0x0001a] in <95de19971c5d40878d8742747904cdcd>:0 at (wrapper dynamic-method) Verse.PawnGenerator.Verse.PawnGenerator.GenerateGenes_Patch1(Verse.Pawn,RimWorld.XenotypeDef,Verse.PawnGenerationRequest) at Verse.PawnGenerator.TryGenerateNewPawnInternal (Verse.PawnGenerationRequest& request, System.String& error, System.Boolean ignoreScenarioRequirements, System.Boolean ignoreValidator) [0x00338] in <95de19971c5d40878d8742747904cdcd>:0 at (wrapper dynamic-method) Verse.PawnGenerator.Verse.PawnGenerator.GenerateNewPawnInternal_Patch4(Verse.PawnGenerationRequest&) at Verse.PawnGenerator.GenerateOrRedressPawnInternal (Verse.PawnGenerationRequest request) [0x00188] in <95de19971c5d40878d8742747904cdcd>:0 at Verse.PawnGenerator.GeneratePawn (Verse.PawnGenerationRequest request) [0x00007] in <95de19971c5d40878d8742747904cdcd>:0 UnityEngine.StackTraceUtility:ExtractStackTrace () Verse.Log:Error (string) Verse.PawnGenerator:GeneratePawn (Verse.PawnGenerationRequest) Verse.StartingPawnUtility:NewGeneratedStartingPawn (int) Verse.StartingPawnUtility:RegenerateStartingPawnInPlace (int) Verse.StartingPawnUtility:RandomizeInPlace (Verse.Pawn) RimWorld.Page_ConfigureStartingPawns:RandomizeCurPawn () RimWorld.Page_ConfigureStartingPawns:<DrawXenotypeEditorButton>b__26_0 () RimWorld.Dialog_CreateXenotype:AcceptInner () RimWorld.Dialog_CreateXenotype:Accept () RimWorld.GeneCreationDialogBase:DoBottomButtons (UnityEngine.Rect) RimWorld.Dialog_CreateXenotype:DoBottomButtons (UnityEngine.Rect) RimWorld.GeneCreationDialogBase:DoWindowContents (UnityEngine.Rect) Verse.Window:InnerWindowOnGUI (int) UnityEngine.GUI:CallWindowDelegate (UnityEngine.GUI/WindowFunction,int,int,UnityEngine.GUISkin,int,single,single,UnityEngine.GUIStyle)

"Insect Breeder" gene interferes with fertilisation of egg-laying animals

Steps to reproduce:

  1. Allow bestiality and interspecies fertilisation in RJW settings.
  2. Get a human-like male pawn with "Insect Breeder" gene.
  3. Have it participate in a vaginal intercourse with a female egg-laying animal pawn (tortoise, snake, bird etc) with a non-fertilised egg.

Expected result:
Egg becomes fertilised.

Actual result:
Egg stays unfertilised.

Analysis:
When the very same pawn does the very same thing with the same animal after removing the gene (with devtools) - egg gets fertilised as expected. Both pawns are 100% fertile.

Error on newgame or loaded save with animals.

Error persists on all states. Each segment is taken from a different save game with different mods active. I eventually boiled it down to a minimum of just Harmony, hugslibs, RJW and this. error persisted. Seems to affect all or most animals.

Exception in JobDriver tick for pawn Deer52780 driver=JobDriver_Mating (toilIndex=2) driver.job=(RJW_Mate (Job_32) A=Thing_Deer52782)
System.NullReferenceException: Object reference not set to an instance of an object
  at RJW_Genes.Patch_OrgasmRush.Postfix (rjw.SexProps props) [0x00011] in <e6fab503b9d34d81ae46b270d0e399b4>:0 
  at (wrapper dynamic-method) rjw.SexUtility.rjw.SexUtility.SatisfyPersonal_Patch3(rjw.SexProps,single)
  at rjw.JobDriver_Sex.Orgasm () [0x0009f] in <3b9231f721ba465d83b8aa6ed272e01d>:0 
  at (wrapper dynamic-method) rjw.JobDriver_Sex.rjw.JobDriver_Sex.SexTick_Patch1(rjw.JobDriver_Sex,Verse.Pawn,Verse.Thing,bool,bool)
  at rjw.JobDriver_Mating+<>c__DisplayClass1_0.<MakeNewToils>b__6 () [0x00069] in <3b9231f721ba465d83b8aa6ed272e01d>:0 
  at Verse.AI.JobDriver.DriverTick () [0x00163] in <0aa5ff10b5a84f7da48080504cb32469>:0 
UnityEngine.StackTraceUtility:ExtractStackTrace ()
Verse.Log:Error (string)
Verse.AI.JobUtility:TryStartErrorRecoverJob (Verse.Pawn,string,System.Exception,Verse.AI.JobDriver)
Verse.AI.JobDriver:DriverTick ()
Verse.AI.Pawn_JobTracker:JobTrackerTick ()
Verse.Pawn:Tick ()
Verse.TickList:Tick ()
(wrapper dynamic-method) Verse.TickManager:Verse.TickManager.DoSingleTick_Patch2 (Verse.TickManager)
Verse.TickManager:TickManagerUpdate ()
Verse.Game:UpdatePlay ()
Verse.Root_Play:Update ()

Exception in JobDriver tick for pawn Deer38967 driver=JobDriver_Mating (toilIndex=2) driver.job=(RJW_Mate (Job_2867) A=Thing_Deer38966)
System.NullReferenceException: Object reference not set to an instance of an object
  at RJW_Genes.Patch_OrgasmRush.Postfix (rjw.SexProps props) [0x00011] in <e6fab503b9d34d81ae46b270d0e399b4>:0 
  at (wrapper dynamic-method) rjw.SexUtility.rjw.SexUtility.SatisfyPersonal_Patch3(rjw.SexProps,single)
  at rjw.JobDriver_Sex.Orgasm () [0x0009f] in <3b9231f721ba465d83b8aa6ed272e01d>:0 
  at (wrapper dynamic-method) rjw.JobDriver_Sex.rjw.JobDriver_Sex.SexTick_Patch1(rjw.JobDriver_Sex,Verse.Pawn,Verse.Thing,bool,bool)
  at rjw.JobDriver_Mating+<>c__DisplayClass1_0.<MakeNewToils>b__6 () [0x00069] in <3b9231f721ba465d83b8aa6ed272e01d>:0 
  at Verse.AI.JobDriver.DriverTick () [0x00163] in <0aa5ff10b5a84f7da48080504cb32469>:0 
UnityEngine.StackTraceUtility:ExtractStackTrace ()
Verse.Log:Error (string)
Verse.AI.JobUtility:TryStartErrorRecoverJob (Verse.Pawn,string,System.Exception,Verse.AI.JobDriver)
Verse.AI.JobDriver:DriverTick ()
Verse.AI.Pawn_JobTracker:JobTrackerTick ()
Verse.Pawn:Tick ()
Verse.TickList:Tick ()
Verse.TickManager:DoSingleTick ()
Verse.TickManager:TickManagerUpdate ()
Verse.Game:UpdatePlay ()
Verse.Root_Play:Update ()
Exception in JobDriver tick for pawn GuineaPig49344 driver=JobDriver_Mating (toilIndex=2) driver.job=(RJW_Mate (Job_24) A=Thing_GuineaPig49342)
System.NullReferenceException: Object reference not set to an instance of an object
  at RJW_Genes.Patch_OrgasmRush.Postfix (rjw.SexProps props) [0x00011] in <e6fab503b9d34d81ae46b270d0e399b4>:0 
  at (wrapper dynamic-method) rjw.SexUtility.rjw.SexUtility.SatisfyPersonal_Patch3(rjw.SexProps,single)
  at rjw.JobDriver_Sex.Orgasm () [0x0009f] in <3b9231f721ba465d83b8aa6ed272e01d>:0 
  at (wrapper dynamic-method) rjw.JobDriver_Sex.rjw.JobDriver_Sex.SexTick_Patch1(rjw.JobDriver_Sex,Verse.Pawn,Verse.Thing,bool,bool)
  at rjw.JobDriver_Mating+<>c__DisplayClass1_0.<MakeNewToils>b__6 () [0x00069] in <3b9231f721ba465d83b8aa6ed272e01d>:0 
  at Verse.AI.JobDriver.DriverTick () [0x00163] in <0aa5ff10b5a84f7da48080504cb32469>:0 
UnityEngine.StackTraceUtility:ExtractStackTrace ()
Verse.Log:Error (string)
Verse.AI.JobUtility:TryStartErrorRecoverJob (Verse.Pawn,string,System.Exception,Verse.AI.JobDriver)
Verse.AI.JobDriver:DriverTick ()
Verse.AI.Pawn_JobTracker:JobTrackerTick ()
Verse.Pawn:Tick ()
Verse.TickList:Tick ()
Verse.TickManager:DoSingleTick ()
Verse.TickManager:TickManagerUpdate ()
Verse.Game:UpdatePlay ()
Verse.Root_Play:Update ()

Exception in JobDriver tick for pawn GuineaPig36497 driver=JobDriver_Mating (toilIndex=2) driver.job=(RJW_Mate (Job_21) A=Thing_GuineaPig36498)
System.NullReferenceException: Object reference not set to an instance of an object
  at RJW_Genes.Patch_OrgasmRush.Postfix (rjw.SexProps props) [0x00011] in <e6fab503b9d34d81ae46b270d0e399b4>:0 
  at (wrapper dynamic-method) rjw.SexUtility.rjw.SexUtility.SatisfyPersonal_Patch2(rjw.SexProps,single)
  at rjw.JobDriver_Sex.Orgasm () [0x0009f] in <3b9231f721ba465d83b8aa6ed272e01d>:0 
  at rjw.JobDriver_Sex.SexTick (Verse.Pawn pawn, Verse.Thing target, System.Boolean pawnnude, System.Boolean partnernude) [0x00082] in <3b9231f721ba465d83b8aa6ed272e01d>:0 
  at rjw.JobDriver_Mating+<>c__DisplayClass1_0.<MakeNewToils>b__6 () [0x00069] in <3b9231f721ba465d83b8aa6ed272e01d>:0 
  at Verse.AI.JobDriver.DriverTick () [0x00163] in <0aa5ff10b5a84f7da48080504cb32469>:0 
UnityEngine.StackTraceUtility:ExtractStackTrace ()
Verse.Log:Error (string)
Verse.AI.JobUtility:TryStartErrorRecoverJob (Verse.Pawn,string,System.Exception,Verse.AI.JobDriver)
Verse.AI.JobDriver:DriverTick ()
Verse.AI.Pawn_JobTracker:JobTrackerTick ()
Verse.Pawn:Tick ()
Verse.TickList:Tick ()
Verse.TickManager:DoSingleTick ()
Verse.TickManager:TickManagerUpdate ()
Verse.Game:UpdatePlay ()
Verse.Root_Play:Update ()
Exception in JobDriver tick for pawn Muffalo21912 driver=JobDriver_Mating (toilIndex=2) driver.job=(RJW_Mate (Job_6) A=Thing_Muffalo21913)
System.NullReferenceException: Object reference not set to an instance of an object
  at RJW_Genes.Patch_OrgasmRush.Postfix (rjw.SexProps props) [0x00011] in <e6fab503b9d34d81ae46b270d0e399b4>:0 
  at (wrapper dynamic-method) rjw.SexUtility.rjw.SexUtility.SatisfyPersonal_Patch2(rjw.SexProps,single)
  at rjw.JobDriver_Sex.Orgasm () [0x0009f] in <3b9231f721ba465d83b8aa6ed272e01d>:0 
  at rjw.JobDriver_Sex.SexTick (Verse.Pawn pawn, Verse.Thing target, System.Boolean pawnnude, System.Boolean partnernude) [0x00082] in <3b9231f721ba465d83b8aa6ed272e01d>:0 
  at rjw.JobDriver_Mating+<>c__DisplayClass1_0.<MakeNewToils>b__6 () [0x00069] in <3b9231f721ba465d83b8aa6ed272e01d>:0 
  at Verse.AI.JobDriver.DriverTick () [0x00163] in <0aa5ff10b5a84f7da48080504cb32469>:0 
UnityEngine.StackTraceUtility:ExtractStackTrace ()
Verse.Log:Error (string)
Verse.AI.JobUtility:TryStartErrorRecoverJob (Verse.Pawn,string,System.Exception,Verse.AI.JobDriver)
Verse.AI.JobDriver:DriverTick ()
Verse.AI.Pawn_JobTracker:JobTrackerTick ()
Verse.Pawn:Tick ()
Verse.TickList:Tick ()
Verse.TickManager:DoSingleTick ()
Verse.TickManager:TickManagerUpdate ()
Verse.Game:UpdatePlay ()
Verse.Root_Play:Update ()

=================================================================================

Here is the report of the bare minimum save

============================================================================

Command line arguments: -savedatafolder=C:\Users\user\AppData\LocalLow\Ludeon Studios\RimWorld by Ludeon Studios
UnityEngine.StackTraceUtility:ExtractStackTrace ()
Verse.Log:Message (string)
Verse.Root:CheckGlobalInit ()
Verse.Root:Start ()
Verse.Root_Entry:Start ()

RimWorld 1.4.3580 rev1294
UnityEngine.StackTraceUtility:ExtractStackTrace ()
Verse.Log:Message (string)
RimWorld.VersionControl:LogVersionNumber ()
Verse.Root:CheckGlobalInit ()
Verse.Root:Start ()
Verse.Root_Entry:Start ()

Save data folder overridden to C:\Users\user\AppData\LocalLow\Ludeon Studios\RimWorld by Ludeon Studios
UnityEngine.StackTraceUtility:ExtractStackTrace ()
Verse.Log:Message (string)
Verse.GenFilePaths:get_SaveDataFolderPath ()
Verse.GenFilePaths:FolderUnderSaveData (string)
Verse.GenFilePaths:get_ConfigFolderPath ()
Verse.GenFilePaths:get_PrefsFilePath ()
Verse.Prefs:Init ()
Verse.Root:CheckGlobalInit ()
Verse.Root:Start ()
Verse.Root_Entry:Start ()

[HugsLib] version 10.0.1
UnityEngine.StackTraceUtility:ExtractStackTrace ()
Verse.Log:Message (string)
HugsLib.Utils.ModLogger:Message (string,object[])
HugsLib.HugsLibController:InitializeController ()
HugsLib.HugsLibController:EarlyInitialize ()
HugsLib.Core.HugsLibMod:.ctor (Verse.ModContentPack)
System.Reflection.MonoCMethod:InternalInvoke (object,object[])
System.Reflection.MonoCMethod:DoInvoke (object,System.Reflection.BindingFlags,System.Reflection.Binder,object[],System.Globalization.CultureInfo)
System.Reflection.MonoCMethod:Invoke (System.Reflection.BindingFlags,System.Reflection.Binder,object[],System.Globalization.CultureInfo)
System.RuntimeType:CreateInstanceImpl (System.Reflection.BindingFlags,System.Reflection.Binder,object[],System.Globalization.CultureInfo,object[],System.Threading.StackCrawlMark&)
System.Activator:CreateInstance (System.Type,System.Reflection.BindingFlags,System.Reflection.Binder,object[],System.Globalization.CultureInfo,object[])
System.Activator:CreateInstance (System.Type,object[])
Verse.LoadedModManager:CreateModClasses ()
Verse.LoadedModManager:LoadAllActiveMods ()
Verse.PlayDataLoader:DoPlayLoad ()
Verse.PlayDataLoader:LoadAllPlayData (bool)
Verse.Root/<>c:<Start>b__6_1 ()
Verse.LongEventHandler:RunEventFromAnotherThread (System.Action)
Verse.LongEventHandler/<>c:<UpdateCurrentAsynchronousEvent>b__27_0 ()
System.Threading.ThreadHelper:ThreadStart_Context (object)
System.Threading.ExecutionContext:RunInternal (System.Threading.ExecutionContext,System.Threading.ContextCallback,object,bool)
System.Threading.ExecutionContext:Run (System.Threading.ExecutionContext,System.Threading.ContextCallback,object,bool)
System.Threading.ExecutionContext:Run (System.Threading.ExecutionContext,System.Threading.ContextCallback,object)
System.Threading.ThreadHelper:ThreadStart ()

RJW-Genes loaded
UnityEngine.StackTraceUtility:ExtractStackTrace ()
Verse.Log:Message (string)
BTE_MMLA.RJW_Genes:.cctor ()
System.Runtime.CompilerServices.RuntimeHelpers:RunClassConstructor (System.RuntimeTypeHandle)
Verse.StaticConstructorOnStartupUtility:CallAll ()
Verse.PlayDataLoader/<>c:<DoPlayLoad>b__4_5 ()
Verse.LongEventHandler:ExecuteToExecuteWhenFinished ()
Verse.LongEventHandler:UpdateCurrentAsynchronousEvent ()
Verse.LongEventHandler:LongEventsUpdate (bool&)
(wrapper dynamic-method) Verse.Root:Verse.Root.Update_Patch1 (Verse.Root)
Verse.Root_Entry:Update ()

[UnlimitedHugs.HugsLib] Patches on methods annotated as Obsolete were detected by HugsLib: Verse.Game.DeinitAndRemoveMap
UnityEngine.StackTraceUtility:ExtractStackTrace ()
Verse.Log:Warning (string)
HugsLib.Utils.HarmonyUtility:LogObsoleteMethodPatchErrors ()
HugsLib.Utils.HarmonyUtility:LogHarmonyPatchIssueErrors ()
Verse.LongEventHandler:ExecuteToExecuteWhenFinished ()
Verse.LongEventHandler:UpdateCurrentAsynchronousEvent ()
Verse.LongEventHandler:LongEventsUpdate (bool&)
(wrapper dynamic-method) Verse.Root:Verse.Root.Update_Patch1 (Verse.Root)
Verse.Root_Entry:Update ()

[HugsLib] initializing RJW
UnityEngine.StackTraceUtility:ExtractStackTrace ()
Verse.Log:Message (string)
HugsLib.Utils.ModLogger:Message (string,object[])
HugsLib.HugsLibController:EnumerateChildMods (bool)
HugsLib.HugsLibController:LoadReloadInitialize ()
Verse.LongEventHandler:RunEventFromAnotherThread (System.Action)
Verse.LongEventHandler/<>c:<UpdateCurrentAsynchronousEvent>b__27_0 ()
System.Threading.ThreadHelper:ThreadStart_Context (object)
System.Threading.ExecutionContext:RunInternal (System.Threading.ExecutionContext,System.Threading.ContextCallback,object,bool)
System.Threading.ExecutionContext:Run (System.Threading.ExecutionContext,System.Threading.ContextCallback,object,bool)
System.Threading.ExecutionContext:Run (System.Threading.ExecutionContext,System.Threading.ContextCallback,object)
System.Threading.ThreadHelper:ThreadStart ()

Could not load reference to RimWorld.FactionDef named HS_PlayerEdoClan
UnityEngine.StackTraceUtility:ExtractStackTrace ()
Verse.Log:Error (string)
Verse.ScribeExtractor:DefFromNode<RimWorld.FactionDef> (System.Xml.XmlNode)
Verse.Scribe_Defs:Look<RimWorld.FactionDef> (RimWorld.FactionDef&,string)
RimWorld.ScenPart_PlayerFaction:ExposeData ()
Verse.ScribeExtractor:SaveableFromNode<RimWorld.ScenPart_PlayerFaction> (System.Xml.XmlNode,object[])
Verse.Scribe_Deep:Look<RimWorld.ScenPart_PlayerFaction> (RimWorld.ScenPart_PlayerFaction&,bool,string,object[])
Verse.Scribe_Deep:Look<RimWorld.ScenPart_PlayerFaction> (RimWorld.ScenPart_PlayerFaction&,string,object[])
RimWorld.Scenario:ExposeData ()
Verse.ScribeExtractor:SaveableFromNode<RimWorld.Scenario> (System.Xml.XmlNode,object[])
Verse.Scribe_Deep:Look<RimWorld.Scenario> (RimWorld.Scenario&,bool,string,object[])
Verse.Scribe_Deep:Look<RimWorld.Scenario> (RimWorld.Scenario&,string,object[])
Verse.GameDataSaveLoader:TryLoadScenario (string,RimWorld.ScenarioCategory,RimWorld.Scenario&)
RimWorld.ScenarioFiles:RecacheData ()
RimWorld.ScenarioLister:RecacheData ()
RimWorld.ScenarioLister:RecacheIfDirty ()
RimWorld.ScenarioLister/<ScenariosInCategory>d__2:MoveNext ()
System.Linq.Enumerable:TryGetFirst<RimWorld.Scenario> (System.Collections.Generic.IEnumerable`1<RimWorld.Scenario>,bool&)
System.Linq.Enumerable:FirstOrDefault<RimWorld.Scenario> (System.Collections.Generic.IEnumerable`1<RimWorld.Scenario>)
RimWorld.Page_SelectScenario:EnsureValidSelection ()
RimWorld.Page_SelectScenario:PreOpen ()
Verse.WindowStack:Add (Verse.Window)
RimWorld.MainMenuDrawer/<>c:<DoMainMenuControls>b__18_11 ()
Verse.ListableOption:DrawOption (UnityEngine.Vector2,single)
Verse.OptionListingUtility:DrawOptionListing (UnityEngine.Rect,System.Collections.Generic.List`1<Verse.ListableOption>)
(wrapper dynamic-method) RimWorld.MainMenuDrawer:RimWorld.MainMenuDrawer.DoMainMenuControls_Patch0 (UnityEngine.Rect,bool)
RimWorld.MainMenuDrawer:MainMenuOnGUI ()
Verse.UIRoot_Entry:DoMainMenu ()
Verse.UIRoot_Entry:UIRootOnGUI ()
(wrapper dynamic-method) Verse.Root:Verse.Root.OnGUI_Patch1 (Verse.Root)

Could not load reference to Verse.ThingDef named EggSilverDragonFertilized
UnityEngine.StackTraceUtility:ExtractStackTrace ()
Verse.Log:Error (string)
Verse.ScribeExtractor:DefFromNode<Verse.ThingDef> (System.Xml.XmlNode)
Verse.Scribe_Defs:Look<Verse.ThingDef> (Verse.ThingDef&,string)
RimWorld.ScenPart_ThingCount:ExposeData ()
RimWorld.ScenPart_ScatterThings:ExposeData ()
Verse.ScribeExtractor:SaveableFromNode<RimWorld.ScenPart> (System.Xml.XmlNode,object[])
Verse.Scribe_Collections:Look<RimWorld.ScenPart> (System.Collections.Generic.List`1<RimWorld.ScenPart>&,bool,string,Verse.LookMode,object[])
Verse.Scribe_Collections:Look<RimWorld.ScenPart> (System.Collections.Generic.List`1<RimWorld.ScenPart>&,string,Verse.LookMode,object[])
RimWorld.Scenario:ExposeData ()
Verse.ScribeExtractor:SaveableFromNode<RimWorld.Scenario> (System.Xml.XmlNode,object[])
Verse.Scribe_Deep:Look<RimWorld.Scenario> (RimWorld.Scenario&,bool,string,object[])
Verse.Scribe_Deep:Look<RimWorld.Scenario> (RimWorld.Scenario&,string,object[])
Verse.GameDataSaveLoader:TryLoadScenario (string,RimWorld.ScenarioCategory,RimWorld.Scenario&)
RimWorld.ScenarioFiles:RecacheData ()
RimWorld.ScenarioLister:RecacheData ()
RimWorld.ScenarioLister:RecacheIfDirty ()
RimWorld.ScenarioLister/<ScenariosInCategory>d__2:MoveNext ()
System.Linq.Enumerable:TryGetFirst<RimWorld.Scenario> (System.Collections.Generic.IEnumerable`1<RimWorld.Scenario>,bool&)
System.Linq.Enumerable:FirstOrDefault<RimWorld.Scenario> (System.Collections.Generic.IEnumerable`1<RimWorld.Scenario>)
RimWorld.Page_SelectScenario:EnsureValidSelection ()
RimWorld.Page_SelectScenario:PreOpen ()
Verse.WindowStack:Add (Verse.Window)
RimWorld.MainMenuDrawer/<>c:<DoMainMenuControls>b__18_11 ()
Verse.ListableOption:DrawOption (UnityEngine.Vector2,single)
Verse.OptionListingUtility:DrawOptionListing (UnityEngine.Rect,System.Collections.Generic.List`1<Verse.ListableOption>)
(wrapper dynamic-method) RimWorld.MainMenuDrawer:RimWorld.MainMenuDrawer.DoMainMenuControls_Patch0 (UnityEngine.Rect,bool)
RimWorld.MainMenuDrawer:MainMenuOnGUI ()
Verse.UIRoot_Entry:DoMainMenu ()
Verse.UIRoot_Entry:UIRootOnGUI ()
(wrapper dynamic-method) Verse.Root:Verse.Root.OnGUI_Patch1 (Verse.Root)

Could not load reference to Verse.ThingDef named DragonNest
UnityEngine.StackTraceUtility:ExtractStackTrace ()
Verse.Log:Error (string)
Verse.ScribeExtractor:DefFromNode<Verse.ThingDef> (System.Xml.XmlNode)
Verse.Scribe_Defs:Look<Verse.ThingDef> (Verse.ThingDef&,string)
RimWorld.ScenPart_ThingCount:ExposeData ()
Verse.ScribeExtractor:SaveableFromNode<RimWorld.ScenPart> (System.Xml.XmlNode,object[])
Verse.Scribe_Collections:Look<RimWorld.ScenPart> (System.Collections.Generic.List`1<RimWorld.ScenPart>&,bool,string,Verse.LookMode,object[])
Verse.Scribe_Collections:Look<RimWorld.ScenPart> (System.Collections.Generic.List`1<RimWorld.ScenPart>&,string,Verse.LookMode,object[])
RimWorld.Scenario:ExposeData ()
Verse.ScribeExtractor:SaveableFromNode<RimWorld.Scenario> (System.Xml.XmlNode,object[])
Verse.Scribe_Deep:Look<RimWorld.Scenario> (RimWorld.Scenario&,bool,string,object[])
Verse.Scribe_Deep:Look<RimWorld.Scenario> (RimWorld.Scenario&,string,object[])
Verse.GameDataSaveLoader:TryLoadScenario (string,RimWorld.ScenarioCategory,RimWorld.Scenario&)
RimWorld.ScenarioFiles:RecacheData ()
RimWorld.ScenarioLister:RecacheData ()
RimWorld.ScenarioLister:RecacheIfDirty ()
RimWorld.ScenarioLister/<ScenariosInCategory>d__2:MoveNext ()
System.Linq.Enumerable:TryGetFirst<RimWorld.Scenario> (System.Collections.Generic.IEnumerable`1<RimWorld.Scenario>,bool&)
System.Linq.Enumerable:FirstOrDefault<RimWorld.Scenario> (System.Collections.Generic.IEnumerable`1<RimWorld.Scenario>)
RimWorld.Page_SelectScenario:EnsureValidSelection ()
RimWorld.Page_SelectScenario:PreOpen ()
Verse.WindowStack:Add (Verse.Window)
RimWorld.MainMenuDrawer/<>c:<DoMainMenuControls>b__18_11 ()
Verse.ListableOption:DrawOption (UnityEngine.Vector2,single)
Verse.OptionListingUtility:DrawOptionListing (UnityEngine.Rect,System.Collections.Generic.List`1<Verse.ListableOption>)
(wrapper dynamic-method) RimWorld.MainMenuDrawer:RimWorld.MainMenuDrawer.DoMainMenuControls_Patch0 (UnityEngine.Rect,bool)
RimWorld.MainMenuDrawer:MainMenuOnGUI ()
Verse.UIRoot_Entry:DoMainMenu ()
Verse.UIRoot_Entry:UIRootOnGUI ()
(wrapper dynamic-method) Verse.Root:Verse.Root.OnGUI_Patch1 (Verse.Root)

ScenPart had null faction after loading. Changing to PlayerColony
UnityEngine.StackTraceUtility:ExtractStackTrace ()
Verse.Log:Error (string)
RimWorld.ScenPart_PlayerFaction:ExposeData ()
Verse.PostLoadIniter:DoAllPostLoadInits ()
Verse.ScribeLoader:FinalizeLoading ()
Verse.GameDataSaveLoader:TryLoadScenario (string,RimWorld.ScenarioCategory,RimWorld.Scenario&)
RimWorld.ScenarioFiles:RecacheData ()
RimWorld.ScenarioLister:RecacheData ()
RimWorld.ScenarioLister:RecacheIfDirty ()
RimWorld.ScenarioLister/<ScenariosInCategory>d__2:MoveNext ()
System.Linq.Enumerable:TryGetFirst<RimWorld.Scenario> (System.Collections.Generic.IEnumerable`1<RimWorld.Scenario>,bool&)
System.Linq.Enumerable:FirstOrDefault<RimWorld.Scenario> (System.Collections.Generic.IEnumerable`1<RimWorld.Scenario>)
RimWorld.Page_SelectScenario:EnsureValidSelection ()
RimWorld.Page_SelectScenario:PreOpen ()
Verse.WindowStack:Add (Verse.Window)
RimWorld.MainMenuDrawer/<>c:<DoMainMenuControls>b__18_11 ()
Verse.ListableOption:DrawOption (UnityEngine.Vector2,single)
Verse.OptionListingUtility:DrawOptionListing (UnityEngine.Rect,System.Collections.Generic.List`1<Verse.ListableOption>)
(wrapper dynamic-method) RimWorld.MainMenuDrawer:RimWorld.MainMenuDrawer.DoMainMenuControls_Patch0 (UnityEngine.Rect,bool)
RimWorld.MainMenuDrawer:MainMenuOnGUI ()
Verse.UIRoot_Entry:DoMainMenu ()
Verse.UIRoot_Entry:UIRootOnGUI ()
(wrapper dynamic-method) Verse.Root:Verse.Root.OnGUI_Patch1 (Verse.Root)

Some ScenParts had null defs.
UnityEngine.StackTraceUtility:ExtractStackTrace ()
Verse.Log:Warning (string)
RimWorld.Scenario:ExposeData ()
Verse.PostLoadIniter:DoAllPostLoadInits ()
Verse.ScribeLoader:FinalizeLoading ()
Verse.GameDataSaveLoader:TryLoadScenario (string,RimWorld.ScenarioCategory,RimWorld.Scenario&)
RimWorld.ScenarioFiles:RecacheData ()
RimWorld.ScenarioLister:RecacheData ()
RimWorld.ScenarioLister:RecacheIfDirty ()
RimWorld.ScenarioLister/<ScenariosInCategory>d__2:MoveNext ()
System.Linq.Enumerable:TryGetFirst<RimWorld.Scenario> (System.Collections.Generic.IEnumerable`1<RimWorld.Scenario>,bool&)
System.Linq.Enumerable:FirstOrDefault<RimWorld.Scenario> (System.Collections.Generic.IEnumerable`1<RimWorld.Scenario>)
RimWorld.Page_SelectScenario:EnsureValidSelection ()
RimWorld.Page_SelectScenario:PreOpen ()
Verse.WindowStack:Add (Verse.Window)
RimWorld.MainMenuDrawer/<>c:<DoMainMenuControls>b__18_11 ()
Verse.ListableOption:DrawOption (UnityEngine.Vector2,single)
Verse.OptionListingUtility:DrawOptionListing (UnityEngine.Rect,System.Collections.Generic.List`1<Verse.ListableOption>)
(wrapper dynamic-method) RimWorld.MainMenuDrawer:RimWorld.MainMenuDrawer.DoMainMenuControls_Patch0 (UnityEngine.Rect,bool)
RimWorld.MainMenuDrawer:MainMenuOnGUI ()
Verse.UIRoot_Entry:DoMainMenu ()
Verse.UIRoot_Entry:UIRootOnGUI ()
(wrapper dynamic-method) Verse.Root:Verse.Root.OnGUI_Patch1 (Verse.Root)

Could not load reference to RimWorld.FactionDef named TSF_PlayerRonin
UnityEngine.StackTraceUtility:ExtractStackTrace ()
Verse.Log:Error (string)
Verse.ScribeExtractor:DefFromNode<RimWorld.FactionDef> (System.Xml.XmlNode)
Verse.Scribe_Defs:Look<RimWorld.FactionDef> (RimWorld.FactionDef&,string)
RimWorld.ScenPart_PlayerFaction:ExposeData ()
Verse.ScribeExtractor:SaveableFromNode<RimWorld.ScenPart_PlayerFaction> (System.Xml.XmlNode,object[])
Verse.Scribe_Deep:Look<RimWorld.ScenPart_PlayerFaction> (RimWorld.ScenPart_PlayerFaction&,bool,string,object[])
Verse.Scribe_Deep:Look<RimWorld.ScenPart_PlayerFaction> (RimWorld.ScenPart_PlayerFaction&,string,object[])
RimWorld.Scenario:ExposeData ()
Verse.ScribeExtractor:SaveableFromNode<RimWorld.Scenario> (System.Xml.XmlNode,object[])
Verse.Scribe_Deep:Look<RimWorld.Scenario> (RimWorld.Scenario&,bool,string,object[])
Verse.Scribe_Deep:Look<RimWorld.Scenario> (RimWorld.Scenario&,string,object[])
Verse.GameDataSaveLoader:TryLoadScenario (string,RimWorld.ScenarioCategory,RimWorld.Scenario&)
RimWorld.ScenarioFiles:RecacheData ()
RimWorld.ScenarioLister:RecacheData ()
RimWorld.ScenarioLister:RecacheIfDirty ()
RimWorld.ScenarioLister/<ScenariosInCategory>d__2:MoveNext ()
System.Linq.Enumerable:TryGetFirst<RimWorld.Scenario> (System.Collections.Generic.IEnumerable`1<RimWorld.Scenario>,bool&)
System.Linq.Enumerable:FirstOrDefault<RimWorld.Scenario> (System.Collections.Generic.IEnumerable`1<RimWorld.Scenario>)
RimWorld.Page_SelectScenario:EnsureValidSelection ()
RimWorld.Page_SelectScenario:PreOpen ()
Verse.WindowStack:Add (Verse.Window)
RimWorld.MainMenuDrawer/<>c:<DoMainMenuControls>b__18_11 ()
Verse.ListableOption:DrawOption (UnityEngine.Vector2,single)
Verse.OptionListingUtility:DrawOptionListing (UnityEngine.Rect,System.Collections.Generic.List`1<Verse.ListableOption>)
(wrapper dynamic-method) RimWorld.MainMenuDrawer:RimWorld.MainMenuDrawer.DoMainMenuControls_Patch0 (UnityEngine.Rect,bool)
RimWorld.MainMenuDrawer:MainMenuOnGUI ()
Verse.UIRoot_Entry:DoMainMenu ()
Verse.UIRoot_Entry:UIRootOnGUI ()
(wrapper dynamic-method) Verse.Root:Verse.Root.OnGUI_Patch1 (Verse.Root)

Could not load reference to Verse.ThingDef named EggSilverDragonFertilized
UnityEngine.StackTraceUtility:ExtractStackTrace ()
Verse.Log:Error (string)
Verse.ScribeExtractor:DefFromNode<Verse.ThingDef> (System.Xml.XmlNode)
Verse.Scribe_Defs:Look<Verse.ThingDef> (Verse.ThingDef&,string)
RimWorld.ScenPart_ThingCount:ExposeData ()
RimWorld.ScenPart_ScatterThings:ExposeData ()
Verse.ScribeExtractor:SaveableFromNode<RimWorld.ScenPart> (System.Xml.XmlNode,object[])
Verse.Scribe_Collections:Look<RimWorld.ScenPart> (System.Collections.Generic.List`1<RimWorld.ScenPart>&,bool,string,Verse.LookMode,object[])
Verse.Scribe_Collections:Look<RimWorld.ScenPart> (System.Collections.Generic.List`1<RimWorld.ScenPart>&,string,Verse.LookMode,object[])
RimWorld.Scenario:ExposeData ()
Verse.ScribeExtractor:SaveableFromNode<RimWorld.Scenario> (System.Xml.XmlNode,object[])
Verse.Scribe_Deep:Look<RimWorld.Scenario> (RimWorld.Scenario&,bool,string,object[])
Verse.Scribe_Deep:Look<RimWorld.Scenario> (RimWorld.Scenario&,string,object[])
Verse.GameDataSaveLoader:TryLoadScenario (string,RimWorld.ScenarioCategory,RimWorld.Scenario&)
RimWorld.ScenarioFiles:RecacheData ()
RimWorld.ScenarioLister:RecacheData ()
RimWorld.ScenarioLister:RecacheIfDirty ()
RimWorld.ScenarioLister/<ScenariosInCategory>d__2:MoveNext ()
System.Linq.Enumerable:TryGetFirst<RimWorld.Scenario> (System.Collections.Generic.IEnumerable`1<RimWorld.Scenario>,bool&)
System.Linq.Enumerable:FirstOrDefault<RimWorld.Scenario> (System.Collections.Generic.IEnumerable`1<RimWorld.Scenario>)
RimWorld.Page_SelectScenario:EnsureValidSelection ()
RimWorld.Page_SelectScenario:PreOpen ()
Verse.WindowStack:Add (Verse.Window)
RimWorld.MainMenuDrawer/<>c:<DoMainMenuControls>b__18_11 ()
Verse.ListableOption:DrawOption (UnityEngine.Vector2,single)
Verse.OptionListingUtility:DrawOptionListing (UnityEngine.Rect,System.Collections.Generic.List`1<Verse.ListableOption>)
(wrapper dynamic-method) RimWorld.MainMenuDrawer:RimWorld.MainMenuDrawer.DoMainMenuControls_Patch0 (UnityEngine.Rect,bool)
RimWorld.MainMenuDrawer:MainMenuOnGUI ()
Verse.UIRoot_Entry:DoMainMenu ()
Verse.UIRoot_Entry:UIRootOnGUI ()
(wrapper dynamic-method) Verse.Root:Verse.Root.OnGUI_Patch1 (Verse.Root)

Could not load reference to Verse.ThingDef named DragonNest
UnityEngine.StackTraceUtility:ExtractStackTrace ()
Verse.Log:Error (string)
Verse.ScribeExtractor:DefFromNode<Verse.ThingDef> (System.Xml.XmlNode)
Verse.Scribe_Defs:Look<Verse.ThingDef> (Verse.ThingDef&,string)
RimWorld.ScenPart_ThingCount:ExposeData ()
Verse.ScribeExtractor:SaveableFromNode<RimWorld.ScenPart> (System.Xml.XmlNode,object[])
Verse.Scribe_Collections:Look<RimWorld.ScenPart> (System.Collections.Generic.List`1<RimWorld.ScenPart>&,bool,string,Verse.LookMode,object[])
Verse.Scribe_Collections:Look<RimWorld.ScenPart> (System.Collections.Generic.List`1<RimWorld.ScenPart>&,string,Verse.LookMode,object[])
RimWorld.Scenario:ExposeData ()
Verse.ScribeExtractor:SaveableFromNode<RimWorld.Scenario> (System.Xml.XmlNode,object[])
Verse.Scribe_Deep:Look<RimWorld.Scenario> (RimWorld.Scenario&,bool,string,object[])
Verse.Scribe_Deep:Look<RimWorld.Scenario> (RimWorld.Scenario&,string,object[])
Verse.GameDataSaveLoader:TryLoadScenario (string,RimWorld.ScenarioCategory,RimWorld.Scenario&)
RimWorld.ScenarioFiles:RecacheData ()
RimWorld.ScenarioLister:RecacheData ()
RimWorld.ScenarioLister:RecacheIfDirty ()
RimWorld.ScenarioLister/<ScenariosInCategory>d__2:MoveNext ()
System.Linq.Enumerable:TryGetFirst<RimWorld.Scenario> (System.Collections.Generic.IEnumerable`1<RimWorld.Scenario>,bool&)
System.Linq.Enumerable:FirstOrDefault<RimWorld.Scenario> (System.Collections.Generic.IEnumerable`1<RimWorld.Scenario>)
RimWorld.Page_SelectScenario:EnsureValidSelection ()
RimWorld.Page_SelectScenario:PreOpen ()
Verse.WindowStack:Add (Verse.Window)
RimWorld.MainMenuDrawer/<>c:<DoMainMenuControls>b__18_11 ()
Verse.ListableOption:DrawOption (UnityEngine.Vector2,single)
Verse.OptionListingUtility:DrawOptionListing (UnityEngine.Rect,System.Collections.Generic.List`1<Verse.ListableOption>)
(wrapper dynamic-method) RimWorld.MainMenuDrawer:RimWorld.MainMenuDrawer.DoMainMenuControls_Patch0 (UnityEngine.Rect,bool)
RimWorld.MainMenuDrawer:MainMenuOnGUI ()
Verse.UIRoot_Entry:DoMainMenu ()
Verse.UIRoot_Entry:UIRootOnGUI ()
(wrapper dynamic-method) Verse.Root:Verse.Root.OnGUI_Patch1 (Verse.Root)

ScenPart had null faction after loading. Changing to PlayerTribe
UnityEngine.StackTraceUtility:ExtractStackTrace ()
Verse.Log:Error (string)
RimWorld.ScenPart_PlayerFaction:ExposeData ()
Verse.PostLoadIniter:DoAllPostLoadInits ()
Verse.ScribeLoader:FinalizeLoading ()
Verse.GameDataSaveLoader:TryLoadScenario (string,RimWorld.ScenarioCategory,RimWorld.Scenario&)
RimWorld.ScenarioFiles:RecacheData ()
RimWorld.ScenarioLister:RecacheData ()
RimWorld.ScenarioLister:RecacheIfDirty ()
RimWorld.ScenarioLister/<ScenariosInCategory>d__2:MoveNext ()
System.Linq.Enumerable:TryGetFirst<RimWorld.Scenario> (System.Collections.Generic.IEnumerable`1<RimWorld.Scenario>,bool&)
System.Linq.Enumerable:FirstOrDefault<RimWorld.Scenario> (System.Collections.Generic.IEnumerable`1<RimWorld.Scenario>)
RimWorld.Page_SelectScenario:EnsureValidSelection ()
RimWorld.Page_SelectScenario:PreOpen ()
Verse.WindowStack:Add (Verse.Window)
RimWorld.MainMenuDrawer/<>c:<DoMainMenuControls>b__18_11 ()
Verse.ListableOption:DrawOption (UnityEngine.Vector2,single)
Verse.OptionListingUtility:DrawOptionListing (UnityEngine.Rect,System.Collections.Generic.List`1<Verse.ListableOption>)
(wrapper dynamic-method) RimWorld.MainMenuDrawer:RimWorld.MainMenuDrawer.DoMainMenuControls_Patch0 (UnityEngine.Rect,bool)
RimWorld.MainMenuDrawer:MainMenuOnGUI ()
Verse.UIRoot_Entry:DoMainMenu ()
Verse.UIRoot_Entry:UIRootOnGUI ()
(wrapper dynamic-method) Verse.Root:Verse.Root.OnGUI_Patch1 (Verse.Root)

Some ScenParts had null defs.
UnityEngine.StackTraceUtility:ExtractStackTrace ()
Verse.Log:Warning (string)
RimWorld.Scenario:ExposeData ()
Verse.PostLoadIniter:DoAllPostLoadInits ()
Verse.ScribeLoader:FinalizeLoading ()
Verse.GameDataSaveLoader:TryLoadScenario (string,RimWorld.ScenarioCategory,RimWorld.Scenario&)
RimWorld.ScenarioFiles:RecacheData ()
RimWorld.ScenarioLister:RecacheData ()
RimWorld.ScenarioLister:RecacheIfDirty ()
RimWorld.ScenarioLister/<ScenariosInCategory>d__2:MoveNext ()
System.Linq.Enumerable:TryGetFirst<RimWorld.Scenario> (System.Collections.Generic.IEnumerable`1<RimWorld.Scenario>,bool&)
System.Linq.Enumerable:FirstOrDefault<RimWorld.Scenario> (System.Collections.Generic.IEnumerable`1<RimWorld.Scenario>)
RimWorld.Page_SelectScenario:EnsureValidSelection ()
RimWorld.Page_SelectScenario:PreOpen ()
Verse.WindowStack:Add (Verse.Window)
RimWorld.MainMenuDrawer/<>c:<DoMainMenuControls>b__18_11 ()
Verse.ListableOption:DrawOption (UnityEngine.Vector2,single)
Verse.OptionListingUtility:DrawOptionListing (UnityEngine.Rect,System.Collections.Generic.List`1<Verse.ListableOption>)
(wrapper dynamic-method) RimWorld.MainMenuDrawer:RimWorld.MainMenuDrawer.DoMainMenuControls_Patch0 (UnityEngine.Rect,bool)
RimWorld.MainMenuDrawer:MainMenuOnGUI ()
Verse.UIRoot_Entry:DoMainMenu ()
Verse.UIRoot_Entry:UIRootOnGUI ()
(wrapper dynamic-method) Verse.Root:Verse.Root.OnGUI_Patch1 (Verse.Root)

Could not load reference to Verse.ThingDef named EggSilverDragonFertilized
UnityEngine.StackTraceUtility:ExtractStackTrace ()
Verse.Log:Error (string)
Verse.ScribeExtractor:DefFromNode<Verse.ThingDef> (System.Xml.XmlNode)
Verse.Scribe_Defs:Look<Verse.ThingDef> (Verse.ThingDef&,string)
RimWorld.ScenPart_ThingCount:ExposeData ()
RimWorld.ScenPart_ScatterThings:ExposeData ()
Verse.ScribeExtractor:SaveableFromNode<RimWorld.ScenPart> (System.Xml.XmlNode,object[])
Verse.Scribe_Collections:Look<RimWorld.ScenPart> (System.Collections.Generic.List`1<RimWorld.ScenPart>&,bool,string,Verse.LookMode,object[])
Verse.Scribe_Collections:Look<RimWorld.ScenPart> (System.Collections.Generic.List`1<RimWorld.ScenPart>&,string,Verse.LookMode,object[])
RimWorld.Scenario:ExposeData ()
Verse.ScribeExtractor:SaveableFromNode<RimWorld.Scenario> (System.Xml.XmlNode,object[])
Verse.Scribe_Deep:Look<RimWorld.Scenario> (RimWorld.Scenario&,bool,string,object[])
Verse.Scribe_Deep:Look<RimWorld.Scenario> (RimWorld.Scenario&,string,object[])
Verse.GameDataSaveLoader:TryLoadScenario (string,RimWorld.ScenarioCategory,RimWorld.Scenario&)
RimWorld.ScenarioFiles:RecacheData ()
RimWorld.ScenarioLister:RecacheData ()
RimWorld.ScenarioLister:RecacheIfDirty ()
RimWorld.ScenarioLister/<ScenariosInCategory>d__2:MoveNext ()
System.Linq.Enumerable:TryGetFirst<RimWorld.Scenario> (System.Collections.Generic.IEnumerable`1<RimWorld.Scenario>,bool&)
System.Linq.Enumerable:FirstOrDefault<RimWorld.Scenario> (System.Collections.Generic.IEnumerable`1<RimWorld.Scenario>)
RimWorld.Page_SelectScenario:EnsureValidSelection ()
RimWorld.Page_SelectScenario:PreOpen ()
Verse.WindowStack:Add (Verse.Window)
RimWorld.MainMenuDrawer/<>c:<DoMainMenuControls>b__18_11 ()
Verse.ListableOption:DrawOption (UnityEngine.Vector2,single)
Verse.OptionListingUtility:DrawOptionListing (UnityEngine.Rect,System.Collections.Generic.List`1<Verse.ListableOption>)
(wrapper dynamic-method) RimWorld.MainMenuDrawer:RimWorld.MainMenuDrawer.DoMainMenuControls_Patch0 (UnityEngine.Rect,bool)
RimWorld.MainMenuDrawer:MainMenuOnGUI ()
Verse.UIRoot_Entry:DoMainMenu ()
Verse.UIRoot_Entry:UIRootOnGUI ()
(wrapper dynamic-method) Verse.Root:Verse.Root.OnGUI_Patch1 (Verse.Root)

Could not load reference to Verse.ThingDef named DragonNest
UnityEngine.StackTraceUtility:ExtractStackTrace ()
Verse.Log:Error (string)
Verse.ScribeExtractor:DefFromNode<Verse.ThingDef> (System.Xml.XmlNode)
Verse.Scribe_Defs:Look<Verse.ThingDef> (Verse.ThingDef&,string)
RimWorld.ScenPart_ThingCount:ExposeData ()
Verse.ScribeExtractor:SaveableFromNode<RimWorld.ScenPart> (System.Xml.XmlNode,object[])
Verse.Scribe_Collections:Look<RimWorld.ScenPart> (System.Collections.Generic.List`1<RimWorld.ScenPart>&,bool,string,Verse.LookMode,object[])
Verse.Scribe_Collections:Look<RimWorld.ScenPart> (System.Collections.Generic.List`1<RimWorld.ScenPart>&,string,Verse.LookMode,object[])
RimWorld.Scenario:ExposeData ()
Verse.ScribeExtractor:SaveableFromNode<RimWorld.Scenario> (System.Xml.XmlNode,object[])
Verse.Scribe_Deep:Look<RimWorld.Scenario> (RimWorld.Scenario&,bool,string,object[])
Verse.Scribe_Deep:Look<RimWorld.Scenario> (RimWorld.Scenario&,string,object[])
Verse.GameDataSaveLoader:TryLoadScenario (string,RimWorld.ScenarioCategory,RimWorld.Scenario&)
RimWorld.ScenarioFiles:RecacheData ()
RimWorld.ScenarioLister:RecacheData ()
RimWorld.ScenarioLister:RecacheIfDirty ()
RimWorld.ScenarioLister/<ScenariosInCategory>d__2:MoveNext ()
System.Linq.Enumerable:TryGetFirst<RimWorld.Scenario> (System.Collections.Generic.IEnumerable`1<RimWorld.Scenario>,bool&)
System.Linq.Enumerable:FirstOrDefault<RimWorld.Scenario> (System.Collections.Generic.IEnumerable`1<RimWorld.Scenario>)
RimWorld.Page_SelectScenario:EnsureValidSelection ()
RimWorld.Page_SelectScenario:PreOpen ()
Verse.WindowStack:Add (Verse.Window)
RimWorld.MainMenuDrawer/<>c:<DoMainMenuControls>b__18_11 ()
Verse.ListableOption:DrawOption (UnityEngine.Vector2,single)
Verse.OptionListingUtility:DrawOptionListing (UnityEngine.Rect,System.Collections.Generic.List`1<Verse.ListableOption>)
(wrapper dynamic-method) RimWorld.MainMenuDrawer:RimWorld.MainMenuDrawer.DoMainMenuControls_Patch0 (UnityEngine.Rect,bool)
RimWorld.MainMenuDrawer:MainMenuOnGUI ()
Verse.UIRoot_Entry:DoMainMenu ()
Verse.UIRoot_Entry:UIRootOnGUI ()
(wrapper dynamic-method) Verse.Root:Verse.Root.OnGUI_Patch1 (Verse.Root)

Some ScenParts had null defs.
UnityEngine.StackTraceUtility:ExtractStackTrace ()
Verse.Log:Warning (string)
RimWorld.Scenario:ExposeData ()
Verse.PostLoadIniter:DoAllPostLoadInits ()
Verse.ScribeLoader:FinalizeLoading ()
Verse.GameDataSaveLoader:TryLoadScenario (string,RimWorld.ScenarioCategory,RimWorld.Scenario&)
RimWorld.ScenarioFiles:RecacheData ()
RimWorld.ScenarioLister:RecacheData ()
RimWorld.ScenarioLister:RecacheIfDirty ()
RimWorld.ScenarioLister/<ScenariosInCategory>d__2:MoveNext ()
System.Linq.Enumerable:TryGetFirst<RimWorld.Scenario> (System.Collections.Generic.IEnumerable`1<RimWorld.Scenario>,bool&)
System.Linq.Enumerable:FirstOrDefault<RimWorld.Scenario> (System.Collections.Generic.IEnumerable`1<RimWorld.Scenario>)
RimWorld.Page_SelectScenario:EnsureValidSelection ()
RimWorld.Page_SelectScenario:PreOpen ()
Verse.WindowStack:Add (Verse.Window)
RimWorld.MainMenuDrawer/<>c:<DoMainMenuControls>b__18_11 ()
Verse.ListableOption:DrawOption (UnityEngine.Vector2,single)
Verse.OptionListingUtility:DrawOptionListing (UnityEngine.Rect,System.Collections.Generic.List`1<Verse.ListableOption>)
(wrapper dynamic-method) RimWorld.MainMenuDrawer:RimWorld.MainMenuDrawer.DoMainMenuControls_Patch0 (UnityEngine.Rect,bool)
RimWorld.MainMenuDrawer:MainMenuOnGUI ()
Verse.UIRoot_Entry:DoMainMenu ()
Verse.UIRoot_Entry:UIRootOnGUI ()
(wrapper dynamic-method) Verse.Root:Verse.Root.OnGUI_Patch1 (Verse.Root)

Initializing new game with mods:
  - brrainz.harmony
  - Ludeon.RimWorld
  - Ludeon.RimWorld.Royalty
  - Ludeon.RimWorld.Ideology
  - Ludeon.RimWorld.Biotech
  - UnlimitedHugs.HugsLib
  - rim.job.world
  - Vegapnk.rjw.genes
UnityEngine.StackTraceUtility:ExtractStackTrace ()
Verse.Log:Message (string)
Verse.Game:InitNewGame ()
Verse.Root_Play/<>c:<Start>b__1_2 ()
Verse.LongEventHandler:RunEventFromAnotherThread (System.Action)
Verse.LongEventHandler/<>c:<UpdateCurrentAsynchronousEvent>b__27_0 ()
System.Threading.ThreadHelper:ThreadStart_Context (object)
System.Threading.ExecutionContext:RunInternal (System.Threading.ExecutionContext,System.Threading.ContextCallback,object,bool)
System.Threading.ExecutionContext:Run (System.Threading.ExecutionContext,System.Threading.ContextCallback,object,bool)
System.Threading.ExecutionContext:Run (System.Threading.ExecutionContext,System.Threading.ContextCallback,object)
System.Threading.ThreadHelper:ThreadStart ()

Exception in JobDriver tick for pawn WildBoar25685 driver=JobDriver_Mating (toilIndex=2) driver.job=(RJW_Mate (Job_22) A=Thing_WildBoar25686)
System.NullReferenceException: Object reference not set to an instance of an object
  at RJW_Genes.Patch_OrgasmRush.Postfix (rjw.SexProps props) [0x00011] in <e6fab503b9d34d81ae46b270d0e399b4>:0 
  at (wrapper dynamic-method) rjw.SexUtility.rjw.SexUtility.SatisfyPersonal_Patch2(rjw.SexProps,single)
  at rjw.JobDriver_Sex.Orgasm () [0x0009f] in <3b9231f721ba465d83b8aa6ed272e01d>:0 
  at rjw.JobDriver_Sex.SexTick (Verse.Pawn pawn, Verse.Thing target, System.Boolean pawnnude, System.Boolean partnernude) [0x0001c] in <3b9231f721ba465d83b8aa6ed272e01d>:0 
  at rjw.JobDriver_Mating+<>c__DisplayClass1_0.<MakeNewToils>b__6 () [0x00069] in <3b9231f721ba465d83b8aa6ed272e01d>:0 
  at Verse.AI.JobDriver.DriverTick () [0x00163] in <0aa5ff10b5a84f7da48080504cb32469>:0 
UnityEngine.StackTraceUtility:ExtractStackTrace ()
Verse.Log:Error (string)
Verse.AI.JobUtility:TryStartErrorRecoverJob (Verse.Pawn,string,System.Exception,Verse.AI.JobDriver)
Verse.AI.JobDriver:DriverTick ()
Verse.AI.Pawn_JobTracker:JobTrackerTick ()
Verse.Pawn:Tick ()
Verse.TickList:Tick ()
Verse.TickManager:DoSingleTick ()
Verse.TickManager:TickManagerUpdate ()
Verse.Game:UpdatePlay ()
Verse.Root_Play:Update ()

Exception in JobDriver tick for pawn WildBoar25684 driver=JobDriver_Mating (toilIndex=2) driver.job=(RJW_Mate (Job_18) A=Thing_WildBoar25688)
System.NullReferenceException: Object reference not set to an instance of an object
  at RJW_Genes.Patch_OrgasmRush.Postfix (rjw.SexProps props) [0x00011] in <e6fab503b9d34d81ae46b270d0e399b4>:0 
  at (wrapper dynamic-method) rjw.SexUtility.rjw.SexUtility.SatisfyPersonal_Patch2(rjw.SexProps,single)
  at rjw.JobDriver_Sex.Orgasm () [0x0009f] in <3b9231f721ba465d83b8aa6ed272e01d>:0 
  at rjw.JobDriver_Sex.SexTick (Verse.Pawn pawn, Verse.Thing target, System.Boolean pawnnude, System.Boolean partnernude) [0x0001c] in <3b9231f721ba465d83b8aa6ed272e01d>:0 
  at rjw.JobDriver_Mating+<>c__DisplayClass1_0.<MakeNewToils>b__6 () [0x00069] in <3b9231f721ba465d83b8aa6ed272e01d>:0 
  at Verse.AI.JobDriver.DriverTick () [0x00163] in <0aa5ff10b5a84f7da48080504cb32469>:0 
UnityEngine.StackTraceUtility:ExtractStackTrace ()
Verse.Log:Error (string)
Verse.AI.JobUtility:TryStartErrorRecoverJob (Verse.Pawn,string,System.Exception,Verse.AI.JobDriver)
Verse.AI.JobDriver:DriverTick ()
Verse.AI.Pawn_JobTracker:JobTrackerTick ()
Verse.Pawn:Tick ()
Verse.TickList:Tick ()
Verse.TickManager:DoSingleTick ()
Verse.TickManager:TickManagerUpdate ()
Verse.Game:UpdatePlay ()
Verse.Root_Play:Update ()


Genes do not work with archotech organs.

Steps to reproduce:

  1. Get a male human-like pawn.
  2. Install "Insect breeder" and "Very much cum" genes.
  3. Install an archotech penis.
  4. Commit a vaginal intercourse with a female pawn.
  5. Commit a vaginal intercourse with a female pawn with an implanted insect egg.

Expected result:
Cum output is increased. Insect egg is fertilised.

Actual result:
Cum output stays the same. Insect egg is not fertilised.

Analysis:
One can argue that genes should not affect artificial bodyparts. However, in this particular case I say that as "fast runner" genes still make a pawn move faster even with non-natural legs - "more cum" should still provide more cum even for a non-natural genitals. And genital implants do not alter genetic payloads of sperm (children still inherit just the genes of their parents - they do not become some "half-archotech"), therefore "Insect breeder" should still work with any fertile penis regardless of its nature as per description.

Egg-Babies are not assigned Hive Xenotypes

I got some reports on Discord that the Halamyr Babies are born as baseliners, and not special genes are applied (neither for queens, drones or workers, babies are just baseline).

I touched on this by introducing a new patch in 47a7807, but it's only working limited. It's invoked but I always see L80 if (RJW_Genes_Settings.rjw_genes_detailed_debug) ModLog.Message("There was an egg-birth without a (detected) queen-parent"); so detecting the parents from eggs is currently poor.

Additional parts genes

I had an issue with additional breasts gene that if you edit pawns genome (i did through devmode/character editor though) with mentioned gene then the pawn gets one more row to the existing one. I guess (judging by the futanari gene report) same things most likely happen with additional penis gene.

Error when licentia labs is not present

when i try to use this mod without licentia labs receive an error about cuninflation.

to fix, just add licentia labs as dependency or disable this gene when there is no licentia lab

RimWorld 1.4.3613 rev641
UnityEngine.StackTraceUtility:ExtractStackTrace ()
Verse.Log:Message (string)
RimWorld.VersionControl:LogVersionNumber ()
Verse.Root:CheckGlobalInit ()
Verse.Root:Start ()
Verse.Root_Entry:Start ()

Mod RJW Sexperience Cum addiction Genes dependency (rjw.sexperience) needs to have <downloadUrl> and/or <steamWorkshopUrl> specified.
UnityEngine.StackTraceUtility:ExtractStackTrace ()
Verse.Log:Warning (string)
Verse.ModMetaData/ModMetaDataInternal:ValidateDependencies (bool)
Verse.ModMetaData:Init ()
Verse.ModMetaData:.ctor (string,bool)
Verse.ModLister:RebuildModList ()
Verse.ModLister:.cctor ()
Verse.ModsConfig:.cctor ()
Verse.LoadedModManager:InitializeMods ()
Verse.LoadedModManager:LoadAllActiveMods ()
Verse.PlayDataLoader:DoPlayLoad ()
Verse.PlayDataLoader:LoadAllPlayData (bool)
Verse.Root/<>c:<Start>b__6_1 ()
Verse.LongEventHandler:RunEventFromAnotherThread (System.Action)
Verse.LongEventHandler/<>c:<UpdateCurrentAsynchronousEvent>b__27_0 ()
System.Threading.ThreadHelper:ThreadStart_Context (object)
System.Threading.ExecutionContext:RunInternal (System.Threading.ExecutionContext,System.Threading.ContextCallback,object,bool)
System.Threading.ExecutionContext:Run (System.Threading.ExecutionContext,System.Threading.ContextCallback,object,bool)
System.Threading.ExecutionContext:Run (System.Threading.ExecutionContext,System.Threading.ContextCallback,object)
System.Threading.ThreadHelper:ThreadStart ()

[HugsLib] version 10.0.1
UnityEngine.StackTraceUtility:ExtractStackTrace ()
Verse.Log:Message (string)
HugsLib.Utils.ModLogger:Message (string,object[])
HugsLib.HugsLibController:InitializeController ()
HugsLib.HugsLibController:EarlyInitialize ()
HugsLib.Core.HugsLibMod:.ctor (Verse.ModContentPack)
System.Reflection.MonoCMethod:InternalInvoke (object,object[])
System.Reflection.MonoCMethod:DoInvoke (object,System.Reflection.BindingFlags,System.Reflection.Binder,object[],System.Globalization.CultureInfo)
System.Reflection.MonoCMethod:Invoke (System.Reflection.BindingFlags,System.Reflection.Binder,object[],System.Globalization.CultureInfo)
System.RuntimeType:CreateInstanceImpl (System.Reflection.BindingFlags,System.Reflection.Binder,object[],System.Globalization.CultureInfo,object[],System.Threading.StackCrawlMark&)
System.Activator:CreateInstance (System.Type,System.Reflection.BindingFlags,System.Reflection.Binder,object[],System.Globalization.CultureInfo,object[])
System.Activator:CreateInstance (System.Type,object[])
Verse.LoadedModManager:CreateModClasses ()
Verse.LoadedModManager:LoadAllActiveMods ()
Verse.PlayDataLoader:DoPlayLoad ()
Verse.PlayDataLoader:LoadAllPlayData (bool)
Verse.Root/<>c:<Start>b__6_1 ()
Verse.LongEventHandler:RunEventFromAnotherThread (System.Action)
Verse.LongEventHandler/<>c:<UpdateCurrentAsynchronousEvent>b__27_0 ()
System.Threading.ThreadHelper:ThreadStart_Context (object)
System.Threading.ExecutionContext:RunInternal (System.Threading.ExecutionContext,System.Threading.ContextCallback,object,bool)
System.Threading.ExecutionContext:Run (System.Threading.ExecutionContext,System.Threading.ContextCallback,object,bool)
System.Threading.ExecutionContext:Run (System.Threading.ExecutionContext,System.Threading.ContextCallback,object)
System.Threading.ThreadHelper:ThreadStart ()

Could not resolve cross-reference to Verse.GeneDef named rjw_genes_likes_cumflation (wanter=genes)
UnityEngine.StackTraceUtility:ExtractStackTrace ()
Verse.Log:Error (string)
Verse.DirectXmlCrossRefLoader:TryResolveDef<Verse.GeneDef> (string,Verse.FailMode,object)
Verse.DirectXmlCrossRefLoader/WantedRefForList`1<Verse.GeneDef>:TryResolve (Verse.FailMode)
Verse.DirectXmlCrossRefLoader/<>c__DisplayClass16_1:<ResolveAllWantedCrossReferences>b__0 (Verse.DirectXmlCrossRefLoader/WantedRef)
Verse.GenThreading/<>c__DisplayClass7_1`1<Verse.DirectXmlCrossRefLoader/WantedRef>:<ParallelForEach>b__0 (object)
System.Threading.QueueUserWorkItemCallback:WaitCallback_Context (object)
System.Threading.ExecutionContext:RunInternal (System.Threading.ExecutionContext,System.Threading.ContextCallback,object,bool)
System.Threading.ExecutionContext:Run (System.Threading.ExecutionContext,System.Threading.ContextCallback,object,bool)
System.Threading.QueueUserWorkItemCallback:System.Threading.IThreadPoolWorkItem.ExecuteWorkItem ()
System.Threading.ThreadPoolWorkQueue:Dispatch ()
System.Threading._ThreadPoolWaitCallback:PerformWaitCallback ()

RJW-Genes loaded
UnityEngine.StackTraceUtility:ExtractStackTrace ()
Verse.Log:Message (string)
BTE_MMLA.RJW_Genes:.cctor ()
System.Runtime.CompilerServices.RuntimeHelpers:RunClassConstructor (System.RuntimeTypeHandle)
Verse.StaticConstructorOnStartupUtility:CallAll ()
Verse.PlayDataLoader/<>c:<DoPlayLoad>b__4_5 ()
Verse.LongEventHandler:ExecuteToExecuteWhenFinished ()
Verse.LongEventHandler:UpdateCurrentAsynchronousEvent ()
Verse.LongEventHandler:LongEventsUpdate (bool&)
(wrapper dynamic-method) Verse.Root:Verse.Root.Update_Patch1 (Verse.Root)
Verse.Root_Entry:Update ()

[UnlimitedHugs.HugsLib] Patches on methods annotated as Obsolete were detected by HugsLib: Verse.Game.DeinitAndRemoveMap
UnityEngine.StackTraceUtility:ExtractStackTrace ()
Verse.Log:Warning (string)
HugsLib.Utils.HarmonyUtility:LogObsoleteMethodPatchErrors ()
HugsLib.Utils.HarmonyUtility:LogHarmonyPatchIssueErrors ()
Verse.LongEventHandler:ExecuteToExecuteWhenFinished ()
Verse.LongEventHandler:UpdateCurrentAsynchronousEvent ()
Verse.LongEventHandler:LongEventsUpdate (bool&)
(wrapper dynamic-method) Verse.Root:Verse.Root.Update_Patch1 (Verse.Root)
Verse.Root_Entry:Update ()

[HugsLib] initializing RJW
UnityEngine.StackTraceUtility:ExtractStackTrace ()
Verse.Log:Message (string)
HugsLib.Utils.ModLogger:Message (string,object[])
HugsLib.HugsLibController:EnumerateChildMods (bool)
HugsLib.HugsLibController:LoadReloadInitialize ()
Verse.LongEventHandler:RunEventFromAnotherThread (System.Action)
Verse.LongEventHandler/<>c:<UpdateCurrentAsynchronousEvent>b__27_0 ()
System.Threading.ThreadHelper:ThreadStart_Context (object)
System.Threading.ExecutionContext:RunInternal (System.Threading.ExecutionContext,System.Threading.ContextCallback,object,bool)
System.Threading.ExecutionContext:Run (System.Threading.ExecutionContext,System.Threading.ContextCallback,object,bool)
System.Threading.ExecutionContext:Run (System.Threading.ExecutionContext,System.Threading.ContextCallback,object)
System.Threading.ThreadHelper:ThreadStart ()

Hugs lib log:
https://gist.github.com/1a0eb7c04e4776ac668b4ad5eba74583

Consistent Gene Inheritance Breaks/Alters Caste Logic

The Consistent Gene Inheritance Mod produces overloaded Offsprings for the Caste System.

I got an image of the result in Discord:
image

The output is a merge of worker and breeder, I think first it inherited the breeders genes and then the worker caste logic was applied.

I think I will have to mark it as incompatible. For most things it's ok (e.g. Succubi), but the Caste Logic is extensively fucked by this.

Error on Game Load

Could not resolve cross-reference to Verse.GeneDef named rjw_genes_human_genitalia (wanter=genes)
UnityEngine.StackTraceUtility:ExtractStackTrace ()
(wrapper dynamic-method) Verse.Log:Verse.Log.Error_Patch6 (string)
Verse.DirectXmlCrossRefLoader:TryResolveDef<Verse.GeneDef> (string,Verse.FailMode,object)
Verse.DirectXmlCrossRefLoader/WantedRefForList`1<Verse.GeneDef>:TryResolve (Verse.FailMode)
Verse.DirectXmlCrossRefLoader/<>c__DisplayClass16_1:<ResolveAllWantedCrossReferences>b__0 (Verse.DirectXmlCrossRefLoader/WantedRef)
Verse.GenThreading/<>c__DisplayClass7_1`1<Verse.DirectXmlCrossRefLoader/WantedRef>:<ParallelForEach>b__0 (object)
System.Threading.QueueUserWorkItemCallback:WaitCallback_Context (object)
System.Threading.ExecutionContext:RunInternal (System.Threading.ExecutionContext,System.Threading.ContextCallback,object,bool)
System.Threading.ExecutionContext:Run (System.Threading.ExecutionContext,System.Threading.ContextCallback,object,bool)
System.Threading.QueueUserWorkItemCallback:System.Threading.IThreadPoolWorkItem.ExecuteWorkItem ()
System.Threading.ThreadPoolWorkQueue:Dispatch ()
System.Threading._ThreadPoolWaitCallback:PerformWaitCallback ()

Log: https://gist.github.com/HugsLibRecordKeeper/a07b431d626cdc57a88306929a817a0b

Big breast gene

EDIT: added “(core)” to “main”.

Breast size seem to be random when applying the big breasts gene. Pawns still get small or tiny breasts.

Test modlist:

  • harmony
  • Main (Core)
  • All DLC
  • hugslib
  • Rjw
  • Rjw genes

Fountain of Youth is a Fountain of Adulthood

var partnerAge = props.partner.ageTracker.AgeBiologicalTicks;
props.partner.ageTracker.AgeBiologicalTicks = Math.Max(MINIMUM_AGE, partnerAge - AGE_REDUCTION);

Should be something like

var partnerAge = props.partner.ageTracker.AgeBiologicalTicks;
If (partnerAge - AGE_REDUCTION > MINIMUM_AGE)
    props.partner.ageTracker.AgeBiologicalTicks = partnerAge - AGE_REDUCTION;

Vitality Drainer Missbehaviour

(Seen in 1.1-Beta 1)

I got a report from a user that a pawn does not gain fertilin through sex.

Update: It seems to be a mod conflict with RJW Animations Patch
The only other issue I had seen is that pawns do not get drained or any effects when sex gets aborted (e.g. by throwing up from cryptosickness) but that is expected behavior.

Our Mod-Jump Point triggers as a postfix for SexUtility.SatisfyPersonal in Patch_SatisfyPersonal_LifeForceGain.

Below is the table of things I tried with the Base-Incubus, but for me it works quite well tbh.

Pawn Target Action Result
Incubus Male Baseliner Seduce -> Sex Target Drained
Incubus Female Baseliner Vaginal Sex Target Drained
Incubus Female Baseliner Vaginal Rape Target Drained
Incubus Female Baseliner Seduce -> Sex Target Drained
Female Baseliner Incubus Cunnilingus Sex Baseliner Drained
Female Baseliner Incubus Cunnilingus Rape Baseliner Drained
Female Baseliner Incubus Reverse Anal Sex Baseliner Drained
Female Baseliner Incubus Anal Rimming Baseliner Drained
Incubus Female Baseliner Anal Tail Job Target Drained
Incubus Male Baseliner Anal Sex Target Drained
Male Baseliner Incubus Anal Sex Baseliner Drained
Male Baseliner Incubus Anal Rape Baseliner Drained

IncVamp = All Fertilin Genes + Sanguophage Genes

Pawn Target Action Result
IncVamp Female Baseliner Seduce -> Sex Target Drained
IncVamp Female Baseliner Vaginal Sex Target Drained
IncVamp Female Baseliner Anal Rape Target Drained
Female Baseliner IncVamp Reverse Vaginal Sex Baseliner Drained
Female Baseliner IncVamp Cunnilingus Sex Baseliner Drained

Users reported ModList

image

No genitalia swap by genes

Not sure if thats RJW general problem or just your mod, but male and female genes don't change pawn genitals when applied using gene implanter.

I implanted genotype with the female gene to male pawn, now they are recognised by the game as female, but have penis and flat breasts...

Female Only Gene Sometimes Forces Default head and other shenanigains

As title, tested using Anthrosonae genes, Auronya, and the Fawn Xenotype mods, the female only gene from this mod messes with the pawn generation in relation to Custom Body Parts, at least most of the time, If you Randomize you can get the proper custom parts, but children have a chance to Generate without custom body/head genes.

(REQUEST, Not a part of the bug report)
Also a Reiteration on my request to Allow the Futanari Gene to be used alongside the "No Vagina gene", particularly to spawn a Futanari Pawn which cannot be penetrated, or a gene that allows a pawn to Only Engage or not Be Allowed to Engage in certain Sex Positions.

Egg-Fertilization does not always apply

There are two issues at the moment,

  1. If eggs are not (quickly) fertilized, they remain unfertilized. This happened particularly often with vaginally placed eggs.
  2. Insect Eggs (from animals with ovipositors) are just shat out and not fertilized.

Patch operation error on startup (when Sexperience is not enabled?)

RJW-Genes generates a patching operation error on game start. I assume this is caused by lack of Sexperience mod:

[RJW Genes] Patch operation Verse.PatchOperationConditional(Defs/ThingDef[defName="GatheredCum"]/ingestible/outcomeDoers) failed
file: C:\Program Files (x86)\GOG Galaxy\Games\RimWorld\Mods\rjw-genes\Common\Patches\ThingDefs\Sexperience_Cum.xml 

Error on Queen Mood recalculation

My game keeps crashing and this exception is the last thing in my Player.Log which occurs for every pawn.

Exception while recalculating rjw_genes_rival_queen_mood thought state for pawn Loser: System.InvalidOperationException: Sequence contains no elements
  at System.Linq.Enumerable.First[TSource] (System.Collections.Generic.IEnumerable`1[T] source) [0x00010] in <351e49e2a5bf4fd6beabb458ce2255f3>:0 
  at RJW_Genes.HiveUtility.PawnIsOnHomeMap (Verse.Pawn pawn) [0x00029] in <183252e3855e4d60b5d7bdedba7e3627>:0 
  at RJW_Genes.Thoughtworker_RivalQueen_Mood.CurrentStateInternal (Verse.Pawn p) [0x00012] in <183252e3855e4d60b5d7bdedba7e3627>:0 
  at RimWorld.ThoughtWorker.CurrentState (Verse.Pawn p) [0x00010] in <95de19971c5d40878d8742747904cdcd>:0 
  at RimWorld.SituationalThoughtHandler.TryCreateThought (RimWorld.ThoughtDef def) [0x0001e] in <95de19971c5d40878d8742747904cdcd>:0  
(Filename: C:\buildslave\unity\build\Runtime/Export/Debug/Debug.bindings.h Line: 39)

Exception while recalculating rjw_genes_multiple_queens_mood thought state for pawn Loser: System.InvalidOperationException: Sequence contains no elements
  at System.Linq.Enumerable.First[TSource] (System.Collections.Generic.IEnumerable`1[T] source) [0x00010] in <351e49e2a5bf4fd6beabb458ce2255f3>:0 
  at RJW_Genes.HiveUtility.PawnIsOnHomeMap (Verse.Pawn pawn) [0x00029] in <183252e3855e4d60b5d7bdedba7e3627>:0 
  at RJW_Genes.Thoughtworker_MultipleQueens_Mood.CurrentStateInternal (Verse.Pawn p) [0x00026] in <183252e3855e4d60b5d7bdedba7e3627>:0 
  at RimWorld.ThoughtWorker.CurrentState (Verse.Pawn p) [0x00010] in <95de19971c5d40878d8742747904cdcd>:0 
  at RimWorld.SituationalThoughtHandler.TryCreateThought (RimWorld.ThoughtDef def) [0x0001e] in <95de19971c5d40878d8742747904cdcd>:0  
(Filename: C:\buildslave\unity\build\Runtime/Export/Debug/Debug.bindings.h Line: 39)

Exception while recalculating rjw_genes_no_queen_mood thought state for pawn Loser: System.InvalidOperationException: Sequence contains no elements
  at System.Linq.Enumerable.First[TSource] (System.Collections.Generic.IEnumerable`1[T] source) [0x00010] in <351e49e2a5bf4fd6beabb458ce2255f3>:0 
  at RJW_Genes.HiveUtility.PawnIsOnHomeMap (Verse.Pawn pawn) [0x00029] in <183252e3855e4d60b5d7bdedba7e3627>:0 
  at RJW_Genes.Thoughtworker_QueenAbsent_Mood.CurrentStateInternal (Verse.Pawn p) [0x00026] in <183252e3855e4d60b5d7bdedba7e3627>:0 
  at RimWorld.ThoughtWorker.CurrentState (Verse.Pawn p) [0x00010] in <95de19971c5d40878d8742747904cdcd>:0 
  at RimWorld.SituationalThoughtHandler.TryCreateThought (RimWorld.ThoughtDef def) [0x0001e] in <95de19971c5d40878d8742747904cdcd>:0  
(Filename: C:\buildslave\unity\build\Runtime/Export/Debug/Debug.bindings.h Line: 39)

Exception while recalculating rjw_genes_queen_present_mood thought state for pawn Loser: System.InvalidOperationException: Sequence contains no elements
  at System.Linq.Enumerable.First[TSource] (System.Collections.Generic.IEnumerable`1[T] source) [0x00010] in <351e49e2a5bf4fd6beabb458ce2255f3>:0 
  at RJW_Genes.HiveUtility.PawnIsOnHomeMap (Verse.Pawn pawn) [0x00029] in <183252e3855e4d60b5d7bdedba7e3627>:0 
  at RJW_Genes.Thoughtworker_QueenPresent_Mood.CurrentStateInternal (Verse.Pawn p) [0x00026] in <183252e3855e4d60b5d7bdedba7e3627>:0 
  at RimWorld.ThoughtWorker.CurrentState (Verse.Pawn p) [0x00010] in <95de19971c5d40878d8742747904cdcd>:0 
  at RimWorld.SituationalThoughtHandler.TryCreateThought (RimWorld.ThoughtDef def) [0x0001e] in <95de19971c5d40878d8742747904cdcd>:0  
(Filename: C:\buildslave\unity\build\Runtime/Export/Debug/Debug.bindings.h Line: 39)

I currently suspect it happens due to the fact im currently playing an extremely nomadic playthrough and as such i dont actually have a home map most of the time.

Milkable Colonist shrinks Breasts

I got a report on Discord that there are some issues with Milkable Colonists.

This was with v.1.1.4 and for both MC from Loverslab and Steam Workshop.

The following happens:

  1. Create a Colony with Pawns with Big breast Gene
  2. Pawns have correct tiddies
  3. Wait a Day
  4. Breasts shrink

I am not fully sure if this is an issue on my end.

Gender Fluid change based on feminization and masculinization

rather than a 0.25 chance every 2 days that the pawn might change gender

i would love to have for example:
2 males fucking, the one getting fucked or raped will become more feminine, as a result his penis would shrink and his breasts would grow, and maybe his body shape would change too.
and the other male would have his penis get bigger or something.

same thing for females, the more you fuck a female the bigger her breasts would become, and if she has a thin body shape it would change to female body shape.

i don't know about lesbians 😂

Issue with VE Malachai Patch

Follow up after 1.3.1 and #65, if I add the Malachai (without VE loaded):

<li Class="PatchOperationFindMod">
  <mods>
    <li>Alpha Genes</li>
  </mods>
  <match Class="PatchOperationAdd">
     <xpath>Defs/XenotypeDef[defName="AG_Malachai"]/genes</xpath>
       <value>
	  <li>rjw_genes_demonic_genitalia</li>
       </value>
  </match>
</li>

Then I get the following

[RJW Genes] Patch operation Verse.PatchOperationSequence(count=9, lastFailedOperation=Verse.PatchOperationFindMod(Alpha Genes)) failed
file: C:\Program Files (x86)\Steam\steamapps\common\RimWorld\Mods\rjw-genes\Common\Patches\Xenotypes\PatchAlphaGenes.xml

Likely issue is that I will need 2 mods to look for in the PatchOperation ...

pheromones adding social boost

i think it would make sense for pawns affected by aphrodisiac pheromones to have a social moodlet bonus toward those with the gene

Youth-Fountain does not youth

I got a report on Discord, that the gene does not fire. This is supported by some safe-files.

SPOILER_image
SPOILER_image

Expected difference should be around ~58k.

The user used direct control from a 51 year old pawn with the Youth Fountain Gene and a 26 year old pawn without.
Maybe important is that there was a new RJW Update recently, and that the pawn has fertility 0.

I have to verify myself, but in general the Youth Fountain seems a bit weird and appears quite often ...
Maybe it just doesn't fire anymore.

User used RJW-Genes 1.1.4 and RJW 5.3.4 (one behind, but 5.3.5 did only touch insect stuff).

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.