Pokemon Needs Game State Recovery

pokeregionals

Dallas Regionals has seen an amazing turn out, with 157 tables in the Round 1 Master’s Division for VGC 18. Huge names and a number of stories to follow at the tournament, along with a fantastic streaming component from @criticalhitgg! So why is the title of this article not more positive?

Double. Game. Freeze.

A double game freeze is a case in which both players’ games lock up mid-match due to some form of game error, resulting in a game-tie. We’ve already seen this before now in VGC 18, with the Snorlax Curse bug causing enough trouble that the move was outright banned before Dallas Regionals. Due to immediate pressure on Game Freak to have this issue resolved before larger tournaments, an outright ban was a relatively fair solution. The move was not dominating the meta (though putting up good results when used), and so forcing Snorlax players to instead utilize Belly Drum wasn’t the end of the world.

300px-curse_vi_other

Unfortunately, as has become apparent, the Curse bug was not necessarily the main cause of the double freeze. While there is no word yet what is causing the new occurrence of the double game freeze, there is something, and it’s unfortunately running rampant through Dallas Regionals (scroll through Twitter, and you will see this).

In the first round feature match at Dallas Regionals, there was a double game freeze which negatively impacted one player who had a good presence built in the game. This was deemed a draw, moving the players along to game three. While the freeze did not end up deciding the match, it is impossible to know how game three may have played out had game two finished differently.

Only a few rounds later, another feature macth was decided on the second double game freeze of the round. Early in the round, there was a double game freeze at a point where little game state had been developed (though players had already divulged information about their teams to one another). This was simply called a tie, and proceeded on to game two.

Later in the round, that same feature match ran into a second double disconnect on game three, in the final stages of the game. While the only by-the-book solution to this is to call another tie, the defending player admitted that the game was likely lost. Thankfully for the round’s integrity, the match was decided to be a win for the victor of game two.

Though these outcomes could have been worse, other players off camera are being impacted more heavily and this is troubling.

The Solution

Bugs are unavoidable in software, and video games are not excluded. Tournaments will always have technical issues that are out of their control, and this places onus on the game developer to be certain that they can provide support/recovery in a competitive environment.

Riot is one of the industry’s prime examples of how this can be solved, via their Chronobreak tool built for competitive League of Legends. What Chronobreak does is record a highly-detailed replay in the background of all high-level tournament matches. If a disconnect or bug arises which ruins the competitive-integrity of the match, Chronobreak allows the tournament organizers to rewind the game state back to the last known point of validity.

cover

From this rewound state, the game then continues as if nothing had caused impact to the match. While other factors come into play here, such as the players having to take a step back, and re-enter the game with a new mindset, it allows the event to continue operating as smoothly as possible.

Recently, a similar system has been in high demand from the Hearthstone community, as they have experienced similar troubles in the competitive scene. While Riot has this nailed down, competitive state-integrity tools are not yet widespread in the industry. Hopefully, this is a trend that will change as communities become more vocal about the need for this in tournament play.

How Can Pokemon Achieve This?

While Chronobreak is utilized mainly for large feature matches, as opposed to situations where hundreds of matches are playing in parallel, I believe that the technology is fully applicable and something that should be looked into in the near future.

Due to the fact that Battle Spot replays are already recorded in full and the tech exists in game (or on the servers), it seems that a Chronobreak-esque system would be a logical inclusion to the utility kit for the game’s competitive scene.

A fault handling system added into network battles could catch cases in which network requests hang, or the client becomes unresponsive for whatever reason. When this state is hit, the client could run as heavy a reboot as is required, and have the rewind system take over once the game has been reinitialized. While this is overly simplifying the simplicity of a system to this extent, Game Freak is a large company with many resources to apply to a problem of this magnitude.

Final Words

If the intention is to push Pokemon as a competitive game, running large tournament circuits with prize payouts, it should been seen as a requirement that the game can handle situations which may impact the tournament’s integrity. While this is not something that can be done over night, hopefully Game Freak will seriously consider a system of the sort moving forward. If these issues persist deeper into the season, people will be missing out on CP for Worlds qualification, and Worlds could be jeopardized further if double game freezes were present during the event.

We love you Game Freak, and you build fantastic games, but please look into this as players are being impacted.

8