Jump to content

[mod] Rimworld-Animation Patch


Recommended Posts

Rimworld-Animation Patch

View File


This started as a patch for RimWorld-Animation, but has since grown to patch RJW and RimNudeWorld as well

There's no real theme here. It just fixes a few things, changes some others, as well as making some additions!

 

This mod requires RJW and RimWorld-Animation to function. RimNudeWorld isn't required, but is recommended. Let me know if you encounter any bugs

 

Here's a brief overview of what's included in this mod

 

  • 12 animations for casual sex
  • 7 animations for solo masturbation
  • 1 animations for group sex
  • Animated hands for certain animations
  • A need for privacy during sex
  • Pawns will react differently to the different types of sex that they witness - their reaction depends on their trait and ideology
  • A range of tweaks to how body parts are displayed, particularly when wearing different types of apparel

 

A full list of changes can be found in the main discussion thread on the forum


 

Edited by AbstractConcept
Link to comment

https://gitgud.io/AbstractConcept/rimworld-animations-patch

 

Known issues

  • This mod requires that you run RimWorld Animations v 1.2.8 or later, otherwise animations will result in errors
  • If you plan to use this mod's apparel cropping feature and the Sized Apparel mod, you must turn off texture caching or graphical glitches will occur (this can be done by adding Vanilla Expanded Framework to your mod list and enabling its 'Disable Texture Caching' setting)
  • Using Dubs Apparel Tweaks or the Show Hair mod may result in hair rendering over hats during animations 
  • To avoid certain graphical issues, Dubs Apparel Tweaks should be loaded before this mod while Babies and Children should be loaded after (if you choose to use them). This will mean that you will not be able to run this mod with Dubs Apparel Tweaks and Babies and Children running at the same time
  • Using Speak Up and Dirty Talk results in warning messages being posted in the log. This does not seem to be causing problems in their function, however. This issue will be monitored
  • This mod tweaks pretty much every animation involving humans, so it isn't currently compatible with the Tory's VoicePatch mod (unsupported animations will have no voices played)
  • This mod will result in graphical errors when using Pawnmorpher's 'Pawn scaling' setting

 

Full change log

 

Change log v 1.2.2

Spoiler

- Fix: Fix for portraits appearing blank when using the 'crop apparel' feature
- Fix: Underwear counts as covering private parts when determining basic nudity
- Fix: A pawn won't think that they are being cheated on if the catch their partner having sex with an animal or corpse
- Fix: Animals, wild men, mechanoids and factions that are hostile to you no longer have opinions about witnessed sex
- Fix: Fixed an issue which was causing pawns attending orgies to get stuck
- Fix: Fixed an issue where some animations without an orgasm event included would result in an error occurring
- Fix: Pawns no longer have missing body parts while showering
- Fix: Penises no longer not show while wearing pants (unless a pawn is wearing nothing else)
- Change: Significant performance optimisations have been made. You can now host orgies involving 50 or more people. Disable animated hands to further improve performance
- Change: Individualized moodlets are now applied for witnessing different sex acts (currently supports rape, beastiality, xenophilia, necrophilia)
- Change: Pawns might run away and vomit up their lunch if they witness necrophilia
- Change: Pawns who witness a cheating partner or xenophilia might go on an insulting spree
- Addition: Added a setting that allows you toggle whether wearing underwear alone is sufficient to satisfy an ideological need for modesty
- Addition: Added moodlets for pawns that have their underwear showing. These moodlets can be toggled on or off in the settings
- Addition: Added a new threesome animation for one male and two females ('the sandwich')

 

Change log v 1.2.1

Spoiler

- Change: Optimisation of the body part rendering code - there should be much better frame rates now. Just avoid hosting orgies involving 50 or more people...

- Addition: Added option to the basic settings menu to toggle hair redrawing for portraits (helps make sure that body parts are properly covered by long hair)
 

 

Change log v 1.2.0

Spoiler

