Adventure Game Studio

Community => Adventure Related Talk & Chat => Topic started by: robvalue on Tue 28/10/2008 15:10:55

Title: Suggestion for all games: Dialogue log
Post by: robvalue on Tue 28/10/2008 15:10:55
Hi there, I am a big fan of these AGS games and although I haven't yet made the jump to trying to make my own, I'm a long time game player and always have lots of ideas as to how games can be improved.

One thing I have thought of that could be used in any game is a log of the most recent dialogue or other text the game has presented to you. The reason I say this is if I accidentally click the mouse and skip some onscreen text, a lot of the time the only way I can read it again would be to reload an earlier game or restart. Because of this I find myself saving my games very regularly just in case I miss dialogue.

It could be as little as the last 1 or 2 lines of dialogue/text, it could be integrated as a notebook or just as the character's memory, it wouldn't seem out of place in any game I reckon.

Thanks for reading! I have other little ideas like this that I think could become a part of each game as standard, often things I see in one game that I think should really be in every game. I'm happy to elaborate if anyone is interested!

Thank you all for the great games you make, they go a long way to livening up my life.
Title: Re: Suggestion for all games: Dialogue log
Post by: Snake on Tue 28/10/2008 15:22:10
Hi!

Not sure if that is needed as a standard implementation. I find myself doing the same thing once in a while but mostly in the games that the speech automatically skips to the next line after a time. But usually those topics are still accessible afterwords.

Also, I'm pretty sure this belongs in the AGS related talk and chat forum.

Just as long as you don't say 800x600 should be the standard AGS resolution, you should be taken seriously and welcomed properly. This could spawn a fun topic about things we accidentally do that piss us off while playing adventure games ;)

Welcome by the way!


--Snake
Title: Re: Suggestion for all games: Dialogue log
Post by: robvalue on Tue 28/10/2008 16:17:28
Thanks Snake :)

Yes often the dialogue can be repeated by talking to characters again, but sometimes that particular dialogue option disappears after use, or your character says something the first time they do something or enter a location and they won't say it again unless you load up and replay.

I know it's only a little thing and I'm not trying to say every game has to have this, it's just meant as food for thought as I'm sure any serious game designer wants to know how they can improve their games.
Title: Re: Suggestion for all games: Dialogue log
Post by: Shane 'ProgZmax' Stevens on Tue 28/10/2008 16:38:47
The Critics Lounge is not for general suggestions/comments, it's for posting your work to get advice :).  I'm moving this to Adventure.
Title: Re: Suggestion for all games: Dialogue log
Post by: Snake on Tue 28/10/2008 16:39:21
Oh I agree with you. I hate not seeing what a character says if it's a one-time deal or a cutscene.

But yeah, this won't be a standard, but definately something we all can ponder about when designing our games. It's an awesome idea.

There are, though, a few options in the general settings for how you want dialogue to be skipped. One I believe is a key-press only, but that would probably get a little tedious after the first couple of conversations (if being a strict "mouse only" game as well). I don't know exactly how that works. I wonder if it would keep skipping lines while holding down a key.

--EDIT--
One could also script a dialogue box with a "Continue..." button when the player is ready to proceed.
Title: Re: Suggestion for all games: Dialogue log
Post by: GarageGothic on Tue 28/10/2008 16:46:50
I wrote a conversation log module for my game (Twice actually. The original version used an external file but if the player restored an old game the same dialogs could be added multiple times. So when CJ implemented Strings with no character limit, I rewrote it to use those). The reason I haven't made it public is that it uses a custom Say function that parses the lines of dialog to the logging function. So to use the built-in dialog scripting you must have tons of dialog_request calls which isn't very practical. The same would be the case for your suggestion unless CJ eventually adds an on_character_say event (which I've suggested and it may happen now that he is reworking the dialog system).

Edit: As Snake said, you can also set the variable game.skip_speech_specific_key to for instance '.' like in the LucasArts games, to prevent the player from unintentionally skipping past dialog.
Title: Re: Suggestion for all games: Dialogue log
Post by: robvalue on Tue 28/10/2008 17:23:32
Thanks guys, sorry I put it in the wrong forum.

Yeah as I haven't played with any actual coding of games with AGS I didn't know how difficult my suggestion would be to implement, sounds like it might currently be a lot of hassle. Maybe it will be a possibility if the changes to the AGS engine are made. Glad to hear someone has had similar thoughts!

Yes I must say I would always favour a mouse-click-only or key-press-only way of skipping text and dialogue, that would avoid most of these incidents from occuring in the first place. And it would stop me missing dialogue because I didn't read it quick enough either. When checking out the demo for the hitch hikers guide to the galaxy game I see this was put into the options of that game, you could choose either timer, key press, mouse press or key/mouse press. I think that's a great feature to include.

Thanks for taking my ideas seriously, I'm so used to people just insulting me constantly on other forums whatever I say.
Title: Re: Suggestion for all games: Dialogue log
Post by: Trent R on Tue 28/10/2008 18:37:18
The GK games include a tape recorder that records the conversations. This is more necessary because it's about putting together clues and revisiting past dialogue helps you get the whole picture.

~Trent
Title: Re: Suggestion for all games: Dialogue log
Post by: Snarky on Tue 28/10/2008 18:57:10
Slightly off-topic, but I think it would be great if the "skip" mousebutton/keypress command was disabled just after the current line changed on its own. The way I usually miss a line is when I want to skip the previous line, but it changes just before I hit the button, so I skip the next line instead. For this reason, I'm often afraid to press the skip button, especially on short lines.

I guess this behavior is scriptable too, so it might not require a standard implementation in AGS.
Title: Re: Suggestion for all games: Dialogue log
Post by: Shane 'ProgZmax' Stevens on Tue 28/10/2008 23:53:38
You 'could' just add additional silence at the end of short lines to make them display longer.
Title: Re: Suggestion for all games: Dialogue log
Post by: Ionias on Wed 29/10/2008 01:07:18
I know Space Quest 6 had this exact “log” of your previous conversations. It is rather annoying to have to cruise back through your dialog options to find that one you’ve inadvertently skipped. I’m not sure how this could be implemented into AGS as standard though, because it’s also rather annoying to not be able to skip the dialogs.
Title: Re: Suggestion for all games: Dialogue log
Post by: Snarky on Wed 29/10/2008 02:27:32
Quote from: ProgZmax on Tue 28/10/2008 23:53:38
You 'could' just add additional silence at the end of short lines to make them display longer.

Well, that's not really what I'm trying to achieve. I want to be able to click to skip lines that I've finished reading, with confidence that I won't miss a line because it switched just as I clicked.
Title: Re: Suggestion for all games: Dialogue log
Post by: TheJBurger on Wed 29/10/2008 04:41:40
Snarky: that is an excellent suggestion! There were times in Trilby's Notes (just to pick one example) where I inadvertently skipped dialog because I would type just as the message popped up, only to miss what was said.

The only current way I can think of to fix this would be to just turn off the auto-disappear option. However, I wouldn't consider this an adequate solution because of all those times where I just feel like sitting back and watching a cut-scene.

On the topic of conversation logs:
In any games that I have played that do keep a conversational journal, I don't think I have ever enjoyed going back to read dialog that I've already had. And if it would be required for a puzzle, I think that would just be tedious.
Title: Re: Suggestion for all games: Dialogue log
Post by: Trent R on Wed 29/10/2008 07:40:08
On skipping: I think you'd have to script your own system filled with Timers or while loops to replace the c.Say function.

On logs: I just replayed GK2, which features one puzzle using the log system. Gabriel has a tape recorder that he records all of his conversations (and you can replay them to listen to them again), but there is one time where you splice a new tape from bits and pieces from another conversation (that may have made no sense, sorry).
Also in that game, I enjoyed going back to the logs of Grace (which more summaries, because she has a notebook instead of a tape recorder) to check historical dates and other facts. However, this is because that sort of behavior lends itself to that purpose. I wouldn't want to go back and read conversation logs of Prince Alex of KQ6--that'd just be boring!

~Trent
Title: Re: Suggestion for all games: Dialogue log
Post by: Dualnames on Wed 29/10/2008 11:33:07
Hell even Grim Fandango had a log(right?) or was it Discworld Noir..or some other game, yep it's useful and yes we all skip lines for certain reasons. I think it's not that hard to script and well it might end up useful for some and others might not even notice it. Concerning text parsers I'm wondering this is re-type last command useful or should something like Excel does when your typing something you typed before be more useful?
Title: Re: Suggestion for all games: Dialogue log
Post by: Stupot on Mon 03/11/2008 00:45:11
Just thinking out loud here...
What if, during a conversation, you could simply press a particular key (say, the left arrow key) and it would go back to the previous line of dialogue.  I'm sure that could be easily acheived with just a simple line of code (by someone who knows what they're doing - not me :-\).
Title: Re: Suggestion for all games: Dialogue log
Post by: ManicMatt on Mon 03/11/2008 19:03:53
There are times when you might not want the text to be skipped, if say timing of the cutscene is crucial.

I love Snarky's idea, I never thought of that before, and I've sometimes skipped dialogue by mis-timing my click at the last second.
Title: Re: Suggestion for all games: Dialogue log
Post by: Ryan Timothy B on Tue 04/11/2008 01:27:21
You could always have an option in the menu to disable auto timed dialog lines.

Or what snarky suggested.  If the dialog line changes on it's own, have a programmed timer start for 3 seconds.  If you click within the three seconds it won't change currently changed line of dialog.

