[A16] Psychology (2017-5-14)

Started by System.Linq, August 19, 2016, 07:16:38 AM

Previous topic - Next topic

System.Linq

Yes, I see the bug, I referenced the wrong variable. Thank you.

System.Linq

Updated to 2017-1-17 v2. Fixed the Saboteur hediff and the homesickness alert message.

Quote from: sidfu on January 17, 2017, 03:45:51 PM
haveing to drop from useing this as its overwriting raid stuff for hardcore_sk pack.
this is one of the errors. gonan do some testing when i get a chance later today and see if error gone or not when psycololgy is not enabled.

Exception in Verse.AI.ThinkNode_PrioritySorter TryIssueJobPackage: System.InvalidCastException: Cannot cast from source type to destination type.
at Combat_Realism.RightTools.EquipRigthTool (Verse.Pawn pawn, RimWorld.StatDef def) [0x00000] in :0
at Combat_Realism.Detours_ThinkNode_JobGiver.TryIssueJobPackage (Verse.Pawn pawn) [0x00000] in :0
at Verse.AI.ThinkNode_PrioritySorter.TryIssueJobPackage (Verse.Pawn pawn) [0x00000] in :0
Verse.Log:Error(String)
Verse.AI.ThinkNode_PrioritySorter:TryIssueJobPackage(Pawn)
Verse.AI.ThinkNode_Priority:TryIssueJobPackage(Pawn)
RimWorld.ThinkNode_Conditional:TryIssueJobPackage(Pawn)
Verse.AI.ThinkNode_Priority:TryIssueJobPackage(Pawn)
Verse.AI.Pawn_JobTracker:DetermineNextJob(ThinkTreeDef&)
Verse.AI.Pawn_JobTracker:TryFindAndStartJob()
System.Reflection.MonoMethod:InternalInvoke(Object, Object[], Exception&)
System.Reflection.MonoMethod:Invoke(Object, BindingFlags, Binder, Object[], CultureInfo)
System.Reflection.MethodBase:Invoke(Object, Object[])
Psychology.Detour._Pawn_JobTracker:_EndCurrentJob(Pawn_JobTracker, JobCondition, Boolean)
Verse.AI.Pawn_JobTracker:JobTrackerTick()
Verse.Pawn:Tick()
Verse.TickList:Tick()
Verse.TickManager:DoSingleTick()
Verse.TickManager:TickManagerUpdate()
Verse.Game:Update()
Verse.Root_Play:Update()


ill post after some testing. btw that error seems to happen when a animal trainer goes to train he will pick up growing grass to use.

not sure but before didnt have this error. it didnt start till after u put the theif mechanics in if i remember right.

ill post after some testing.

This has nothing to do with Psychology. The only reason Psychology shows up in the log is that it detours the EndCurrentJob method for heavy sleepers. It doesn't change its function at all. I'm guessing that Combat Realism is what's actually causing the problem with a custom JobGiver for "EquipRigth[sic]Tool."

b4d

#302
how does the saboteur event works?

was it a random event that could hit anyone at anytime? or it will decide if the colonist will be one when he joins?

on my current save i started with only 1 colonist. After a while it became a 5 man colony. everything seems to be just fine, but suddenly just today(after updating the mod i believe) my very first colonist become the saboteur. kinda sad to execute the guy for what he did

edit: what if i try to recruit him? is it safe or will he be nasty again?

System.Linq

You can arrest and recruit him if you figure out who it is. It's easier if you identify them before they reveal themselves. And yes, it could hit anyone at any time; the game does not keep track of where people came from, and it's a randomly-chosen incident, not something that's applied randomly to recruits.

hwfanatic

I didn't check the code, but is there a threshold of some sort? For example, a minimum of x colonists or similar?

crusader2010

@Psychology: can you please add a change log section on the first page, in which summarize each version's changes?

Sorry if it's already there but I simply cannot see it :(
My mod pack: {A13} Mod Mega Pack

System.Linq

Quote from: hwfanatic on January 18, 2017, 08:06:01 AM
I didn't check the code, but is there a threshold of some sort? For example, a minimum of x colonists or similar?

Yes. You need at least 3 colonists.

System.Linq

I am considering disabling all the incidents by default, not just Sabotage, due to the volume of complaints I'm receiving. Thoughts?

Treason5240

Quote from: Psychology on January 19, 2017, 01:17:15 PM
I am considering disabling all the incidents by default, not just Sabotage, due to the volume of complaints I'm receiving. Thoughts?

Personally, I'd rather have them all enabled from the start, with the option to manually set allowances like you have with the Saboteur.

System.Linq

You can already do that with the scenario editor. Sabotage is disabled by default because people mistook its behavior for a bug and I was flooded with confused and frustrated reports of held open doors. You don't need a mod option to set allowances for incidents.

WinterFlare

#310
Just offering my opinion on the events:

Quarrel: Personally I don't really mind this one, it's a huge social debuff, but it's more or less something that happens in the background for me unless it's a married couple who have a falling out. Then the affairs, hatred, social fights, ect happen. Still don't mind that, as it gives my colony some character.

Homesick: Currently 15 out of my 18 colonists have this, including some Psychopaths. For me this is just a persistent -10 debuff that I feel will never go away. Barring locking all of my colonists in their rooms for several days I see no way to get rid of it.

Cliques: I haven't had this happen yet, but if it did happen, I'm sure some of my Orassan colonists will be dismembering my human colonists in no time. (Alien race, they have 14 damage "scratch" attacks for their default melee.)

Sabotage: I haven't enabled this at all, but with how often my people have mental breaks and run into enemy fire, I'm glad it's disabled by default.

