Better NPC dialogue - flag previously heard topics; no need to click "Continue"

Feedback on past, current, and future development.
mikeprichard
Posts: 113
Joined: 16 Dec 2018, 19:42

Re: Better NPC dialogue - flag previously heard topics; no need to click "Continue"

Post by mikeprichard »

fredzio wrote: 25 May 2019, 11:52 I made a patch a while back after seeing some screenshot of the "ui expansion" MWSE mod. It does more or less that + have a different color for topics that are specifics to the NPC you're talking to (so mostly quest related stuff). Technically, in the example screenshot
- the blue color is applied if this topic explicitely specify this NPC
- then the grey color is applied if the NPC have no answer that are not already in the journal (so old quest related stuff is greyed out as well)

To the end user, it is just 2 additionnal FontColor fallback to override.

I'll clean it up and make a PR if there is some interest. I couldn't find a way to keep the behavior of changing the color when clicking / hovering the topic (which is a big no-no for inclusion IMO) but I didn't really tried hard.
This looks great! It's a significant and very sorely needed QOL improvement. Just one question: you mention the grey color is tied to existing dialogue entries in the journal, but ideally (per my first post) I'd like it also applied to any other "generic" topic for which you've already received the same answer at least once from this or any other NPC (e.g. in your screenshot, most of the topics that are still in the default yellow text). Would this be possible to do?

Either way, I'm very, very interested in seeing this in my game. This represents another step towards making OpenMW feature-competitive with MWSE-based mods and MCP. Would love to see a PR from you on this (also addressing my above question on expanding the grey text functionality, if at all possible). Cheers!
wareya wrote: 25 May 2019, 14:37 The "continue" button is an outdated design pattern that only makes sense for tiny displays or people who don't expect the dialogue window to be flooded with ten paragraphs. It's like flipping between different textboxes in a multi-textbox dialogue in a console game, but without the ability to buttonmash a single button through the entire thing. You have to move the mouse for each click.

Maybe you could make it so that clicking anywhere on the topics list acts like clicking the "continue" button? That would probably satisfy everyone.
wareya - my point exactly. I would strongly prefer simply removing the "Continue" prompt altogether wherever possible (which would be in most topics per my research in the Construction Set), but if as a compromise clicking the same or any other topic in the list would activate the "Continue" prompt, I could live with that. That still wouldn't be ideal (at least for anyone not using a tiny display, i.e. anyone for whom the "Continue" prompts are completely pointless), but it would definitely be an improvement.
fredzio
Posts: 9
Joined: 12 Apr 2019, 05:56

Re: Better NPC dialogue - flag previously heard topics; no need to click "Continue"

Post by fredzio »

mikeprichard wrote: 26 May 2019, 23:39 Just one question: you mention the grey color is tied to existing dialogue entries in the journal, but ideally (per my first post) I'd like it also applied to any other "generic" topic for which you've already received the same answer at least once from this or any other NPC (e.g. in your screenshot, most of the topics that are still in the default yellow text). Would this be possible to do?
All answers are always written in the journal, so that's really the same. I just check that there is at least one possible answer from this NPC that is not in the journal.
However I just realized that I didn't take into account info refusal, which is very important in this context as
1/ info refusal are not logged in the journal
2/ even if they were, the topic would always be seen as having available answer until the disposition is low enough to get the info refused
So this needs to be fixed. I'm a little be short on time atm, so please do a feature request so that I don't forget :)
mikeprichard
Posts: 113
Joined: 16 Dec 2018, 19:42

Re: Better NPC dialogue - flag previously heard topics; no need to click "Continue"

Post by mikeprichard »

fredzio wrote: 30 May 2019, 09:20 So this needs to be fixed. I'm a little be short on time atm, so please do a feature request so that I don't forget :)
Done - https://gitlab.com/OpenMW/openmw/issues/5049. Thanks so much for agreeing to add this really cool and useful feature; after it's in, I'll never play OpenMW without it again!

EDIT: The issue has now been closed and merged with similar issue https://gitlab.com/OpenMW/openmw/issues/2159. Thanks again to fredzio to agreeing to work on this! Please see the Git request(s) for details.
Last edited by mikeprichard on 04 Jun 2019, 13:13, edited 1 time in total.
dmbaturin
Posts: 6
Joined: 27 Aug 2017, 19:25

Re: Better NPC dialogue - flag previously heard topics; no need to click "Continue"

Post by dmbaturin »

