|This article needs additional citations for verification. (June 2011) (Learn how and when to remove this template message)|
|Developer(s)||Tony "Ponder" Cannon|
|Stable release||0.30 (May 10, 2011)|
|Operating system||Microsoft Windows|
GGPO (short for Good Game Peace Out) is middleware designed to help create a near-lagless online experience for various emulated arcade games and fighting games. The program was created by Tony Cannon, co-founder of fighting game community site Shoryuken and the popular Evolution Championship Series.
Before its creation, GGPO creator Tony Cannon was completely dissatisfied with the 2006 Xbox 360 re-release of Street Fighter II: Hyper Fighting after experiencing its criticized online capabilities. As a reaction to its service, Cannon began development on GGPO and released the first ever version in late 2006. Cannon later demonstrated GGPO to Capcom, which was positively received.
The downloadable GGPO client currently supports many games from Capcom and SNK including Super Street Fighter II Turbo, The King of Fighters 2002, and Metal Slug X through use of emulator. Video game companies have also implemented a licensed version of GGPO. Games using it include Skullgirls, Killer Instinct (2013 video game), and Street Fighter III: 3rd Strike Online Edition.
GGPO uses a netcode technique called “rollback”. Rather than waiting for input to be received from other players before simulating the next frame, GGPO predicts the inputs they will send and simulates the next frame without delay using that assumption. When other players’ inputs arrive, if any input didn’t match the prediction, GGPO rolls back the state of the game to the last correct state, then replays all players’ revised inputs back until the current frame. The hope is that the predictions will be correct most of the time, allowing smooth play with minimal sudden changes to the game state.
The client program can allow players to manually adjust latency in high-ping situations, either creating a possibly-jerky yet accurate representation or a smoother game with input delay.
The downloadable GGPO client itself has a matchmaking system for every game provided. Players can request challenges while others are able to spectate and chat. Once a challenge initiates, the match runs a ROM from emulator FinalBurn Alpha.
Games using GGPO
- Final Fight: Double Impact (2010)
- Dragon Ball: Zenkai Battle Royale (2011)
- Street Fighter III: 3rd Strike Online Edition (2011)
- Skullgirls (2012)
- Marvel vs. Capcom Origins (2012)
- Darkstalkers Resurrection (2013)
- Dungeons & Dragons: Chronicles of Mystara (2013)
- Divekick (2013)
- Killer Instinct (2013)
- Lethal League (2014)
- Yatagarasu (Legend of Raven) (TBA)
- Yatagarasu: Attack on Cataclysm (2015)
- Brawlhalla (2015)
- Mortal Kombat XL (2015) 
- Rising Thunder (2015)
- Injustice 2 (2017) 
- "GGPO Networking Guru Talks SF HD Remix!". Capcom. Retrieved 2011-06-21.
- "Interview: How A Fighting Game Fan Solved Internet Latency Issues". Gamasutra. Retrieved 2011-04-23.
- Heart, Adam (6 June 2011). "Street Fighter III: 3rd Strike Online – 1st Trailer and Screens". Shoryuken. Retrieved 6 June 2011.
Street Fighter III Third Strike Online Edition will be using GGPO netcode ...
- Miller, Patrick. "The lag-fighting techniques behind GGPO's netcode". Gamasutra. Retrieved 19 August 2016.
- Cannon, Tony (September 2012). "Fight the Lag!". Game Developer Magazine. Retrieved 12 September 2012.
- Foxall, Sam. "Injustice 2 Will Have a "Level Playing Field Version" for Tournament Play". Shoryuken. Retrieved 2016-06-14.