Tuesday, October 13, 2009

The Devil is in the Details

The Best Laid Plans…

Just like any other tabletop game, wavletop games must cope with several basic obstacles. Finding players, matching up schedules, settling on a game to play, and so on and so forth ad nauseum. Wave does make some of these issues a bit easier to resolve. If you have a group of people all online at the same time, it can be a cinch to plow through a lot of the planning stages of a game in under an hour.

If.

So far that “if” is a fairly rare occurrence. Once you get past whittling down the “Who” of the game, it can be hard to keep that momentum going unless you did it with the whole group online at the same time. The Spirit of the Century game I’ve been trying to pull together has stalled out on the “When” for the past week or so while waiting on feedback.
Of course, it’s not all lost time. Over the past couple days, a number of concepts have been hashed out for gaming over Wave.


Content Management

There are some things Wave handles quite well. Other things… not so much. For example, Wave isn’t so hot for things that take up a lot of screen real estate and don’t require much on in the way of collaboration beyond the ability to let others have a look (like character sheets). Fortunately, tabbed browsing means that players can keep sheets on Google Docs. Wave also isn’t so great on its own for content that shouldn’t be edited. This, too, has a fix: Watexy. Watexy takes any string of text $$marked like this$$ and outputs an image that cannot then be edited by flesh-and-blood users of Wave. Better still, RandomLee now detects when Watexy is a participant in a wave and outputs die rolls in that notation so that Watexy does its thing.

As a result, this...

...turns into this.

Of course, it's not all a battle to get Wave to do what you want it to do. The Wave paradigm lends itself quite well to some things with no shoehorning required. Take Spirit of the Century's character generation, for example. One of the earliest steps in creating an SotC character is coming up with a backstory in five parts. In the first part, you figure out your character's early childhood. In the second, you work out what your character did during The Great War (WWI). In the third part, you come up with a little back-cover blurb for a pulp action novel your character starred in. In the fourth and fifth parts, you take a different novel starring another player's character and insert your character as a guest star.

It turns out is the exact sort of thing that Wave helps make easy. Players can copy/paste the template from that starting blip into their own blips, collaborate with other players in another wave on novel ideas that will suit the mutual strengths of their characters, or even directly edit other players' blips to insert their guest-star blurbs for completion's sake. Once all of that's done, players can paste the results directly into their character sheets over in Google Docs.

Coming Soon!

Hopefully sometime in the next week or so I can get things started at least on chargen for the Spirit of the Century game. Once that's done, you can look forward to some musings from behind the virtual GM's screen and some actual real-world examples of how Wavletop gaming will shape up in practice.

Happy surfing!
-BowlerHatMan

Note: For those of you already on Wave, I have created a Questions and Comments wave. Hopefully, this link works as it's not something I've tried before and I can't exactly create a dummy account to make sure. If it does work, please say so in the wave. If not, please say so in the comments here. Linky!

Wednesday, October 7, 2009

A Wave New World

Ok, I know, bad pun.

If you're like me, the first glimpse of Google Wave last May at their I/O conference must have been torture for you. Torture because we didn't just want it. We wanted it ASAP, preferably somewhere between "Now" and "Five seconds from Now". Well, thanks to some luck in getting into the open preview, I am now a Google Wave user. Before I go any further, let me make sure we're all on the same page with the lexicon involved here.
  • Wave - An individual conversation in thread form. Also refers to the client itself. The difference should be clear by context (some users capitalize "wave" only when referring to the client).
  • Blip - An individual reply in a thread. Blips can be edited by all participants in a Wave, regardless of who originated the blip.
  • Robot - Automated Wave users. They can take scripted actions in editing waves (like replacing text emoticons with image-versions of them) or draw information from outside sources (like dropping a map into a Wave when it detects an address, or collecting the weather for an area). Still others allow you to interact with things beyond Wave (like Tweety the Twitbot, which allows a person to update their Twitter from Wave).
  • Extensions, Gadgets - So far, most Extensions and Gadgets behave in a very Robotic manner in Google Wave. It is unclear if the distinction between Extensions, Gadgets, and Robots will become a bit more defined as time goes on, or if the terminology will evolve to represent these concepts more distinctly.