- Fix: Fixed bug where married pawns could be accused of cheating when having sex with another spouse
- Fix: Fixed bug where some animations would not result in an orgasm occuring when they should be occuring
- Fix: Fixed bug where animations would end too quickly when quick sex was enabled, leaving pawns to finish with the default animation provided by RJW
- Fix: Fixed bug where enlarged bellies where being rendered behind pawns
- Fix: Fixed a RJW bug which resulted in all clothing being worn when the prefered clothing level was set to headgear only
- Fix: Fixed issue which resulted in strangely moving body parts when using Yayo's Animations
- Fix: Fixed a layering issue for anuses when using OTY Nude
- Change: This mod must be loaded after the following mods (if you plan on using them) - RimNudeWorld, OTY Nude, Babies and Children 
- Change: This mod now requires that you use RimWorld Animations v 1.2.8 or later
- Change: Sex animations have been increased across the board and now last about 35-40 seconds - quick animations will take about 20-25 seconds to finish
- Removal: Fix for eye implants and head wound placement has been removed (a fix for this bug is included in RimWorld Animations as of v 1.2.8)
- Addition: Added option to crop the bottoms of torso covering apparel (e.g., shirts) when not wearing pants - this feature is intended to be used alongside other mods that draw leg covering apparel on pawns (e.g., the Visible Pants mod). If you plan on using this feature and the Sized Apparel mod, you must turn off texture caching or graphical glitches will occur (this can be done by adding Vanilla Expanded Framework to your modlist and enabling its 'Disable Texture Caching' setting)
- Addition: Added a configuration menu which allows the user to customise apparel to either hide / reveal the groin, belly and / or breasts of pawns, plus an option to mark apparel as 'sex-wear' (these items of clothing will always be worn during sex animations)
- Addition: Added option to configure the amount of clothing that should be worn when having a quickie out of bed (pawns can be nude, wear headgear only, or be fully clothed)
- Addition: Individual items of clothing will be hidden if they cover a body part that is needed for a sex animation (e.g., pants will be removed for vaginal or anal sex, but not for oral) - this will not affect apparel marked as sex-wear

 

Change log v 1.1.1

Spoiler

- Fix: Fixed issue with the violation of corpses
- Fix: Fixed issue with xenophobes not reacting to xenophilic sex
- Fix: Fixed issue with not being able to toggle off reactions to cheating
- Change: Changed how the 'require privacy' toggle in the settings works - disabling this toggle now only stops pawns from feeling shame when being caught having / seeing non-taboo sex
- Removal: Removed unnecessary xpath patch which added a null pregnancy belly graphic to RimNudeWorld
- Addition: Added toggle to the settings which allows pawns to ignore indecent activities against prisoners and slaves

 

Change log v 1.1.0

Spoiler

- Addition: The reactions of pawns to encountering sex is now more nuanced. A pawn's reaction will now depend on 1) the sex act witnessed and 2) their traits and ideology (the Sexperience Ideology mod is recommended for this but is not required). Pawns can now have specific opinions on
    - Rape
    - Beastiality
    - Necrophilia
    - Xenophilia
Specific reactions can be individually toggled on/off. Work on this feature is on going - at the moment, these acts will either treated as a vanilla sex act, as taboo, or as a major taboo. More tailored thoughts are planned to be added
- Addition: Pawns can have extreme reactions to encountered sex acts. If a major taboo is witnessed the pawn will flee in horror, or may even start a fight the perpetrator! This feature can be toggled on/off

 

Change log v 1.0.5

Spoiler

- Fix: Missing text for the voyeur quirk has been fixed
- Change: Dubs Apparel Tweaks must now be loaded after this mod
- Removal: Test theesome animation removed

 

Change log v 1.0.4

Spoiler

- Fix: Fixed an issue when masturbating with a dildo
- Fix: Fixed an issue with masturbation animation selection
- Addition: Translation tags have been set up for the settings page - still only available in English however

 

Change log v 1.0.3

Spoiler

- Fix: fixed incompatibility issue with Vanilla Factions Expanded Ancients
- Fix: non-consensual / paid for sex acts won't be interrupted by people passing by anymore

 

Change log v 1.0.2

Spoiler

- Fix: fixed an issue with the animation anchors for sex activities outside of bed - pawns should not longer be placed oddly far apart or close together
- Fix: fixed an incompatibility issue with Dub's Apparel Tweaks
- Fix: fixed several body part layering issues for a number of alien races
- Fix: fixed an issue with the sex job driver failing for mechanoids
- Fix: sex animations should now only be played once for non-consensual / paid for sex acts
- Fix: a pawn's age is now considered when sending out an invitation to join in sex 
- Fix: pawns won't worry about privacy or infidelity while taking part in a ritual
- Fix: fixed an issue where pawns invited to join a threesome were causing it to stop

 

Change log v 1.0.1

Spoiler

- Fix: Fixed body parts on animals not being rendered while this mod is active 
- Fix: Fixed bug that lead to repeated mating with animals
- Addition: Added a toggle to the settings which will allow the player to choose whether pawns worry about infidelity

 

Change log v 1.0.0

Spoiler

