Debugging mod conflicts

Post » Wed Aug 12, 2015 8:45 am

I had a user report a problem when using one of my mods: a courier didn't turn up. In fact he wasn't getting any for other quests.

Since I hadn't touched the WICourier quest, just called its AddRefToContainer function, it had to be another mod conflicting somehow. One possible way to cause this is to put a StoryManager node ahead of WICourier's that pre-empts the change location event by which it's triggered. The problem then arises of how to determine what mod did that.

Does anyone know a way to display the SM node structure in-game (or even in TesVEdit), so the culprit can be exposed? I suspect there's one in there that has the "Shares Event" flag unchecked when it needs it.

User avatar
Janeth Valenzuela Castelo
 
Posts: 3411
Joined: Wed Jun 21, 2006 3:03 am

Post » Tue Aug 11, 2015 6:24 pm

Edit is great for that. Shows clearly if the shares event box is selected or not. Visually the CK will be the best way though. You know exactly what you're looking for and where it is in there. Edit shows a lot of info you won't need to see.
User avatar
Jerry Cox
 
Posts: 3409
Joined: Wed Oct 10, 2007 1:21 pm

Post » Tue Aug 11, 2015 5:51 pm

Hey this sounds suspiciously close to the issue that we all discussed last month about the ambush package being killed by the actor being placed in an alias ... no?

Let me see if I can find that thread again...

HERE IT IS: http://www.gamesas.com/topic/1527758-serious-issue-with-using-actor-aliases-warning-and-poll/

User avatar
Kat Lehmann
 
Posts: 3409
Joined: Tue Jun 27, 2006 6:24 am

Post » Tue Aug 11, 2015 8:17 pm


I suppose if there was a quest that fired on a Change Location event and if it executed before the courier quest and filled a large number of aliases it could prevent the courier AI from kicking off immediately. On the other hand, it would be like the forcegreet actors - the courier AI would still kick in and all that would happen was he'd start his run a bit late.

But if he doesn't turn up at all, that sounds more like another node swallowing the event that would ordinarily cause the courier to spawn. Otherwise, if he's got a package, he'll try and deliver it.

User avatar
Sara Johanna Scenariste
 
Posts: 3381
Joined: Tue Mar 13, 2007 8:24 pm

Post » Wed Aug 12, 2015 6:06 am

That's the conclusion I'd come to. The question is how to find out what mod did that. It's not something I can do from my end without installing all the mods the user has, so I need something that he can run and tell me the result.

The mod doing this most likely doesn't use couriers (because they'd stop working), but might even be providing a conflicting mechanism that turns them off deliberately.

User avatar
Rusty Billiot
 
Posts: 3431
Joined: Sat Sep 22, 2007 10:22 pm

Post » Wed Aug 12, 2015 9:29 am

Yeah, I was just questioning spooky's hypothesis about the quest alias issue being responsible

There are logging entries for the story manager. They give you detailed information on what event triggers what quest. If you can get your user to turn them on, you can probably get the info from their logs.

I can't see how you debug it from your end at a scripting level though. I thought about creating a separate mod with a proxy quest to start the courier and pass on the event. If it's in the right place in the load order that would override the carnivorous SM node and if your user would experiment with load order you could probably pin-point it that way. Only thing is, I'm not sure it's possible to trigger the courier without a change location event, and you can't fake those...

The settings I'm thinking of are:

  • iStoryManagerLoggingEvent
  • bEnableStoryManagerLogging

Not sure what the values are - the CK wiki isn't letting me search today for some reason.

User avatar
naomi
 
Posts: 3400
Joined: Tue Jul 11, 2006 2:58 pm


Return to V - Skyrim