Netcode, the set of technical protocols that determine online play in video games, is especially important in fighting games. Decisions are often split-second, with just a few frames determining whether or not a punish lands or a combo finishes the job. Netcode is often the main concern of competitive players looking for their next game. Unfortunately, developers haven’t always been the most engaged participants in this discussion.
As part of an upcoming Hold Back to Block documentary on the 2013 Killer Instinct reboot, videographer Esteban Martinez yesterday released an interview with Iron Galaxy Studios combat designer Adam “Keits” Heart about netcode, specifically the ‘rollback’ netcode employed by the Killer Instinct team. Rollback netcode, such as the GGPO middleware developed and released freely by Evo co-founder Tony Cannon, has quite a few advantages compared to standard, ‘delay-based’ netcode when it comes to fighting games, and Heart’s conversation with Martinez does a fantastic job of breaking these down. (Heart was my former boss at fighting game community website Shoryuken, and Cannon is the owner.)
“Netcode’s the most important factor in a fighting game because the players who play online need to find a match quickly, and that match has to be stable and it needs to feel as offline as possible,” Heart explained. “And fortunately for us, this problem was basically solved in 2007-ish by Tony Cannon with GGPO. So we’ve had our framework to look at for how to approach this problem and do it in a really satisfactory way.”
Like with most things involving the technical aspects behind video games, rollback netcode is complicated for the layman, but Heart says it’s “literally identical” to delay-based netcode but with “a few more features.” It all comes down to how the two systems handle the data disparity that often happens between opponents online. When basic delay-based netcode doesn’t receive information on what one player is doing, the game comes to a standstill as it waits for everyone to catch up. During this time, inputs from both players are “eaten,” or rendered useless, since the game can’t take in any information. It’s a noticeable hiccup that can make online matches frustrating and futile.
Rollback netcode, on the other hand, makes a prediction about what the opponent is doing as determined by the input being performed before the connection error. If a player is walking forward, it might assume that they’re still walking forward. If they jumped or threw out a heavy punch, that animation will still play out for several frames while the game catches up. On the off chance that this prediction is wrong, the game state will be re-simulated and corrected faster than players can recognise what has happened. It’s not always the smoothest process, but with decent internet connections, the whole experience is much smoother and feels better for players used to playing offline than basic delay-based netcode.
“If your rollback is built correctly, it’s very hard to see those types of things happen,” Heart says. “You’ll always feel the same. Your combos always work the same. Your reaction time is always the same. You never have to adjust. You can actually learn the offline version of the game online because of rollback netcode. It’s just a matter of developers saying, ‘Yes, this is valuable to us and we want to do this.’ And [the community] getting the message out there to say, ‘Look what this did for Killer Instinct. It has a thriving scene after development has even stopped. People are finding matches lightning fast, they can play people all across the world. This is magic. You have to do this.’”
The fighting game community’s netcode discussion has amplified over the last month thanks to the release of Guilty Gear Strive next year. Guilty Gear developer Arc System Works has been notoriously hesitant to implement rollback netcode in their games because, in a small country like Japan, delay-based netcode is good enough for players to find stable matches. When netplay moves to a large country like the United States, however, things get shaky. Players have been vocal about the need for rollback in netcode in Arc System Works games, and while there’s been no indication that the studio is acting on these concerns, a questionnaire released during a recent Guilty Gear Strive showing asked players how important this kind of netcode is to them, making it clear that the developers are listening on some level.
Several fighting games, from major releases like Mortal Kombat and Injustice to more independent ventures like Skullgirls and Pocket Rumble, have utilised competent rollback netcode like GGPO to great effect. However, Street Fighter V’s proprietary Kagemusha rollback netcode, which was implemented poorly to say the least, left some players with the impression that it wasn’t worth pursuing for other fighting games. It’s not just a matter of plopping the code into your game, of course, but if a game is built with rollback netcode in mind and the developers are willing to spend a little extra time and money to make it functional, the end product provides a more enjoyable experience for a wider array of online competitors.
“There are a lot of considerations you have to make when you convert over to a rollback system,” Heart concludes. “It’s a great framework for network stuff, but you still have to prep for it. It’s definitely not trivial. But what I want developers to understand is that you will have to spend money on netcode either way. You’re either gonna do the bad netcode and spend money on it or you’re gonna do the good netcode and spend money on it. It’s not like a choice between spending no money and a bunch of money, it’s a choice between spending a bunch of money and a bunch plus a little bit more.”
Hold Back to Block’s whole conversation with Heart has more information on these systems and how fighting game players can “have a better future together” if more developers give rollback a shot.
Featured image: Microsoft