- Fix: eye implants and head wounds should now line up correctly with a pawn's head during sex animations
- Fix: penis movement has been added back to sex animations (must be enabled under RimWorld-Animations settings) 
- Fix: a number of body part layering issues have been fixed for RimNudeWorld
- Fix: the timing of orgasms should now sync up with how they are depicted in sex animations
- Fix: fixed some issues with sex overdrive, the sex override meter, and how sex animations play out
- Fix: fixed issue with animations continuing if a pawn transitions straight from one sex act to another
- Fix: when masturbating in their own bed, pawns will position themselves in their sleeping spot rather than the middle of the bed
- Fix: RimNudeWorld's belly graphics will not appear until a third of the way through a pregnancy and will now be hidden under apparel that covers the torso
- Change: if a pawn doesn't appear to be actively using their own genitals during a sex animation (e.g., giving someone else a handjob) then they will not reach orgasm
- Change: genitals now count as being covered / protected by leg-covering apparel instead than torso-covering apparel
- Change: the scantier underwear from Underwhere and S16's extension mods now only cover / protect the genitals and chest instead of the legs and torso
- Change: added some variety to the log entries / job descriptions for different sex acts
- Change: if sex overdrive is turned on, the next sex act to take place will be chosen at random
- Change: pawns now have a chance to start a second sex animation after the first one ends, depending on how horny the participants still are 
- Change: tweaked the lengths of the original animations by c0ffee - animations will now generally finish within 25-30 seconds (~ 40 mins of in game time)
- Addition: included animations for the following sex acts (updated versions of the ones I originally posted on the forum) 
    - butterfly
    - breast job
    - hand job
    - fisting
    - rimming
    - sixty-nine
    - fingering
    - cunnilingus while standing
    - reverse cowgirl
    - face sitting
    - foot job
    - mutual masturbation
- Addition: included some new animations!
    - kissing / making out (based on an animation originally made by Tory)
    - solo masturbation while standing up and lying in a bed (includes separate animations for playing with genitals, breasts, anus and bed humping)
    - a threesome with one male and two females ('the cowgirls')
- Addition: certain animations have had animated hands added to them - these include hand jobs, fisting, fingering, solo masturbation and mutual masturbation (can be toggled on or off). This feature requires RimNudeWorld to be active
- Addition: pawn / sleep slot name tags can be hidden during animations so they don't cover up the action (can be toggled on or off)
- Addition: the distance between pawns during sex animations can be set to be scaled depending on the body sizes of the pawns involved (can be toggled on or off)
- Addition: clothing that is not worn during an animation will now appear in a nearby pile on the floor (can be toggled on or off)
- Addition: pawns now have a desire for privacy while having sex / masturbating, and they'll be unhappy and stop what they are doing if they get caught in the act (can be toggled on or off). Exhibitionists won't mind though 
- Addition: threesomes can triggered via two new ways - 1) when a pawn sets off to bed their partner a passerby might be invited to follow, and 2) if a pawn stumbles upon a couple having sex, they may just be invited to join in (the chance of a threesome occurring can be configured). In both cases, those involved must have a good opinion of each other and the invited pawn mustn't be doing an important job at the time
- Addition: a voyeur quirk has been added - these pawns get a rush out of catching people in the act

Edited by AbstractConcept
Link to comment

WOW these are really cool additions. You added hands and proper LOS privacy! And you fixed the eye implant animation bug lol

 

Feel free to just send me pull requests on stuff, I'm pretty receptive to accepting them and I know patching can be a little more annoying than just changing the source. Thanks for writing these :)

Link to comment

Could you add an option for polygamy so that I don't skip the unfaithful thing all the time and ladies condo is bestiality just skip please

also it just happened to me that the genitals of the animals disappeared and this is the only mod that I added

 

Edited by fotox
Link to comment
5 hours ago, Tory187 said:

Very cool, welcome back! I'll update all of my addons to try to be more compatible with this.

 

Good to be back! :) And thanks!

 

5 hours ago, c0ffeeeee said:

WOW these are really cool additions. You added hands and proper LOS privacy! And you fixed the eye implant animation bug lol

 

Feel free to just send me pull requests on stuff, I'm pretty receptive to accepting them and I know patching can be a little more annoying than just changing the source. Thanks for writing these :)

 

Thanks! And that's great to know, I'll look at doing that

 

1 hour ago, fotox said:

Could you add an option for polygamy so that I don't skip the unfaithful thing all the time and ladies condo is bestiality just skip please

also it just happened to me that the genitals of the animals disappeared and this is the only mod that I added

 

 

The fix for the animals is straightforward enough, that'll be included in the next version. Sorry, but I don't really follow what you're asking for in the first sentence 

Link to comment
10 hours ago, AbstractConcept said:

 

Good to be back! :) And thanks!

 

 

Thanks! And that's great to know, I'll look at doing that

 

 

The fix for the animals is straightforward enough, that'll be included in the next version. Sorry, but I don't really follow what you're asking for in the first sentence 

