jptrrs / HumanResources

A technology overhaul for RimWorld
MIT License
17 stars 12 forks source link

Network terminal documenting technology doesn't remove the job from tech list once finished #144

Closed tophd7 closed 3 years ago

tophd7 commented 3 years ago

Pawn will keep the job of documenting the tech they just documented and then awkwardly just stand at the desk switching between documenting tech and standing until I manually remove the document task. This happed with the techs the pawn was generated with but I will test other techs once I can let him research them

jptrrs commented 3 years ago

log?

tophd7 commented 3 years ago

Log was empty besides something printing from CE. Will test more to see if i can replicate it with more pawns

jptrrs commented 3 years ago

Please check this for reporting issues: https://steamcommunity.com/workshop/filedetails/discussion/2119687603/2295094308095765898/

tophd7 commented 3 years ago

Hugslib log: https://pastebin.com/pwQh6MaW Screenshot of issue: Screenshot 2021-03-06 171906 Explanation of screenshot: The research tech for crypto caskets is in the server but the pawn never stops trying to document the tech causing them to just take up the bench. I can manually make them stop this but I feel like that isn't intended PS: All the "failed to load" things are from combat extended not being loaded to make sure it wasn't a mod conflict

Afterthought-btw commented 3 years ago

Sorry to butt in, but could what you're experiencing potentially be this?

https://github.com/jptrrs/HumanResources/issues/127

If you have only one desk, then it's not going to be, but if you have more than one, it could be the issue.

tophd7 commented 3 years ago

Not quite. Look at the above picture for a better explanation. Basically they document the tech into a server but then don't remove the job from their job queue

Afterthought-btw commented 3 years ago

I guess what I was getting at was: could they have started the same tech documentation on two or more separate desks? If they do, then what happens is that they finish one of them but the other(s) remain(s) open leading to the idling issue you mention. They have a job open, but the tech is already in the server/bookcase so they don't continue/finish the job that is open and won't start another Study job.

tophd7 commented 3 years ago

I found a solution: Inside of JobDriver_DocumentTechDigital inside the if statement if (project.IsFinished) { curJob.bill.Notify_IterationCompleted(actor, new List<Thing>() { }); project.Unlock(jobDriver_DoBill.BillGiver as Thing, false); jobDriver_DoBill.ReadyForNextToil(); return; } I added in this line: techComp.homework.Remove(this.project);

jptrrs commented 3 years ago

Thanks for the info, that log is essential for debugging. That was, indeed, what was missing. I've corrected it and will upload to Steam soon.