RyuLDN implementation

These changes allow players to matchmake for local wireless using a LDN
server. The network implementation originates from Berry's public TCP
RyuLDN fork. Logo and unrelated changes have been removed.

Additionally displays LDN game status in the game selection window when
RyuLDN is enabled.

Functionality is only enabled while network mode is set to "RyuLDN" in
the settings.
This commit is contained in:
Vudjun
2024-12-12 00:36:59 -06:00
committed by KeatonTheBot
parent 636c6617ee
commit 7bd5a61b65
76 changed files with 4007 additions and 122 deletions
+21
View File
@@ -170,6 +170,21 @@ namespace Ryujinx.HLE
/// </summary>
public MultiplayerMode MultiplayerMode { internal get; set; }
/// <summary>
/// Disable P2P mode
/// </summary>
public bool MultiplayerDisableP2p { internal get; set; }
/// <summary>
/// Multiplayer Passphrase
/// </summary>
public string MultiplayerLdnPassphrase { internal get; set; }
/// <summary>
/// LDN Server
/// </summary>
public string MultiplayerLdnServer { internal get; set; }
/// <summary>
/// An action called when HLE force a refresh of output after docked mode changed.
/// </summary>
@@ -201,6 +216,9 @@ namespace Ryujinx.HLE
bool useHypervisor,
string multiplayerLanInterfaceId,
MultiplayerMode multiplayerMode,
bool multiplayerDisableP2p,
string multiplayerLdnPassphrase,
string multiplayerLdnServer,
int customVSyncInterval)
{
VirtualFileSystem = virtualFileSystem;
@@ -230,6 +248,9 @@ namespace Ryujinx.HLE
UseHypervisor = useHypervisor;
MultiplayerLanInterfaceId = multiplayerLanInterfaceId;
MultiplayerMode = multiplayerMode;
MultiplayerDisableP2p = multiplayerDisableP2p;
MultiplayerLdnPassphrase = multiplayerLdnPassphrase;
MultiplayerLdnServer = multiplayerLdnServer;
}
}
}