first thanks for the mod it solves fps problems too or at least it makes me more fluid
second I don't speak English very well so sorry for that and in that hour I mean that in the current mod there is an option to remove that the colonists when seeing someone having sex are ashamed because I would like you to add the option to remove infidelity since with any sexual relationship jumps for example animal with colonist puts on the unfaithful debuff

Link to comment
11 hours ago, Furryfurry said:

i have notis a 2 bug when a anima have sex it freeze and canot move. another one is if a human and a animal have sex it instant stop.

I had the same problem but loading the animalpatch animations fixed it.

 

Edit: didn't really fix it, they just mate repeatedly now

Edited by Rimworld Traveller
Link to comment

I've updated the mod to version 1.0.1 

 

This should fix the issue with body parts not being rendered on animals and the infinite loops of animals mating. It will hopefully also fix some issues with animal animations

 

If you're still running into problems with rendering or animations not playing correctly, it would be helpful if you could try disabling mods that might interfere with this one (mods that change how graphics are rendered in particular) and report back your findings so that I can work on any potential mod conflicts that are occurring

 

As requested I've also added a toggle to the settings that toggles whether pawns care about infidelity

Link to comment

With this mod installed the orgies/rituals from the RJW-sexperience-ideology mod get awkward because suddenly everyone is getting negative moods because everyone is "caught" cheating on each other.

Is it possible to make CaughtCheating and perhaps also the negative "Seen..." and "Saw..." thoughts optional?

Or perhaps to make an exception for these during orgy-events and rituals?

I also have the RJW Orgy Event mod installed which adds an orgy gathering event as a party but I have no idea how to activate this for testing.

But I assume the problems will be similar when this event activates.

Link to comment
8 hours ago, darknoss said:

Hello, this patch will cause some abnormalities on the layer, and there will be some problems with ears, horns and tails. Please check again. Thank you

沒裝.jpg

有裝.jpg

Same issue here with Ratkin ears being drawn beneath their head.

Link to comment

Exception in JobDriver tick for pawn Stelmach driver=JobDriver_RandomRape (toilIndex=2) driver.job=(RandomRape (Job_1711940) A=Thing_ATK_Caninemorph472868)
System.ArgumentNullException: Value cannot be null.
Parameter name: key
  at System.Collections.Generic.Dictionary`2[TKey,TValue].FindEntry (TKey key) [0x00008] in <eae584ce26bc40229c1b1aa476bfa589>:0 
  at System.Collections.Generic.Dictionary`2[TKey,TValue].TryGetValue (TKey key, TValue& value) [0x00000] in <eae584ce26bc40229c1b1aa476bfa589>:0 
  at VFEAncients.PowerWorker_PretendTrait.HasTrait_Postfix (RimWorld.TraitDef tDef, Verse.Pawn ___pawn, System.Boolean& __result) [0x00004] in <a95d0acf792e4bdc865f82cb86e04160>:0 
  at (wrapper dynamic-method) RimWorld.TraitSet.RimWorld.TraitSet.HasTrait_Patch1(RimWorld.TraitSet,RimWorld.TraitDef)
  at Rimworld_Animations_Patch.PawnExtension.HasPrivacy (Verse.Pawn pawn, System.Single radius) [0x0004f] in <cb70bdcb08b04c699fac382cdf9159ec>:0 
  at Rimworld_Animations_Patch.HarmonyPatch_JobDriver_Sex_SexTick.Postfix (rjw.JobDriver_Sex& __instance, Verse.Pawn pawn) [0x00072] in <cb70bdcb08b04c699fac382cdf9159ec>:0 
  at (wrapper dynamic-method) rjw.JobDriver_Sex.rjw.JobDriver_Sex.SexTick_Patch2(rjw.JobDriver_Sex,Verse.Pawn,Verse.Thing,bool,bool)
  at rjw.JobDriver_Rape+<>c__DisplayClass1_0.<MakeNewToils>b__7 () [0x00069] in <5f0b8c310d484721bc974ba367f4d8db>:0 
  at (wrapper dynamic-method) Verse.AI.JobDriver.Verse.AI.JobDriver.DriverTick_Patch0(Verse.AI.JobDriver)
