Time Nick Message 17:28 MTDiscord sfan5: This is my current assessment: https://luanti.dustlabs.io/compare.txt 17:33 sfan5 browser compatibility is a no for both, right? 17:33 sfan5 also worth comparing implementations 17:35 MTDiscord What do you mean by browser compatibility? 17:36 sfan5 browsers already implement quic, but there's no chance that JS will get access to in a way that would allow talking to luanti, right? (webtransport??) 17:36 sfan5 to it* 17:37 sfan5 oh and finally: there needs to be some reasonable way to implement "is this server on?" checks for the server list 17:38 sfan5 but if there isn't this can also be tacked on as a separate "ping protocol" like how other game servers do it 17:39 MTDiscord WebTransport is implemented on top of QUIC, but it also requires that the server speaks HTTP/3 + WebTransport. So a connection wouldn't just work, but support for it could be added to Luanti as a feature. 17:49 MTDiscord I need to do some more research regarding the pings. My first thought is that, as long as the number of servers pinged as kept reasonable (under 10), its not a big deal to open and maintain 10 QUIC connections. 17:50 MTDiscord But if the clients ping all servers constantly, that might be an issue. 17:50 MTDiscord We could always have a custom protocol if that turns out to be the case. 17:58 sfan5 I'm not so concerned about resources usage of connections. it's more about being able to implement this in python without 10 extra libs and 500 LOC 18:02 sfan5 looking at tcpdump the server list seems to ping 1-5 servers per second, roughly 18:02 sfan5 this is currently a trivial 3 packet exchange 18:07 sfan5 but yes a custom protocol would also have other advantages. like allowing the client to retrieve player count and perhaps a name/description from an arbitrary server (not relying on the server list) 18:32 MTDiscord There are quic libraries for python3, so either way it would be 1 library and a few lines. 18:38 MTDiscord QUIC would work for an arbitrary server as well (using a self-signed certificate if they don't have a domain) 18:49 MTDiscord I don't see anything on the server list that actually connects to or pings servers. 18:49 MTDiscord I think it just uses an estimate table based on IP geolocation 18:50 MTDiscord In game at least. Not sure about the servers.luanti.org 18:51 MTDiscord If only servers.luanti.org does pings, then its no problem at all. It can maintain open QUIC connections to all the servers. 19:23 sfan5 uh that doesn't sound scalable at all 19:24 sfan5 it only needs to check the ping once in 5 minutes 19:49 MTDiscord That's fine. I was just thinking for continuous pinging (every few seconds), it would be better to keep the connections open. 19:50 MTDiscord Not scalable, but with <1000 servers I don't think it would be a problem. 19:52 [MatrxMT] or you could optimize based on player count 19:52 [MatrxMT] check the servers with nobody every 10 to 30 minutes, check the servers with lots of people every 1 to 2 minutes