When it comes to videogames, the skill gap between casual and professional players can be gargantuan. This could be said of most any skill-based activity, but it rings especially true with fighting games, where playing at a competitive or professional level requires extensive game knowledge and the physical dexterity to consistently execute the delicate timing needed to pull off killer combos.

Enter the Street Fighter IV Combo Trainer, a mod for the PC version of Street Fighter that lets you see – and perhaps more importantly, hear – how combos flow together.

Developed by Reddit user Necrophagos, the Street Fighter combo trainer aims to help cut the hours and hours and hours of time needed to master the moves down to something more manageable. Necrophagos, a 29-year-old software developer from Germany who also is known as Philipp (he declined to give his last name), said he decided to write the program as a way to learn a new programming language as well as improve his own Street Fighter skills.

"This tool is intended to help beginners because I'm a beginner too," Phillipp told WIRED. "I had problems executing simple 3-hit combos because I couldn't get the timing right. I googled a lot and couldn't find the right thing, so I started writing."

Button-mashing in fighting games isn't very effective. While an untrained but reasonable observer might understand that hitting buttons at random shouldn't "just work," it isn't unreasonable to wonder why that is.

The answer is combos — the stringing together of single hits into a devastating chain of attacks dealing tons of damage while preventing retaliation — requires that button inputs be carried out at specific fractions of a second. In the fighting game world, timing is measured in frames, in reference to the number of frames it takes for an animation to be carried out. And since games run at 60 frames per second, one frame equals one-sixtieth of a second.

By entering an attack command at a specific frame during a previous attack animation, the second attack will cancel the first's animation and the two will be chained together. In other words, a combo. The problem is: Press a frame too early and the second input will be ignored, but press a frame too late and the first animation will complete, delaying the second attack and giving the defender a chance to attack. C-c-c-combo breaker.

The way the tool works is twofold. First, it lets users design and test combos by creating a string of button inputs and trying out various delays between the commands until the exact number of frames for a combo is determined. Then, once you've designed a combo, the tool will play a clicking sound at each moment of input, allowing players to mimic the string of commands and develop the muscle-memory to execute it in combat. Just like a metronome helps musicians keep time, the trainer helps you learn the precise timing needed to hit that single-frame window that will string one hit into another.

But the combo trainer isn't just for n00bs and scrubs. Eduardo "PR Balrog" Perez, a professional fighting game player for Team Evil Geniuses, one of the premiere eSports teams in America, said it can be useful for players of all skill levels, even pros accustomed to pulling off complex combo strings with ease.

"For Street Fighter at the higher levels, players are required to do one-frame links, which are hard to execute," Perez told WIRED. "So what is helpful from this program is that it basically lets you hear how the buttons should sound when performing the combo, which is really important because to do one-frame links you need some kind of rhythm."

Perez calls it "an amazing program," but wishes it came with pre-loaded combos. Creating your own is easy, he says, but time consuming — a sentiment Philipp shares, noting how the current interface is relatively clumsy when it comes to creating the kind of long and complicated combos that pro players are interested in perfecting. Having said that, he already has plans for future releases to fix bugs and implement a better UI. Meanwhile, he has created a Github page for the tool where community members are already working together to build on, fix and expand the software.

"In the long run, I'm planning to make the user interface more intuitive and easy to use," Philipp said. "My personal goal is to create a neat little tool that does what it does and is good at it."