UnityEngine.StackTraceUtility:ExtractStackTrace ()
(wrapper dynamic-method) Verse.Log:Verse.Log.Error_Patch3 (string)
Verse.AI.JobUtility:TryStartErrorRecoverJob (Verse.Pawn,string,System.Exception,Verse.AI.JobDriver)
(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_Patch2 (Verse.Pawn)
(wrapper dynamic-method) Verse.TickList:Verse.TickList.Tick_Patch0 (Verse.TickList)
(wrapper dynamic-method) Verse.TickManager:Verse.TickManager.DoSingleTick_Patch3 (Verse.TickManager)
Verse.TickManager:TickManagerUpdate ()
(wrapper dynamic-method) Verse.Game:Verse.Game.UpdatePlay_Patch1 (Verse.Game)
(wrapper dynamic-method) Verse.Root_Play:Verse.Root_Play.Update_Patch1 (Verse.Root_Play)


Exception in JobDriver tick for pawn Mittelstadt driver=JobDriver_Masturbate (toilIndex=1) driver.job=(RJW_Masturbate (Job_1730800) A=Thing_Human472831 B=Thing_SleepingSpot435390 C=(172, 0, 202))
System.ArgumentNullException: Value cannot be null.
Parameter name: key
  at System.Collections.Generic.Dictionary`2[TKey,TValue].FindEntry (TKey key) [0x00008] in <eae584ce26bc40229c1b1aa476bfa589>:0 
  at System.Collections.Generic.Dictionary`2[TKey,TValue].TryGetValue (TKey key, TValue& value) [0x00000] in <eae584ce26bc40229c1b1aa476bfa589>:0 
  at VFEAncients.PowerWorker_PretendTrait.HasTrait_Postfix (RimWorld.TraitDef tDef, Verse.Pawn ___pawn, System.Boolean& __result) [0x00004] in <a95d0acf792e4bdc865f82cb86e04160>:0 
  at (wrapper dynamic-method) RimWorld.TraitSet.RimWorld.TraitSet.HasTrait_Patch1(RimWorld.TraitSet,RimWorld.TraitDef)
  at Rimworld_Animations_Patch.PawnExtension.HasPrivacy (Verse.Pawn pawn, System.Single radius) [0x0004f] in <cb70bdcb08b04c699fac382cdf9159ec>:0 
  at Rimworld_Animations_Patch.HarmonyPatch_JobDriver_Sex_SexTick.Postfix (rjw.JobDriver_Sex& __instance, Verse.Pawn pawn) [0x00019] in <cb70bdcb08b04c699fac382cdf9159ec>:0 
  at (wrapper dynamic-method) rjw.JobDriver_Sex.rjw.JobDriver_Sex.SexTick_Patch2(rjw.JobDriver_Sex,Verse.Pawn,Verse.Thing,bool,bool)
  at rjw.JobDriver_Masturbate.<MakeNewToils>b__4_5 () [0x00034] in <5f0b8c310d484721bc974ba367f4d8db>:0 
  at (wrapper dynamic-method) Verse.AI.JobDriver.Verse.AI.JobDriver.DriverTick_Patch0(Verse.AI.JobDriver)
UnityEngine.StackTraceUtility:ExtractStackTrace ()
(wrapper dynamic-method) Verse.Log:Verse.Log.Error_Patch3 (string)
Verse.AI.JobUtility:TryStartErrorRecoverJob (Verse.Pawn,string,System.Exception,Verse.AI.JobDriver)
(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_Patch2 (Verse.Pawn)
(wrapper dynamic-method) Verse.TickList:Verse.TickList.Tick_Patch0 (Verse.TickList)
(wrapper dynamic-method) Verse.TickManager:Verse.TickManager.DoSingleTick_Patch3 (Verse.TickManager)
Verse.TickManager:TickManagerUpdate ()
(wrapper dynamic-method) Verse.Game:Verse.Game.UpdatePlay_Patch1 (Verse.Game)
(wrapper dynamic-method) Verse.Root_Play:Verse.Root_Play.Update_Patch1 (Verse.Root_Play)

Exception in Verse.AI.JobDriver.DriverTick: System.NullReferenceException: Object reference not set to an instance of an object
  at Rimworld_Animations_Patch.PawnExtension.HasPrivacy (Verse.Pawn pawn, System.Single radius) [0x00039] in <cb70bdcb08b04c699fac382cdf9159ec>:0 
  at Rimworld_Animations_Patch.HarmonyPatch_JobDriver_Sex_SexTick.Postfix (rjw.JobDriver_Sex& __instance, Verse.Pawn pawn) [0x00072] in <cb70bdcb08b04c699fac382cdf9159ec>:0 
  at rjw.JobDriver_Sex.SexTick (Verse.Pawn pawn, Verse.Thing target, System.Boolean pawnnude, System.Boolean partnernude) [0x001aa] in <5f0b8c310d484721bc974ba367f4d8db>:0 
     - prefix rjwanim: Boolean Rimworld_Animations.HarmonyPatch_SexTick:Prefix(JobDriver_Sex __instance, Pawn pawn, Thing target)
     - postfix Rimworld_Animations_Patch: Void Rimworld_Animations_Patch.HarmonyPatch_JobDriver_Sex_SexTick:Postfix(JobDriver_Sex& __instance, Pawn pawn)
  at rjw.JobDriver_Rape+<>c__DisplayClass1_0.<MakeNewToils>b__7 () [0x00069] in <5f0b8c310d484721bc974ba367f4d8db>:0 
  at Verse.AI.JobDriver.DriverTick () [0x00213] in <81af9f8a18324e17b286924a43555a7c>:0 
     - transpiler net.pardeike.rimworld.lib.harmony: IEnumerable`1 VisualExceptions.ExceptionsAndActivatorHandler:Transpiler(IEnumerable`1 instructions, MethodBase original)
     - transpiler Krkr.RocketMan.Soyuz: IEnumerable`1 Soyuz.Patches.JobDriver_DriverTick_Patch:Transpiler(IEnumerable`1 instructions, ILGenerator generator)
     - transpiler Orion.Hospitality: IEnumerable`1 Hospitality.Patches.JobDriver_Patch+DriverTick:Transpiler(IEnumerable`1 insts)


