Host or join a network gaming session. Rediscover the joy of multiplayer games using RetroArch's builtin netplay lobby. You can also use the spectator mode to watch others play. Click the Lobby Browser button now to view Netplay Hosts! Don't forget to check out our Netplay document page!
Lobby Browser Check DocumentationRetroArch enables you to play games online. You can challenge players around the world and compete on classic games like Mario Kart, Bomberman, Street Fighter, or team up on games like Streets of Rage or Sonic 3.
RetroArch relies on peer-to-peer networking to reduce network latency and ensure the best possible experience.



The most convenient way to try netplay is to use the lobby inside the menu.
You need an active internet connection and a router that supports UPnP port forwarding.
You will also need to own the same ROM as your partner and have it scanned and in your playlists. We recommend ROMs from the No-Intro sets.
To join a netplay room in the lobby, just refresh the room list and press A on a room entry.
To host your own netplay session, press A on Start netplay host and a room will be created and announced publicly.
This lobby will also work for local rooms (on your home local network).
Advanced users have the possibility to setup netplay manually.
The Network Settings enables you to tweak how the network code will behave when you are acting as Server.
If you don't need NAT traversal, it can be disabled in the settings.
When you are acting as client, most of these settings will have no effect. The only things you will have to set will be the Server IP.
After you have configured netplay as you wish, launch a game and use:
RetroArch allows a second (or further) player, or spectators, to be connected via the Internet.
RetroArch's netplay code is based on replay, and provides netplay over unreliable networks free of input latency in the default configuration. Netplay supports up to 16 players and many spectators. Netplay in RetroArch is guaranteed¹ to work with perfect synchronization given a few minor constraints:
Cores are expected to support serialization for proper netplay behavior, but netplay will work in limited fashion with cores that do not support serialization. The experience will be far more smooth with serialization.
Netplay in RetroArch works by expecting input to come delayed from the network, then rewinding and re-playing with the delayed input to get a consistent state. At any given time, all netplay clients may be in inconsistent states, but once they receive each other's delayed data, they invisibly rewind to the last time they were consistent, replay with the new input, and reach a new state, notionally closer to the "correct", canonical state than the previous one. So long as both sides agree on which frame is which, it should be impossible for them to become de-synced, since each input event always happens at the correct frame.
Join our Discord channels to find netplayers. Through Discord you would also be able to use voice chat to converse with others during gameplay.