Hytale uses QUIC for multiplayer. What do you think about it? Is this the first reasonably popular game that implements multiplayer over QUIC instead of using TCP or their own custom protocol on top of UDP?
>>>/v/>>>/lgbt/
>>107831502I think you're expecting too much from /g/. Nobody here has ever designed something as complex as an online games protocol and nobody here understands what using QUIC gives you over TCP and what you give up in exchange, especially in expensive server setups.At most, you'll get some schizo off his meds complaining that "THE TRANNIES!!!!!" are getting rid of TCP to further their goals of world domination or something.
>>107831502all quic data goes to google. you just played yourself.
>>107831790Sad but true.
>>107831790>what you give up in exchangeWhat (compared to TCP)? I mean there's TCP offload which you can't use with quic, but I don't know if it's a big deal
>>107832866It's mostly that. That and the maturity and stability of TCP stacks in general.
>>107831502>hytalethe fuck is that and why should I give a fuck?
>>107832894It's minecraft but you get to buy it again.
>>107831502>>107831790>multiplayer games>tcphuh? surely most use UDP
>>107833030Well some do use TCP, the Java edition of Minecraft does it for example
>>107833054minecraft is a meme with low constraintspretty sure real games have always used UDP
>>107833030games use both. udp for gameplay, tcp for chat and misc functions.
>>107833081wow still uses TCP>>107833097yeah that's probably where QUIC fits in, good alternative since encryption happens transparently and firewalls won't have a problem with it
>>107831502Can you encrypt QUIC packets?
>>107833655QUIC has mandatory TLS 1.3 built into it, it's not even possible to disable it (last time I checked) because the QUIC handshake includes TLS handshake in it, so yes
>>107833694Dang
>>107833054>>107833112both uses UDP, TCP is only used for chat communications. That's literally the standard in multiplayer videogames.
>>107835228wow uses TCP for all network communicationexcept voice chat, which no one uses, that's over UDP for some reason
>>107835228Minecraft Java Edition literally uses TCP for everything, what do you mean? It's pretty well known, but here's written proof of it: https://minecraft.wiki/w/Java_Edition_protocol/Packets#DefinitionsThe only thing Java Edition uses UDP for is the "Open to LAN" feature
>>107833081minecraft is a real game you retard.rope yourself NOW
>>107831502I think it's neat, but my primary interest is in WebTransport which implements "bidirectional, multiplexed, and unreliable/ordered delivery" over it. Sadly that's still in development hell. Quic by itself, all I can say is it's cool how they improved aspects of it beyond TCP and the backing from Goog makes it play nice, but mandatory encryption is mixed blessing. Sure, it guarantees integrity of packets (the major value add in gaming), but packet tampering for videogames doesn't really impact most players, and you pay a huge cost for encryption in return. As with most things, it ultimately depends on the game and the engineering tradeoffs you want to make.
>>107831844Mullvad recommends QUIC. How true is what you're saying?
>>107835929mullvad uses rust now and doesnt support port forwarding anymoreprobably will stop supporting cash by mail as a payment option soon
>>107835651>you pay a huge cost for encryption in returnDo you really for the data rates a game would need? I kind of doubt it.
>>107836037Hence "tradeoffs". If yours is a turn-based game with 10 users per box then, no, it's negligable. But if you're trying to squeeze 100-1000 players with 100ms tick on a single machine, that's a much more significant cost. Too lazy to get numbers, but just look at the people bitching about HTTP (no S) dying and calculate if your RPS & target hardware is similar.
>>107831844Source: Rectum et al
>>107831516fpbp /thread
>>107836121I haven't worked on game servers but I did work on enterprise message passing shit where I had to look into the potential impact of encryption. From what I remember large numbers of small messages received very little impact while large messages carrying large payloads did show quite a lot of extra CPU overhead. That mostly happened because large payloads moved very large amounts of data around while small payloads hit other I/O bottlenecks and overall data rates were much lower despite a far higher message rate.Ultimately I'd be pretty sure a game server use case would be more on the large number of packets with relatively small payloads side, no? Like how high could data rate per player reach?
>>107833018I've never played minecraft though
we hae webRTC thoughbeit