I can't see that being difficult.
Title: Re: Suggestion for all games: Dialogue log
Post by: Snarky on Tue 04/11/2008 15:26:02
Quote from: Ryan Timothy on Tue 04/11/2008 01:27:21
Or what snarky suggested.  If the dialog line changes on it's own, have a programmed timer start for 3 seconds.  If you click within the three seconds it won't change currently changed line of dialog.

I can't see that being difficult.

There are two problems in getting this to work that I'm not sure how to resolve:

1. Starting the timer when a dialogue line changes. As far as I can tell, there is no inherent way to know that the previous line of dialogue just changed/went away. I can write a replacement function for character.Say() that starts the timer after the line goes away, but I'm not sure what to do within dialogue scripts. I don't want to have to call run-script() after every line of dialogue to start the timer.
2. Knowing whether the line timed out or was clicked away. I'm thinking that on_mouse_click() wouldn't work.
Title: Re: Suggestion for all games: Dialogue log
Post by: Trent R on Tue 04/11/2008 18:26:49
I was thinking about it too and I came to the same conclusion, you may have to use run-script after every line....

Maybe CJ can implement a new on_event EventType for this?


~Trent
Title: Re: Suggestion for all games: Dialogue log
Post by: Ryan Timothy B on Tue 04/11/2008 23:49:36
Hmm I guess you're right.  I took a look myself.  I always figured any text lines would go to a function in the global script where it determines the length of text, thus creating the display time for that line of text.

Looks like you'd have to recreate your own dialog functions, just so you could do this.
Title: Re: Suggestion for all games: Dialogue log
Post by: Kweepa on Sat 10/01/2009 23:25:52
Quote from: Snarky on Tue 28/10/2008 18:57:10
Slightly off-topic, but I think it would be great if the "skip" mousebutton/keypress command was disabled just after the current line changed on its own.

I agree :)
http://www.adventuregamestudio.co.uk/yabb/index.php?topic=14242.0
Title: Re: Suggestion for all games: Dialogue log
Post by: qptain Nemo on Sun 11/01/2009 11:13:20
Quote from: Snarky on Tue 28/10/2008 18:57:10
Slightly off-topic, but I think it would be great if the "skip" mousebutton/keypress command was disabled just after the current line changed on its own. The way I usually miss a line is when I want to skip the previous line, but it changes just before I hit the button, so I skip the next line instead. For this reason, I'm often afraid to press the skip button, especially on short lines.
Oh, I so much agree with this.

And usually I don't use conversation logs in games which have it. Personally I'd rather reload a savegame and talk again, it's kinda more fun.
Title: Re: Suggestion for all games: Dialogue log
Post by: Trihan on Sun 11/01/2009 14:24:39
Torin's Passage did this. If you clicked on the little button above the main console, you could see a transcript of the past dialogue.
Title: Re: Suggestion for all games: Dialogue log
Post by: Vince Twelve on Sun 11/01/2009 15:25:20
Quote from: robvalue on Tue 28/10/2008 16:17:28
Yes often the dialogue can be repeated by talking to characters again, but sometimes that particular dialogue option disappears after use, or your character says something the first time they do something or enter a location and they won't say it again unless you load up and replay.

This is a point that absolutely should be avoided by game developers.  I was planning on making a WYGIB with this point.

If a character says an important piece of information, whether it be the code for a safe, or a hint about what to do to move on, it must be possible for the player to hear that information again. 

Imagine talking to a character, choosing the option "What can I do for you?" and having that character tell you "I've hidden a note under the fourth rock from the left near the cabin in the woods.  Bring it to me."  Then, that dialog option disappears.

If the player now saves and quits and comes back several days later, he will likely have no idea what it was he was supposed to do for this character.

In this case, it's probably best to create a dialog option that says "What was it you wanted again?" or something like that, and have it never disappear.  Another solution would be to have a dialog log, but it had better be easy to search through to find information from a specific character.

Anyway, the player should never have to load and go back to a certain point in the game to retrieve information that he either forgot or accidentally skipped.  That's bad design practice IMO.  All pertinent information should be available (if obfuscated) to the player at the time that it is needed.

Edit: However, I don't see missing small comments or jokes as being a problem worth creating a dialog log for.
Title: Re: Suggestion for all games: Dialogue log
Post by: Trihan on Sun 11/01/2009 15:49:17
I agree wholeheartedly with Vince. Any piece of information in a game imparted through text that's going to prove vital to progressing in said game should always be accessible at a later date whenever the player needs it.
Title: Re: Suggestion for all games: Dialogue log
Post by: Shane 'ProgZmax' Stevens on Sun 11/01/2009 18:07:19
QuoteIf a character says an important piece of information, whether it be the code for a safe, or a hint about what to do to move on, it must be possible for the player to hear that information again.

