Mid-Tourney Hotfix
in which I build and deploy a bugfix live on the event floor

Funny Story
Programming, Event Staffing

This incident occurred at Evo 2022, one of the biggest fighting game events annually, and at the time our biggest and most public tournament to date. It was one of our first live events since Covid lockdowns began, so our support for offline play was relatively untested at the time.

One of the setups where I worked on debugging the issue. (Not pictured: me)
I was on the ground floor helping run our booth at the event, and taking the rare opportunity to observe and interact with new players in person. Around an hour before our tournament’s top 8 bracket was scheduled to begin, one of our competitors approached me with an issue. Our first and third-seed players had been running some practice matches and discovered a strange issue where the game would flicker in and out of full-screen while playing.

After some quick testing we tracked down the root of the issue – one of the players had his attack button bound to the Enter key, and the other player had his block button bound to the Alt key. In Windows, pressing Alt and Enter simultaneously toggles an application in and out of full-screen mode, and our recently-implemented multi-keyboard support didn’t take this possibility into account. As this was such a critical opportunity for exposure, we really didn’t want to see a bug like this live on stream in front of the Evo viewership. But the alternative, asking our top players to alter their control schemes just before top 8, was equally unacceptable, so we scrambled to find a solution in time for the match.

Pugsy, top player and godforsaken Enter-key user, went on to win the match.
With some laptops we had on-site capable of building and deploying updates to the game, our initial strategy was to hot-patch the tournament machines in between matches. After some time spent researching and deploying potential solutions on a spare setup, directly patching the issue under our time constraint was starting to seem untenable. As the match rapidly approached, I opted to explore a relatively out-of-the box solution, and wrote up a quick macro to rebind the players’ controls in a program called AutoHotkey. This would, in theory, allow a player to register their physical Enter key to be recognized as something entirely different by the computer, bypassing the full-screen shortcut altogether.

The macro was finished and functional just in time, and in the advertisement break before the players’ match, production allowed me to deploy it to the machines on stage. After pulling the players aside and explaining the process to make their bindings work, the remaining matches went off without a hitch. From a viewer’s perspective, the entire experience was seamless.