[A17] Pawns Are Capable! (No more disabled work!) Updated to V3.2!

Started by Rimrue, June 18, 2017, 01:26:26 AM

Previous topic - Next topic

Rimrue

Well, I do tend to turn off the other mods while testing. Lol But it's no fun playing with just one mod, so I admit that sometimes my testing isn't quite as thorough as it could be.  :P Good thing we've got you guys to catch the problems so we can fix them.  ;D

SpaceDorf

@rimrue and dburgdorf

another thing I thought of according to the "incabable traits" is how about generating fitting counter traits like
brown thumb has green thumb, pacifist has trigger happy and careful shooter,
only to rig the numbers game of generating traits by having similiar numbers of good and bad outcomes.
Maxim 1   : Pillage, then burn
Maxim 37 : There is no overkill. There is only open fire and reload.
Rule 34 of Rimworld :There is a mod for that.
Avatar Made by Chickenplucker

Rimrue

I thought of adding more good traits to balance the bad ones, but there are already a few traits mods out there that do that. Additional Traits has a bunch with skill buffs that mesh nicely with the traits in PaC.  Extended Traits also has a few. But I haven't patched those mods (patching is my nemesis. Lol) to prevent the good traits from generating on pawns with "incapable" traits yet.

Hope that helps!

SpaceDorf

Maxim 1   : Pillage, then burn
Maxim 37 : There is no overkill. There is only open fire and reload.
Rule 34 of Rimworld :There is a mod for that.
Avatar Made by Chickenplucker

Rimrue

Updated Pawns Are Capable! to version 3.2!

-Pawns are now much less likely to generate with a childhood and adulthood backstory that conflict with each other. E.g. Healer will no longer spawn with the Vengeful Child backstory which makes them hate doctoring.

- The "assigned to hated work" debuff now lasts a minimum of 3 hours.

- Added a configuration option in the mod menu to allow the possibility of pawns to spontaneously generate a hatred for particular jobs (but only if a pawn has no passion for the work), just as they can spontaneously disappear.

Steam and Dropbox links updated in the OP! :)

mrsebseb

Getting an error when using this with Rimslaves and/or Minions.

Exception in Tick (pawn=Maiden172150, job=Clean A=Thing_FilthAnimalFilth217593, CurToil=4): System.NullReferenceException: Object reference not set to an instance of an object
at PawnsAreCapable.HarmonyPatches.Pawn_RecordsTracker_Increment.Prefix (RimWorld.RecordDef,RimWorld.Pawn_RecordsTracker) <0x00036>
at (wrapper dynamic-method) RimWorld.Pawn_RecordsTracker.Increment_Patch1 (object,RimWorld.RecordDef) <0x00018>
at CleaningArea.JobDriver_CleanFilth_CleaningArea.<MakeNewToils>b__6_1 () <0x00085>
at Verse.AI.JobDriver.DriverTick () <0x00322>
lastJobGiver=Verse.JobGiver_SlaveCleanFilth, curJob.def=Clean, curDriver=CleaningArea.JobDriver_CleanFilth_CleaningArea
Verse.Log:Error(String)
Verse.AI.Pawn_JobTracker:StartErrorRecoverJob(String)
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()


It happens as soon as a minion or slave finishes cleaning.
Tried fiddling with the load order, but it changes nothing.
It only seems to be cleaning and there is not a problem with other mods that adds "animals" that can clean, like Misc Robots, for instance.
I've reported the error to Walking Problem as well.

dburgdorf

Quote from: mrsebseb on July 25, 2017, 10:34:10 AMGetting an error when using this with Rimslaves and/or Minions.

I haven't used either of those mods, but I can certainly make a note to look into it and see if I can figure out what's going wrong.
- Rainbeau Flambe (aka Darryl Burgdorf) -
Old. Short. Grumpy. Bearded. "Yeah, I'm a dorf."



Buy me a Dr Pepper?

SpaceDorf

