Conversation bug

Post here if you need help getting started with Daggerfall Unity or just want to clarify a potential bug. Questions about playing or modding classic Daggerfall should be posted to Community.
zuzman
Posts: 3
Joined: Fri Jun 01, 2018 10:44 am

Conversation bug

Post by zuzman »

When I try to initiate a conversation with a random NPC, the screen just freezes, I can still move for some reason but the text goes wild, going through phrases the NPC says at a fast speed and I cant click anything.

User avatar
Nystul
Posts: 1501
Joined: Mon Mar 23, 2015 8:31 am

Re: Conversation bug

Post by Nystul »

Your daggerfall install might be corrupt. Try to install it freshly

zuzman
Posts: 3
Joined: Fri Jun 01, 2018 10:44 am

Re: Conversation bug

Post by zuzman »

I tried the Google Drive one and the DaggerfallSetup on the webpage.

User avatar
Interkarma
Posts: 7234
Joined: Sun Mar 22, 2015 1:51 am

Re: Conversation bug

Post by Interkarma »

Welcome to the forums zuzman. :)

There's a few issues with commoner quests not compiling correctly, which ends up creating problems in the talk system. I'm planning to spend some time on this over the weekend and it will be improved soon.

Nystul, I'm getting a lot of reports of crashes in the talk window at the moment. I don't think it's a problem at your end however, it's originating with commoner quests. Let me fix up a couple of problems I've already identified and we'll see where it goes. :)

User avatar
Nystul
Posts: 1501
Joined: Mon Mar 23, 2015 8:31 am

Re: Conversation bug

Post by Nystul »

alright ;)

User avatar
Interkarma
Posts: 7234
Joined: Sun Mar 22, 2015 1:51 am

Re: Conversation bug

Post by Interkarma »

Nystul, I've started posting about this process in the Quest Hub forum.

viewtopic.php?f=25&t=1104

Right now it's mostly to do with how quests are compiled and handed off to other systems, or how things are handled if a quest crashes half way through. I'm tightening up all these little screws now. I've already fixed a good few problems just with try/catch blocks and a few null checks.

I don't think you need to do much in the talk system right now, but there's some other stuff I'll need help with in the talk system and automap. I'll get back to these later though.

Will let you know if any of my bug fixing journey here needs your attention. :)

User avatar
Nystul
Posts: 1501
Joined: Mon Mar 23, 2015 8:31 am

Re: Conversation bug

Post by Nystul »

Ok, great, just let me know if you need anything when tackling map stuff or any other thing.

User avatar
Kamer
Posts: 583
Joined: Mon Mar 05, 2018 9:26 pm

Re: Conversation bug

Post by Kamer »

Interkarma wrote: Fri Jun 01, 2018 11:59 am Welcome to the forums zuzman. :)

There's a few issues with commoner quests not compiling correctly, which ends up creating problems in the talk system. I'm planning to spend some time on this over the weekend and it will be improved soon.

Nystul, I'm getting a lot of reports of crashes in the talk window at the moment. I don't think it's a problem at your end however, it's originating with commoner quests. Let me fix up a couple of problems I've already identified and we'll see where it goes. :)
Well that would explain the 5 quests I took and were completely lost in last night. Hahaha oh my rep is bad.

User avatar
Hazelnut
Posts: 3014
Joined: Sat Aug 26, 2017 2:46 pm
Contact:

Re: Conversation bug

Post by Hazelnut »

Bear in mind any problem quests can be commented out in the list and fixed later down the road. I know you have a lot of plates spinning right now so that may be the best strategy, and is what I expected to happen - I didn't have time to test all quests myself when I did the list.
See my mod code for examples of how to change various aspects of DFU: https://github.com/ajrb/dfunity-mods

User avatar
Interkarma
Posts: 7234
Joined: Sun Mar 22, 2015 1:51 am

Re: Conversation bug

Post by Interkarma »

The problem was a little deeper, I'm afraid. Even perfect quests were crashing the quest system for a couple of reasons.

A really common cause was if a commoner quest required a local building which didn't exist in that town. The quest is perfect for a large city but always fails in a small one-tavern town. In these cases it was supposed to show the "you're to late, I gave the job to some spellsword" fallback, but the get text for this one was calling the MCP variant with a null quest reference and would crash.

A couple of other missing null checks could allow a bad quest to get into talk system, which left bad data in the back-end and saved to conversation data. It meant every time the player loaded their game it was basically throwing exceptions every tick of the quest system. Then users couldn't talk to anybody at all as the talk window would crash every time it opened.

I think I've caught all the worst cases and built in enough protection to mitigate other latent issues. The quest system is much more defensive now and will terminate any quest that throws an exception at runtime. The new logging setup will help catch more problems over time.

The are also a few other funny issues where the quest is technically fine but my handling of the action logic isn't perfect. Jay has covered some these in his thread, and I'll be knocking those over shortly. And I'm looking at other blocking issues like why certain quest targets don't show up in talk UI or automap properly. I've found it's usually bad output from quest system rather than a problem in those UIs specifically.

I was getting enough complaints across Reddit, Twitter, email, and on the forums that I knew I had to stop what I was doing and do another pass over the quest system, especially now that guilds and commoner quests are open so far ahead of schedule. You guys have all done amazing work, and my job as lead is ensure all the individual parts work together and chase down problems.

At the end of the day, the problems were fairly minor to correct. Hopefully in a few weeks the builds will give end users a better play experience and I can get back to magic stuff. :)

Post Reply