00:28 <+bridge> do invisible players also count? 00:28 <+bridge> or only players "conected" 02:58 <+bridge> <公墓> What is this game? And what is DDNet steam statistics? 03:03 <+bridge> @公墓 those are the stats from steam as a whole 03:03 <+bridge> https://steamdb.info/app/412220/graphs/ 03:03 <+bridge> ^ for ddnet 10:47 <+bridge> @Robyt3 i think i found a bug: 10:47 <+bridge> 10:47 <+bridge> - go on lan tab -> select a server 10:47 <+bridge> - go on ddnet tab -> select a server 10:47 <+bridge> - go back to lan tab -> double click on the already selected server -> it connects to the ddnet server instead bcs server ip is not updated 10:47 <+bridge> and it must be the same index 10:47 <+bridge> between both tabs 10:54 <+bridge> 10:54 <+bridge> ⚠️ i3-gaps has been merged into i3. 10:54 <+bridge> @Learath2 poggers 10:55 <+bridge> https://news.ycombinator.com/item?id=34293010 11:57 <+bridge> `(connecting)` players aren't filtered anymore 12:01 <+bridge> I think they weren't filtered in the server scoreboard before either 12:01 <+bridge> somehow the flag is also larger for them 12:01 <+bridge> https://cdn.discordapp.com/attachments/293493549758939136/1061600591517851708/image.png 12:02 <+bridge> yeah if they dont have a skin they render like before, looks kinda ugly but usually they are filtered. at least i thought so 12:03 <+bridge> but there is a "filter connecting players" filter 12:03 <+bridge> so its weird they weren't filtered, it should even be default on 12:03 <+bridge> yeah, makes sense to hide them from the player list as well, since they are not counted for the total player count with "filter connecting players" 12:07 <+bridge> https://cdn.discordapp.com/attachments/293493549758939136/1061602143712313404/image.png 12:07 <+bridge> it suddenly happened 12:08 <+bridge> on a kog server 12:08 <+bridge> and it also stopped after that 12:21 <+bridge> "Count players only" also doesn't affect the server browser scoreboard currently. Not sure it's a good idea to hide the spectators in that list if this setting is enabled. 12:26 <+bridge> mh ok, questions are: 12:26 <+bridge> - is it useful to know that there is (connecting) player 12:26 <+bridge> - should we always render as if there could potentially be a skin, which makes it not use most space available but simplifies the code 12:31 <+bridge> > - is it useful to know that there is (connecting) player 12:31 <+bridge> probably not 12:31 <+bridge> 12:32 <+bridge> > - should we always render as if there could potentially be a skin, which makes it not use most space available but simplifies the code 12:32 <+bridge> would look better/more consistent IMO 12:35 <+bridge> so be it 13:16 <+bridge> this seems to be related to lags 13:18 <+bridge> maybe we should use different return values for all returns in `CSnapshotDelta::UnpackDelta`, so we know which condition caused the unpacking to fail 13:18 <+bridge> right now we group the failures roughly in a few categories, where -3 means that a value in the delta is invalid 13:32 <+bridge> Yes please 13:47 <+bridge> @Robyt3 in the previous version, when no server was selected e.g. by switching tabs, you could still use arrow keys to navigate (in this case it would start navigation) 13:47 <+bridge> 13:47 <+bridge> now its not working anymore 15:10 <+bridge> @Robyt3 can i cancel #6252 so you can use enums? 15:10 <+bridge> https://github.com/ddnet/ddnet/pull/6252 15:11 <+bridge> Not sure an enum would help much. We wouldn't use those numbers internally, they are just for understanding console log messages 15:12 <+bridge> You wouldn't do if(UnpackDelta(...) == -301) anyway 15:12 <+bridge> hmm ok 15:14 <+bridge> we could use enum to string in dbg_msg instead of raw numbers as well 15:15 <+bridge> at that point return a string rather than an enum, I guess 15:16 <+bridge> nah, we still need integer data 15:16 <+bridge> the function normally returns the size of the unpacked delta 15:16 <+bridge> it returns size of data 15:16 <+bridge> and negative for error 15:16 <+bridge> so any negative value is an error code 15:17 <+bridge> hmhmm 15:17 <+bridge> what would be the advantage of enums over integers in this case? 15:17 <+bridge> enums are integers anyway 15:18 <+bridge> only thing i can think of is easier documentation directly inside the enum 15:18 <+bridge> yup, that's the point 🙂 15:18 <+bridge> So bad c++ doesnt have rust style enums 15:18 <+bridge> you can have the documentation near the return instead, if you want that 15:19 <+bridge> currently, the returns are unique 15:19 <+bridge> some comment you mean? 15:19 <+bridge> yea 15:19 <+bridge> or wdym by documentation? 15:19 <+bridge> the intention is that the existing return values are not changed or reused again, otherwise we couldn't interpret old log files easily 15:20 <+bridge> what are rust enums specificities ? 15:20 <+bridge> you could have the function return the size OR an error (e.g. a string) 15:20 <+bridge> do tupple enums have an automatic mode for integers? or do you need to do 15:20 <+bridge> 15:20 <+bridge> enum 15:20 <+bridge> { 15:20 <+bridge> A((1, "Whatever error")), 15:20 <+bridge> B((2, "...")), 15:20 <+bridge> } 15:20 <+bridge> 15:20 <+bridge> for every entry? 15:20 <+bridge> They are sum types, and can hold any type of data within 15:20 <+bridge> Result for example 15:20 <+bridge> any type or any integer type? 15:21 <+bridge> Any type 15:21 <+bridge> ah that's nice 15:21 <+bridge> or just a boolean pointer as parameter to see if it worked correctly 15:21 <+bridge> with automatic i mean like start index = -50000 and then rest goes automatic 😄 15:22 <+bridge> it all seems like overengineering though 15:22 <+bridge> ```rust 15:22 <+bridge> enum IpAddr { 15:22 <+bridge> V4(u8, u8, u8, u8), 15:22 <+bridge> V6(String), 15:22 <+bridge> } 15:22 <+bridge> 15:22 <+bridge> let home = IpAddr::V4(127, 0, 0, 1); 15:22 <+bridge> 15:22 <+bridge> let loopback = IpAddr::V6(String::from("::1")); 15:22 <+bridge> 15:22 <+bridge> ``` 15:22 <+bridge> @Chairn 15:22 <+bridge> nobody commented on my pr 😢 15:22 <+bridge> 15:22 <+bridge> what Robyte did is instantly useful and doesn't change much code 15:22 <+bridge> but that doesnt help if we talk about integers tho, so answer me rust pro 15:23 <+bridge> `return true; // NOLINT(clang-analyzer-unix.Malloc)`? ^^ 15:23 <+bridge> should we just disable `clang-analyzer-unix.Malloc`? ^^ 15:23 <+bridge> otherwise clang-tidy complains about potential leak 15:24 <+bridge> why did that change? 15:24 <+bridge> here you got clang-tidy errors 15:24 <+bridge> probably due to inlining of mem_zero function allowing it to see more things? 15:26 <+bridge> Ye 15:26 <+bridge> Idk about enums eith values 15:26 <+bridge> nice is it a macro or smth? i tried to google this before for tupple enums 15:26 <+bridge> but seems like i suck at googling rust specific stuff 15:26 <+bridge> But with enums that look like c its just enum { X = -5000 } 15:27 <+bridge> i need for enums with values ^^ 15:27 <+bridge> I have to check it but im outside so its a hassle 15:27 <+bridge> Mobilr sucks 15:27 <+bridge> smth like #[auto_add_convert_into_interger_start_at(0)] 15:27 <+bridge> would be really useful for me at some specific places 15:27 <+bridge> I don't think that exists(?) 15:28 <+bridge> you can define enums to integer conversion 15:28 <+bridge> enums act like classes 15:28 <+bridge> too bad, bcs it looks like not too hard to do with a macro 15:28 <+bridge> https://doc.rust-lang.org/rust-by-example/custom_types/enum/c_like.html 15:39 <+bridge> Is #6249 ready, @Jupeyy_Keks ? Looks like the run failure is just a macOS fluke 15:39 <+bridge> https://github.com/ddnet/ddnet/pull/6249 15:40 <+bridge> i cancelled it bcs there was a bug, but its ready 15:45 <+bridge> I'm looking into it 15:48 <+bridge> i didnt even saw you saying this ^ before 5 seconds ago xd 15:49 <+bridge> im a very discrete man 😄 15:51 <+bridge> what I find a bit weird is that the new `mem_zero` doesn't actually zero the mem in some cases 15:52 <+bridge> because it shouldn't, it has to respect default constructor 15:52 <+bridge> we can rename it to mem_init 15:52 <+bridge> yes, it shouldn't because it's UB 15:52 <+bridge> but that's less clear in most cases 15:52 <+bridge> perhaps these calls could instead be replaced by calls to the constructor? 15:53 <+bridge> ehm 15:53 <+bridge> https://github.com/ddnet/ddnet/blob/a2737de1c5a8f5d06b69222892dbee6757415c12/src/engine/shared/network_console.cpp#L10-L11 15:53 <+bridge> for example this ^ 15:53 <+bridge> this seems to be very misleading after the PR 15:54 <+bridge> it does zero it because there's no constructor and no complex type 15:54 <+bridge> man this hurts my eyes 15:54 <+bridge> btw, mem_zero in constructor would probably endless loop 16:38 <+bridge> I thiink I like this better too 16:40 <+bridge> running out of time right now, ill review it tonight. Gotta go see Avatar 2 😛 16:40 <+bridge> have fun 🙂 16:40 <+bridge> Tho am on phone, so I'll think about it when im hom 17:16 <+bridge> TIL Avatar 2 exists 17:20 <+ChillerDragon> ye avatar is surprisingly niche 17:37 <+ChillerDragon> I do get some clang errors did i miss something? 17:37 <+bridge> erm... #off-topic ? 🤓 17:38 <+ChillerDragon> ../src/base/vmath.h:141:38: error: constexpr function never produces a constant expression [clang-diagnostic-invalid-constexpr] 17:46 <+bridge> Which version of clang? I added constexpr to more functions in #6244. It works for me locally and in the CI. 17:46 <+bridge> https://github.com/ddnet/ddnet/pull/6244 17:56 <+bridge> Uhm actually #developer is offtopic for `@Dev`s🤓 18:05 <+bridge> https://fanpu.io/blog/2023/latex-tips/ 18:31 <+ChillerDragon> ``Debian clang version 11.0.1-2`` 18:31 <+ChillerDragon> deb11 18:32 <+bridge> I guess you can just remove as many constexpr as necessary until it compiles for you and then make a PR 18:33 <+ChillerDragon> or maybe its fixed in a later clang version eventho dropping deb11 support sounds bad i think if the github CI passes its okaay 18:33 <+ChillerDragon> deb12 has to release soon anyways 19:04 <+bridge> I like everything in this except that they said to always use `\dots`. Really, you should be using `\dotsc`, `\dotsb`, `\dotsm`, etc 21:31 <+bridge> @Zwelf will we be able to get accounts based on ddnet domain? 😄 21:34 <+bridge> @Zwelf will we be able to get matrix accounts based on ddnet domain? 😄 22:48 <+bridge> Anyone here got experience with a Docker container not having working DNS lookup? @Miguilim asked me for the Brazil server, but I couldn't find anything weird, and tried removing my iptables rules, but to no effect 22:58 <+bridge> Mh, I had issues with podman and cni, but migrating to netavark fixed all my issues 23:19 <+bridge> sorry, i'll do it this week then 23:22 <+bridge> @Jupeyy_Keks do u know what could be the cause of a GPU not used much on windows ? 23:23 <+bridge> have it used 20% only on some big games 23:23 <+bridge> i mean its the games code fault 23:23 <+bridge> or maybe ur cpu is bottlenecking 23:24 <+bridge> teeworlds or generally 23:24 <+bridge> well have a pretty good config, but this game is damn not optimized at all lmao 23:24 <+bridge> ig only Escape From Tarkov, they released a map and the average FPS for everyone is around 40-60 23:24 <+bridge> ig only Escape From Tarkov, they released a map and the average FPS for everyone is around 40-50 23:24 <+bridge> https://cdn.discordapp.com/attachments/293493549758939136/1061772517410340974/image.png 23:24 <+bridge> :justatest: 23:26 <+bridge> xd 23:26 <+bridge> change first graph to logical cores 23:26 <+bridge> see if one core is at 100% 23:26 <+bridge> u mean for cpu? nothing is at 100 23:27 <+bridge> No for now 😅. And it will probably be never be completely open to registration. For now only as a bridge + moderation tool. 23:27 <+bridge> mayb it bottlenecks cuz of the gpu mem being full 23:28 <+bridge> possible 😄 23:29 <+bridge> a 3060 how much has 23:29 <+bridge> trying mip streaming from unity (yes they did a big game using a game engine not for that) 23:29 <+bridge> 12G for mine 23:29 <+bridge> trying mip streaming from unity (yes they did a big game using a game engine not good for that, game would run way better using UE) 23:29 <+bridge> 12G for mine 23:30 <+bridge> my 3080 has 10 xd 23:30 <+bridge> i wonder how it using ur full vram tho 23:30 <+bridge> kinda insane kek 23:31 <+bridge> definetly no clue 23:31 <+bridge> https://cdn.discordapp.com/attachments/293493549758939136/1061774225045733376/image.png 23:32 <+bridge> but still lot of usage 23:32 <+bridge> yeah well 23:50 <+bridge> does it have a reasonable /etc/resolv.conf? 23:50 <+bridge> does dig work? 23:50 <+bridge> does `dig` work? 23:52 <+bridge> dig doesn't work, I tried fixing the /etc/resolv.conf to use 8.8.8.8, but still didn't work, pinging 8.8.8.8 worked though 23:52 <+bridge> so a bit weird that ICMP goes through but UDP not 23:54 <+bridge> it seems something related to dnsmasq 23:55 <+bridge> /etc/resolv.conf only has: 23:55 <+bridge> /etc/resolv.conf only has: 23:55 <+bridge> 23:55 <+bridge> ``` 23:55 <+bridge> nameserver 127.0.0.1 23:55 <+bridge> ``` 23:58 <+bridge> That is our local server which we used for ddnet, but it forwards everything. I didn't see that used in docker though 23:59 <+bridge> I found this in the official docker documentation https://docs.docker.com/engine/install/troubleshoot/#dns-resolver-issues