Over the past few years, Dolphin Netplay has seen a ton of work that we've kept track of in the blog. The main goal of much of this work was to make it so that users could just play games together without having to worry about synchronization. Thanks to some of these recent efforts, it's fully possible to go on netplay and enjoy a game with others without having to do any specialized setup. While things aren't bulletproof, Dolphin does its best to synchronize saves, cheats, settings, and more to make the netplay experience as simple as possible.

spycrab has taken things to the next level, creating a full server lobby infrastructure to allow users to search and find hosted netplay games within Dolphin. Under the tools menu in the latest development builds, you'll find a new button to browse netplay sessions.

Using the Netplay Server Browser allows you to see active and open game sessions.

That's right, users can now create public netplay rooms that can be viewed directly from within Dolphin. With this, public and private netplay sessions are available to be browsed and joined without having to go through the hassle of transferring IP addresses or finding a chatroom to organize netplay games. Just load up the lobby, find the game you want, and join! This new feature also simplifies things for people who just want to play with friends. You can create named lobbies with passwords for your friends to easily find and join. There is no added latency from using the server browser and the base games are still handled in a peer-to-peer manner. For now, the server browser should be considered experimental and subject to change as we monitor its launch.

New Netplay Mode¶

To go along with the announcement of our new netplay server browser, we have another new netplay feature that makes it more reasonable to play certain games on netplay. Playing games like Mario Golf: Toadstool Tour on netplay has been a rather painful experience. Even the slightest amount of latency throws off the player's timing for the game's rather strict hitbar. One frame can be the difference between a perfect shot down the fairway and a ball that goes into the bunker. In this case and a few others, the turn based nature of the game gives us an opportunity to mitigate latency with a feature that has been referred to before as golf mode.

Inspired by the AQZ netplay plugin used in N64 emulation, golf mode allows us to give one player at a time no latency, much like Host Authority Input mode. The main difference between that and golf mode is that you can change who has no latency while you're playing the game! This means in a game like Mario Golf: Toadstool Tour you no longer need to worry about latency at all. Unlike the AQZ plugin's version of golf mode, Dolphin's golf mode allows you to maintain control while you're not the main player, albeit with a latency penalty. This makes it easier to go through menus, choose characters, and even allows you to taunt between shots in Mario Golf: Toadstool Tour! New controls have been added to the imgui interface to allow you to take control directly from within the render window. If you're sitting back and relaxing with a controller, we've got that covered, too. Users can configure the newly added Control Netplay Golf Mode hotkey in the Configuration/Hotkeys menu.

As a special note, the initial implementation only supports GameCube controllers, much like host input authority. Emulated Wii Remotes are much more difficult to get right in netplay and for now they lack many of the features that make using GameCube controllers so easy. In the future, we plan on porting over all of these features to Wii Remote netplay, but for now that's something to keep in mind. Users testing out either of these features also need to remember that synchronization on netplay in general can be a bit difficult to get right. While most games should just work, there are some games that require extra care to synchronize. If you're running into issues synchronizing with people, we recommend turning on strict settings sync and making sure that the appropriate options for synchronizing saves are enabled.