Imagine talking to a character, choosing the option "What can I do for you?" and having that character tell you "I've hidden a note under the fourth rock from the left near the cabin in the woods.  Bring it to me."  Then, that dialog option disappears.

While I agree with the spirit of what you're saying, often people don't put the extra effort forth to make repeat dialog different.  It seems more like you're speaking to a recorded message than a real person, so if they need to help you with something specific, add some variations to their responses to keep it fresh, like:

'I already told you the code to the safe!'

'B...but, I forgot it.'

'It's 2102.  How hard can that be to remember?'

and

'WHAT?  You forgot the code AGAIN?  It's 2102 for crying out loud.  Can't you write it down on your hand or something?'

'You're a mean old man and I don't like you.'

'It's my job, sonny.  Now go jump in some lava or something.'

and

'2102.  TWENTY-ONE-OH-TWO!'


You don't have to have a mean old man telling you these things, of course, but variations in dialog go a long way to establishing character. 
Title: Re: Suggestion for all games: Dialogue log
Post by: Dualnames on Sun 11/01/2009 19:00:25
Moreover usually seen in games is that if you skip the dialog and then ask the character again he know has dialog options to remind you what to do.
Title: Re: Suggestion for all games: Dialogue log
Post by: TheJBurger on Sun 11/01/2009 20:42:48
QuoteIf a character says an important piece of information, whether it be the code for a safe, or a hint about what to do to move on, it must be possible for the player to hear that information again.

Imagine talking to a character, choosing the option "What can I do for you?" and having that character tell you "I've hidden a note under the fourth rock from the left near the cabin in the woods.  Bring it to me."  Then, that dialog option disappears.

I would normally agree with this, but in some cases it just makes the puzzles and solutions so blatantly obvious. A while back I think I was playing Two Of A Kind--this was a very long time ago, so my memory may be incorrect--and most of the characters had this dialog option enabled. If they required you to complete a task or some-odd, important options would re-enable every time you respoke to characters. For example, you spoke to a store keeper who said it was 'crazy hat day' and then that dialog option remained there, informing you that you somehow had to get a crazy hat for I can't remember why. It was nice because you wouldn't forget your goals, but I also saw it as too informative in the sense that they were basically telling you every puzzle you needed to do until you completed it.

Yes, player goals should be there and be able to be re-seen by the player, but sometimes they are highlighted a little too much, in my opinion.

I don't know. That was a bad example, but I can't think of a better one from my four-year old withering memory.
Title: Re: Suggestion for all games: Dialogue log
Post by: qptain Nemo on Sun 11/01/2009 20:51:38
Well, you are thinking positively here, BUT

Good adventure games don't only consist of such puzzles like 'ask what to do and do that'. The most interesting puzzles are aimed at your perception. You notice some facts or even patterns of facts in the surroundings and interfere with them to achieve what you need. And actions that you take are based on your observations and conclusions not on some instant tips. For the simpliest roughest example let's make up some guy who likes to drink alcohol and we of course need to get something from him by getting him drunk. The fact that he is a drunkard is told by himself or somebody else, but we're not too familiar or friendly with him so it's supposed to be some subtle gossip about him, not a direct request from him like 'make me drunk and i'll give what you need'. So, you see, in this case you can't make a dialog branch like 'Oh, I forgot, WHAT did you say he likes?' - 'He is a DRUNKARD, silly! He likes to DRINK! *WINK* *WINK*' because it'll make the puzzle ridiculously obvious. You just have to make most of meaningful dialogs re-talkable. Also what if a game also has a lot of good writing and dialog not directly necessary to solve puzzles? If you are putting logs into it you're either going to roughly highlight important things by including only vital pieces of dialog in logs or make lot of pages of plain text which will put away anybody. Once again, it would be more fun to listen to characters say that again than to read/scan all these pages, no?

So what I'm trying to say it that adventure game player should pay some attention to stuff in the game after all. Of course the adventure game has to have things which are quite possible to remember or that's a bad game. But still I haven't seen a shooter that had a 'Oops! I mindlessly spent all my bullets because I'm a dumbass, so give 'em back to me, please' feature. Why return unrationally spent attention? Anyway, I think the ability simply to retalk about something is enough.
On the other hand I'm not at all against some sort of notebook or maybe even a little database where main character puts important things. Is it controversal to what I said before? Do I make sense at all?  :) You decide.

p.s. Lol, while I was typing this, JBurger already posted thoughts quite close to mine.   :=
Title: Re: Suggestion for all games: Dialogue log
Post by: Trihan on Mon 12/01/2009 01:38:17
I think that the negative point here is against games that remove important dialogue options that, without the ability to revisit them, make puzzles that take into account things said during this dialogue practically impossible.

That is to say, if a character reveals -vital- information that you need to remember in order to progress, yet after talking about it you can never access that conversation again. (And I have played games that do this)