Search Unity

Video Game Dialogue: Suggestions and Radical New Ideas

Discussion in 'Game Design' started by EternalAmbiguity, Nov 14, 2017.

  1. EternalAmbiguity

    EternalAmbiguity

    Joined:
    Dec 27, 2014
    Posts:
    3,144
    This sounds like a design issue related to what the character knows about beforehand. While definitely valid, this is just a placeholder conversation I have no intention of using for any part of a game. So I'll definitely keep this in mind for when I'm writing dialogue.

    Yeah, TonyLi mentioned something similar to this in the Feedback Friday thread, and when I asked about workarounds in his asset thread, he gave me a way to queue up the responses. So in the future you'll have the option to select the response and queue it up, but also interrupt directly by holding down the button.

    So like a pause after the NPC's line? Do you think this should happen for every line, or just after questions? Do you think this is necessary if we have the queue system I just mentioned?

    Oops! Sounds like another bug I need to fix. Thanks for letting me know.
     
  2. neoshaman

    neoshaman

    Joined:
    Feb 11, 2011
    Posts:
    6,493
    I think it would a be case by case design issue, here we are guided by someone esle, the way the conversation is written, he first tell general information, then continue with extras while we are making a decision, giving more detail that expend on that general information and then if you don't say anything just pick a decision (politely) to let the the events moving (because" he is a pro guide and know his works). Also I was upper class.

    SO having some pause is all about not hurrying the guest while keeping him at ease and continuing his job, and finally take the discomfort of indecision away from the guest by taking a decision. It's just the context, it's my reading after one play though, the intent might vary depending on what you want to convey, it would make sense there is no pause if the guest is lower class and the guide is condescending, same tone same general behavior, but pause give non verbal clues that he want to be done with this guest.

    Although it's just placeholder, those are interesting question that it's raising, and it show opportunity to use editing to convey different idea with the same assets (ie voice) without inflating the cost of production. Which is maybe an experiment you can rolled out in the prototype and see how people react to it (difference through multiple playthrough).
     
    TonyLi and EternalAmbiguity like this.
  3. EternalAmbiguity

    EternalAmbiguity

    Joined:
    Dec 27, 2014
    Posts:
    3,144
    Thanks a ton for all of this. I really appreciate it.
     
    FallenAngelSamurai likes this.
  4. FallenAngelSamurai

    FallenAngelSamurai

    Joined:
    Oct 3, 2017
    Posts:
    5
    Just wanted to ask if you'd be willing to reupload this? I'd really like to see what you made, since I'm trying to create a dialogue system of my own. Your earlier thoughts in this thread mirrored my own so I'm very interested.
     
  5. Not_Sure

    Not_Sure

    Joined:
    Dec 13, 2011
    Posts:
    3,546
    Not sure if it's any interest to you, but Ive been working on a diceless rpg engine and one major design breakthrough is that I decided to scrap the entire notion of speech as a skill.

    It sounds like you're aiming at a character driven narrative so this may not apply to you, but it may be worth the read.

    Mainly, rather than forcing the player to invest in more speech options, I'm looking to have the options ties to their build.

    In other words, have players lean on their strengths that they've already have been working on separate from conversation.

    So as an example I have four core stats, strength, agility, intelligence, and will power.

    Strength based players do better at intimidation, since they're visibly threatening.

    Agility based players lean on cunning, guile, and lying.

    Intelligence based players use reason and problem solving.

    And will power players can charm and inspire.

    Meanwhile, the stats are hidden so you never know until you try.

    Edit:

    And you know, had typed it out I think I'll have 8 conversation "skills"

    Intimidation (strength)
    Attraction (strength + agility / 2)
    Guile (agility)
    Lying (agility + intelligence / 2)
    Problem solving (intelligence)
    Reasoning (intelligence + will / 2)
    Charm (will)
    Inspire (will + strength / 2)

    Edit 2:

    Oh, and it goes without saying that this plays off of your current reputation.

    Threaten a good guy when you're a good guy and they laugh in your face.
     
    Last edited: Jul 4, 2019
    TonyLi likes this.
  6. EternalAmbiguity

    EternalAmbiguity

    Joined:
    Dec 27, 2014
    Posts:
    3,144
    Hey there. Thanks for the PM, I'd have never seen this otherwise.

    After starting a new job last year I did a bit of a purge to minimize my footprint. I don't even have the original project anymore.

    If you're looking for a description of what I had I'd be happy to tell you what I remember. If you want something to play with, your best bet is getting TonyLi's Dialogue System for Unity. I worked a lot of this out with him both here and in his thread for that asset, and he graciously made an "extension" for his asset to allow realtime dialogue (looking here (https://www.pixelcrushers.com/dialogue-system-extras/) I think it's the Interjectable Dialogue UI Example - @TonyLi correct me if that's wrong). There might have been a couple minor modifications I made to that, but it should have the basics of what I used.
     
    TonyLi likes this.
  7. FallenAngelSamurai

    FallenAngelSamurai

    Joined:
    Oct 3, 2017
    Posts:
    5
    Hi. A description of what you had would be really helpful, thank you.
    I can't actually use Unity at the moment for... Various reasons, but I'll check out that extension when I can, thank you.
    You may have done this differently to me, because I plan to generate NPCs procedurally, but did you have like personality for characters and things like that? Knowledge, memories, well.. there are a lot of things that define a person.
    I'm planning to allow for conversation during various activities. While characters are working, walking, eating, basically any time. Which I know you wanted to implement as well. Did you get that far? What was it like? Did it feel too distracting to be doing multiple things? Even as simple as walking and talking?
    The weakness is obviously that players have to read the text of their dialogue options.. which takes time and is a bit distracting.
    If I think of any more questions, I'll let you know. Thanks for coming back to this thread EternalAmbiguity.

    Edit: thought of more questions. :)
    Did you have any stats or attributes? Things that drove abilities like intimidation and persuasion? Did you have a persuasion stat? Deception.. Is a tricky one.
     
  8. EternalAmbiguity

    EternalAmbiguity

    Joined:
    Dec 27, 2014
    Posts:
    3,144
    Oh my. I didn't get anywhere near as far as any of this. I just had a basic conversation "tree." One thing I put an emphasis on (and still feel is incredibly important) was the ability to not respond at all, and thus every "branch" (including the trunk itself) was a series of statements by an NPC to the player which would eventually end the conversation without any player input at all. Some of those NPC statements did include potential player responses. They would appear when the NPC said the line, along with a timer for each one. When the timer reached 0, the line disappeared. Some of those player lines would put the conversation on a completely different branch, some would lead to a simple comment by the NPC before returning to the branch the conversation was already on.

    I didn't include personalities, knowledge, or memories in any procedural way. The game that real-time system was/is planned for is designed to only have a single NPC the player interacts with who's quite rigidly defined. I do have another game idea with procedural NPCs (procedural everything actually) and I'd considered a little bit of that, but never got very far (I was focused on action to start with--implementing a sort of Goal Oriented Action Planning).

    I did not get to the point of moving the player around while the conversation ran, though I imagine that would influence the design significantly.

    I did have a little bit of stat-checking actually - the NPC would respond to the way the player was dressed (whether they appeared low, middle, or high class) for some lines (in the specific conversation I was testing out, an NPC was giving the player a tour of a city, and they might comment on the player's perceived class versus the class of the district they were in). It was kind of a weird situation--the game idea I was basing the conversation off of is not one I see using a real-time system, but it's in my most developed setting so the conversation was pretty easy to throw together. The game idea(s) of mine that I see using a real-time system wouldn't really have player stat checks, though one would have the NPC's opinion of the player change based on their responses (and the NPC's behavior would then change--to be more clear, the NPC is an AI on a space station and the player's gameplay would change based on the AI's actions--and yes, it is/was an "immersive sim").

    My focus was almost totally the real-time system. A number of the things you're bringing up here are great, but not necessarily restricted to real-time dialogue.
     
    FallenAngelSamurai likes this.
  9. FallenAngelSamurai

    FallenAngelSamurai

    Joined:
    Oct 3, 2017
    Posts:
    5
    You're right, a lot of the things I mentioned aren't exclusively to real time systems. I'm sort of trying to emulate roleplaying games like DnD and the like. My mind is exploding with possibilities. I'll be honest, I'm pretty new to this stuff (though I do have some.. experience) and I'm probably thinking way too big, but I am trying to just focus on the conversation part for now. Dialogue has such enormous potential. I started out by thinking about the motivations behind conversations and made a long list of things I'd like to be able to accomplish with dialogue. A systemic approach that allows for emergent gameplay. I do want to procedurally generate everything in the game, like in Dwarf Fortress, but with a real-time system. I want to create certain types of experiences where dialogue occurs naturally in the life of an adventurer. Which means that traveling will involve a lot of talking and sharing. This is the part I want to focus on most. Talking while doing other things.

    But anyways, let me curb my enthusiasm for a moment.
    I agree about the importance of not having to speak. That's quite a valuable ability and one I want to incorporate into my system.

    The system you described sort of sounds like the NPC is monologuing. Do they react at all when the player says nothing? Is the conversation cut short? I can imagine the NPC, or perhaps myself, saying something like "Hey, are you listening?" And then maybe getting frustrated when I receive no answer and just leaving or maybe questioning whether the person I'm talking to is in shock or paralysed. Well.. there are various possibilities.

    I ramble on a lot in the next paragraph.. sorry about that:
    Hmm, Goal Oriented Action Planning sounds great. I definitely need to read up on that. Thank you. At the moment I'm focusing on giving an AI our various physiological needs. Hunger, thirst, etc. Which are all in different locations on a map, which means that traveling will be required. This is to prototype walking and talking. So I guess now I need to figure out all the things I want to be able to say as a player. But listing a bunch of stuff is not going to be as effective in real time as something turn based like Dwarf Fortress.. which does have a fairly large list of things you can say. Rummaging through lists of dialogue options as your conversation partner waits and stares at you is bound to be a bit immersion breaking. Having a conversation timer is one way to fix that, but it feels unfair when you're forcing the player to look through so many options.
    I guess you have to break the options down. Yeah, Dwarf Fortress does that. Like have subheadings and more subheadings and maybe even more. Either I do that or have the system be more context sensitive. I mean, if someone says something like "hi" to you. There aren't exactly an infinite number of responses that you're likely to pick. You can probably just have a few greetings pop up in a list for the player to pick from. Starting a conversation though.. that has limitless potential. So you would have to wade through a list of things to say in that case.

    Ah, the potential behind clothing and disguises is strong. That's definitely something I want to include in my system. Along with things like reputation. You can probably tell that I'm thinking about this stuff in the context of a DnD fantasy medieval type setting. It's a setting I'm very fond of.
    AI on a space station immediately reminded me of Event [0]. I don't know if that game is anything like what you had in mind? Though I don't think it's an immersive sim. I guess, in a sense, I'm trying to build a fantasy medieval immersive sim, that is completely procedurally generated (so that I can enjoy the game). That's.. probably unfeasible. Better to take a somewhat simpler concept like Thief or System Shock and run with that. The complexity and interactivity in those games still blows my mind.

    I really rambled a lot in this reply, and I do apologise for that, but I'm super excited. : )
     
  10. EternalAmbiguity

    EternalAmbiguity

    Joined:
    Dec 27, 2014
    Posts:
    3,144
    Amusingly, when I mentioned the idea for my "procedural everything" game to a friend a few years back, his response was that it seemed like a 3D Dwarf Fortress too. What you're talking about sounds pretty familiar (though again, this never got off the ground).

    On how well not speaking works: I'd imagine that's something very dependent upon the type of conversation, and the type of personality (of the NPC). For the conversation I was demoing as I mentioned it was a tour through a city, so it didn't require player input. My initial idea I wanted real-time conversations for was also one that would have had the NPC giving the player commands and "monologuing" so it would have worked well there as well. I don't know that it would work in other situations where the NPC wants something from the player right then and there.

    Something I recently ran into during work you might look into is a "dialog act." You might use the NPCs knowledge and intentions/goals to form their statements, and based on their statements they might (or might not) have certain expectations from the individual responding to them (in my opinion this would be most fun for NPC-NPC conversations).

    I haven't ever played Dwarf Fortress (partially because I don't want to be influenced by their design), but I like the idea of "subheadings" or nested lines in certain categories. And there's no reason you couldn't make the initial broad selections a dialogue line as well--something like 'Shelter>Where are you staying for the night?' might be PC: "I have a question about taking shelter" NPC: "Okay, what is it?" PC: "Where are you staying for the night?" That would allow for a reasonable conversation flow while allowing the player to pick from a shorter list of options.

    My main setting is actually a medieval game as well, and that's the one where I do plan to incorporate things like perception of the player based on their clothes (and whether they're wearing weapons equipped, out in the open). Anyway, I have Event[0] sitting in my Steam Library category of "games I haven't started yet." I plan to get around to it of course, but that's another one where I've been a little wimpy and shied away from in the hopes of not being influenced by their design. I envision the NPC locking or unlocking sections of the station, rerouting power and such, either to help or hinder the player based on their (the AI) opinion of the player. That idea's not super fleshed out yet though.

    I saw that these are your first comments since you signed up here. Have you made any games before? There's been a lot of discussion about things like starting with your "dream game," but in my opinion the only real problem with that is that you may not know how to design something (either at all, or just in a well-designed manner), which could lead to a bad or straight-up wrong implementation that you build things around before having to tear it all to the ground and rebuild massive swaths of your work. Starting small gives you more experience with the engine and language, so you can see what works in other situations and choose the best implementation (as a non-game-dev example, a work project in WPF completely revolutionized my ideas on UI and backend design and caused me to rebuild a personal project from the ground up). It also helps with exposing you to more design choices, so that for your big project you make fewer bad design decisions from the get-go that need corrected.
     
    FallenAngelSamurai likes this.
  11. FallenAngelSamurai

    FallenAngelSamurai

    Joined:
    Oct 3, 2017
    Posts:
    5
    Are you from the USA? I noticed you replied to my post at 4:26 am in my time. I'm from the UK.

    These are indeed my first comments. I've used Unity a little before, but I don't fully know the ins and outs of it. And in fact I'm currently using a different engine (Godot) because I'm using a fairly low spec laptop that can't manage much. I come from a programming background (though that experience is limited) and my experience with designing something big is pretty much non existent.

    I tried to do the game a week thing but I just didn't have the drive for it. Maybe it was because I wasn't interested in the theme.. or because I couldn't think of a good idea. Although perhaps that was part of the point of the exercise.
    Anyways, I returned to thinking about my conversation system. I don't know if you can call my notes designs. They're a bit of a mess.

    I guess, in a sense, this is my dream game. Though for now it's more just me thinking about how I could make a better dialogue system. I sort of see it as a problem to solve. Though that won't stop me from implementing things incorrectly or badly, like you mentioned. That is definitely going to be an issue.
    Is a dialogue system by itself a small project to start with? Though I don't think I can make it entirely in isolation since it depends on having other abilities, like walking, to work.

    Yeah it does sound a bit like a 3D Dwarf Fortress. Though I'm more interested in the single player experience than managing dwarves. That being said, Dwarf Fortress does have a single player mode, called Adventure mode. The social elements are more limited in that mode however. Like having the ability to lie. That's only in the management mode. The ability to lie would be great, but it's problematic to implement because players could lie without the game knowing it. Well, that leads to a greater discussion about skills and stats and I've written long notes about that. Anyways back to the topic of discussion.

    A tour guide monologuing works brilliantly actually. I should have realised that. They don't require a reply to continue speaking and they can change what they're saying if someone does actually speak to them. That works great. I'll have to add that to my still growing list of conversation motivations. But yes, you're super right, the type of conversation and the type of person you're talking to would greatly affect how they respond to the player not talking to them.

    Hmm. I was actually thinking of something similar. In regards to forming statements based on knowledge and goals. With personality being a modifier. And there are a bunch of other modifiers like gender, race, age, time of day, location, state of being (hunger, basic needs) etc.
    I think you might be interested in the NPC-NPC conversations in Dwarf Fortress because it works similar to what you're describing. I think. I haven't played Dwarf Fortress much, because it's... A bit difficult to get into. There's a lot to learn and at the moment I'm just interested in how it handles conversation.

    I can understand you not wanting to be influenced by it's design. Though it's not real time, so it might not have as much of an influence on your own designs. A real time system would have to require a different design. Although, maybe that's not entirely true. I'd like to test to see if traditional dialogue systems still work if you just don't hold the player in place. That's not completely real time though.. there's so much to think about.

    Anyways, the nested dialogue tree. Yeah, making the initial category a line of dialogue as well is a good idea. I think I'm going to just start writing a list of categories today.
    I planned to allow the player to have the ability to speak at any time. By holding or pressing a dedicated button. That would bring up the list of nested categories/lines of dialogue that the player can choose from. This would allow the player to interrupt NPCs, and also let players set up their next line of dialogue while the NPC is talking. This should also help with conversation flow, which is something that can be quite lacking in many dialogue systems of today.

    Ah, I too have many games in that category. It is sad that I'll never really get to play all the games I want to. More and more games keep releasing. And now I want to make my own and add to that list. Eventually.
    Your ideas sound interesting. An AI can make such a great NPC.

    Edit: I saw that you had some trouble with receiving notifications about thread replies. I just discovered a way to receive email notifications, if you'd be interested?
    In the reply box, you should see an option at the bottom that says "More Options..." If you click on that, it lets you activate email notifications at the bottom, in addition to watching the thread. Hope that helps, it was something I was looking for earlier because I had to keep logging in to my Unity account to check for replies.

    Edit 2: I realised that we do get email notifications when people reply to our posts. So you may already be getting email notifications.
     
    Last edited: Jul 11, 2019
  12. neoshaman

    neoshaman

    Joined:
    Feb 11, 2011
    Posts:
    6,493
    For dwarf fortress + dialogue, there is the currently in dev game called "ultima regum ratio"
     
    FallenAngelSamurai likes this.
  13. FallenAngelSamurai

    FallenAngelSamurai

    Joined:
    Oct 3, 2017
    Posts:
    5
    Oh man, I totally forgot about that game. It's not exactly what I want to make, since I'm aiming for a real time system in 3D, but thank you, I'm definitely going to check this game out again.
     
  14. neoshaman

    neoshaman

    Joined:
    Feb 11, 2011
    Posts:
    6,493
    Yeah that game ambition is literally dialog fortress anyway, I tried to lobby hook for a 3d version, but the guy is a hardcore copenhagen rogue like lover.
     
  15. EternalAmbiguity

    EternalAmbiguity

    Joined:
    Dec 27, 2014
    Posts:
    3,144
    Yeah, I'm from the US, though I keep weird hours so there's no telling when you'll see me here.

    I recall seeing the email notifications for thread replies, though I never turned it on.

    My demo was the dialogue system itself without anything, so I think that sounds perfectly fine for a small scope to start out with. Remember that you're not trying to build a specific conversation, but build a framework. You can port that framework to a different project as needed, you don't have to start with the big project.