Kaillera
Classic arcade and retro netplay
What is Kaillera
Overview
Kaillera is a legacy netplay protocol used by emulators like MAME, FinalBurn Alpha/Neo, SNES9x, and others. It connects clients through a central server where users browse open games and join each other.
Supported emulators
Many emulators embed Kaillera support: MAME (multiple builds), FinalBurn Alpha/Neo, Gens (Genesis), ZSNES/SNES9x (older builds), NestopiaX (NES), and more. Modern forks and P2P modes exist as well.
Client Setup
Download a Kaillera-enabled emulator
For arcade games, download MAME with Kaillera support (e.g. Kawaks or FBA-RR). For SNES, use ZSNES or the old Snes9x 1.43 build with Kaillera. For Genesis, use Gens+ or Fusion.
Configure Kaillera in your emulator
In your emulator, open the Kaillera options/netplay settings. Enter your nickname. Optionally set your connection speed (choose LAN for best experience, even over the internet).
Connect to a server
Open the Kaillera client panel (usually via Netplay â Kaillera in the menu). Enter a server address from the list (see NetplayFinder's Kaillera page for active servers) or browse the public server list.
Create or join a game
Once connected to a server, you'll see a list of open games. Double-click to join, or click "Create game" to host. Select your ROM from the list that appears.
P2P mode (no server needed)
Newer Kaillera P2P clients allow direct peer-to-peer connections without a central server. Use kaillera-p2p on GitHub â one player hosts and shares their IP/port.
Server Hosting
Run your own EmuLinker server
EmuLinker-K is a modern Java-based Kaillera server. Download from GitHub, configure the properties file (port 27888 default), and run. Port forward TCP/UDP 27888 on your router.
TCP/UDP 27888 â [server local IP]
Register your server
To make your server discoverable on the public list, submit it to a Kaillera master server list. Check the EmuLinker documentation for the current master server endpoint.
Troubleshooting
Server list is empty
The Kaillera master server network is fragmented. Manually add known server addresses. Check the NetplayFinder Kaillera page or community discords for current active servers.
Desyncs immediately on start
ROM mismatch is the most common cause. Verify both players' ROM checksums match. In MAME, use the correct full non-merged or split set for your MAME version.
Input lag / poor response
Kaillera uses delay-based netplay. Set the input delay ("frames delay") to match your ping: delay = ping_ms / 16. For 60 ms ping, set delay = 4.
Getting kicked from servers
Some Kaillera servers have connection speed checks. Set your connection type to "LAN" in the client settings for the best compatibility, even if you're on a broadband connection.
Ready to play?
Find active sessions on NetplayFinder.