Looks like no one mentioned this, so I will. The reason "Continue" appears so often has nothing to do with small screens or anything. The real reason is that in the vanilla data format, dialog records cannot exceed 512 bytes!
It may be feasible to check if there's only one option and auto-choose it, but I'm not sure if there can't be any negative consequences.
User avatar
wareya
Posts: 338
Joined: 09 May 2015, 13:07

Re: Better NPC dialogue - flag previously heard topics; no need to click "Continue"

Post by wareya »

dmbaturin wrote: 04 Jun 2019, 01:11 The real reason is that in the vanilla data format, dialog records cannot exceed 512 bytes!
Why do you think they did that?
User avatar
DestinedToDie
Posts: 1181
Joined: 29 Jun 2015, 09:08

Re: Better NPC dialogue - flag previously heard topics; no need to click "Continue"

Post by DestinedToDie »

wareya wrote: 04 Jun 2019, 01:12
dmbaturin wrote: 04 Jun 2019, 01:11 The real reason is that in the vanilla data format, dialog records cannot exceed 512 bytes!
Why do you think they did that?
Smaller boxes for the apples you are carrying allows you to house more boxes in a limited room, especially when most of the time there aren't enough apples to fill the boxes entirely. Alternatively, you could have 1 giant box that fills the entire room but you only want to put 10 apples in a box. In that case, it is better to have 100 small boxes that take the same room, each containing 10 apples and your room can now house 1000 apples instead of only 10 with the big box.
User avatar
DestinedToDie
Posts: 1181
Joined: 29 Jun 2015, 09:08

Re: Better NPC dialogue - flag previously heard topics; no need to click "Continue"

Post by DestinedToDie »

No. :D

But then why make anything a short? Let's just make all things long long.
mikeprichard
Posts: 113
Joined: 16 Dec 2018, 19:42

Re: Better NPC dialogue - flag previously heard topics; no need to click "Continue"

Post by mikeprichard »

Yep, I'd already confirmed the 512-character limit earlier in this topic. Hopefully OpenMW(-CS) will eventually remove this arbitrary limit, at which point I'll be able to remove all unnecessary "Continue" dialogue prompts in my own game (and for others, if there's continued interest). FYI, in Morrowind.esm, there are:

a) 91 "Continue" prompts that simply display another line or two of continued text; these are each shared by more than one NPC, and are generally related to lore/informational dialogue, and
b) 115 "Continue" prompts that have an additional effect such as adding an item, changing disposition, etc.; these are each used by only one NPC, and are generally related to quests.

There are three arguments I've seen against removing some or all of these "Continue" prompts, but after actually reviewing the affected dialogue in the CS, I don't find them convincing:

1) "The prompts (both a) and b)) help break up walls of text." However, in practically every instance, there's not much extra text added after the prompt is clicked. Someone who's really interested in an extreme reduction of text on-screen at one time should therefore already have problems with the vanilla implementation, or should maybe avoid such a text-heavy game. ;)
2) "The prompts (both a) and b)) help for users on tiny screens." See the response to argument 1) above. Also, although I think it's incredibly cool that people are e.g. porting OpenMW to Android, I also think from watching a couple videos that Morrowind's text-heavy dialogue on a tiny screen is an extremely difficult thing to handle no matter how many breaks you have or don't have in the text.
3) "The 'Continue' prompts help with case b) above." I don't see how they do. For those dialogues where clicking "Continue" results in items given, disposition changed, etc., you're already railroaded into the whole dialogue chain after the initial point of clicking the related topic, so the "Continue" prompts in themselves change nothing. But again, as each instance of this type of prompt only appears once per playthrough, I don't find it nearly as annoying as type a).

Anyway, if the 512 limit is removed, it will only be a couple hours' work for me to fix this up. I'll wait and see how things go with OpenMW-CS.
claudekennilol
Posts: 92
Joined: 01 Aug 2012, 20:48

Re: Better NPC dialogue - flag previously heard topics; no need to click "Continue"

Post by claudekennilol »

dmbaturin wrote: 04 Jun 2019, 01:11 It may be feasible to check if there's only one option and auto-choose it, but I'm not sure if there can't be any negative consequences.
It may be feasible but shouldn't be done. I can't think of any offhand, but I'm sure there are mods that have "back and forth" style of conversation between the PC and NPC where you're just clicking your response--auto-accepting single responses in this case would put a giant wall of dialog on the screen at all at once and kill any semblance of a conversation.
Post Reply