| Time |
Nick |
Message |
| 04:00 |
|
MTDiscord joined #luanti-dev |
| 05:09 |
|
YuGiOhJCJ joined #luanti-dev |
| 05:15 |
|
YuGiOhJCJ joined #luanti-dev |
| 05:16 |
|
YuGiOhJCJ2 joined #luanti-dev |
| 05:42 |
|
Farooq[lp] joined #luanti-dev |
| 05:52 |
|
[MatrxMT]_ joined #luanti-dev |
| 05:53 |
|
[MatrxMT] joined #luanti-dev |
| 06:34 |
|
diceLibrarian joined #luanti-dev |
| 06:54 |
|
luk3yx joined #luanti-dev |
| 09:58 |
|
pgimeno joined #luanti-dev |
| 11:42 |
|
[MatrxMT] joined #luanti-dev |
| 14:43 |
|
pgimeno joined #luanti-dev |
| 14:44 |
|
Farooq[lp] joined #luanti-dev |
| 14:54 |
|
Panquesito7 joined #luanti-dev |
| 16:52 |
|
pgimeno joined #luanti-dev |
| 17:20 |
|
pgimeno joined #luanti-dev |
| 17:28 |
MTDiscord |
<paradust> 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 |
<paradust> 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:38 |
|
pgimeno joined #luanti-dev |
| 17:39 |
MTDiscord |
<paradust> 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:40 |
|
pgimeno joined #luanti-dev |
| 17:44 |
|
pgimeno joined #luanti-dev |
| 17:46 |
|
pgimeno joined #luanti-dev |
| 17:49 |
|
crazylad joined #luanti-dev |
| 17:49 |
MTDiscord |
<paradust> 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 |
<paradust> But if the clients ping all servers constantly, that might be an issue. |
| 17:50 |
MTDiscord |
<paradust> 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:15 |
|
pgimeno joined #luanti-dev |
| 18:32 |
MTDiscord |
<paradust> There are quic libraries for python3, so either way it would be 1 library and a few lines. |
| 18:38 |
MTDiscord |
<paradust> QUIC would work for an arbitrary server as well (using a self-signed certificate if they don't have a domain) |
| 18:49 |
MTDiscord |
<paradust> I don't see anything on the server list that actually connects to or pings servers. |
| 18:49 |
MTDiscord |
<paradust> I think it just uses an estimate table based on IP geolocation |
| 18:50 |
MTDiscord |
<paradust> In game at least. Not sure about the servers.luanti.org |
| 18:51 |
MTDiscord |
<paradust> 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 |
<paradust> 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 |
<paradust> Not scalable, but with <1000 servers I don't think it would be a problem. |
| 19:52 |
[MatrxMT] |
<birdlover32767> or you could optimize based on player count |
| 19:52 |
[MatrxMT] |
<birdlover32767> check the servers with nobody every 10 to 30 minutes, check the servers with lots of people every 1 to 2 minutes |