https://ki.infil.net/w02-netcode.html
The Complete Killer Instinct Guide by Infil
[header]
---------------------------------------------------------------------
02
Netcode
Explaining how fighting games use delay-based and rollback netcode
October 16, 2019
Infil
I would like to thank krazhier and Keits for taking hours out of
their busy schedules to discuss technical aspects of netcode with me,
and Sajam for taking time to answer interview questions and being
supportive throughout the writing process. I would also like to
especially thank MagicMoste for making all the wonderful videos you
see in this article. All their help was offered for free and I am
thankful for their friendship.
This article has been cross-posted on Ars Technica.
You may also enjoy watching a video feature on the topics in this
article.
[infil_smil]
Welcome back to Fightin' Words! It's been a while since we last
discussed how the most famous fighting game bugs have impacted the
community's favorite games. Today's topic is a bit more technical,
but it's an equally important factor in how our favorite modern games
are played -- we're going to be doing a deep dive into netcode.
---------------------------------------------------------------------
[infil_lect]
At its core, netcode is simply a method for two or more computers,
each trying to play the same game, to talk to each other over the
internet. While local play always ensures that all player inputs
arrive and are processed at the same time, networks are constantly
unstable in ways the game cannot control or predict. Information sent
to your opponent may be delayed, arrive out of order, or become lost
entirely depending on dozens of factors, including the physical
distance to your opponent, if you're on a WiFi connection, and
whether your roommate is watching Netflix.
Online play in games is nothing new, but fighting games have their
own set of unique challenges. They tend to involve direct connections
to other players, unlike many other popular game genres, and low,
consistent latency is extremely important because muscle memory and
reactions are at the core of virtually every fighting game. As a
result, two prominent strategies have emerged for playing fighting
games online: delay-based netcode and rollback netcode.
[infil_thou]
There's been a renewed passion in the fighting game community that
rollback is the best choice, and fighting game developers who choose
to use delay-based netcode are preventing the growth of the genre.
While people have been passionate about this topic for many years,
frustrations continue to rise as new, otherwise excellent games
repeatedly have bad online experiences.
There are relatively few easy-to-follow explanations for what exactly
rollback netcode is, how it works, and why it is so good at hiding
the effects of bad connections (though there are some). Because I
feel this topic is extremely important for the future health of the
fighting game community, I want to help squash some misconceptions
about netcode and explain both netcode strategies thoroughly so
everyone can be informed as they discuss. If you stick around to the
end, I'll even interview some industry experts and community leaders
on the topic!
Before we dig into the details, though, let's get one thing straight.
---------------------------------------------------------------------
Why Should I Care?
[infil_smil]
Both companies and players should care about good netcode because
playing online is no longer the future -- it's the present.
While most other video game genres have been this way for a decade or
longer, fighting game developers seem to be resistant to embracing
online play, perhaps because of the genre's roots in offline settings
such as arcades and tournaments. Playing offline is great, and it
will always have considerable value in fighting games, but it's
simply a reality that a large percentage of the player base will
never play offline. For many fighting game fans, playing online is
the game, and a bad online experience prevents them from getting
better, playing or recommending the game to their friends, and
ultimately causes them to simply go do something else.
Even if you think you have a good connection, or live in an area of
the world with robust internet infrastructure, good netcode is still
mandatory. Plus, lost or delayed information happens regularly even
on the best networks, and poor netcode can actively hamper matches no
matter how smooth the conditions may be. Good netcode also has the
benefit of connecting regions across greater distances, effectively
uniting the global player base as much as possible.
Bad netcode can ruin matches. This match, played online between two
Japanese players, impacted who gets to attend the Capcom Pro Tour
finals. (source)
[infil_cont]
What about those who never play online because they much prefer
playing offline with their friends? The healthy ecosystem that good
netcode creates around a game benefits everyone. There will be more
active players, more chances to consume content for your favorite
game -- from tech videos to spectating online tournaments to
expanding the strategy of lesser-used characters -- and more
excitement surrounding your game in the FGC. Despite Killer Instinct
's pedigree as an excellent game, there's no doubt that its superb
rollback netcode has played a huge part in the sustained growth of
its community.
Good netcode matters, period. So let's talk about it.
Back to the blog index.
Fightin' Words