Gamasutra: The Art & Business of Making Gamesspacer
arrowPress Releases






If you enjoy reading this site, you might also want to check out these UBM Tech sites:


Interview: How A Fighting Game Fan Solved Internet Latency Issues

Interview: How A Fighting Game Fan Solved Internet Latency Issues

April 22, 2011 | By Kyle Orland




Like a lot of middleware developers, Tony Cannon started developing his own tool to solve a problem he himself was having. Unlike a lot of middleware makers, though, Cannons creation grew out of his problems as a player, not as a developer.

As a pro-level fighting game player and one of the organizers of the Evolution tournament series, Cannon was worried that the arcade culture he was steeped in was deteriorating.

"In the mid-90s, arcades were really dying, and we were in danger of losing this thing we really cared about, because everyone played in the arcades," he said in an interview with Gamasutra.

A ray of hope came in 2005, Cannon said, when Capcom announced it would be releasing a console version of Street Fighter II: Hyper Fighting with online play that could hopefully reconnect players who were no longer able to meet at arcades.

When the game came out, though, Cannon said lag and glitches made the internet play unusable.

"It was just bad," he said. "It was literally unplayable for a hardcore fighting game person. If all you remembered was Street Fighter II on the SNES and you just jumped back in after eight years and just started playing it, maybe it was good for you, but for hardcore fighting fans it was just unplayable."

Cannon started thinking about how he might fix these problems for timing-dependent games like his favored fighters, and came up with an idea he calls rollbacks. Instead of inserting any internet latency between the button press and the start of the move, his technique puts the lag on the beginning of the opponents move, with filler animation to hide the effect somewhat.

"Thats actually way better. You might see a little glitchiness, but all your timing is the same," he said.

After eight months of work, the first version of GGPO (short for "good game, peace out," a common post-match greeting in the fighting game culture) was ready by late 2006. The next step, Cannon says, was getting someone to notice, which was easier said than done.

He approached Backbone Entertainment -- which was working on a console port of Puzzle Fighter -- with a description of his procedure, but the process went nowhere.

"I learned something very important... a description of how it works is not enough to convince someone," he said.

A better strategy, Cannon said, was simply layering his code on top of an arcade emulator called Final Burn Alpha, with support for some of his favorite older fighting games. That way, when Capcoms Seth Killian was able to set up a meeting with the Street Fighter II: Turbo HD Remix development team in late 2007, Cannon was able to show them a demo of Street Fighter Alpha 2 and let them play live against someone from a player from Europe. The demo helped everything click in a way a simple description couldnt, Cannon said.

Backbone ended up using its own homegrown, rollback-enhanced net code for HD Remix, but the release still validated the concept used in GGPO, Cannon said.

While other companies could do the same thing, Cannon says getting a license for GGPO also brings along months of iterations and optimizations hes made for a variety of national and international internet connections, as well as testing feedback from thousands of Final Burn Alpha players.

"Thats the real value of GGPO, I think, the concept as well as the quality of the implementation, which is very hard for developers to get in-house," he says. How do you test your game out there on the internet for a year before you release it? You cant.

Use of GGPO in commercial releases is accelerating, Cannon says -- the code has been licensed for Capcoms retro revamp Final Fight: Double Impact, Namco Bandais Japanese arcade fighter Dragon Ball Zenkai Battle Royale and upcoming indie 2D fighter Skullgirls, as well as several unannounced titles.

But whether they use GGPO or are just inspired by his lag-masking technique, Cannon says hes happy developers are finally getting smarter about their net code for fast-paced competitive games.

"Thats been my goal from the start, to get fighting games incorporating some technology that replicates the arcade feel so I can play these games online, because I dont have time to go to arcades anymore," he said.


Related Jobs

2K
2K — Novato, California, United States
[09.20.17]

SENIOR SERVER ENGINEER
2K
2K — Novato, California, United States
[09.20.17]

SENIOR ONLINE ENGINEER (C++, PC / CONSOLE GAME CLIENT)
Pixelberry Studios
Pixelberry Studios — Mountain View, California, United States
[09.20.17]

Senior Game Writer
Hangar 13
Hangar 13 — Novato, California, United States
[09.20.17]

SENIOR VFX ARTIST









Loading Comments

loader image