Two exciting realisations about in-game conversations this past fortnight! In the process of continuing with sentence generation it became rapidly apparent that in order to actually ensure conversational flow, and to boost the range of experiences that the player can actually have in talking to the game’s NPCs, several new additions would have to be made. As readers will remember, until now there have been basically three kinds of question – the kinds of question that anyone can be asked from the start of the game (such as “What do you do?” or “What are your religious beliefs?”), the kind of question that only specific people can be asked from the start of the game (such as “What are you guarding?” which would apply only to guards, but can always be asked), and the kind of question that can only be asked after a particular trigger is met (such as “What do you think of the novels of [author]?”, which requires you to have come across the author). There is another “category” of question, as well as a new kind of reply that both the player and the NPC will be able to produce within a conversation. These do not especially increase the required volume of sentence generation implementation, as the creation of an overall framework for sentences (in progress) will be equally applicable to all possible sentences, but they will substantially enhance the variation of in-game conversations, and also their realism and believability. Read on!
Counter-questions are, as you might expect, questions that the person you’re talking to winds up asking you, which then lead to a variety of possible replies. So, for instance, they might ask you about YOUR religion, in which case you can be truthful or lie and so forth, and the same will then apply for a range of scenarios. Questions of this sort will be particularly relevant when trying to get past guards, for instance, or when trying to enter particularly restrictive or xenophobic or militaristic nations, and the like. I think this will add a very strong extra layer into the conversation system and the ability for the player to “bluff” their way through certain areas, whilst also (like the above points) boosting the realism of the system by changing it away from a rather simpler question-and-answer system. Here’s an example of what counter-questions might look like based on some of the conversations from last week:
A “reply” in URR is something that can only be said in response to another person’s statement. When a reply is possible, the “Replies” dropdown list will appear, highlighted, right to the special options and to the left of the dialects. Clicking this option will then offer this special sentence/response; if you select another option that isn’t in the replies list, the replies will remain and can be returned to later in the conversation, so this isn’t just a one-off chance. This means that as particularly long conversations continue, the number of possible replies will grow, but it will never grow above half a dozen or so at the most, I would think, and some of the replies will actually be the same as other default questions that simply take on newfound relevance after a previous question. Here’s the same conversation with some answers and two different models: which do you prefer? In the first version the reply and the next question are apart, and the other person might make another comment, whereas in the second version, the reply and the next question are combined…
If you don’t select the reply when prompted, various things will happen. If they ask you a question and you just go onto asking them another question, they’ll likely be offended. Alternatively, some replies will be akin to “follow-on” questions, so they mention something, and you can then pursue that with them as a result of that conversation. These options will stay in your reply options for that character forever, and can be addressed (or not) whenever.
I’m going to implement this because as I experimented, it became clear that conversational flow in real life is obviously far more of a back-and-forth than a question-and-answer, and the system needed to reflect this. The reply will allow the player to get more depth about a specific question asked instead of moving onto another question, and should be especially relevant if the NPC being talked to winds up revealing something the player wasn’t previously aware of, and wants more information on.
In the process, though, I found myself wondering about the exact flow of the overall. Right now the system is that you select a topic, you select a question, then the questions window closes and you see it spoken and a reply given. This is largely from the inevitable constraints on the size of the screen, fitting in questions as well as images and topic lists, and so forth. I became briefly concerned that this might actually break up the flow of conversation, especially if you want to ask two questions from the same topic list one after the other. To help cancel this out, if you return immediately to a conversation topic you’ll be at the same part of it you previously scrolled into, and I also added in a system that will keep any letters typed in for the search function whilst you’re still in one topic. So let’s say you ask about Artwork X from Nation Y, and you found the question by typing in Nation X’s name into the “Art” menu, and that question is asked, and then you want to ask about another artwork from Nation X, going immediately back into the art list will keep the letters there, but changing to another menu will reset the letter tracker. I think this is quite a good compromise. Equally, of course, we should remember that the conversation system in URR is specifically designed to be a little slower and more thoughtful than the systems one gets in more RPGs where the player is encouraged to just exhaust conversation options. I think the current system (with these recent changes) will now work very smoothly, actually, and I’m happy with the balance between ease-of-access and possibly encouraging the player to think about other relevant options as a conversation progresses.
Next few weeks:
In the coming weeks I’ll be trying (see below) to continue the implementation of counter-questions and work on the implementation of replies, as well as adding all the “Hmm…” stuff and punctuation options into conversations properly, rather than having them only present as a placeholder to test how things look. The other big thing to handle now is that all the [religion] or [date] or [place] modifiers work; a few have been implemented, but again, just quickly and crudely to get a feel for the system. Another task for the coming weeks is to go to all of these, make sure they work, and to make sure NPCs already spawn with the requisite information for personal details – “I was born in [place] in [year]” – as well as civilisation details – “I am from [nation] and we worship [religion]”, and so on. There’s a pretty big selection of these,so it’ll take a bit.
Why no blog post last week?
Last week was the first time in several years I missed a blog update – this, unfortunately, is simply because I am basically working twelve hours, every day including weekends right now, and I’m totally swamped with my work at the moment. Believe me, folks, I am *incredibly* desperate to get 0.8 finally finished and out, but there’s just so much on my plate at the moment with strict fixed deadlines which has to be prioritised, and it’s hard to carve out any time (even at weekends) to do much coding. Just rest assured I am working as hard as I possibly can to get 0.8 released, and I’m really sorry it’s taking so long and I feel tremendously guilty about dragging it out, but things are really tough right now (due also to other life issues beyond what I’ve described here) and I’m deeply stressed out, but doing my best. There’s only so many hours in the day and I just cannot prioritise coding at this month/two-month moment in my life, but I’m trying to grab an hour here and there to just inch forward on conversation implementation. In the coming month, therefore, some of most of the blog entries are going to be other entries on general games topics of discussion/interest I’ve had written for a while and I think you folks will be interested in, and I’ll upload those instead if (as is likely) there isn’t really any URR update to put out. I hope you’ll enjoy these entries; people have always enjoyed these before, so I hope these will keep you all occupied until I’m out of this rough patch. I’m really sorry, I hope you all understand, and I promise 0.8 will be worth it.
I think if anything you should take a break, when work is piling pressure on you the last thing you want to do is have the additional pressure of developing a game on top of that, I'm sure I speak for many people when I say we'd rather you didn't burn out. Good luck with everything and hope work lets up soon.
Thanks a lot :) - I really appreciate this comment. As the calendar year goes on, things will ease up a bit, but right now is just total madness. It'll definitely good for me to come back fresher in a month or so, and it's really nice seeing all the support for this choice I've got all over the various sites URR's on!
Letsjust add the old DF joke here "We wont reach 1.0 util 2040... if ever..."
Ha! Yeah, my timescale is not THAT long...