No animation found
UnityEngine.StackTraceUtility:ExtractStackTrace ()
Verse.Log:Message (string)
(wrapper dynamic-method) Rimworld_Animations.HarmonyPatch_JobDriver_SexBaseInitiator_Start:Rimworld_Animations.HarmonyPatch_JobDriver_SexBaseInitiator_Start.RerollAnimations_Patch1 (Verse.Pawn,int&,Verse.Thing,rjw.xxx/rjwSextype,bool,rjw.SexProps)
Rimworld_Animations.HarmonyPatch_JobDriver_SexBaseInitiator_Start:Postfix (rjw.JobDriver_SexBaseInitiator&)
(wrapper dynamic-method) rjw.JobDriver_SexBaseInitiator:rjw.JobDriver_SexBaseInitiator.Start_Patch4 (rjw.JobDriver_SexBaseInitiator)
rjw.JobDriver_Rape/<>c__DisplayClass1_0:<MakeNewToils>b__6 ()
(wrapper dynamic-method) Verse.AI.JobDriver:Verse.AI.JobDriver.TryActuallyStartNextToil_Patch0 (Verse.AI.JobDriver)
Verse.AI.JobDriver:ReadyForNextToil ()
(wrapper dynamic-method) Verse.AI.JobDriver:Verse.AI.JobDriver.TryActuallyStartNextToil_Patch0 (Verse.AI.JobDriver)
Verse.AI.JobDriver:ReadyForNextToil ()
Verse.AI.JobDriver:Notify_PatherArrived ()
Verse.AI.Pawn_PathFollower:PatherArrived ()
(wrapper dynamic-method) Verse.AI.Pawn_PathFollower:Verse.AI.Pawn_PathFollower.TryEnterNextPathCell_Patch1 (Verse.AI.Pawn_PathFollower)
(wrapper dynamic-method) Verse.AI.Pawn_PathFollower:Verse.AI.Pawn_PathFollower.PatherTick_Patch3 (Verse.AI.Pawn_PathFollower)
(wrapper dynamic-method) Verse.Pawn:Verse.Pawn.Tick_Patch2 (Verse.Pawn)
(wrapper dynamic-method) Verse.TickList:Verse.TickList.Tick_Patch0 (Verse.TickList)
(wrapper dynamic-method) Verse.TickManager:Verse.TickManager.DoSingleTick_Patch3 (Verse.TickManager)
Verse.TickManager:TickManagerUpdate ()
(wrapper dynamic-method) Verse.Game:Verse.Game.UpdatePlay_Patch1 (Verse.Game)
(wrapper dynamic-method) Verse.Root_Play:Verse.Root_Play.Update_Patch1 (Verse.Root_Play)

Prolly a conflict with one of the optimizers. Jobdrivers are f*cked


https://gist.github.com/014153a39adedfddc90fb1e66833ac73

Edited by pointemorte
Link to comment

Hey, first I wanna say really nice work on this, adds a lot of flavour.

Got some issues to report though:
A.: Sometimes when slaves get raped in my female supremacist colony, at the end of the act when the effects should be applied, the slave suddenly starts "raping back" for a second, interrupting the sex act and nothing happens, no mood buffs, no applied cum etc. So far I assume it has something to do with slaves/comfort pawns since it only happened with those involved.

B.: The "invite bystanders" thing doesn't factor in age restrictions, so it happens frequently that underaged pawns get invited over "for some fun". Not personally aversed to it, but I bet some people might be. x)

That's all I can blame on this patch so far, keep up the good work.

Link to comment

This mod has been updated to v 1.0.2

 

Thanks to everyone for their support and for reporting the issues they've encountered!

 

I think I've resolved the issues raised by @darknoss, @GemGem, @pinbeo,  @pointemorte and @BrandstifterFussel. Please let me know if it has :)

 