They both override the AnimalJobGiver and use their own,
it may be because of that.
I use PaC and Minions together and had no Problems so far ( at least not with those two .. )
Maxim 1   : Pillage, then burn
Maxim 37 : There is no overkill. There is only open fire and reload.
Rule 34 of Rimworld :There is a mod for that.
Avatar Made by Chickenplucker

dburgdorf

Quote from: SpaceDorf on July 25, 2017, 11:58:03 AM
They both override the AnimalJobGiver and use their own....

Neither version of PAC makes any changes to AnimalJobGiver, but if the modified version of the method references something that PAC *does* change, that could potentially be the source of trouble. So I have at least an idea of where to look, now, when I get home. ;)
- Rainbeau Flambe (aka Darryl Burgdorf) -
Old. Short. Grumpy. Bearded. "Yeah, I'm a dorf."



Buy me a Dr Pepper?

SpaceDorf

Quote from: dburgdorf on July 25, 2017, 12:53:30 PM
Quote from: SpaceDorf on July 25, 2017, 11:58:03 AM
They both override the AnimalJobGiver and use their own....

Neither version of PAC makes any changes to AnimalJobGiver, but if the modified version of the method references something that PAC *does* change, that could potentially be the source of trouble. So I have at least an idea of where to look, now, when I get home. ;)

I guess you do the same for the pawns, and if your pawn jobgiver calls the original one or your own, it gives an error
because it can't find anything.
So the game has to wait until the jobgiver of the minions calls on them.

Other possibilities : Slaves are based on humanbodies, but I guess have a radically altered prisoner behavior in comparison
Minions are also based on the humanlike body .. maybe they get called because of this .. else other modded animals should create a similiar error. .. or not ..
Thirites Baby's on the other hand follow normal Pawn behavior and do work perfectly fine with PaC
----- EDIT -----
-> If someone could try the GameOfThrone Slaves .. they should show the same behavior as minions.
I just noticed I mixed those up with SlaveLabor from Thirite which forces Prisoners to work for you ..
RimSlaves/Minions are exactly the same. The same author the same main technique.
Maxim 1   : Pillage, then burn
Maxim 37 : There is no overkill. There is only open fire and reload.
Rule 34 of Rimworld :There is a mod for that.
Avatar Made by Chickenplucker

mrsebseb

Quote from: SpaceDorf on July 25, 2017, 11:58:03 AM
They both override the AnimalJobGiver and use their own,
it may be because of that.
I use PaC and Minions together and had no Problems so far ( at least not with those two .. )
Really?
I get the issue when using nothing but PaC and Minions.

SpaceDorf

I did not say, I don't get the same error messages when running debug.

What I did say is .. that I ran several colonies using both mods ( and about 220 others )
together without encountering problems.
Maxim 1   : Pillage, then burn
Maxim 37 : There is no overkill. There is only open fire and reload.
Rule 34 of Rimworld :There is a mod for that.
Avatar Made by Chickenplucker

mrsebseb

Quote from: SpaceDorf on July 26, 2017, 06:55:59 AM
I did not say, I don't get the same error messages when running debug.

What I did say is .. that I ran several colonies using both mods ( and about 220 others )
together without encountering problems.

Not what you said at all. Might've been what you meant, but those are two very different things.
Either way that clears things up a bit.  :)
I've not noticed any real issues stemming from the errors either, and I've got roughly 180 other mods myself.
Just figured I'd report the error.

SpaceDorf

I have to admit english is only my second language.
So mistakes happen.
Maxim 1   : Pillage, then burn
Maxim 37 : There is no overkill. There is only open fire and reload.
Rule 34 of Rimworld :There is a mod for that.
Avatar Made by Chickenplucker

mrsebseb

Quote from: SpaceDorf on July 26, 2017, 07:53:15 AM
I have to admit english is only my second language.
So mistakes happen.

Mine too. and it happens.
In fact I quite frequently spend a long time writing a well thought out response and posting it, only to read it over later and realize I sound like a crazy drunk person because I missed typing out several words necessary in making my thoughts even remotely comprehensible. 
You'd think I would learn at some point  ;D