A second Mac joins a hosted game by address and sees the host's player walk #29
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "task/3992-a-second-mac-joins-a-hosted-game-by-addr"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Tracker: #3992
Step 1 of the multiplayer netcode plan (#3571): the app hosts a game over UDP, or joins one by address, and every player sees the others' skeletons walk, turn and jump where the server has them.
src/net/udp.sx). A message longer than a 1200-byte datagram crosses in fragments the receiver reassembles, and one missing a fragment is dropped whole (src/net/fragments.sx); the first map's whole snapshot crosses in two. The loopback (src/net/loopback.sx) is now an in-process datagram network behind the same send and receive, the tests' transport.src/sim/game.sx) is the server's rules and state apart from any transport; the server (src/sim/server.sx) runs it for every connection, each its own player joining at the map's first spawn marker, while a respawn takes the next marker in turn. Commands stay newest-wins per player; players pass through each other.src/sim/host.sx), and the host's own client joins it over UDP at 127.0.0.1 like any other. Launching hosts on UDP port 27960,--portsets another,--join <address>[:port]joins instead (src/net/launch.sx). A joined app whose server falls silent for 10 s closes, printing why. The in-frame lockstep of server and client is gone.tests/sim_view.sx, which fails on the two-newest lerp by the client's own fraction).tests/figure_draws.sx, with its golden).tests/net_udp.sx); a threaded host and two UDP clients (tests/net_host.sx); the handshake from both sides (tests/net_handshake.sx,tests/net_joining.sx); fragments (tests/net_fragments.sx).tests/sim_headless.sxcovers the transport, server and host modules.