@frankfakename and @ColdXero, could you provide some more information about what's happening? Unfortunately the provided log file has a lot of errors listed, but I couldn't find anything that was obviously linked to the error you encountered (the clipboard may have run out of room, given the last error message listed is cut off) 

Edited by AbstractConcept
Link to comment

Sorry my log wasn't helpful. I had two different errors, one for quickie and one for rape. Perhaps there's more similar ones, but those are the two I've seen so far.
Colonists initiate a scene, which then breaks off after one second or so, without filling sex need.

====1====
Exception in JobDriver tick for pawn Vicky driver=JobDriver_SexQuick (toilIndex=4) driver.job=(Quickie (Job_2739) A=Thing_Human1619)
System.ArgumentNullException: Value cannot be null.
Parameter name: key
  at System.Collections.Generic.Dictionary`2[TKey,TValue].FindEntry (TKey key) [0x00008] in <eae584ce26bc40229c1b1aa476bfa589>:0
  at System.Collections.Generic.Dictionary`2[TKey,TValue].TryGetValue (TKey key, TValue& value) [0x00000] in <eae584ce26bc40229c1b1aa476bfa589>:0
  at VFEAncients.PowerWorker_PretendTrait.HasTrait_Postfix (RimWorld.TraitDef tDef, Verse.Pawn ___pawn, System.Boolean& __result) [0x00004] in <b0b75152352f47a1a26f62c5c7775aca>:0
  at (wrapper dynamic-method) RimWorld.TraitSet.RimWorld.TraitSet.HasTrait_Patch1(RimWorld.TraitSet,RimWorld.TraitDef)
  at Rimworld_Animations_Patch.PawnExtension.HasPrivacy (Verse.Pawn pawn, System.Single radius) [0x0004f] in <cb70bdcb08b04c699fac382cdf9159ec>:0
  at Rimworld_Animations_Patch.HarmonyPatch_JobDriver_Sex_SexTick.Postfix (rjw.JobDriver_Sex& __instance, Verse.Pawn pawn) [0x00072] in <cb70bdcb08b04c699fac382cdf9159ec>:0
  at (wrapper dynamic-method) rjw.JobDriver_Sex.rjw.JobDriver_Sex.SexTick_Patch2(rjw.JobDriver_Sex,Verse.Pawn,Verse.Thing,bool,bool)
  at rjw.JobDriver_SexQuick+<>c__DisplayClass1_0.<MakeNewToils>b__8 () [0x00069] in <4b4e751411eb4ac9b63256e195333fe7>:0
  at (wrapper dynamic-method) Verse.AI.JobDriver.Verse.AI.JobDriver.DriverTick_Patch0(Verse.AI.JobDriver)
UnityEngine.StackTraceUtility:ExtractStackTrace ()
Verse.Log:Error (string)
Verse.AI.JobUtility:TryStartErrorRecoverJob (Verse.Pawn,string,System.Exception,Verse.AI.JobDriver)
(wrapper dynamic-method) Verse.AI.JobDriver:Verse.AI.JobDriver.DriverTick_Patch0 (Verse.AI.JobDriver)
Verse.AI.Pawn_JobTracker:JobTrackerTick ()
(wrapper dynamic-method) Verse.Pawn:Verse.Pawn.Tick_Patch3 (Verse.Pawn)
Verse.TickList:Tick ()
(wrapper dynamic-method) Verse.TickManager:Verse.TickManager.DoSingleTick_Patch4 (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)
====2====
Exception in JobDriver tick for pawn Vicky driver=JobDriver_RapeComfortPawn (toilIndex=2) driver.job=(RapeComfortPawn (Job_2975) A=Thing_Human1619)
System.ArgumentNullException: Value cannot be null.
Parameter name: key
  at System.Collections.Generic.Dictionary`2[TKey,TValue].FindEntry (TKey key) [0x00008] in <eae584ce26bc40229c1b1aa476bfa589>:0
  at System.Collections.Generic.Dictionary`2[TKey,TValue].TryGetValue (TKey key, TValue& value) [0x00000] in <eae584ce26bc40229c1b1aa476bfa589>:0
  at VFEAncients.PowerWorker_PretendTrait.HasTrait_Postfix (RimWorld.TraitDef tDef, Verse.Pawn ___pawn, System.Boolean& __result) [0x00004] in <b0b75152352f47a1a26f62c5c7775aca>:0
  at (wrapper dynamic-method) RimWorld.TraitSet.RimWorld.TraitSet.HasTrait_Patch1(RimWorld.TraitSet,RimWorld.TraitDef)
  at Rimworld_Animations_Patch.PawnExtension.HasPrivacy (Verse.Pawn pawn, System.Single radius) [0x0004f] in <cb70bdcb08b04c699fac382cdf9159ec>:0
  at Rimworld_Animations_Patch.HarmonyPatch_JobDriver_Sex_SexTick.Postfix (rjw.JobDriver_Sex& __instance, Verse.Pawn pawn) [0x00072] in <cb70bdcb08b04c699fac382cdf9159ec>:0
  at (wrapper dynamic-method) rjw.JobDriver_Sex.rjw.JobDriver_Sex.SexTick_Patch2(rjw.JobDriver_Sex,Verse.Pawn,Verse.Thing,bool,bool)
  at rjw.JobDriver_RapeComfortPawn+<>c__DisplayClass0_0.<MakeNewToils>b__6 () [0x00069] in <4b4e751411eb4ac9b63256e195333fe7>:0
  at (wrapper dynamic-method) Verse.AI.JobDriver.Verse.AI.JobDriver.DriverTick_Patch0(Verse.AI.JobDriver)
