So for anyone that isn’t familiar with Street Fighter V and its woefully awful past regarding its netcode, allow me to fill you in. SFV uses a form of netcode known as “rollback netcode” it’s not the simplest thing to explain, but I’ll try my best, this is the story of the Street Fighter V unofficial netcode patch.
If you press a button, the game will act immediately and your character will begin their animation, if the online opponent pressed a button on the same frame as you, once that information makes it across the server, the game synchronises by jumping the other player ahead. This is why you may have noticed your opponent ‘teleporting’ or ‘rubber-banding’ during online play. This is the rollback netcode simulating the online experience and then changing the past when the online opponents inputs are read.
Now, if the netcode is done correctly and implemented well, the difference in game-states between the two players should be almost undetectable. This is because the netcode will run background functions that reconcile faster than the game can render what’s happening to the players. Examples of good rollback netcode are: Killer Instinct and Skullgirls.
SFV however, is most definitely not a good example of rollback netcode. It’s the number one problem that the community has had with the game and its been this way since the game was released back in 2016. 2020 is here, a whole new decade and for SFV, a netcode patch! Finally! There’s one unexpected detail though. It’s not made by Capcom, it’s made by a modder going by the name of, Altimor. A modder whom it only took 2 days to make the netcode fix…
Having played the game since release and dealing with these online issues, I’m not sure whether to be happy that we finally have a patch or disappointed that it was a community member, not Capcom, that fixed it.
Here’s how our man of the hour, Altimor, explains his Street Fighter V unofficial netcode patch:
“SFV has a bug where one player’s game can lag behind the other’s online. This can cause artificial lag and one sided rollback for the other player.
When the players’ “clocks” are synced, if there is e.g. a 4 frame packet round trip time between them, each player should be 2 frames ahead of the time of the last received input from their opponent, and experience 2 frame rollbacks.
If one player lags behind, the other player will receive inputs from farther “in the past” (up to 15 frames!) than they should, causing unnecessarily big rollbacks and artificial lag, while the player that’s behind may even be receiving inputs that appear to be “in the future” to their game and never experience rollbacks at all.
This fix ensures your “clock” never gets more than half of your packet round trip time ahead of your opponent’s so that you never experience more rollback than them.”
He ends his Reddit post requesting that Capcom get it together. As mentioned above, this fix took Altimor 2 days, and most of those 2 days were spent reverse-engineering and understanding the source code. To make matters worse, MikeZ of SkullGirls fame, had made a tweet during SFV’s beta about these exact problems 4 years ago!
As much as this news is fantastic, the patch isn’t entirely perfect. At this current moment in time, the patch is only available to PC players in the form of a simple .DLL file alteration. Let’s assume that two players are playing against one another and both players have the new netcode patch, their online experience will improve tremendously, as was intended. However, if one of the players doesn’t have the patch downloaded, they may still experience rollback issues. In fact, these issues are dramatically worse in some cases.
To add to this, it has made crossplay between PC and PS4 users almost unplayable. If a PC player with the patch matches against a PS4 player, the PC player will have a playable game, but the PS4 player will experience insane amounts of rubber-banding.
Altimor addresses these issues in the latest r/SF Podcast, hosted by Joe Munday, a prominent figure in the Reddit Street Fighter community. Altimor mentions that he is aware of the current issues and is already working on another version of the patch. He intends to create a second version of the patch that will make this fix work with both PS4 and PC players, even if they do NOT have the patch. As long as one player has this patch installed, the online experience will be massively improved, even for crossplay.
Twitter user @gasBuglar further explains on point made in the podcast, stating that the patch is under MIT license, meaning that Capcom can use this in the game should they choose to.
If you would like to give the podcast a full listen: https://rsfpodcast.podbean.com/
Yoshinori Ono, producer for Street Fighter V, is well aware of this patch and says the tweeted the following:
So, what now? Only time will tell. With Altimor’s next installment of the patch on the horizon. Capcom needs to decide what to do. Considering the Intel World Open is coming in February, which will have players compete online to qualify, it will be a truly terrible look if Capcom were to turn down this free of charge, experiencing enhancing, and community adored patch.
Closing thoughts. I personally think the pressure that Altimor has placed on Capcom is great for the game. Capcom have neglected the community outcry since release, and now they absolutely have to respond. Let’s hope this patch becomes official and we can all enjoy some online Street Fighter!
Join The Discussion on the Street Fighter V Unofficial Netcode Patch: