News for hackers. Stuff that matters.
Re:You might not need a CRDT by paulgb on Monday December 05, 2022 @09:43AM (#33866253)
> I wonder what web development could learn from online game development when it comes to "multiplayer" apps - I mean it's right there in the name.

100%. The architecture we used for https://plane.dev takes a lot of inspiration from how game servers work, but using HTTP/WebSocket instead of UDP.

A lot of state sharing techniques that people are now using on the web (like cursor position smoothing and optimistic updates) have decades of precedent in multiplayer games.

We’ve also seen more apps start to use an approach to pixel streaming which more closely resembles stadia than traditional VNC. https://digest.browsertech.com/archive/browsertech-digest-wo...

Re:You might not need a CRDT by Joeri on Monday December 05, 2022 @11:29AM (#33867726)
but using HTTP/WebSocket instead of UDP

I think websockets run over UDP when hosted on http/3.

Re:You might not need a CRDT by paulgb on Monday December 05, 2022 @12:50PM (#33869000)
They do, but with HTTP/3 there’s also WebTransport, which is even better because it means we will be able to avoid head-of-line blocking.
Re:You might not need a CRDT by JayStavis on Monday December 05, 2022 @12:56PM (#33869079)
The intersection of state replication and pixel streaming is indeed interesting. Cloud games for example are usually using game state sync techniques, and then add in the client<>gpu latency on top of that.

A true cloud native game (sadly part of Stadia's original ambitions) would hopefully have a more e2e state management approach inclusive of the pixel latency.

This is very different from "local multiplayer" pixel streaming, which may be what companies like Switchboard[1] are doing: multiple clients control the same I/O channel (e.g. you and I share a mouse on a single remote desktop)

[1] https://www.switchboard.app/