Wednesday, August 11, 2010

SC2 Replay Match feature in WoW?

One of the first posts I made on this blog consisted of some musings on the nature of the relationship between the information that's being sent to our game clients by Blizzard and what we see on our screen.

At the end of that post, I also made this statement:
On a similar note, I would really like a recording tool that just took all that incoming information and stored it in a data file that could be loaded and played back in a mock-client with standard camera and playback controls. Wouldn't it be cool to be able to record a raid in that way and then be able to play it back with a free-roaming camera? Rewinds, pauses, fastforwards. No more Fraps limitations. No more being constrained to the viewpoints of whoever happens to be recording. No more trying to balance getting compelling shots of the action and being able to your job in the raid. This would be an amazing tool for raid leaders and machinimaists alike. I realize this would take some development resources for a feature that a relatively small portion of the playing population would actually use. But that didn't stop them with the gear manager...
Honestly, I was willing to leave it at that. A "nice-to-have" that sat at the back of my mind.

Then I found something out last week that I didn't know before: Starcraft II has this.

I don't own SC2, so I haven't been able to play with it myself. And good YouTube videos of how the feature works have been difficult to find. But I did find this one.

If you watch the vid it looks like there's some basic functionality there...pause the replay, speed it up, or slow it down. You're able to move the camera to any point on the battlefield and see what's going on with both players. Clicking on any unit or building will let you see details about it, including what instructions it's being given.

It also looks like there's some additional functionality that may exist but just isn't used in that video.

There's still some thing I haven't been able to figure out. I don't know if replays are saved locally and then uploaded somewhere, or if they're stored on the server that's hosting the game. I've seen replays available for download from different websites for viewing, so it looks like you can save and access them locally, but they may have to be downloaded from first. I don't know?

I don't know if all games are automatically saved for replay or if that's an option that can be turned on or off (either before the match, or at the end). It definitely appears that you have to have the game client loaded up to watch the replays, though.

So there's a lot going on there.

Now granted, SC2 has one thing going for it that WoW doesn't...definitive start and end points. Each battle is a self-contained event. And there's a finite, known number of players involved in each battle. WoW, obviously, does not break down so easily.

What's apparent here, though, is that the framework is in place. It would have to be adapted for WoW, but it could be done.

The big questions would be around how and when to record. Obviously with thousands of active players across entire continents, you wouldn't want to record constantly. There's just no reason to do that.

So what if it was restricted to Dungeons and/or Raids? Well, you probably still wouldn't want to record and save every single one. But it could be an option open to the player.

But that would leave a lot of practical uses out of the tool. If I were a machinima creator, I might want to record my character running through a bustling capital city for some reason. I should have that option. But Blizz would obviously not want to be in charge of storing that kind of data for everyone in Dalaran at any given time.

It's interesting, though, in the possibilities. I wish I had a better grasp on how it currently worked for SC2. It might give me something more to work with while brainstorming a similar feature in WoW.

Still, the simple fact remains that this little "wouldn't it be nice" idea that was floating in my head a few months ago is now a raging "please, Blizz, give us this!"


  1. Hi there! I sort of came across this blog while looking at how to level a druid among other information... great help so far, thanks :)

    Anyway, about SC2 - I agree; WoW could definitely benefit from some sort of feature like that!

    I have SC2 and just wanted to clear up a few of the questions you had:

    1. Yes, replays are saved locally to your hard drive. The file size is very small, surprisingly, even for a game over an hour long. Anyone can upload a replay or just send the actual file to someone, which they can put into their own replay directory and play. I don't believe Blizzard saves any of them on their own servers, since actual SC2 games are played and hosted on users computers.

    2. Your replays can be managed in an in-game browser, where you can separate them into subdirectories for, say, single player missions, multiplayer, or custom games. Also, your most recent list of replays is featured, and they are deleted automatically as you play more games.

    3. Pretty much every game you play will be recorded automatically. Not really a way to turn this off. The point at which you leave the game (say, it's not finished and you leave early), is where your replay will stop, but the other players will keep recording a replay until everyone is gone.

  2. Ok, that actually clears a lot of things up.

    I have an addon installed for WoW that automatically turns on my combat log recording whenever I'm in a raid. Since the last time I cleared the file it's recorded about a dozen attempts at 10-man Lich King (including our ultimate successful attempt). That file clocks in around 252MB at the moment.

    A "full" playback recording would probably take more room since the combat logs don't include position, orientation, or model data. I'm not sure how much it would bloat them, though.

    From what you say, though, it definitely sounds more than doable.

  3. Actually the reason the combat log is so large is because the text is so verbose. If it was turned to GUID only and Numeric information only useful to the client and then compressed I am sure the file would be much much smaller than your normal combat log.

  4. Also if you replace the full text of the spells with a code number for each ability.

    The big problem with WoW recording is dealing with movement. In Starcraft, they simply keep a track of mouse clicks, and as units move in predictable ways, it works fine. In WoW however, I think it's a much more difficult thing to keep track of movement. It's possible...Guild Wars has been doing it for quite a while, however you probably would need some sort of position verification, which while easy to design, would result in a playback that might have some choppiness.

    I was actually just discussing this the other night with my wife, after I showed her a SC2 replay where I got about 60 kills in 10 seconds with a High Templar :)

  5. The thing is, the game is already sending us the positional data for everyone around us, whether we're in an arena, a raid, or hanging out in Dalaran. Shift into Cat and Track Humanoids to see just how much positional data the client gets while we're in the city. They already have some kind of compact, concise way of sending this information to our clients...we just need to have the ability to capture it and loop it back through a mock client later.