.z64 / .n64 / .v64 here
Lobby
Create or join by room code. Host Start opens a 2-4P lockstep mesh
over WebRTC (6 DataChannels at 4P). Delay 2 on the Internet, or 1
with ?ff_lan=1. Each remote client gets a full-frame
Hor+ camera for its seat. Host disconnect ends the match.
?ff_netplay=0 is solo. Campaign is not v1.
Privacy: the ROM never leaves this tab (IndexedDB only; not uploaded
through nginx). WebRTC can reveal your IP to peers in the room.
Default ICE is all (direct or STUN first). This box has
coturn TURN (ephemeral room-scoped creds, no open allocate).
?ff_turnForce=1 forces the TURN relay path;
?ff_wsRelay=1 (or ICE fail after Start) carries
inp/ctl on same-origin /ws
instead. Keep this tab visible -- hidden tabs stall the match. No
analytics SDK. No server browser.
Controls
Click a bind, then press a key. Pointer-lock mouse look is not remapped (click the picture). Local P2 stays arrows + Enter.