UnityEngine.StackTraceUtility:ExtractStackTrace ()
Verse.Log:Error (string)
Verse.AI.JobUtility:TryStartErrorRecoverJob (Verse.Pawn,string,System.Exception,Verse.AI.JobDriver)
(wrapper dynamic-method) Verse.AI.JobDriver:Verse.AI.JobDriver.DriverTick_Patch0 (Verse.AI.JobDriver)
Verse.AI.Pawn_JobTracker:JobTrackerTick ()
(wrapper dynamic-method) Verse.Pawn:Verse.Pawn.Tick_Patch3 (Verse.Pawn)
Verse.TickList:Tick ()
(wrapper dynamic-method) Verse.TickManager:Verse.TickManager.DoSingleTick_Patch4 (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)

Link to comment

Unfortunately 1.0.2 didn't help. I still got this error:
Exception in JobDriver tick for pawn Vicky driver=JobDriver_SexQuick (toilIndex=4) driver.job=(Quickie (Job_2951) A=Thing_Human1619)
System.ArgumentNullException: Value cannot be null.
Parameter name: key
  at System.Collections.Generic.Dictionary`2[TKey,TValue].FindEntry (TKey key) [0x00008] in <eae584ce26bc40229c1b1aa476bfa589>:0
  at System.Collections.Generic.Dictionary`2[TKey,TValue].TryGetValue (TKey key, TValue& value) [0x00000] in <eae584ce26bc40229c1b1aa476bfa589>:0
  at VFEAncients.PowerWorker_PretendTrait.HasTrait_Postfix (RimWorld.TraitDef tDef, Verse.Pawn ___pawn, System.Boolean& __result) [0x00004] in <b0b75152352f47a1a26f62c5c7775aca>:0
  at (wrapper dynamic-method) RimWorld.TraitSet.RimWorld.TraitSet.HasTrait_Patch1(RimWorld.TraitSet,RimWorld.TraitDef)
  at Rimworld_Animations_Patch.PawnExtension.HasPrivacy (Verse.Pawn pawn, System.Single radius) [0x000c0] in <22c184361780410ba8ee2c34d37d70ac>:0
  at Rimworld_Animations_Patch.HarmonyPatch_JobDriver_Sex_SexTick.Postfix (rjw.JobDriver_Sex& __instance, Verse.Pawn pawn) [0x00072] in <22c184361780410ba8ee2c34d37d70ac>:0
  at (wrapper dynamic-method) rjw.JobDriver_Sex.rjw.JobDriver_Sex.SexTick_Patch2(rjw.JobDriver_Sex,Verse.Pawn,Verse.Thing,bool,bool)
  at rjw.JobDriver_SexQuick+<>c__DisplayClass1_0.<MakeNewToils>b__8 () [0x00069] in <4b4e751411eb4ac9b63256e195333fe7>:0
  at (wrapper dynamic-method) Verse.AI.JobDriver.Verse.AI.JobDriver.DriverTick_Patch0(Verse.AI.JobDriver)
UnityEngine.StackTraceUtility:ExtractStackTrace ()
Verse.Log:Error (string)
Verse.AI.JobUtility:TryStartErrorRecoverJob (Verse.Pawn,string,System.Exception,Verse.AI.JobDriver)
(wrapper dynamic-method) Verse.AI.JobDriver:Verse.AI.JobDriver.DriverTick_Patch0 (Verse.AI.JobDriver)
Verse.AI.Pawn_JobTracker:JobTrackerTick ()
(wrapper dynamic-method) Verse.Pawn:Verse.Pawn.Tick_Patch3 (Verse.Pawn)
Verse.TickList:Tick ()
(wrapper dynamic-method) Verse.TickManager:Verse.TickManager.DoSingleTick_Patch4 (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)

Link to comment

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. For more information, see our Privacy Policy & Terms of Use