02:21 <+ws-client> ddnet++ has bomb ofc 04:34 <+bridge> <0xdeen> Sounds expensive compared to https://purelymail.com/ 😉 10:00 <+bridge> wth 10:09 <+bridge> https://mailu.io/2.0/ this works pretty neat 11:28 <+bridge> https://edgarluque.com now redirects 11:28 <+bridge> :gigachad: 11:45 <+bridge> Clicking on these doesn't work 11:45 <+bridge> https://cdn.discordapp.com/attachments/293493549758939136/1252559807127359509/Screenshot_20240618-1144162.png?ex=6672a8b9&is=66715739&hm=bd73115510309198b8c39d864962e60d85ff5211a43160a7c36fa853c0458c69& 11:46 <+bridge> works for me 11:46 <+bridge> maybe do a hard reload 11:47 <+bridge> https://cdn.discordapp.com/attachments/293493549758939136/1252560413208346624/Screenshot_20240618-114739.png?ex=6672a949&is=667157c9&hm=5cf7e66739c2587191807b67c5d3d00c8f3f7bc457ed714396c9c9b27d178d21& 11:48 <+bridge> This is for every link 11:49 <+bridge> broken, just redirect to ddnet.org 11:49 <+bridge> it redirects to "edgl.devs" 11:49 <+bridge> @ryozuki 11:49 <+bridge> plural 11:49 <+bridge> lmao 11:49 <+bridge> your royal form xD 11:50 <+bridge> fixed 11:50 <+bridge> xd 11:50 <+bridge> epyc blog moment 11:54 <+bridge> https://x.com/thekitze/status/1802957146205925690 11:56 <+bridge> XDD 14:00 <+bridge> <416710> I propose to diversify the editor by adding languages from different countries, and localize the language to make the editor more understandable maybe 14:02 <+bridge> <416710> Or let's privately create some plugins or something that can be localized, or have volunteers from different countries to translate for their countries IDK might be a great idea 14:02 <+bridge> That feature was rejected, see #2412 and #7054 14:02 <+bridge> https://github.com/ddnet/ddnet/issues/2412 14:02 <+bridge> https://github.com/ddnet/ddnet/pull/7054 15:14 <+bridge> https://store.steampowered.com/app/1162750/Songs_of_Syx/ 15:15 <+bridge> been following this game since ages 15:15 <+bridge> i recommend it fully, its epyc 15:15 <+bridge> the demo is the full game (maybe 1 or 2 versions outdated) 15:21 <+bridge> https://www.tomshardware.com/tech-industry/optical-pcie-70-connection-hits-a-blazing-128-gts 15:41 <+bridge> What is a GT? 15:42 <+bridge> <0xdeen> Gigatransfers 15:42 <+bridge> <0xdeen> https://en.wikipedia.org/wiki/Transfers_per_second 15:44 <+bridge> Ok 1024GB/s upload/download is insane 15:45 <+bridge> Ok 1TB/s upload/download is insane 16:04 <+bridge> https://arxiv.org/abs/2406.08719 16:09 <+bridge> ```rust 16:09 <+bridge> use std::mem; 16:09 <+bridge> 16:09 <+bridge> fn main() { 16:09 <+bridge> let a; 16:09 <+bridge> let a = a = true; 16:09 <+bridge> print!("{}", mem::size_of_val(&a)); 16:09 <+bridge> } 16:09 <+bridge> ``` 16:09 <+bridge> what does it print? kek 16:12 <+bridge> @learath2 16:12 <+bridge> https://cdn.discordapp.com/attachments/293493549758939136/1252626898014572647/screenshot_2024-06-14_at_6.png?ex=6672e735&is=667195b5&hm=701d5ed12942b99a21d7dc1e46548b650debada37095b8d9b0e2296da811823b& 16:49 <+bridge> is there any good way of getting data that the ddnet client has externally? i wanna play around with a utils app that might feature an overlay, and having some data that the client has might be useful, stuff like the player position, the server the player is on, whos in it, etc. 16:52 <+bridge> not within the client 16:52 <+bridge> you could use smth like wireshark to sniff the network packets 17:15 <+bridge> https://tenor.com/view/smell-sniff-the-rock-gif-13127001 17:50 <+bridge> yeah yeah you prefer to sniff melons 17:50 <+bridge> 😬 17:50 <+bridge> :gigachad: 18:58 <+bridge> https://tenor.com/view/theirresistible-dylanwang-watermelonhead-watermelon-wanghedi-gif-19662402 20:19 <+bridge> Trying to implement this in my server, currently the problem is that this line crashes as soon as i connect: 20:19 <+bridge> https://github.com/ddnet/ddnet/pull/5063/files#diff-d76009083687ba43c59dc7bb2c7357457c999c2eb9d913967d598e913c6fd01fR83 20:19 <+bridge> How can that happen? 20:23 <+bridge> https://cdn.discordapp.com/attachments/293493549758939136/1252690160022192228/image.png?ex=66732220&is=6671d0a0&hm=af2b28bcc9a8568b6164e373a27e569805576a38fe055b0a2814f8cb890c2f26& 20:23 <+bridge> line 84 is `m_AttachedPlayers.clear()` 20:24 <+bridge> well, that is in line 83 20:29 <+bridge> @robyt3 any ideas? 20:33 <+bridge> Looks like memory corruption, ASAN/Valgrind would probably help 20:35 <+bridge> How, if there is nothing in there yet at all 20:36 <+bridge> Assuming you applied the changes correctly, it must be something in your code that's not compatible with the changes of the PR. Do you use `m_AttachedPlayers` and `SetHookedPlayer` anywhere else? Do you perhaps `mem_zero` the entire `CGameCore` or something like that? 20:37 <+bridge> I highly doubt that :D Yeah, I use them in other places where I had m_HookedPlayer = x before 20:37 <+bridge> but it crashes in CCharacter::Spawn 20:37 <+bridge> when resetting the core 20:38 <+bridge> You need to ensure that you don't call `SetHookedPlayer` while iterating over the set, I guess 20:38 <+bridge> How can I write it while interating? I'm not even iterating 20:38 <+bridge> Then it should be fine 20:39 <+bridge> But from what I'm gathering you are somehow corrupting the `std::set` 20:39 <+bridge> So ASAN/UBSAN/Valgrind should help 20:40 <+bridge> Yea.. I have no idea tho, I do not mem zero it somewhere 20:40 <+bridge> and vectors of gamecore do work 20:41 <+bridge> map too 20:41 <+bridge> Those structures would also break by mem_zeroing 20:42 <+bridge> I can only repeat my invitation to the church of ASAN 😄 20:52 <+bridge> oh wait 20:53 <+bridge> it's not actually on spawn 20:53 <+bridge> it's the reckoningcore 20:53 <+bridge> it's in tickdefered 20:54 <+bridge> m_ReckoningCore.Init() 20:54 <+bridge> m_ReckoningCore = m_Core; 20:54 <+bridge> this is it, copying the set here is causing the issue 20:55 <+bridge> = operator in std::set 20:55 <+bridge> ahhhh 20:55 <+bridge> i see now 20:55 <+bridge> ```mem_zero(&m_SendCore, sizeof(m_SendCore)); 20:55 <+bridge> mem_zero(&m_ReckoningCore, sizeof(m_ReckoningCore));``` 20:56 <+bridge> ```mem_zero(&m_SendCore, sizeof(m_SendCore)); 20:56 <+bridge> mem_zero(&m_ReckoningCore, sizeof(m_ReckoningCore));``` 20:56 <+bridge> my mod vs ddnet: 20:56 <+bridge> ```m_SendCore = CCharacterCore(); 20:56 <+bridge> m_ReckoningCore = CCharacterCore();``` 20:56 <+bridge> works like a charm. I am ASAN myself 20:57 <+bridge> :kek: 21:00 <+bridge> #5255 21:00 <+bridge> https://github.com/ddnet/ddnet/pull/5255 21:02 <+bridge> Seems like there were only a few days between the PRs being merged though 21:38 <+bridge> Can we add an option in voting to play the map mirrored 21:39 <+bridge> reflect the map on the y axis, mirroring all the >> and <<'s, speed boosts, etc, but not changing the map's playabliity 21:40 <+bridge> Is there a bug in ddnet 18.2 with the sound? 21:41 <+bridge> I saved a map in 18.3 and players got a warning using 18.2, that some map sounds couldn't be loaded 21:41 <+bridge> yeah, the warning is shown incorrectly when they have sound disabled 22:03 <+bridge> Is there a shortcut for making every tile in a group hookable? so i dont have to do it manually? 22:09 <+bridge> in a design tile layer you can rightclick the layer and select a game tile. it then creates those tiles in the game layer, for example "hookable" 22:24 <+bridge> @robyt3 How did DDNet solve this? https://github.com/fokkonaut/F-DDrace/actions/runs/9571581242/job/26389007865 22:24 <+bridge> it's related to the new CCharacterCore initialization 22:24 <+bridge> i dont see any constructor in ddnet for example, so does this warning get disabled somewhere? 22:26 <+bridge> `add_cxx_compiler_flag_if_supported(OUR_FLAGS_OWN -Wno-missing-field-initializers)` I guess 22:27 <+bridge> thanks 22:27 <+bridge> Lol, it's set already in my cmakelists 22:27 <+bridge> ahhhh 22:28 <+bridge> wait 22:28 <+bridge> it's add_c_compiler_flag for me, not cxx, but i think that doesnt matter since everything is c for me 22:29 <+bridge> Only system would be c for you 22:29 <+bridge> my system is cpp actually 22:29 <+bridge> i updated it 22:30 <+bridge> but the whole cmakelists.txt is based on vanilla and uses c things instead of cxx 22:30 <+bridge> mostly 22:30 <+bridge> DDNet doesn't have C either, so all the flags should be for cxx 22:30 <+bridge> https://cdn.discordapp.com/attachments/293493549758939136/1252722160057843864/image.png?ex=66733fed&is=6671ee6d&hm=6d6fe926322ff7f4fcb88455f1842555336482be2c132f7a6847f310e915c604& 22:30 <+bridge> it still sets them correctly, the issue is because it's another error: ` [-Werror=uninitialized]` 22:31 <+bridge> I don't see anything related to `uninitialized` in DDNet's CMakeLists though 22:31 <+bridge> yea 22:31 <+bridge> same 22:33 <+bridge> Does your `CCharacterCore::Reset` function initialize those variable that are undefined according to the warnings? 22:34 <+bridge> yes 22:34 <+bridge> but Reset isnt getting called for m_SendCore and m_ReckoningCore in CCharacter::Spawn 22:34 <+bridge> it's only initialized 22:35 <+bridge> so it wouldnt matter 22:37 <+bridge> I could maybe just initialize both with m_Core, but that's not the way to go 😄 22:39 <+bridge> I dont even understand where it thinks these variables are being used 22:39 <+bridge> It's just listing all variables, it's the order they are declared in gamecore.h, so the list probably would go on 22:40 <+bridge> Ah no, it's not the same order. 22:40 <+bridge> but those are all vec2, if that's relevant 22:41 <+bridge> Yeah, doesn't look relevant, but I would put it in the same order anyway 22:42 <+bridge> How can this trigger in my mod, but not in ddnet? 22:43 <+bridge> https://github.com/ddnet/ddnet/commit/c4377bb7d9e79e15ab86c9a2e7feccee814e14f5 22:43 <+bridge> this looks like it 22:45 <+bridge> I think that was mostly reverted by #6256 though 22:45 <+bridge> https://github.com/ddnet/ddnet/pull/6256 22:46 <+bridge> I'd try the `add_cxx_compiler_flag_if_supported` flags and see if that works already. Looks like we use `-Wextra` which includes `-Wuninitialized` 22:46 <+bridge> which flag should i add? 22:47 <+bridge> wextra? 22:47 <+bridge> I use wextra too 22:47 <+bridge> I mean use `add_cxx_compiler_flag_if_supported` instead of `add_c_compiler_flag_if_supported` except for the one with `OUR_FLAGS_DEP` 22:47 <+bridge> ah 22:49 <+bridge> unknown command :D 22:49 <+bridge> https://github.com/fokkonaut/F-DDrace/actions/runs/9571999267/job/26390336399 22:51 <+bridge> Copy `function(add_cxx_compiler_flag_if_supported VARIABLE FLAG)` and following 22:54 <+bridge> it works on ubuntu latest, but not on 20.04 22:55 <+bridge> but has also before 22:55 <+bridge> this error does only appear on 20.04 22:59 <+bridge> it did run through on the pr adding it in ddnet tho 22:59 <+bridge> but that was bors 23:01 <+bridge> https://github.com/ddnet/ddnet/pull/7886#issuecomment-2094337073 23:01 <+bridge> 23:02 <+bridge> just drop 20.04 when 24.04 latest is added to CI and call it a day :kek: 23:03 <+bridge> Hm 23:03 <+bridge> Okay 23:04 <+bridge> :)