Netplay is a defining feature of Dolphin: it allows you to set up online sessions for any GameCube or Wii title with a local multiplayer mode, without the problems or limitations of the Nintendo Wi-Fi Connection or hassle of the BBA. It is improving regularly, and GameCube Netplay should be painless. Wii Netplay is much more temperamental and should be treated as an experimental feature for advanced users.
"The person I'm playing with seems to be moving around strangely but he says that I'm the one moving weirdly. What happened?" This is a desync. Basically what both of you are seeing are two different games. See Desync Troubleshooting |
Your Netplay Experience will greatly vary depending on what version you tend to use. Because Dolphin 5.0 is lacking so many Netplay features at this point, it cannot be recommended for use. It is missing important features like Wii Save Synchronization (5.0-8478), Automated Settings Synchronization (5.0-8502), Cheat Code Synchronization (5.0-9032), Synchronize All Wii Saves (5.0-9037) as well as protections for recovering saves if Netplay is to crash.
Rule of thumb is that most settings should be set to default and you are expected to follow specific settings where the instruction (made by host or matchmaking websites) has told you to set before playing online.
Under the tools menu, you can find the option to "Start Netplay Session". From there you have several options.
While Dolphin does try to automatically configure and sync settings to be correct, it is important to be familiar with settings that can affect Netplay.
General
|
Audio
|
GameCube
|
Wii
|
As of 5.0-8502, most settings that affect determinism will be synced to other clients, so only the host needs to ensure correct settings. Games which use EFB reads or EFB to RAM are likely to desync with mismatched graphics settings, therefore Strict Settings Sync should be used, which will additionally sync most graphics settings except for backend.
On older revisions, only these settings will be synced over:
Note that over long periods of time, using different video backends may eventually cause a detected desync. However, because not all target operating systems support all backends, Dolphin will never attempt to synchronize graphics backends. If you do see a seemingly random detected desync during very long play sessions and you are using different graphics backends, this is usually the cause. These desyncs usually do not manifest in anything immediately broken, but it is still recommended you save and restart to prevent issues.
Enhancements
|
Hacks
|
Because input on the GameCube and Wii are polled by non-frame intervals, buffer does not directly relate to frames and can even vary per game. Lower the buffer as much as possible without causing slowdown for an optimal experience, ideally in areas that insure there isn't computer related slowdown such as a menu. In most games, add roughly 1 pad buffer per 15 ms of latency per client. Two players at 50 ms latency would be roughly 3 - 4 buffer, where as three players at 50 and 65 ms would be roughly 7 buffer.
By default, only players of the first port on each computers will be used. The host will be player one, and the first joiner will be player two, and so on. But the host can change the port order and invite the secondary players of the same computer. To do so, simply hit the "Assign Controller Ports" button, then add and/or order their names to the port number respectively.
A Spectator is a connected computer that has no controllers assigned to them. Any player can be turned into a spectator by going to the "Configure Pads" window (only host has access to it) and remove the their name from the controller ports. The spectator will not cause lag or latency but can still watch the Netplay session.
This gives the host control over when inputs are sent to the game, effectively decoupling players from each other in terms of buffering. This allows players to have latency based solely on their connection to the host, rather than everyone's connection. Buffer works differently in this mode. The host always has no latency, and the buffer setting serves to prevent stutter, speeding up when the amount of buffered inputs exceeds the set limit. Input delay is instead based on ping to the host.
This can result in smoother gameplay on unstable connections, as well as allowing players with much higher latency than others to play without increasing everyone's latency. However, this comes at the expense of latency fairness, which may make it not suitable for competitive play.
This addition to Host Input Authority allows the player with no input latency to change mid-game. This is incredibly useful for games where only one player is playing at a time, like a golf game. Do note that all other players experience a latency penalty in this mode, so it should only be used for games where only one player is playing at a time.
This option used to significantly reduce the polling rate in order to lower network usage. However, it is no longer necessary in the latest development versions due to a bug fixed in how much controller data was being sent.
Double check your settings and confirm if you and other players have good ISO dump. Dolphin 4.0-6638 added the ability to detect desyncs. Watch the textbox for desync notifications, as very often it will be able to tell the game has desynced before the players and may help them pinpoint the problem.
Netplay has matured considerably in recent time, but still requires user competency and problem solving to get over some of the hurdles. Never ignore obvious problems such as Game ISO differences or SD card differences, as those are not synchronized by Netplay for obvious reasons.