Netplay
Netplay
Netplay
Netplay support in RetroArch is “up in the air” as of early 2023. It is possible it's broken
at some point for certain cores, if not all of them.
This doesn't apply retroactively to older versions of Batocera (such as v34), which also
have older versions of RetroArch, so if you and your buddies use the same old version
you should still be able to play together.
For a guide to set up a VPN client for multiplayer games on standalone emulators
separate from Retroarch, visit the VPN client section.
What is Netplay?
Netplay is a feature enabled by RetroArch and some libretro cores to play games with multiple players
over the network. If you want to play Double Dragon on NES with your buddy who sits several miles
away from you… using netplay you can play both as Player 1 and Player 2 over the internet, like if you
were both playing on the same console, sitting next to each other.
Netplay relies on a client/server architecture. One of the players starts by setting up a Netplay game
room, with a Netplay server, where the other players connect to, as clients.
Also, all isn't “magic” here. There are several limitations to be aware of:
You need a very stable Internet connection, with a low ping value. Like any other multi-player
game over the internet, your user experience is heavily depending on the quality of your
internet connection. Prefer wired ethernet networking over wifi if possible.
All players in a Netplay session need to have the same core version, and the same ROM to play
together. That means that you need to use the same Batocera release version, and you should
always check and compare the MD5 checksums of the ROM that all members in your party are
going to use. It might work when using a slightly different core version, or ROM, but your
mileage may vary. If possible, get all the players use the same versions.
Check that you use a core that is compatible with Netplay - see below for the list of cores that
support Netplay. Not all cores are compatible, sometimes for the same console, only a few core
are compatible with Netplay.
Check that all the members of your party are using the same architecture. Some cores don't
enable cross-architecture Netplay. Picodrive for Megadrive/Genesis will not let you play across a
PC and Raspberry Pi, for technical endianness reasons. Whenever this happens, you'll see a
message popping-up upon launching the RetroArch core.
The word “netplay” can mean many things to many kinds of games, in this context this
specifically refers to RetroArch's version of Netplay, which is the act of sharing the
emulated console's screen across multiple clients.
It does NOT refer to the emulation of the emulated console's actual network playing
capabilities. It can only play “couch” multiplayer games such as shared or splitscreen
ones. For example, you won't be able to do the Game Boy Advance's cable link play over
the network with your buddy.
However, if a core allows for the emulation of multiple machines on a single client (such
as TGBDual emulating two Game Boy originals on a single screen with an emulated cable
link connection), then it would be possible to netplay that core with your buddy (albeit
with the screen output for both the consoles being shown to both players at all times).
First of all, make sure you have Batocera 5.25 or later. Netplay is not available for earlier Batocera
releases.
To enable Netplay for libretro cores, navigate to GAME SETTINGS → NETPLAY SETTINGS and turn
on the toggle switch.
Once this is done, you can check that Netplay is enabled as when you see the help line at the bottom
of the screen that tells you that button X in EmulationStation is now used for Netplay options (and not
“Random selection” any more).
One of the players needs to host a Netplay server, to which the others players will connect to. When
you are on the “systems” list of EmulationStation (the menu where you can select all the consoles,
not the games), pressing the X button will give you a list of all available Netplay servers and games in
progress.
Some games are greyed out and marked as “unavailable”: there are some technical reasons why you
can't join these games (different core version, game you don't own, or a different version of the
game, and so on).
Select one of the “available” games that you can join, and launch it: pay close attention to the
messages that are popping up when RetroArch launches. Sometimes, there are limitations that could
not be detected before and that will prevent you from playing (for example some cores don't support
cross-platform Netplay, meaning that you can't have some players with a PC and others with a
Raspberry Pi on the same game).
If you want to host your own Netplay game and let your buddies join it, you can do so by entering the
“games” selection menu, and pressing X to launch a NetPlay server. Tell your buddies to join your
Netplay room, when your game is launched it should appear in the menu described above.
When you host a Netplay server, you have to make sure that your network is either compatible with
UPNP to automatically open the right port, or you can define your own port in the settings, and
configure your router and network to keep this port open from the outside.
If you can't do it, or don't know how to do it, you can use the MITM option in the settings, that acts
like a relay and simplify the Netplay server configuration.
Arcade
FBNeo
Imame
Mame
Mame2003 Plus
Mame2010
Arcade Lightgun
Mame2003 Plus
Mame 2010
Flycast
Nintendo SNES
Pocketsnes
Snes9x_next
Snes9x
Mesen-s
Bsnes
Nintendo NES
Fceumm
Nestopia
Mesen
Tgbdual
Nintendo NDS
Desmume
Fceumm
Nestopia
Nintendo Virtualboy
Beetle VB
Sega Dreamcast
Flycast
Sega Megadrive/Genesis
GenesisPlusGX
Picodrive (does not support cross-architecture netplay)
Sega 32X
Picodrive
GenesisPlusGX
Picodrive
Sega Gamegear
GenesisPlusGX
Beetle PCE
NEC SuperGrafx
Beetle SuperGrafx
FBNeo
Beetle NGP
Atari 2600
Stella
Atari Lynx
Beetle Lynx
Handy
Beetle Wswan
Amstrad CPC
Cap32
Amstrad GX4000
Cap32
Sinclair ZX81
81
Sega Saturn
Beetle Saturn
3DO
4DO
Snes9x
Thomson
Theodore
PC98
PC98
From:
[Link] - [Link] - Wiki
Permanent link:
[Link]