What is Rollback Netcode in Fighting Games

Fighting games are a crucial part of the esports community. From Street Fighter to Mortal Kombat, you would be hard-pressed not to discover some fighting game at a tournament. However, with the world locked in a global pandemic, online play is taking the world by storm. This brings uncertainty into consideration when you are playing online with your friends. That is why many gamers are looking to rollback netcode for playing their games. But what exactly is Rollback netcode in Fighting Games? And why is it very important?

What is Rollback Netcode in the Fighting Games?

Rollback Netcode is a great answer to solve the problems found within delay-based netcode. This is commonly referred to as lag where an input placed by a player is not played until the participants in an online match accept it. For example: If Player 1 and Player 2 are facing off in the game of Mortal Kombat 11, and both players are having a 50ms delay, then any input started by both players will be played 50ms after the player presses a button. For fighting games like Mortal Kombat 11 and Street Fighter, timing is a key for playing effectively during a fight. This is able to cause both players to play worse when facing one another.

What is Rollback Netcode in Fighting Games

Also, Delay-based netcode is a bad decision. With the fighting game community becoming a global community, a high internet area will face lag if they play against a player who is in a poor internet area. This makes it inevitable that two players with good internet connections are going to have to deal with the massive cons of delay-based netcode if the ocean separates them. This is where the big pros of Rollback Netcode come into play in the fighting games. With rollback netcode, there are many moving parts aside from its predecessor. The game is going to try to predict the player’s movements based on their previous actions.

For example, there are two players who are in the middle of the game of Street Fighter III: 3rd Strike. They are playing with Rollback Netcode and have to deal with a delay of 45ms. Suppose a player playing as ryu punches, then the person playing as ryu is going to throw a punch instantly. In this case, the player on the other side is going to see ryu snap into the punch’s animation after it starts when the input is catching up to the main player. This is almost noticeable by both players. For both of them, it creates the gameplay as if they are playing on LAN. But, in the case of a longer delay between the players, for example, 60ms, a player playing as ryu will jump while moving towards their enemy, the opposing player is going to see ryu move towards them. Then, travel back in time to the same place which he was intended to be.

One flaw in the Rollback netcode is easy to overcome. It is called Rift. This only occurs if two players compete in a match, however one player’s game runs slower than the other players. What causes Rift is the algorithm utilized in the Rollback netcode. If one player’s match is running slower on their hardware, then the Rollback netcode is going to send signals slower to the other player. While the player on the broken version of the game is going to accept more signals from their enemy. It means that one player’s game is going to be running fine, but other player is going to see their enemy being pulled back and forth across the screen when their enemy is attempting to catch up to the player on the non-broken version of the game. Also, this could be considered as a form of rubber banding.

Usually, Rubber banding is seen in the games like CSGO and Call of Duty. The context behind what Rubber Banding is that when a player is connecting to the server with high ping, what the player views on the game is client-side. It means that the opponent placement on his screen is information sent to the server and then sent to him. If he moves as he is in the game, the server is going to notice and move forward. But, all servers run on a tick system. It means that every second, the server will update 64 times to move players, decide damage values and also remove the players who have been eliminated to respawn.

The Importance of Rollback Netcode in Fighting Games

Fighting games use peer-to-peer connections exclusively. Without a server to play on, the fighting games are able to survive longer than most other conventional online games. In fact, the fighting games do not have servers to shut down. The lifespan of the fighting game eventually comes down to the type of Rollback netcode it uses. For earlier fighting games, a peer-to-peer connection is utilized, but the Rollback netcode is the important. Delay-based Rollback Netcode became the standard.

We get information that Tony Cannon, one of the founders of EVO, was completely unsatisfied with the re-release of Street Fighter 2: Hyper Fighting for the Xbox 360. Using delay-based Rollback netcode created the game unplayable for someone who has a poor internet connection. Tony Cannon had decided to work in 2005 and start producing a new version of Rollback netcode which would keep the latency of the fighting games and reduce lag. It means that anyone online was able to get their hands on a fighting game. Finally, GGPO (the rollback netcode SDK) was born.

GGPO became the one method to play the fighting games, with hundreds of the games being supported on a downloadable client of the software. We also get information that AAA game companies such as NetherRealm took GGPO in for their titles, licensing it out from Tony Cannon. Aside from that, Independent fighting games including Skullgirls and Them’s Fighting Herds also made use of GGPO for their titles.

Leave a Reply

Your email address will not be published. Required fields are marked *