You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
DS Netplay adapter: connect native Linux melonDS to GameParty and secure peer transport #165
Parent: #162. Depends on #163 Linux core, #164 safe mirror-state boundary, and the actual implemented capabilities of #106.
Goal
Connect a pinned TrainerOS-managed DS netplay runtime to the existing RuntimeMultiplayer/GameParty flows. A user invites friends the same way as for PPSSPP/Dolphin/RetroArch; do not create a melonDS-specific social lobby, second friends list or manual network setup screen.
Adapter contract
Add a dedicated DS Local Wireless capability to the current runtime dispatch, not RetroArchNetplay fallback and not WFC/internet-service emulation.
Expose verified exact game revision/content match, Linux melonDS build/core hash, deterministic-protocol version, BIOS/firmware compatibility status, JIT/profile constraints, usable slot count and actual ready-to-start state.
Translate the emulator's bounded control/input traffic into the selected delivery semantics without sending gameplay frames through ordinary Fluxer chat.
Bind every endpoint to session ID, player index, Trainer, game/content identity and runtime profile; only authenticated invited peers may join. Reject stale/replayed packets and peers after leave.
Handle ping/jitter estimates, host-selected input delay, input buffer capacity, loss/reorder/disconnect, resync/rejection and network switching as explicit states rather than silent half-speed play.
Don't tunnel a virtual Ethernet/LAN for DS solely out of habit; DS deterministic mirrored-consoles netplay is distinct from ordinary game IP LAN networking.
Native launch and save integration
Use registered TrainerOS-managed Linux melonDS executable and narrowly allowlisted argument/control API. Remote invites cannot inject shell commands, arbitrary paths or emulator settings.
Session teardown stops this party's mirror processes/threads and temporary configs only, not independent user software, a current voice call or an unrelated active game.
A friend can select a supported DS game in TrainerOS, invite another person, and start an actual local-wireless game using only the standard GameParty user journey.
No extra manual LAN/VPN/IP address/port/BIOS sharing dialogs appear; unsupported requirements are reported accurately.
Disconnect/reject/host crash and party closure return to a safe normal game/library state without save collision or ghost Ready.
Controller Home/voice/notification overlays do not break valid game synchronization solely by focus loss.
Parent: #162. Depends on #163 Linux core, #164 safe mirror-state boundary, and the actual implemented capabilities of #106.
Goal
Connect a pinned TrainerOS-managed DS netplay runtime to the existing RuntimeMultiplayer/GameParty flows. A user invites friends the same way as for PPSSPP/Dolphin/RetroArch; do not create a melonDS-specific social lobby, second friends list or manual network setup screen.
Adapter contract
RetroArchNetplayfallback and not WFC/internet-service emulation.kMaxPlayers=4.Secure connectivity
Native launch and save integration
UX acceptance