How to Set Up RetroArch Netplay — Online Multiplayer for SNES, GBA, N64 and More 2026

Low4 solutions

I want to play classic SNES, GBA, or N64 games online with a friend using RetroArch Netplay, but I'm not sure how to host or join a session, which cores support rollback netplay, and how to fix desyncs when they happen.

Last updated 1 week ago0 users reported this issue4
Sign in to interact

Solutions

solution #899

host-a-retroarch-netplay-session (sortOrder=1, isMostHelpful)

What RetroArch Netplay is: RetroArch Netplay synchronizes gameplay between two players over the internet using either rollback or delay networking. Rollback cores predict inputs and correct in the background, making online play feel nearly local even at moderate ping. Delay-based cores add a fixed input buffer to keep both sides in sync — simpler but more noticeable at higher latency.

Before starting:

  • Both players must use the same RetroArch version and the same core version.
  • Both players must load the exact same ROM file (same CRC/hash). A patched or alternate dump causes immediate desync.
  • Make sure the core you plan to use supports Netplay (see S3 for best cores per system).

Hosting a session:

  1. Load your game in RetroArch normally (you need the game running before starting Netplay).
  2. Open the Quick Menu (F1 or your configured shortcut) → NetplayHost Netplay.
  3. Set a port (default: 55435). Click Start Netplay Host.
  4. RetroArch shows a session code or your IP address. Share this with your friend.
  5. Alternatively, use Main Menu → Netplay → Refresh Netplay Host List and enable Publicly Announce Host to appear in the public Netplay lobby so your friend can search for your session by username.

Joining a session:

  1. Go to Main Menu → Netplay → Refresh Netplay Host List to see public sessions, or select Connect to NetPlay Host and type the host's IP:port directly.
  2. RetroArch will sync the core and start the game. Load the same ROM on your side when prompted.

NAT / relay: RetroArch uses Libretro's relay server by default to punch through NAT without port forwarding. If the relay fails (rare), the host can enable direct connection and forward port 55435 (TCP) on their router.

solution #900

join-as-second-player-and-spectate (sortOrder=2)

Joining as Player 2:

  1. Load the same ROM in RetroArch (do not start it — just have it ready in your library).
  2. Main Menu → Netplay → Connect to NetPlay Host → enter the host's IP:port (e.g. 192.168.1.5:55435 for LAN, or their public IP for internet).
  3. RetroArch connects and loads the game state from the host. Both players are now in the same session.
  4. Controller assignment: by default the host is P1, the joiner is P2. The host can reassign ports under Netplay → Change Virtual Gamepad in the Quick Menu.

Spectator mode: RetroArch supports Netplay spectators (players who watch but don't control). In the join dialog, enable Spectate Mode. Useful for streaming a session or letting extra friends watch without affecting the game.

Chat: RetroArch Netplay includes a basic in-session text chat (Quick Menu → Netplay → Chat). Most players use Discord voice alongside for communication.

Save state sync: in rollback mode, save states are synced between all players — if the host saves, the joiner's game state matches. In delay mode, save states are not automatically synced; both players must save at the same moment or use the host's exported state.

solution #901

best-cores-for-netplay-rollback-vs-delay (sortOrder=3)

Rollback Netplay cores (best experience — play as if local even at 50-100ms ping):

  • SNES: Snes9x — the best rollback core for SNES. Set it under Netplay → Netplay Mode → Rollback. Almost all SNES games work perfectly.
  • GBA: mGBA — rollback netplay supported since 2022. Excellent for GBA multiplayer (link-cable games like Pokémon trades/battles). Use mGBA in rollback mode.
  • NES: Nestopia UE — solid rollback support for NES.
  • Genesis/Mega Drive: Genesis Plus GX Wide — rollback supported; great for 2-player brawlers.

Delay-based Netplay cores (still works, but input lag scales with ping):

  • N64: Mupen64Plus-Next — delay-based. Set a buffer value of 4–8 for playable feel at under 50ms ping.
  • PS1: Beetle PSX — delay-based. Works for most PS1 games at low ping.
  • Arcade / MAME: FinalBurn Neo — delay-based. Excellent for fighting games with low-latency connections.

To set Netplay mode: Settings → Netplay → Netplay Mode → choose Rollback or Delay. Both players must use the same mode — mismatched modes cause connection failure.

Recommended delay buffer for delay-based cores:

  • Ping <30 ms: buffer 2–4
  • Ping 30–80 ms: buffer 6–10
  • Ping >80 ms: buffer 10–16 (noticeable lag; consider a relay server closer to both players)

solution #902

desync-and-connection-troubleshooting (sortOrder=4)

Immediate desync on game start:

  • ROM mismatch — the #1 cause. Open Information → Core Information (after loading the ROM) to see the CRC32 hash. Both players must have identical hashes. If they differ, one player needs a different ROM.
  • Core version mismatch — even a minor core update can break Netplay sync. Both players should update to the latest core version together, or both downgrade to match.
  • BIOS mismatch — for systems that need BIOS (PS1, Saturn), both players must use the same BIOS file (same region, same CRC). If in doubt, disable BIOS in the core options and use HLE mode.

Desync mid-game (game diverges after a few minutes):

  • One player has cheats or shader-based overlays that alter game state. Disable all cheats in Netplay.
  • In delay mode, the buffer value is too low for the current ping. Increase it: Quick Menu → Netplay → Delay Frames.
  • Rollback mode with too many input prediction errors (network jitter). Enable Frame-Delay Auto Tuning under Netplay settings.

Can't connect / "Host refused connection":

  • Confirm both players are on the same RetroArch version (Main Menu → Information → System Information).
  • If not using the relay, the host must forward TCP port 55435 on their router. Test with an online port checker after adding the forwarding rule.
  • Try using the relay server: Settings → Netplay → Relay Server → enable and select the relay closest to both players geographically.

High latency even with a relay: RetroArch's public relay is in North America. Players in Europe, Turkey, or Asia will have 50-150ms base relay latency. For regions far from the relay, direct connection (port-forwarded) is usually lower-latency than the relay.

Experiencing a different problem?Report a new issue to help the community find solutions.

Comments (0)

No other comments yet. Be the first to share your thoughts.

Sign in to_leave_comment

On This Page