Got it? Good.

Wait, what am I doing?

Now let me level with you: I'm not an engineer. I'm not a web developer. I'm not even a corporate procedures specialist. I'm just an ordinary guy with few technical skills. All you web developers and such reading this that wonder why I would sponge up an invite when I bring nothing to the part, I can tell you only that I don't intend to waste the opportunity. In fact, that's part of why I'm blogging. You see, I play tabletop roleplaying games. Y'know, like Dungeons and Dragons. If your eyes are glazing over, this might not be a good blog for you to follow, since what I'll be exploring for the most part is the use of Google Wave as a virtual tabletop for games.

How will it work?

So far, Wave seems to be having some lag problems and the user base isn't all that large. Until these two problems clear up, the relevant paradigm here is "pseudo-real time" since Wave isn't quite as fast as a chat room and time zones can be an issue for people finding groups. By the time it reaches the general public, it's my understanding that Wave should be every bit as responsive as a chat client, so it should be possible to run a game in true real time. The playback feature allows players who signed on late to catch up on a session's progress easily (as well as to catch up on a scene that a character joins in progress and to catch players trying to cheat by editing the wave after the fact), and images can be dragged right into the wave to help describe scenes and characters. Still, the core client doesn't have everything. That's what developers are for.

ROBOT ROLL CALL!... and the odd gadget or two, I suppose.

RandomLeeTwenty by Chris Clouser (or Mock from RPG.net's forums as some might know him) is a dice rolling robot. It's a smart little bit of code capable of generating die rolls for a wide variety of games. Players for everything from Spirit of the Century to Reign to D&D will find that this robot has their needs filled. Personally, I think this thing is outstanding. However, in the interests of full disclosure I should point out that I got my Wave invite from RandomLee's creator. All I can say is try it out when you get on Wave. It's the best dice roller up so far.

Tuxaios by Nathaniel Fairfield is another dice rolling robot. It's not quite as sophisticated as RandomLeeTwenty, but it can handle just about anything RLT can except for Fudge dice. The difference here is primarily one of output. While RandomLee will do things like count up successes in dice pools and give you the height and width of rolls in One Roll Engine games like Reign or Wild Talents, Tuxaios leaves the dice counting to you.

Ribbit has a couple gadgets that could be worthwhile for gaming, though more as a proof-of-concept than actual use. Video and voice chatting over Wave means that players will be able to interact with other players in ways that they're already used to: by talking to them. This means that the wave itself would be edited less (making it easier to follow) and things like editing a battle map could be done by a player at the same time as they declare what they're doing. But what do I mean by "proof-of-concept"? Well, Ribbit is free for now but will soon become a paid-for service, and as far as I'm concerned that makes it useless. That said, it's only a matter of time until a truly free alternative pops up.

But what about battle maps?

Thus far, there is no battle map robot/gadget/extension, but it's only a matter of time. Wave is still young, and this is exactly the sort of thing that I understand is fairly simple to implement. A hacked version of the Group Sudoku gadget already available could even do the trick in the short term, and if RandomLeeTwenty and Tuxaios are any indication there are definitely some smart people working on making Wavletop gaming more than doable.

So what can you expect of me in the future?

I'm going to try to review APIs that can help with gaming over Wave as I become aware of them. Perhaps more compelling though, I'm going to try to get a game over Wave going as soon as possible, and I'll be posting play reports for that game here. Naturally, I'll be focusing on the role Wave plays in making the game happen more than reviewing the game itself. Also, when access to Wave becomes a bit more common I'll be switching from a traditional blog format to a wave-embedded blog. Also, 1,000+ wordcount posts are hopefully going to be an anomaly!

Until next time, happy gaming!

-BowlerHatMan

Note: it has been brought to my attention (thank you, Mock!) that there is a clear difference between Robots and Gadgets as explained by Google. For a better explanation, click here.