Thief: I've honestly only seen one of these working properly (at least I think it was.) Completely invisible until found out, then appeared and started attacking colonists. I have so much stuff that I doubt I'd actually realise something is missing unless it was early game and my important weapons got lifted.

I think I've had multiple theifs spawn during raids either completely invisible, or missing their heads. This has only happened (as far as I can tell) with units from Rimsenal - Federation, but they're the major faction I'm attacked by.

just-a-bird

#311
I feel like the "Stifled individuality" debuff could use some rebalancing. For one, I know it accumulates over time but giving up to -8 and beyond even when sleeping is a little much. Two, in real life, millions of people wear uniforms every day and few of them have it constantly nagging at the back of their mind. I would feel better if "Free spirit" or something were a Trait, much like Nudist, and only those pawns suffered from Stifled individuality. Maybe they could even receive a positive buff if their outfit is perfectly unique, i.e. no articles of clothing are the same as anyone else's for each slot ("Making a statement +5" or something).

System.Linq

#312
Quote from: just-a-bird on January 20, 2017, 02:16:37 AM
I feel like the "Stifled individuality" debuff could use some rebalancing. For one, I know it accumulates over time but giving up to -8 and beyond even when sleeping is a little much. Two, in real life, millions of people wear uniforms every day and few of them have it constantly nagging at the back of their mind. I would feel better if "Free spirit" or something were a Trait, much like Nudist, and only those pawns suffered from Stifled individuality. Maybe they could even receive a positive buff if their outfit is perfectly unique, i.e. no articles of clothing are the same as anyone else's for each slot ("Making a statement +5" or something).
It does not accumulate over time. It's based on what percentage of your colonists have the same outfit.

Most people do not wear uniforms every day. They have standards of dress (formal, etc.) within which they have much freedom to individualize themselves, even if it's only the color of their tie (which would be perfectly sufficient for the Individuality thought). The only people who wear true uniforms every day are people like police officers, who have to be identifiable for their authority and who are part of an extremely large population of people who don't wear those uniforms. Imagine if everyone in the entire city you lived in wore the same thing top to bottom: that would definitely merit a -12 mood penalty. School uniforms are an extremely contentious topic for this exact reason. Kids do not like to wear them.

I'm frankly sick of having this argument. You can turn it off if you want to and it's not an incident so it's not what's being discussed.

e: But just so you don't feel like I'm brushing off your ideas, if I implemented your "Free spirit" trait, this is what people would say: Great, another useless trait that disqualifies a colonist. This mod makes it too easy because my colonists get free mood bonuses just for wearing different clothes. This mod adds too many "bad" traits, the game already has too many awful traits.

Quote from: WinterFlare on January 19, 2017, 07:24:26 PM
Just offering my opinion on the events:

Quarrel: Personally I don't really mind this one, it's a huge social debuff, but it's more or less something that happens in the background for me unless it's a married couple who have a falling out. Then the affairs, hatred, social fights, ect happen. Still don't mind that, as it gives my colony some character.

Homesick: Currently 15 out of my 18 colonists have this, including some Psychopaths. For me this is just a persistent -10 debuff that I feel will never go away. Barring locking all of my colonists in their rooms for several days I see no way to get rid of it.

Cliques: I haven't had this happen yet, but if it did happen, I'm sure some of my Orassan colonists will be dismembering my human colonists in no time. (Alien race, they have 14 damage "scratch" attacks for their default melee.)

Sabotage: I haven't enabled this at all, but with how often my people have mental breaks and run into enemy fire, I'm glad it's disabled by default.

Thief: I've honestly only seen one of these working properly (at least I think it was.) Completely invisible until found out, then appeared and started attacking colonists. I have so much stuff that I doubt I'd actually realise something is missing unless it was early game and my important weapons got lifted.

I think I've had multiple theifs spawn during raids either completely invisible, or missing their heads. This has only happened (as far as I can tell) with units from Rimsenal - Federation, but they're the major faction I'm attacked by.
Homesickness is receiving a patch to make it less permanent. Sabotage doesn't do what you think it does. Thieves announce themselves very clearly when they're found so you would know if they were thieves. Sometimes they're revealed while dead if something happened to them -- e.g. they wandered into one of your traps.

b4d

my 2 cents:

Quarrel : it only annoyed me once. it was when sharyn decided that fighting off the raiders is not as important as punching the dude next to him

Homesick : I feel like it's a bit too random. might be better if it can only affect those who were out on caravans / camps(mod) / or maybe new settlement. Going back to the original settlement for 1 day will cure the homesickness

Cliques : Only happened to me once, didn't know how to resolve it other than executing one of the clique leaders. Maybe add a way to resolve it peacefully by locking the two of the leaders in a room until they both agreed to forgive each other (or they agree to have a duel to the death for extra flavor)

Sabotage : It would be cool if the traitor was decided when he joins, rather than randomly picked at any time. most of the time when i tried to imprison the saboteur he didn't give in peacefully and ended up in the grave

thief : got no complaints. only 1 thief managed to run away so far (or maybe i didn't notice the others at all)

extra on anxiety : maybe make it treatable via brain surgery?


System.Linq

None of the colonists in your colony are originally from your settlement. The homesickness they feel refers to their original home, off-world, or with their tribe. You can't cure it (except by building the ship) because you caused it.

If I changed it from the current random event to be "realistic" (and it's not, it's supposed to model a social contagion, not real homesickness, I chose homesickness only because it was appropriate), all of your colonists would get it after they've spent a year or two in your colony and it would only get worse, not better, until they could no longer bear it anymore and mental broke constantly. But I won't.