Jump to content
  • Advertisement
Sign in to follow this  
Kest

Text during real time action

This topic is 3626 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

What would be the best way to do this? I don't have the resource capacity to use voices in my game project, so all dialog will be text-only. One of the things I've been looking forward to was giving NPCs very context driven dialog during crazy situations, such as team members offering advice during a shootout, enemies taunting the player during a fight, or cowards shouting obscenities as they run away from battle. Should I go with a subtitle-like system, a face-with-text system, or something else? And how do I design it so that it's easy to read while bothering your concentration on the action as little as possible? Is it just hopeless to implement this type of action dialog without voices? The game view is 3rd person, similar to Hitman. You won't always be able to see the characters who are speaking. They could be behind walls, or behind the player.

Share this post


Link to post
Share on other sites
Advertisement
What about making it like real life - well that is if we saw text instead of hearing voices in real life. If you CAN see the person on the screen, have a litte text "bubble" or whatever come from their face. If they are in the players view, but off screen (since it is 3rd person), I can see a face with text system, and then if they are, as you said, behind a wall, maybe just write the text (no background, no face, just the text in quotes or something) at the very top or very bottom of the screen...

I'm sure there are other little quirks to work out but that would probably add to the effect, and be similar to if you could see who you were hearing vs. not seeing who you were hearing, and like real life, you could choose to pay attention to the text or not, just as people choose to ignore what someone says. I don't actually think it will take away from the action of the game either...

Cheers
-Scott

Share this post


Link to post
Share on other sites
Can you fake the real time aspect? For instance, use some sort of convention where you letterbox the action while still showing it and then allow the user time to read?

Another possibility would be to adopt symbols, kind of like the Sims. If you see the "raised middle finger icon," for example, but miss the text you could still get the gist of things.

Share this post


Link to post
Share on other sites
You can use a comic book approach with this. Whenever someone says something, a dialogue box will appear right above over their head of varied size (bounded by how much text is said). Short expletives that are exclaimed can be shorted to an emote icon, such as an Exclamation point appearing over your enemies' heads when you surprise them such as in Metal Gear Solid, or similarly with Question marks when they are confused or curious.

