Skip to content
Enrique Santos edited this page Jul 8, 2020 · 16 revisions

NullDC-NAOMI Netplay Launcher Wiki

FOID (Frame Over Input Delay)

This launcher is based off the technique uncovered by supersonicstep on the FGC Arcadia Discord in March 2020. The way this netplay method works is by using an emulator that can run at a high framerate uncapped (in nullDC's case, ~300fps on most modern machines), and running an external frame limiter on top of it to operate at 60fps. Since inputs are tied to what frame they were sent on, this significantly decreases the amount of input delay felt on an online game.

qkoJAMMA

Paired with the nullDC qkoJAMMA plugin, uncovered from the dustloop forums 10 years ago, supersonicstep managed to get very playable netplay working with this method. The best resource for qkoJAMMA information itself seems to be this abandoned GuiltyGear XX AC Online. The plugin itself had to be excavated from an old hard drive.

Source code is unavailable, but we are working on reversing this plugin to make a drop-in replacement with netcode improvements. Several efforts are under way on this front.

Any drop-in replacement that improves on what we have will gladly be supported by this launcher in the future, so that anyone using it doesn't have to worry about additional configuration on this front.

Launcher

Back in May 2020, based on the initial Windows Form & controller assignment script by MarioBrotha on FGC Arcadia, blueminder started constructing a launcher to simplify P2P connections. From there, development has grown to make it a general-purpose API with command-line options for any lobbies or launchers that wish to support this NAOMI or Atomiswave games with this netplay method. It is currently a part of the newest Fightcade 2 beta and actively being tested with their networking and matchmaking running alongside the regular launcher itself.

The launcher includes a simplified flow for tasks like controller setup, file validation, detecting delay based on opponent's IP, network assignment, modifying nullDC's configuration files, and well as making qkoJAMMA behave despite its many quirks. Much of the launcher code can be repurposed for other emulators with barebones netplay support that require similar functionality pretty easily.

Launcher assistance and optimizations have been provided by the FGC Arcadia community as a whole, with special thanks to RossenX and Labreezy for aiding in research and making improvements. Many thanks to the Fightcade crew of pof and shine, for putting it through many tests and making suggestions. If there are any improvements you would like to make, feel free to add any Pull Requests on the project.

Clone this wiki locally