I'm developing a flash puzzle platform game in my free time and I got stuck on deciding how to implement a feature. The game will be controlled by keyboard only, no mouse available.

My game will have Dialog boxes, used for story telling, announcing events, tutorial hints etc. I'd really prefer not to dedicate a large portion of the screen allowing the player to play while the dialog is displayed.

So my approach is to pop up the dialog and pause the game until the player closes the dialog. That's because the game has a small resolution (640 x 320) and some of the dialogs are pretty large (up to 5 lines text, talker's thumbnail etc).

EDIT : Another major reason I want to pause the game, is that I want to be 100% sure the player will not miss a dialog. Also, I want her to read it in a certain level area, before visiting another area of the level, or doing something that will advance the plot.

The thing Is that I can't find a way to make this work right. After testing the game with a few friends, I'm not satisfied from the feedback I get.

If I force them to close the dialog with one specific key (ACTION), I see people keep hitting keys randomly (e.g FIRE or JUMP key), while they know that it's closed with ACTION, like they did that 2 minutes before. They eventually get to close the dialog, but I can see they get a bit frustrated. I don't think they adopt the control as fast as I'd expect.

If I let them close the dialog with ANY key, they find themselves closing the dialog by mistake. Some of the dialogs are popping out while they're not expecting it.

So I'm starting to think that the 'Pause for dialog - close it to Resume' might be a bad idea in the first place. Do you think it is ? Or is it OK to have the dialog pause, but I just have to find the way to do it right ? Maybe the problem is not the controls, but something else, like say, I should not pop out the dialogs unexpectedly ?

Do you have any example of some game doing that right ?


First of all: Don't just block user input as done by some games. It creates bad user experiences. One popular example: "What a horrible night to have a curse." (Castlevania II - Simon's Quest if you didn't know it. Lookup the Angry Video Game Nerd's review on YouTube. You'll get what I'm talking about.)

For dialog/story elements or tutorials the user should be able to read without having to worry about the actual game (i.e. longer texts):

Stop the game, then show the dialog using some kind of animation (even if it's just some kind of typewriter effect revealing letter by letter). Assign some "advance" key, usually what you'd use to shoot or jump. If the user presses this key, the animation is speed up and once it's complete, another button press (holding down the button shouldn't work so people can just skip the animation if they want to) will hide/advance the text.

For short messages:

Consider showing popups without backgrounds. Again, animations (e.g. floating in/out) can help to blend these without surprising users ("uh, was there some text for a moment?"). The user shouldn't have any influence over these messages, but they shouldn't halt gameplay either.

| improve this answer | |
  • \$\begingroup\$ thanx for your input. If I understand correctly, you propose to display the dialog without pausing, and that means that the player will keep playing, pressing JUMP/FIRE/ACTION keys, which will also proceed or skip the dialog. I'm afraid this is going to let him accidentally skip dialogs, right? What about if I want to be sure that he didn't miss the dialog ? \$\endgroup\$ – yannicuLar May 18 '13 at 10:26
  • 1
    \$\begingroup\$ If its important text or a long dialog, halt the game, show the text, but let the user skip the animation using the first button press, then advance or hide the text once he pushes the button again. If the game isn't stopped, the text advances/disappears based on time or actions done, not by simply pushing some button. \$\endgroup\$ – Mario May 18 '13 at 10:37
  • \$\begingroup\$ I didn't understand your answer at first. But now that I'm reading it again, I think that you're quite right. I agree that both kinds of dialogs are needed. E.g. pausing game for story telling, but displaying tutorial hints in a small area without pausing (and closing without a keyboard key). Thanx again \$\endgroup\$ – yannicuLar May 18 '13 at 21:49

A good way of keeping users from making a dialogue choice or skipping by accident is to not allow the choice for a period after it has appeared. Depending on the seriousness of making the mistake you should choose a time somewhere in the 2 to 5 seconds range. Having a visual cue about what is going on is usually best as it informs the user that your application is not merely sluggish and that they don't have to wait for long.

Another option that has seen use in games is to make text appear only when the player stand in a predetermined location, often the location is marked to make the mechanic clear.

You may want either to make the text-box slightly transparent or make sure that it does not cover the area that the player inhabit so that navigating away from the spot won't be a blind task.

| improve this answer | |
  • 1
    \$\begingroup\$ I don't think forcing the player to wait one or two seconds (or even longer) isn't really something to aim for, unless the player is able to still skip that time. \$\endgroup\$ – Mario May 18 '13 at 10:39
  • \$\begingroup\$ I also think that a 2sec delay is too big, except if dialogs are pretty rare, which is not my case. But I agree on the rest, especially marking the location that will pop the dialog. Thank you for sharing \$\endgroup\$ – yannicuLar May 18 '13 at 10:48

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.