Repository navigation
LAN play: why, how it works, and what is left to test (#144) #148
Replies: 5 comments
|
Thanks for writing this up, it's a very clear explanation of why LAN Play is the way to play between PCs. Status: the |
|
Update (12/11):
|
|
Thanks for the update and for 4a00ccb, it answers the review points. Where #144 stands now: we rebased it on #144 goes into 0.1.9, which comes out today, with LAN Play still behind |
|
#144 is in |
|
LAN play is in v0.1.9: Settings > Game > LAN play (off by default; turn it on and restart, and the title menu's Wireless Play becomes LAN Play). It only reaches local network addresses, never the internet; UDP ports 49152 and 35000 must be open. So far it has been played between two instances on one Linux PC. If you have two PCs on one network (Linux, Windows or one of each), please update both to v0.1.9, create a group on one and join from the other, and tell us what you see here, with Release: https://github.com/adriadam10/mkw-recomp/releases/tag/v0.1.9 |
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Mario Kart World has a hidden LAN Play mode, like Mario Kart 8 Deluxe: on console, hold L+R and click the left stick on Wireless Play. Wireless Play itself uses
nn::ldn, the Switch's own radio, which a PC cannot provide. LAN Play goes through ordinary UDP sockets on a local network, which a PC can. That makes it the realistic way to play this port together on several PCs, without Nintendo's servers.What works now (#144, behind
MKW_LAN=1, off by default)nn::socketruns on the host's sockets (runtime/sdk/ov/ov_socket.c). It translates the console's FreeBSD sockaddr, options and flags, and gives the game Linux errno numbers.MKW_LAN_IPto choose one).+0x77c). That byte picks the entry's label and the menu state that leads to the LAN lobby and the LAN session (network mode 3). The patch set stores 1 there when the page is set up.Tested on one PC (CachyOS, RX 9070 XT): the menu reads "Mode LAN", the lobby says "no group available", and creating a group reaches the character select.
Update 12/11: a LAN race works between two instances on one PC (
tools/run/lan2.sh, each in its own network namespace, 10.77.0.1 and 10.77.0.2). A group created on one is listed and joined from the other, the host's rules reach the guest, both vote, and the race starts on both together, each kart visible on the other screen; a second race followed. Screenshot in #144.What does not work yet
MKW_LAN=1, pick LAN Play, create a group on one and join from the other; the host starts the race from its menu (Plus, Tab on the keyboard). Your firewall must let UDP in (Pia uses ports 49152 and 35000). Please report what you see.Also
#145 is unrelated to the game: on a machine without the maintainers' job runner,
tools/run/job.shstarted test runs without the memory cap they assume. One of them stalled my whole desktop. Runs now go in a capped systemd user unit, andctl.sh stopcan stop them.Written with AI assistance (Claude Code); I am responsible for it.
All reactions