The ups and downs of doing online multiplayer as an indie
May 12, 2014 Page 4 of 5
"Any programmers I have met who had never made a commercial-quality online multiplayer game hugely underestimated this part of building multiplayer," he says, adding, "Anyone who has never made online multiplayer before should only do so if they think it is an essential feature for their game. It is so much work that online multiplayer should never be made as 'just an extra.'"
On the other hand, he notes that Awesomenauts has proven to be a big success for Ronimo thanks to the online multiplayer options, and his studio is very happy that it made the effort to add these options.
"If you manage to make a successful online multiplayer game like Awesomenauts, this can sustain your studio for years," he notes. "Awesomenauts has been out for two years now and is still very much alive, which would normally not happen to a single player game that people just finish and that's it. Having this kind of competitive community is incredibly cool and online multiplayer is a great way to create that."
"Whether we would do it again depends on whether it fits whatever we are making," he says of the future for Ronimo. "It is a huge investment and in some games it would be worth it, while in others it would not."
Finally, we turn to another Dutch studio that knows a thing or two about online multiplayer in twitch-based games. When DoubleDutch Games first built SpeedRunners for Xbox 360, the game was local-multiplayer only -- but the move to PC sparked the idea of adding online play into the mix.
Very quickly, DoubleDutch hit a wall, and simply could not get theSpeedrunnersexperience to work in an online capacity. Fortunately, as documented before on Gamasutra, the team at Ronimo was happy to give the team some tips.
"If you manage to make a successful online multiplayer game like Awesomenauts, this can sustain your studio for years."
"Implementing online multiplayer was very difficult," developer Casper van Est tells me. "People always warn you about it, and even with that taken into account, it turned out more difficult than we expected. We're a small two-person development team, so we already knew implementing it was going to take a while, but it ended up taking us several years."
One of the main reasons that it took so long was because the team was being too nitpicky about it, trying to implement online play as perfectly as possible, which resulted in a system that was simply too complex to pass across a network to another player.
"We started out implementing online multiplayer more or less along the lines the way Valve did it, which involves complex things like input prediction and interpolation to compensate for lag," he tells me. "Even for a relatively simple game like SpeedRunners, this turned out to become very complex very fast."
It was after watching a talk from David Aldridge, the lead networking engineer on Halo, that the DoubleDutch team realized the most important thing about implementing online multiplayer: "It's not about creating a world that is the exact same for every player - it's about creating an experience in which each player believes they're operating in the same world as the other players."
"This means that not everything has to work perfectly in-sync on each player's screen," adds van Est. "It's more about creating a consistent experience in which all players agree on the 'bigger' gameplay events (such as who scored a point), while small differences are allowed (such as at which exact location a player or a crate or whatever is at)."
Taking both Ronimo and Aldridge's advice into account, DoubleDutch found online multiplayer development progressing at a far quicker rate.
Page 4 of 5