Retro GamingTechnician

Play Retro Games Online with a Friend Using RetroArch Netplay

Two-player classics over the internet: your Pi and your friend's machine run the same game in sync.

LevelTechnician
Time1 h
Est. cost~$150
Steps5

RetroArch Netplay keeps two copies of the same emulator in lockstep and uses rollback to hide lag. Both players need the same core and the same game file, and RetroArch's relay server avoids opening ports on your router.

Mission steps

  1. Install a RetroArch system

    Use RetroPie or Lakka on the Pi; your friend can use RetroArch on a PC, another Pi or a laptop.

  2. Match everything

    Both sides must use the same core (for example Snes9x) and the exact same game file, from a game you own or homebrew.

  3. Host the game

    In RetroArch, load the game, go to Netplay → Host and enable the relay server so your friend can join without port forwarding.

  4. Join

    Your friend opens Netplay → Refresh Room List and joins your room, or connects directly to your IP.

  5. Reduce lag

    Wire both machines with Ethernet and pick 8- and 16-bit systems first; they sync best.

Code

# From the command line (RetroPie core path shown)
# Host:
retroarch -L /opt/retropie/libretrocores/lr-snes9x/snes9x_libretro.so --host ~/RetroPie/roms/snes/mygame.sfc
# Friend on the same LAN or with port 55435 forwarded:
retroarch -L /path/to/snes9x_libretro.so --connect 192.168.1.40 ~/roms/mygame.sfc

Tip: test every script on the bench before installing it in a moving machine.

Questions

Why does it say the content doesn't match?

The two game files are different versions or regions. Compare the CRC that RetroArch shows on both sides and use identical files.