Yesterday brought a major patch for the League of Legends client. Along with the standard minor balance tweaks they added a new piece of functionality to the live client: spectator mode. Riot originally launched the game with no way at all for non-players to spectate a game which haunted them some when LoL took off as an eSport. They've gone through a series of cludgy fixes for their tournaments and have just now released a functional version to the masses.
Their first solution involved expanding the number of players on each team to 6. The 6th person on a team would have to draft a champion as normal and then be trusted to not participate in the game. They had to just stand around in the base and watch in order to have the game broadcast over the internet. I remember watching an early tournament where the casters were worried about impacting the game by dying to a high level Karthus. (His ultimate hits all enemy champions and could kill a level 1 player in one hit!) They ended up buying survival items with the slowly accumulating gold and managed to not die. Then they added in a special summoner spell which removed your hero and gave complete vision of the map. This worked reasonably well but that summoner spell was still only available on their tournament realm.
More recently they added in a spectator mode to the tournament realm where spectators could see lots of interesting stats as the game progressed. The spectators were delayed by 3 minutes (to prevent players from watching the stream in another window I guess) and could see cool information like the exact amount of gold each champion had on hand, and ever earned. You could see total gold by team. An easy count of the number of turrets. Clicking on an individual champion would let you see what rank they had in each of their skills and you could even look at their detailed stats page to get some insight into what runes/masteries they may have taken. Pretty cool stuff. This spectator mode was added to the live client for custom games as well.
The spectator mode added yesterday has all that stuff included in it but also comes with two new and super cool features. In other games (like, say, Starcraft 2) you have to be added to the game when it was created to observe the game and you're stuck watching it as the game progresses. The new League of Legends mode allows you to rewind as you're watching! Get a notification that someone died while you were looking elsewhere? Rewind and change where your camera is located! You're already delayed 3 minutes from the real time of the game so it isn't really functionally different if you delay yourself an extra 30 seconds from real time, is it? Need to go to the bathroom? Pause the game! Want to fast forward? You can do that too!
They added in AI for the camera as well which tries to center on the action. I found it jumped around a little too much and went to manually controlling the camera but I could see it being really useful for someone who didn't know what specifically they were looking for. I can only imagine that AI getting better as time goes on as well.
Perhaps most importantly they also set it up so you can drop in on a running game and start spectating in the middle. If a caster got disconnected right at the start of the game they can jump back in without worry. The really cool part of this feature is you don't have to be invited to spectate a game. If one of your friends is playing a game you can hop in and watch them play! (3 minutes delayed, of course.) It doesn't even have to be one of your friends playing... They set up a system where high ranked games just show up in a window of the client. Want to jump in and watch some pros play? You can do it! They don't get notified that you're watching them and chat messages between spectators and players are blocked. As far as they're concerned you don't exist. But you still get to watch them play and check out their builds!
I particularly like how it should make getting a team together for a ranked game easier. Sometimes I'll get on and half a team is already playing a game. Should I wait for them to finish (and get bored/fall asleep/wander away) or play a game of my own? Now I can jump in and watch their game! If I can get into their Skype call I can even heckle them for mistakes made 3 minutes in the past!