Sunday, August 30, 2009

The State of RPG-Oriented Chat Apps (VTTs)

For the last few weeks, I've been looking for an RPG-oriented chat app so that I can start play-testing YARPS online with some old friends. I've been running online chat-based RPGs for a very long time, since back in the early '90s when I was a TSR volunteer in their AOL community area (incidentally, I was surprised to find I'm still listed among the Wizards Community Retired Staff, as TSRO Gavin). So I'm somewhat set in my ways where chat-based role-playing is concerned, which in turn means I have strong opinions about the features that an RPG-oriented chat app should have. I've tried the six most popular programs I could find (they're called virtual table-tops, or VTTs, these days), but none of them made me happy.

(For the record, the six are: Fantasy Grounds II, Battlegrounds RPG, d20Pro, RPTools, OpenRPG, and ScreenMonkey.)

I've been in this situation before. Back in 1997, I was so frustrated by the lack of RPG-oriented chat apps that I wrote my own program in Visual Basic, named GameAssist. It was a client/server desktop application that supported different chat modes (IC say, IC emote, GM narrate, OOC), dice rolling (including support for Earthdawn), type-ahead macros, and logging. I and many of my friends have used it for the last 10 years, but the wife and I are exclusively Mac people now. GameAssist doesn't really suit our needs.

But the VTTs I tried don't suit my needs either. They're either too complicated, poorly designed, or both. None seemed to optimize for the one thing I do most when I run a chat-based RPG: typeI should rarely, if ever, need to take my hands off the keyboard! The chat window, and it's features, are far and away the most important aspect of the app (at least to me). Yet the VTTs seem to give the least attention to the chat features, focusing instead on the battle map (along with tokens, fog of war, and other tactical features), rules integration, character sheets, and combat tracking.

Now, to be fair, I don't play with battle maps; I narrate combat. And I'm happy to manage characters and combat they way I do when I run face-to-face: with pen and paper. So it might just be that they're building features for a different audience, one of which I'm not a part (although that doesn't explain the poor design and needless complexity). Anyway, I can live outside the mainstream; it just means I might need to build my own RPG-oriented chat app, again.

Fortunately, I've learned a great deal about software engineering since 1997; I'm pretty sure I could produce something that'd be useful to others as well as me. But what exactly to make? What features should it include? This is my current thinking:

Must Have Features
  • an OS X and windows client
  • multiple chat modes (in character speech, in character action, GM narration, GM description, GM NPC speech, GM NPC action, GM verbatim, and out-of-character) all from the command line
  • networking that works through firewalls and address translation
  • type-ahead, parameterized macros
  • simple logging (everything sent to the chat windows is logged to a local text file)
  • simple dice rolling (e.g., 2d6+1, d100) from the command line
  • GM can embed hyperlinks to images or video in a chat message
  • separate player names and characters names
  • well designed chat window (clear and readable text, distinct messages, colors that don't cause eye strain during long sessions)
  • a simple and uncluttered user interface

Features I Want
  • player dungeon mapping (I don't mean displaying a map; I mean a real-time map with design tools the players can use to map the adventure as the GM describes the locations)
  • player wilderness mapping (as above, but for hex-based wilderness exploration)
  • zero network configuration
  • filtered logging (you can filter out OOC chat, for instance)
  • Earthdawn dice rolling (e.g., Step 6)
  • highest-face die re-rolling (as in Earthdawn, Savage Worlds, and I'm sure many others)
  • private messaging (I usually just use IM, bit it would be nice to have them in the log)
  • playing cards (for Savage Worlds)

There are a few other features I have in mind that I haven't really seen anywhere else, so I'm going to keep them to myself for now.

Building this app would be pretty time consuming, so I might never actually do it. But given how hard it's been to put a face-to-face game together lately, having a good RPG-oriented chat app would be very helpful. It's something to consider, if nothing else.

No comments:

Post a Comment