Okay, let us begin, as always, with a disclaimer… I hate Ventrilo and all the other software voice chat stuff people use for MMOs and whatnot. There is just something I feel is clunky about using a tool that is outside the game, and if there is one thing I am a big proponent of is putting tools in the game for the players (any game without an in-game notepad annoys me, I don’t want my desk covered in notes, let me put them in the game).
To that end, what I would really like to see is a move toward “realistic” voice chat in game. I wouldn’t do away with text chat entirely, because text works much better than voice for managing multiple rooms or private chats. And, to a degree, I don’t mind if interaction with NPCs for quests and stuff has to stay text based, that’ll come later if a game can manage what I want.
The first step is to build a sound engine and structures within the game engine to support distance with sounds. For a simplified system, lets just say there are 4 levels of sound: Whisper, Normal, Loud, Yell. Roughly equating these to distances: 5 feet, 15 feet, 30 feet, 100 feet (this might need some adjusting as this is just off the top of my head stuff). Every sound effect in the game has a sound level attached to it. When a sound plays, the appropriate distance from the sound emitter is calculated and the sound will be played for every listening object (mostly players) in that range, at the appropriate level. What that last clause means is that something said at “Normal” level doesn’t just travel 15 feet and stop, it travels 15 feet at Normal, and then another 7.5 at Whisper. A Yell would travel 100 feet at Yell, 50 feet at Loud, 25 feet at Normal, and 12.5 feet at Whisper. Then, you build “echo” objects that will repeat any sound they “hear”
modified by the properties of the echo object. If you have been in caves you’ll know that sometimes an echo can actually come back at you louder than the original sound, or distorted, not always just softer.
Okay, now that you have it so sound plays at distance and have echoes, the next step is to make NPCs react to sound. Imagine what games like EverQuest or World of Warcraft would be like if your footsteps made sound and the monsters could hear you. Pretty cool, eh? You can bet suddenly people would stop running and jumping to get everywhere.
Now, the final step of my plan… Voice Chat. The player logs in and sets levels in the options for Whisper, Normal, Loud and Yell by speaking into there microphone at the different levels. This way, when the player Yells into his mic, the game will play his sound back in the game as a Yell… 100 feet, then 50, then 25, then 12.5. Everyone in those ranges just heard him, good or bad.
After that, you can get real tricky by utiliting modified echo objects linked together to work like a walkie-talkie or cell phone. I whisper at my end, and even though you are 500 yards away my whisper comes out your end as a whisper (perhaps even with static or other sound modifications added to it).
I know this won’t be easy, as its not a simple sound stream, but I’d love to see it done. Anything that moves MMOs away from the feel of a graphical chat room and adds more spacial awareness is good to me.