To prevent overlapping text bubbles, add in code that does just that; whenever a dialogue bubble appears, it will appear next to one, not over one. Additionally, make the dialogue bubbles transparent so you can see through them (so your screen won't get crowded up with a bunch of white space).

The farther away you are from a talking person, the smaller and more indistinguishable their text bubbles (and the text in them) will be, representing the unclarity you get when you are trying to distinguish dialogue from a far away distance.

To implement this you can add a single screen-wide transparent panel/window right under your interface layer which deals specifically with the popping up of dialogue boxes, rather than putting them in the actual 3-D world. In this way you can make sure dialogue boxes won't overlap with each other. All you have to do then is to track the talker's position on the dialogue panel layer, and summon or hide dialogue boxes whenever they talk.

In this way, whenever dialogue happens behind your back, a dialogue bubble can appear on the edge of your screen pointing to the direction of where you should turn in order to face that talker which works very much like a starship fighter game such as Eve Online's object targeting location system.

In order to implement this effectively you cannot put too much text in the bubble at once. You have to realistically display how much a person can say in real time. Meaning, putting entire paragraphs or several sentences of text in a single person's dialogue bubble at a single time will ruin the whole system. Make your people only talk one sentence at a time, or even a phrase at a time, so that the text bubbles will not be overblown, and make them appear at the speed of the average player's reading. This would also emulate how people speak in the real world, which forces you to memorize what they spoke.

And just to make that memory part easier, you can additionally implement a dialogue history log in your inventory interface to which you can access to review all talks you had or have heard in your course through the game.

Share this post


Link to post
Share on other sites
Quote:
Original post by popsoftheyear
If you CAN see the person on the screen, have a litte text "bubble" or whatever come from their face.

That might be the best option. Having the text near the person would allow the player to keep looking at the action while reading it, rather than having to glance at the top or bottom of the screen.

Quote:
Original post by Wavinator
Can you fake the real time aspect? For instance, use some sort of convention where you letterbox the action while still showing it and then allow the user time to read?

No, this would be happening in the middle of the normal real-time gameplay. However, it may be possible to hold some of the dialog back until idle situations occur, such as when the enemy or player takes cover. It would require me to refer to events in past-tense, though, so it wouldn't work well for everything.

Quote:
Another possibility would be to adopt symbols, kind of like the Sims. If you see the "raised middle finger icon," for example, but miss the text you could still get the gist of things.

A symbol that represents the meaning of the text is a good idea.

Quote:
Original post by Tangireon
In order to implement this effectively you cannot put too much text in the bubble at once.

I think that's going to be the case for any implementation I go with. I'll have to keep it very short and to the point.

Quote:
And just to make that memory part easier, you can additionally implement a dialogue history log in your inventory interface to which you can access to review all talks you had or have heard in your course through the game.

That's a really great idea. Sort of like one of those courtroom typists that keeps track of what everyone says (the name of that profession eludes me).

Share this post


Link to post
Share on other sites
Have you seen or played the game
">XIII? The game had a comic book style to the whole thing, as well uses a dialogue bubble system you see in comic books alongside voice acting. It even uses text pop-ups to "display" in-world sound locations such as "Kapow!" or "Boom!" for explosions or even "Tap Tap Tap" for tip-toeing enemies.

[Edited by - Tangireon on July 15, 2008 7:39:26 PM]

Share this post


Link to post
Share on other sites
No, I hadn't heard of XIII until now. My browser security is too jacked up to use youtube, but I did manage to find some screenshots on google. It looks pretty neat.

My game doesn't use a comic book style. It's far more dark and gloomy - white text bubbles won't look right. But I still need to make sure it's easy to read without obscuring the game world. That most likely means a lot of trial and error until I find something that works.

Share this post


Link to post
Share on other sites
I could fall in love with XIII and now must make a game based on that style. :) And I love the text boxes and the tapping.

Share this post


Link to post
Share on other sites
Quote:
Original post by Kest
What would be the best way to do this?

I don't have the resource capacity to use voices in my game project, so all dialog will be text-only. One of the things I've been looking forward to was giving NPCs very context driven dialog during crazy situations, such as team members offering advice during a shootout, enemies taunting the player during a fight, or cowards shouting obscenities as they run away from battle.

Should I go with a subtitle-like system, a face-with-text system, or something else? And how do I design it so that it's easy to read while bothering your concentration on the action as little as possible? Is it just hopeless to implement this type of action dialog without voices?

The game view is 3rd person, similar to Hitman. You won't always be able to see the characters who are speaking. They could be behind walls, or behind the player.




In Lord of the Rings Online we used Yahoo voice sessions to communicate between the group of people I was playing with. It worked reasonably well. We did go on to use the in game system which worked quite well (and did better for people just being met -- as in yahoo you have to exchange yahoo account info ahead of time to make it work...)

I suppose it would be possible to have an in-game interfacee that published Yahoo connection info -- to be cut-n-pasted into a yahoo system manually...


Before the online voice worked well I thought about having Voice to Text conversion (using something like the Microsoft Voice Recognition SDK stuff which I calculated to eat about 200mhz execution on a Pentium 4). The Voice would be converted to text on the client and then would be processed normally (as text) on chat log or better on above the head...

Years ago (playing another MMORPG) I found typed text pretty unworkable when any action started and your hands were busy fighting off the hordes.

The precanned generic messages can work but are usually fairly limited in what they convey. It depends on what spectrum of messages you would need to send between players (in battle). If its a complex/rich game it will be hard to send anything rich/complex genericly.

Movements trace or location pointers might be input via a minimap (or pointed to on the main screen) and be relayed and symbolicly presented on the other players interfaces (arrows, X marks the spot, highlights etc...)

Share this post


Link to post
Share on other sites
Sign in to follow this  

  • Advertisement
×

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

Participate in the game development conversation and more when you create an account on GameDev.net!

Sign me up!