00:33 < bridge> hi 02:57 < bridge> Huh, he already left. I wonder what annoyed him so much to come back and create that issue 02:58 < bridge> :thonk: 02:59 < bridge> I’m guessing he doesn’t really have the right to rescind his contributions either due to the license. Sooo I guess nothing to be done about it 03:12 < bridge> He left 3 months ago exactly, because melon and ryozuki talked about rust. Didn’t hear anything from him through anyone at all either for 3 months. Then he shows up with that issue. Truly an enigma 03:41 < bridge> teedrama 03:41 < bridge> again 03:58 < bridge> Onlyfans leaks 03:58 < bridge> https://discord.gg/girls18q 03:58 < bridge> @everyone 04:06 < bridge> Onlyfans leaks 04:06 < bridge> https://discord.gg/girls18q 04:06 < bridge> @everyone 05:16 < ChillerDragon> @learath2 lawyer lerato could you explain how the license disallows withrading contributions? 05:17 < ChillerDragon> voxel seems upstet something else has to had happend other than people talking about rust. is he okay? :( 05:22 < bridge> Im 👌 so Close to Just commenting "i Use Rust btw" 05:23 < bridge> But Hes Not in His right state of Mind so i rather not 05:23 < bridge> (yet) 05:24 < bridge> Is everything he did really going to be deleted? 05:28 < bridge> Im still wondering what happened that He ended Up Like that, i remember looking at His Twitter and seeing enough Salt to replicate the ocean 06:52 < bridge> We all had that feeling, that the game was not moving forward, regardless of how much development went to the game itself. 06:53 < bridge> I think the main problem lies in providing community made contents, especially hq ones. We have great potential mods like Infection and Teeware, which in itself could be a unique game, separated from ddnet. 06:54 < bridge> Sadly making maps are also dependant on the community / creators and we somehow push these problems to ddnet devs, who themselves try to improve their own servers and adding gameplay ideas which are also provided by the community (latest being Konsti's weapon shields idea, with my design being contributed to). 06:55 < bridge> From that moment I realized, that you guys don't make more gameplay stuff in ddnet, cuz it would create more and more distance within what was originally supposed to be "ddnet". I get that now. 06:57 < bridge> But to either blame the devs for not making the game different... I would never do that if I were Voxel. 06:57 < bridge> But to either blame the devs for not making the game different... I would never do that if I were Voxel. We appreciate his work. 06:58 < bridge> But to either blame the devs for not making the game different... I would never do that if I were Voxel. We appreciate his work. (and sorry for the long messages.) 07:01 < bridge> Aint it more of a Github ToS thing? 07:53 < bridge> Anybody could verify my statement? Don't wanna make false statements, it would be gaslighting lmao 07:53 < bridge> https://github.com/ddnet/ddnet/issues/8127#issuecomment-2005980138 07:57 < bridge> Multeasymap 08:20 < bridge> good 08:20 < bridge> he is making drama out of nowhere 08:23 < bridge> also completly dishonest comment of the effort of all other devs they put 08:23 < bridge> i hate people like this 08:24 < bridge> https://www.zdnet.com/article/no-you-cant-take-open-source-code-back/ 08:24 < bridge> I mean Voxel is right, the community sucks ass and the developers waste their time doing useless things when it is obvious what this game needs. I dont want to complain about developers as they basically work for free but Voxel has a point 08:25 < bridge> the game has never seen so much new features as today, and as u said, nobody is getting paid, **you** are not **entitled** to anything here 08:26 < bridge> i think people heavily understimate the effort for someone to work on free projects besides their work and daily life 08:26 < bridge> yea, mostly useless features🤏🏼 08:26 < bridge> if you qant something, do it yourself first and foremost 08:26 < bridge> if you want something, do it yourself first and foremost 08:27 < bridge> This is the worst argument around. I didnt want to hurt your feelings little man, sorry for criticising the developers 08:27 < bridge> but you know... account system ;) 08:28 < bridge> Also battle pass would be nice 08:28 < bridge> And eeeh paid skins 08:29 < bridge> account system would solve 90% of the problems within the community 08:29 < bridge> its not the worst, its actually the beat 08:29 < bridge> best 08:29 < bridge> because you actually think are entitled to others work 08:29 < bridge> and that actitude should gain u a timeout at least 08:29 < bridge> I never said I was entitled to anything 08:29 < bridge> you dont have to say something to mean it 08:30 < bridge> receiving a timeout for stating an opinion? you should maybe touch some grass homie 08:31 < bridge> ok im not arguing with this troll further 08:31 < bridge> random 08:35 < bridge> Well all code is under zlib and zlib is perpetual. So while he can relicense his parts, he can't revoke our use of it under the original zlib conditions he first licensed it as. Atleast that's how I interpret it. I am not a lawyer 08:36 < bridge> I wonder so aswell but as far as I know no one really interacted with him after he left, so idk what might have went wrong there 08:42 < bridge> Community has always been the same, it is what it is. It's a niche old game with a community that puts heavy emphasis on nostalgia. 08:42 < bridge> 08:42 < bridge> On the developer side, the "useless things" are mostly maintainance, which is indeed not very visible to the users. But that's all any of us seems to have time for. Nothing much can be done about that, you can't tell someone what they should do with the free time they have, you can only gently nudge them. 08:43 < bridge> Heavy emphasis on backlash for new features xd 08:44 < bridge> even when i added telegun everyone was against it 08:44 < bridge> 2015-6 08:45 < bridge> but its also true u can't add new things willy nilly without thought 08:45 < bridge> because most devs are paaserbys and guess who end up maintaining those new features 08:45 < bridge> the same devs always are here 08:45 < bridge> the same devs that always are here 08:47 < bridge> There is also a lot of politics in adding new features, which I'm sure voxel realised on the very first pr they made. You need to please the right groups within the community to minimize outrage. 08:47 < bridge> 08:47 < bridge> Then there is internal developer politics. Every person with push access has different views on a lot of things. Which makes it hard to get (especially large features with many components like an account system) things through. No one is interested in writing thousands of lines of code just for it to be rejected or mostly having to be rewritten 08:49 < bridge> It's just a consequence of the way we went about structuring this project without any real hierarchy. Most other open source endeavors have a dictator that just pushes such things through 08:54 < bridge> Fwiw I wouldn't be completely opposed to just removing their contributions just to let them have a nice clean break as it seems the contributions are what brought them back. I was just stating the license technically allows us to keep it (as far as my interpretation of how licensing of source code works) 09:06 < bridge> i think its more a tantrum, something must be happening to him 09:06 < bridge> as far as i know no one is rly in contact with him here 09:06 < bridge> and im against removing the contributions if legally allowed to keep them 09:07 < bridge> which im sure we are 09:10 < bridge> Legal is one thing but the post really seemed like they were in some sort of distress. That's why I would consider it just to not add to their burden 09:10 < bridge> to me it seemed more like a kid throwing a tantrum but well i rly dont care much, do what you want xD 09:10 < bridge> also should think this might set a preceent for new contributions 09:10 < bridge> we should think about adding something to prevent this drama in the future 09:11 < bridge> also should think this might set a precedent for new contributions 09:11 < bridge> > I'm tired of having to be tied within development with this game 09:11 < bridge> its weird because 09:11 < bridge> i doubt ppl reach to him at all 09:11 < bridge> I don't think it's actually ambiguous but a CONTRIBUTING file that explicitly states that all contributed code is under perpetual zlib might be nice to just so future issues like this are very clear 09:11 < bridge> he seems to be coming back here on his own 09:12 < bridge> u can definitly also delete ur account 09:12 < bridge> he also has several ddnet-related forks and one source ddnet repo 09:13 < bridge> so he doesnt seem to be wanting to cut at all 09:13 < bridge> just being "annoying" 09:13 < bridge> I at the very least don't know of anyone that reached out to them about anything. Especially doubt anyone reached out about contributions since the rage cycle for those features ended a while ago 09:13 < bridge> yeah 09:13 < bridge> maybe he has an alt 09:13 < bridge> here 09:13 < bridge> and read something from someone 09:14 < bridge> i guess xd 09:14 < bridge> tbh this is just sad and the only thing i can think of is his life might be on some sort of bad phase 09:15 < bridge> stress at work or something 09:15 < bridge> depression 09:16 < bridge> If only you werent a rust and linux snob we wouldn't be in this situation 09:16 < bridge> xd 09:16 < bridge> i highly doubt its cuz me 09:16 < bridge> i know i can be annoying about it sometimes 09:17 < bridge> but if that affects you this much, idk.. maybe im not the problem 09:17 < bridge> Btw when voxel left you and melon were teasing me about rust, not them. We were all just joking around 09:17 < bridge> yeah 09:18 < bridge> thats why it was weird 09:18 < bridge> xD 09:18 < bridge> btw rust is adding C-string literals 09:18 < bridge> > 09:18 < bridge> > Reveal opaque types within the defining body for exhaustiveness checking. 09:18 < bridge> > Stabilize C-string literals. 09:19 < bridge> > Stabilize THIR unsafeck. 09:19 < bridge> > Add lint static_mut_refs to warn on references to mutable statics. 09:19 < bridge> > Support async recursive calls (as long as they have indirection). 09:19 < bridge> > Undeprecate lint unstable_features and make use of it in the compiler. 09:19 < bridge> > Make inductive cycles in coherence ambiguous always. 09:19 < bridge> > Get rid of type-driven traversal in const-eval interning, only as a future compatiblity lint for now. 09:19 < bridge> > Deny braced macro invocations in let-else. 09:19 < bridge> next update 09:19 < bridge> Aanyway, there isn't any use to speculating. They were clearly annoyed at something and it occupied their mind for 3 months after they left no-contact 09:19 < bridge> Finally some good features 09:19 < bridge> > §Stabilized APIs 09:19 < bridge> > 09:19 < bridge> > array::each_ref 09:19 < bridge> > array::each_mut 09:19 < bridge> > core::net 09:19 < bridge> > f32::round_ties_even 09:19 < bridge> > f64::round_ties_even 09:19 < bridge> > mem::offset_of! 09:19 < bridge> > slice::first_chunk 09:19 < bridge> > slice::first_chunk_mut 09:19 < bridge> > slice::split_first_chunk 09:19 < bridge> > slice::split_first_chunk_mut 09:19 < bridge> > slice::last_chunk 09:19 < bridge> > slice::last_chunk_mut 09:19 < bridge> > slice::split_last_chunk 09:19 < bridge> > slice::split_last_chunk_mut 09:19 < bridge> > slice::chunk_by 09:19 < bridge> > slice::chunk_by_mut 09:19 < bridge> > Bound::map 09:19 < bridge> > File::create_new 09:19 < bridge> > Mutex::clear_poison 09:20 < bridge> > RwLock::clear_poison 09:20 < bridge> core::net 09:20 < bridge> this means ip on bare metal 09:20 < bridge> https://doc.rust-lang.org/stable/core/net/index.html 09:20 < bridge> (core can be used without std) 09:20 < bridge> Is drain_filter stable yet? 09:20 < bridge> :justatest: 09:20 < bridge> Allah willing one day they will stabilize it 09:21 < bridge> i cant find it in std 09:22 < bridge> weird 09:22 < bridge> it should be there right? even as experimental 09:22 < bridge> https://doc.rust-lang.org/std/vec/struct.Drain.html 09:22 < bridge> vec drain method returns this iterator 09:22 < bridge> It may have gotten removed and/or renamed 09:22 < bridge> which has a filter method 09:22 < bridge> it all seems stable 09:23 < bridge> so u would do 09:23 < bridge> It's called `drain_keep_rest` now it seems 09:23 < bridge> x.drain().filter(|a| a.x) 09:23 < bridge> ah 09:23 < bridge> nightly 09:24 < bridge> @learath2 no 09:24 < bridge> its this 09:24 < bridge> https://github.com/rust-lang/rust/issues/43244 09:24 < bridge> extract_if 09:24 < bridge> Ah no, it's callee 3xtract_if 09:24 < bridge> there was some progress 09:25 < bridge> After 7 years, it got renamed, many progress 😄 09:25 < bridge> :owo: 09:26 < bridge> @learath2 is 18.1 out? 09:26 < bridge> ddnet web is not updated 09:26 < bridge> ah 09:26 < bridge> it was cache 09:27 < bridge> Cloudflare has been caching a little too aggressively lately 09:27 < bridge> @heinrich5991 is it maybe something you did? 09:27 < bridge> drama alert? 09:28 < bridge> discord highlight notification is at it again 09:28 < bridge> ? 09:28 < bridge> u were not highlighted i think xd 09:28 < bridge> ``` 09:28 < bridge> /var/tmp/portage/games-action/ddnet-18.1/work/ddnet-18.1/src/engine/external/json-parser/json.c: In function ‘new_value’: 09:28 < bridge> /var/tmp/portage/games-action/ddnet-18.1/work/ddnet-18.1/src/engine/external/json-parser/json.c:140:45: error: dereferencing type-punned pointer will break strict-aliasing rules [-Werror=strict-aliasing] 09:28 < bridge> 140 | value->_reserved.object_mem = (*(char **) &value->u.object.values) + values_size; 09:28 < bridge> | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 09:28 < bridge> /var/tmp/portage/games-action/ddnet-18.1/work/ddnet-18.1/src/engine/external/json-parser/json.c: In function ‘json_parse_ex’: 09:28 < bridge> /var/tmp/portage/games-action/ddnet-18.1/work/ddnet-18.1/src/engine/external/json-parser/json.c:402:27: error: dereferencing type-punned pointer will break strict-aliasing rules [-Werror=strict-aliasing] 09:28 < bridge> 402 | (*(json_char **) &top->u.object.values) += string_length + 1; 09:28 < bridge> | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 09:28 < bridge> cc1: some warnings being treated as errors 09:29 < bridge> [24/304] /usr/lib/ccache/bin/x86_64-pc-linux-gnu-g++ -DCONF_INFORM_UPDATE -DCONF_OPENSSL -DCONF_VIDEORECORDER -DGAME_RELEASE_VERSION=\"18.1\" -DGLEW_STATIC -I/var/tmp/portage/games-action/ddnet-18.1/work/ddnet-18.1_build/src -I/var/tmp/portage/games-action/ddnet-18.1/work/ddnet-18.1/src -I/var/tmp/portage/games-action/ddnet-18.1/work/ddnet-18.1/src/rust-bridge -O2 -pipe -march=native -mtune=native -flto=8 -Werror=odr -Werror=lto-type-mismatch -Wer 09:29 < bridge> ninja: build stopped: subcommand failed. 09:29 < bridge> * ERROR: games-action/ddnet-18.1::guru failed (compile phase): 09:29 < bridge> * ninja -v -j16 -l0 failed 09:29 < bridge> * 09:29 < bridge> * Call stack: 09:29 < bridge> * ebuild.sh, line 136: Called src_compile 09:29 < bridge> * environment, line 3365: Called cmake_src_compile 09:29 < bridge> * environment, line 1655: Called cmake_build 09:29 < bridge> * environment, line 1622: Called eninja 09:29 < bridge> * environment, line 2093: Called die 09:29 < bridge> * The specific snippet of code: 09:29 < bridge> * "$@" || die -n "${*} failed" 09:29 < bridge> * 09:29 < bridge> * If you need support, post the output of `emerge --info '=games-action/ddnet-18.1::guru'`, 09:29 < bridge> * the complete build log and the output of `emerge -pqv '=games-action/ddnet-18.1::guru'`. 09:29 < bridge> * The complete build log is located at '/var/tmp/portage/games-action/ddnet-18.1/temp/build.log'. 09:29 < bridge> * The ebuild environment file is located at '/var/tmp/portage/games-action/ddnet-18.1/temp/environment'. 09:29 < bridge> * Working directory: '/var/tmp/portage/games-action/ddnet-18.1/work/ddnet-18.1_build' 09:29 < bridge> * S: '/var/tmp/portage/games-action/ddnet-18.1/work/ddnet-18.1' 09:29 < bridge> ``` 09:29 < bridge> @learath2 lol i fail to compile 18.1 on my ebuild 09:29 < bridge> https://cdn.discordapp.com/attachments/293493549758939136/1219563237750865950/IMG_20240319_162841.jpg?ex=660bc1c6&is=65f94cc6&hm=13f370b91a0fda06b4bc427bbe7019c43a9c4865e8a125e5e4b8ab4f9457dc2f& 09:29 < bridge> I wonder why it was fine before 09:30 < bridge> Hm, I never get these. I guess it uses some activity metric 09:30 < bridge> I think you exaggerated a little here, there's different pov's and you clearly didn't get his. But I do understand Voxel, community sucks, and what he said about the dev's attitude is also not entirely wrong. Now don't get ME wrong, but it is what it is 09:30 < bridge> weird 09:32 < bridge> well i have a modern system 09:32 < bridge> i updated gcc 09:32 < bridge> and clang 09:32 < bridge> i think its using gcc 09:32 < bridge> gcc version 13.2.1 20240210 (Gentoo 13.2.1_p20240210 p14) 09:32 < bridge> Can you compile outside the ebuild? 09:32 < bridge> ok 09:32 < bridge> Just curious if it happens outside portage context 09:33 < bridge> ``` 09:33 < bridge> CMake Warning (dev) at cmake/FindMySQL.cmake:7 (exec_program): 09:33 < bridge> Policy CMP0153 is not set: The exec_program command should not be called. 09:33 < bridge> Run "cmake --help-policy CMP0153" for policy details. Use the cmake_policy 09:33 < bridge> command to set the policy and suppress this warning. 09:33 < bridge> 09:33 < bridge> Use execute_process() instead. 09:33 < bridge> Call Stack (most recent call first): 09:33 < bridge> CMakeLists.txt:511 (find_package) 09:33 < bridge> This warning is for project developers. Use -Wno-dev to suppress it. 09:33 < bridge> 09:33 < bridge> CMake Warning (dev) at cmake/FindMySQL.cmake:16 (exec_program): 09:33 < bridge> Policy CMP0153 is not set: The exec_program command should not be called. 09:33 < bridge> Run "cmake --help-policy CMP0153" for policy details. Use the cmake_policy 09:33 < bridge> command to set the policy and suppress this warning. 09:33 < bridge> 09:33 < bridge> Use execute_process() instead. 09:33 < bridge> Call Stack (most recent call first): 09:33 < bridge> CMakeLists.txt:511 (find_package) 09:33 < bridge> This warning is for project developers. Use -Wno-dev to suppress it. 09:33 < bridge> ``` 09:33 < bridge> unrelated but i also get this 09:34 < bridge> I guess we can move to `execute_process` if our minimum cmake version is a 3.xx nowadays 09:35 < bridge> doesnt seem to happen 09:35 < bridge> on my normal build 09:35 < bridge> wait 09:35 < bridge> /usr/lib/ccache/bin/x86_64-pc-linux-gnu-gcc -O2 -pipe -march=native -mtune=native -flto=8 -Werror=odr -Werror=lto-type-mismatch -Werror=strict-aliasing -fdiagnostics-color=always -fno-exceptions -Wno-implicit-function-declaration -MD -MT CMakeFiles/json.dir/src/engine/external/json-parser/json.c.o -MF CMakeFiles/json.dir/src/engine/external/json-parser/json.c.o.d -o CMakeFiles/json.dir/src/engine/external/json-parser/json.c.o -c /var/tmp/portage 09:36 < bridge> maybe its cuz cc cache? 09:36 < bridge> ima clean 09:36 < bridge> Yeah good idea 09:36 < bridge> Also maybe dont use ccache at all? 09:36 < bridge> Oh but ebuild was using it too 09:37 < bridge> <.< 09:37 < bridge> idk if my normal build used ccache 09:37 < bridge> it uses /usr/lib/ccache/bin/c++ 09:37 < bridge> so it should 09:38 < bridge> ``` 09:38 < bridge> ddnet on  master [$⇡] via △ v3.28.3 via 🦀 v1.76.0 09:38 < bridge> ❯ /usr/lib/ccache/bin/x86_64-pc-linux-gnu-gcc --version 09:38 < bridge> x86_64-pc-linux-gnu-gcc (Gentoo 13.2.1_p20240210 p14) 13.2.1 20240210 09:38 < bridge> Copyright (C) 2023 Free Software Foundation, Inc. 09:38 < bridge> This is free software; see the source for copying conditions. There is NO 09:38 < bridge> warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 09:38 < bridge> 09:38 < bridge> 09:38 < bridge> ddnet on  master [$⇡] via △ v3.28.3 via 🦀 v1.76.0 09:38 < bridge> ❯ /usr/lib/ccache/bin/c++ --version 09:38 < bridge> c++ (Gentoo 13.2.1_p20240210 p14) 13.2.1 20240210 09:38 < bridge> Copyright (C) 2023 Free Software Foundation, Inc. 09:38 < bridge> This is free software; see the source for copying conditions. There is NO 09:38 < bridge> warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 09:38 < bridge> ``` 09:38 < bridge> So it doesn't happen building free standing? 09:38 < bridge> ``` 09:38 < bridge> local mycmakeargs=( 09:38 < bridge> -DANTIBOT=$(usex antibot ON OFF) 09:38 < bridge> -DAUTOUPDATE=$(usex autoupdate ON OFF) 09:38 < bridge> -DCLIENT=$(usex client ON OFF) 09:38 < bridge> -DDOWNLOAD_GTEST=$(usex download-gtest ON OFF) 09:38 < bridge> -DHEADLESS_CLIENT=$(usex headless-client ON OFF) 09:38 < bridge> -DINFORM_UPDATE=$(usex inform-update ON OFF) 09:38 < bridge> -DSERVER=$(usex server ON OFF) 09:38 < bridge> -DTOOLS=$(usex tools ON OFF) 09:38 < bridge> -DUPNP=$(usex upnp ON OFF) 09:38 < bridge> -DVIDEORECORDER=$(usex videorecorder ON OFF) 09:39 < bridge> -DVULKAN=$(usex vulkan ON OFF) 09:39 < bridge> -DWEBSOCKETS=$(usex websockets ON OFF) 09:39 < bridge> -DSECURITY_COMPILER_FLAGS=OFF # Set by gentoo toolchain, see https://bugs.gentoo.org/888875 09:39 < bridge> ) 09:39 < bridge> ``` 09:39 < bridge> not to me 09:39 < bridge> ``` 09:39 < bridge> #!/bin/bash 09:39 < bridge> 09:39 < bridge> rm -rf build/* 09:39 < bridge> 09:39 < bridge> cmake -S . -B build/ \ 09:39 < bridge> -DCMAKE_BUILD_TYPE=Debug \ 09:39 < bridge> -GNinja \ 09:39 < bridge> -DVULKAN=ON \ 09:39 < bridge> -DDEV=ON \ 09:39 < bridge> -DMYSQL=ON \ 09:39 < bridge> -DCMAKE_EXPORT_COMPILE_COMMANDS=ON 09:39 < bridge> #-DDEV=ON \ 09:39 < bridge> 09:39 < bridge> ln -f -s build/compile_commands.json compile_commands.json 09:39 < bridge> ``` 09:39 < bridge> this is my build free standing 09:39 < bridge> ah 09:39 < bridge> maybe gentoo sets 09:39 < bridge> this warning! 09:39 < bridge> which should tell us its a bug (?) 09:39 < bridge> Could be, gentoo does add stuff 09:40 < bridge> It's inside an external library though. It'd be very annoying to fix 09:41 < bridge> I'm guessing it's not a union based variant, type punning like that I think is fine for the compiler 09:41 < bridge> No it does look like a union. Well idk I'll have to look at it later. I'm starving 09:42 < bridge> same 09:42 < bridge> time to get protein 09:42 < bridge> :justatest: :poggers2: 09:42 < bridge> I'll do carbs 10:33 < bridge> :justatest: :kek: :owo: 10:34 < bridge> I Use Rust Windows and Rust btw :feelsbadman:, i muss my nixOS 10:34 < bridge> I Use Rust Windows and Rust btw :feelsbadman:, i miss my nixOS 10:34 < bridge> I Use Windows and Rust btw :feelsbadman:, i miss my nixOS 10:34 < bridge> Windows detected, opinion discarded 10:34 < bridge> :pepeW: 10:35 < bridge> i always thought its [] detected, opinion rejected 10:35 < bridge> `windows detected, opinion rejected` 10:35 < bridge> I have no idea what the original is 10:35 < bridge> :angy: get your mei mei's right! 10:56 < bridge> @learath2 om 10:56 < bridge> omg 10:56 < bridge> i know why! 10:56 < bridge> i wanted to enable lto 10:56 < bridge> on gentoo 10:56 < bridge> and it recommended adding strict-aliasing warning 10:56 < bridge> to find possible lto incompatibilities 10:56 < bridge> -flto=8 -Werror=odr -Werror=lto-type-mismatch -Werror=strict-aliasing 10:57 < bridge> Btw strict aliasing is an issue for lto 10:57 < bridge> We should get a fixed version of the lib or patch it ourselves properly 10:57 < bridge> i mean thats why the flag is added right 10:58 < bridge> lto is broken on ddnet probs 10:58 < bridge> There is no guarantee it breaks 10:58 < bridge> but there is no guarantee its ok 10:58 < bridge> xd 10:58 < bridge> Exactly 11:16 < bridge> ryo what is the best way to communicate with a FIFO named pipe in rust? do i use ` tokio::net::windows::named_pipe` 11:16 < bridge> or do i use the winapi `interprocess::os::windows::named_pipe` 11:17 < bridge> ryo what is the best way to communicate with a FIFO named pipe in rust? do i use ` tokio::net::windows::named_pipe` 11:17 < bridge> or do i use the winapi `interprocess::os::windows::named_pipe` 11:17 < bridge> there is also `interprocess::os::windows::named_pipe::tokio` 11:36 < bridge> uhh idk i dont rly know much about windows 11:36 < bridge> but i would bet the tokio one is well maintained 11:37 < bridge> but if u dont use tokio use the other 11:44 < bridge> this kinda reminds me the godot is a scam bandwagon 11:47 < bridge> idk if something can be done about this: i just downloaded 18.1 and when i run it windows defender goes crazy and quarantines DDNet.exe as Trojan:Win32/Wacatac.B!ml but when i check it before running no detection and virustotal has 0 detections on that file as well. 11:47 < bridge> Only weird thing is that steam 18.1 has a different hash and can be run without windows defender freaking out, is the steam release build differently? 11:48 < bridge> Steam has no autoupdater. Which is what usually triggers defender 11:50 < bridge> it is possible for some virus to modify executables to turn them into trojans tho but i guess the virus would've been caught first in that case 11:52 < bridge> I guess you can check hash to make sure. Do we even put hashes on the website? 11:52 < bridge> ive been thinking about making a PICO-8 type of game "console"/"engine" thing but its just wasm reading / writing a specified memory layout. 11:53 < bridge> yes 11:54 < bridge> i couldnt find any hash info on the download page 11:55 < bridge> there is link to this file: https://ddnet.org/downloads/sha256sums.txt 11:55 < bridge> oh cool 11:56 < bridge> oh found it. im just bind 11:56 < bridge> oh found it. im just blind 13:10 < ws-client> its not even a false positive is it? auto updaters are viruses. Especially automatic updates are basically remote code execution coming from a server that could be compromised. 13:16 < bridge> omg thanks 13:17 < bridge> :owo: 13:32 < bridge> Windows defender triggers on practically anything 13:32 < bridge> It feels random 13:33 < bridge> You don't need to be making an auto updater to trigger defender, I assume valve signs/handles your code in some way beyond that so windows defender doesn't mess with it 13:33 < bridge> I think it's a protection racket scheme to sell signing certificates 13:33 < bridge> People call me a conspiracy theorist for saying but I seriously don't see another reason 13:52 < bridge> I like that conspiracy theory 13:54 < bridge> They might have a back channel that they submit binaries to get them whitelisted (doubtful). But I think we verified that they don't touch our binaries 13:56 < ChillerDragon> @0xdeen could i get you on irc once again this time itll be quick i promise 13:56 < bridge> <0xdeen> antivirus software for unknown malware is snake oil anyway 13:57 < bridge> <0xdeen> Absolutely 13:57 < ChillerDragon> marry me 13:58 < bridge> <0xdeen> If you can figure out that a software is malware, you can probably solve the halting problem too 13:59 < bridge> If windows defender was for "defending" it wouldn't be giving me fearmongering messages like this 13:59 < bridge> https://cdn.discordapp.com/attachments/293493549758939136/1219631376005988452/unknown-20.png?ex=660c013b&is=65f98c3b&hm=cfd914c4c67fb0409ad55acac888f79edd1c51fc570c20617105e6f197d469fe& 14:00 < bridge> It's great as a developer when your users get told you're a "remote attacker" making a "ulthar.a!ml trojan" to "execute commands" 14:00 < bridge> Whatever a ulthar.a!ml is 14:02 < bridge> The whole way it operates is completely opaque, sometimes it deletes the executables as soon as you download them 14:02 < bridge> Everything with it is a "dark pattern" 14:02 < bridge> I would 14:05 < bridge> Not to mention the resources it consumes, or more accurately **steals** 14:05 < bridge> This was my recent experience building GCC 14:05 < bridge> And yes, this is *after* I added those directories to the "exclusion" list 14:05 < bridge> https://cdn.discordapp.com/attachments/293493549758939136/1219632730871038044/IMG20240317192842.jpg?ex=660c027e&is=65f98d7e&hm=717671df21f9f5bcb76747f9fc30d087c294ffb402951a962bb3c022316564bc& 14:06 < bridge> Hot 14:13 < bridge> You might be able to heuristically through behavioral analysis. I can't think of any other way 14:14 < ws-client> the word heuristics got replaced by the buzz word LLM cool kids ask chatgpt these days if software is a virus or not 14:15 < bridge> Let's make LLMs illegal 14:15 < ws-client> There is an LLM for that 14:15 < ws-client> is the new there is an app for that 14:16 < ws-client> no but seriously such pattern recognition sounds like an AI task or do you think it could be fooled to easy? It should at least reduce false positives in my head. 14:16 < ws-client> too* 14:17 < bridge> We have colleagues asking chatgpt about what tech stack competing product uses 14:17 < bridge> and posted it on company group chat 14:17 < ws-client> xd 14:17 < bridge> and no one questioned about any of the hallucinations. 14:18 < bridge> It is well suited for machine learning indeed. But classical handwritten heuristics aren't bad either 14:18 < ws-client> not sure if hallucinations are worse than the current windows defender randomness 14:18 < ws-client> old school lerato 14:19 < bridge> Like if the program is scanning the entire filetree that's sus 14:19 < ws-client> did you know you can install windows defender on mac and linux? 14:19 < bridge> I still enjoy github copilot tho 14:19 < bridge> what about 14:19 < bridge> https://cdn.discordapp.com/attachments/293493549758939136/1219636371438829598/image.png?ex=660c05e2&is=65f990e2&hm=93ab6083c9ad6bf279d240c69239a76db257f34249a1d0482ff29f4f4345b1ef& 14:19 < bridge> Ew 14:20 < ws-client> lerato when build simple heuristics based light weight libre self hosted alternative to copilot? 14:20 < bridge> this stupid thing auto installs on targeted machine that has Microsoft Edge installed (which is basically all windows) 14:20 < bridge> I genuinely believe it'll make every programmer worse overtime, until no one remembers how to code anything without it 14:21 < bridge> I feel like I already don't anyway? 14:22 < bridge> Heuristics isn't a word that applies to this problem. The more classical solution to copilot has been snippets and code generators 14:22 < bridge> Lies, you are great 14:23 < bridge> I mean I probably would need to look up something that I would need copilot for anyway 14:23 < bridge> otherwise it is just a sentence finishing machine 14:23 < bridge> Look it up, write it yourself 14:24 < bridge> 14:24 < bridge> stackoverflow disagrees 14:24 < bridge> The more you write it by hand the better you get 14:24 < bridge> probably 14:24 < bridge> i use copilot literally just for autocompleting boilerplate 14:24 < bridge> but its not worth its 10$ a month lmao 14:24 < bridge> What do they say? They are all careerists. I'd guess they say use copilot make money make greybeards mad 14:25 < bridge> they didn't say anything. they are just copying codes. 14:25 < ws-client> @learath2 check this copilot usage out https://www.youtube.com/watch?v=x7v6SNIgJpE&t=1456s 14:26 < ws-client> if you use it for the stuff that you would google/copy anyways it does not make you a worse dev just faster 14:26 < bridge> well google takes practices to 14:26 < bridge> too* 14:27 < bridge> I still get mad at our intern for not being able to search things 14:27 < bridge> Effective research is an extremely important skill 14:28 < bridge> And I genuinely don't think LLMs are a good tool for this except for the moooost basic things 14:28 < bridge> and we are using them for the moooost basic things i'm pretty sure 14:28 < bridge> It tried to gaslight me into thinking MOSFETs have an extra leakage current that doesn't exist 14:29 < bridge> that seems like a you problem 14:30 < bridge> oof, that seems rude, I retract that. sorry. 14:30 < ws-client> xd 14:30 < bridge> It's also wrong, no? You don't know what you don't know 14:31 < bridge> ye. but I don't think it is gaslighting you because you already know it's gonna be wrong? 14:31 < bridge> If your tool for research is chatgpt and it lies to you, there is no recourse unless you have proper research skills 14:31 < ws-client> good thing that when i look up something in the internet i can not be gaslighted because everything is accurate in the internet 14:31 < bridge> I was lucky enough to know that it's explanation for this extra leakage current sounded extremely off 14:31 < bridge> I don't think I've ever fully trusted a auto completion until I read everything. 14:31 < ws-client> lmao i never got trolled by autocompletion so far 14:32 < ws-client> you have? 14:32 < ws-client> ah wait i have 14:32 < ws-client> nvm 14:32 < bridge> I'm extremely critical of everything an AI produces. So I'm fairly safe in that regard. But as soon as you start trusting it implicitly there is no way to recover 14:33 < bridge> still. seems like a personal problem 14:33 < ws-client> gotten ``.insertAdjacentElement()`` completed when i wanted ``.insertAdjacentHTML()`` and went with it because tldr 14:33 < bridge> It's a problem that will become more and more common as more and more people rely on chatgpt and copilot for things 14:33 < bridge> dumb people make dumb choice. and I choose to let them be dumb lmao 14:34 < bridge> i have been trolled by auto completion many times 14:34 < bridge> but its still more consistent than some LSP's 14:34 < bridge> (imo) (imo) (imo) (imo) (imo) 14:34 < ws-client> @learath2 i have the same mindset but i am trying not to be conservative here. So my biggest concern is it being corporate controlled right now. I do not want to depend on a membership to write code. 14:36 < bridge> I was thinking about buying a graphics card just for personal LLMs 14:36 < bridge> My long term tinfoil theory about this is that they will raise a generation of people incapable of doing anything without these LLMs, then they will start charging for their use heavily 14:36 < bridge> but my wallet strongly disagrees 14:36 < ws-client> tinfoil tuesday huh? 14:36 < bridge> Create a disease, sell a cure. It's a story as old as commerce itself 14:36 < bridge> is it tuesday 14:36 < bridge> :D - i agree with Lea to the point where its bad espacially for new people 14:36 < bridge> oh it is 14:36 < bridge> Create problem, sell solution 14:36 < bridge> :D - i agree with Lea to the point where its bad espacially for new people getting into coding, it does everything for you (to an extend) 14:36 < ws-client> @TsFreddie i totally didnt have to open calendar for that 14:37 < bridge> me neither 14:37 < ws-client> lea 14:37 < ws-client> xd 14:37 < bridge> :D - i agree with Lea to the point where its bad espacially for new people getting into coding, it does everything for you (to an extend), it auto formats, it gives you horrible but working code - its everything people starting to code need 14:37 < ws-client> imagine calling lerato lea 14:37 < bridge> oh wait i fucked up ping 14:37 < bridge> ah gg 14:37 < bridge> :D - i agree with @learath2 to the point where its bad espacially for new people getting into coding, it does everything for you (to an extend), it auto formats, it gives you horrible but working code - its everything people starting to code need 14:37 < bridge> there we go 14:37 < bridge> :justatest: 14:37 < ws-client> irc never forgets 14:37 < bridge> what did he do 14:37 < bridge> neither does my custom chat log script for discord 14:37 < bridge> hehehe 14:38 < ws-client> @learath2 what do you mean by long term? isnt that already happening? 14:38 < ws-client> @meloƞ ban 14:38 < bridge> :justatest: 14:38 < bridge> discord is listening 14:39 < ws-client> if discords listens that you listen on discord it gets mad 14:39 < bridge> This is just the start. The current generation only use it as a crutch still. It'll get worse. The upcoming generation will not know anything about programming, they will just be prompting an LLM. Nvidia is especially invested into making that a reality 14:39 < bridge> i don't think university would stop existing 14:40 < ws-client> so you are saying the devs of tomorrow will be prompting like the product managers of today? 14:40 < bridge> they will just learn how to use LLM's effectivly :D 14:40 < bridge> University is already awful at teaching programming, it'll just shift into even more theory to keep existing 14:40 < ws-client> dear chatgpt please build be a web scale database and a microservices front end and make the code as good as if it was written by someone with 10 years of jquery expirience 14:41 < bridge> Exactly. They will be product managers with a bit more knowledge of theoretical computer science so they can tweak prompts 14:42 < ws-client> @learath2 but isnt that a core skill of the human race? Abstraction and trust? We can build something more complex if we blindly trust and use existing solutions 14:42 < bridge> our PM is actually pretty cool to explain things to 14:42 < bridge> nah you'd just say "hey chatgpt use "refrence 1-20 from my senior dev" to write a functional program that does X and Y" 14:42 < bridge> oh wait we don't have a PM 14:42 < ws-client> xd 14:42 < bridge> nvm then 14:42 < bridge> with gemini allowing (10?) million tokens, i can see it spitting out fully working programs at one point 14:43 < bridge> ok I have no idea how to fix this fucking shadowmask 14:43 < bridge> https://cdn.discordapp.com/attachments/293493549758939136/1219642325056225320/image.png?ex=660c0b6e&is=65f9966e&hm=50264dc6c1f5d4a120d618f444a10dafb1ad9da2a8f28e4df590730d66bd1f40& 14:43 < bridge> Now is that bad? Idk, at the very least current LLMs produce inelegant and often wrong code leading to many bugs. IMHO it is bad but who cares what I think as long as shareholder profits go up and users get the same product at a similar price 14:43 < bridge> https://cdn.discordapp.com/attachments/293493549758939136/1219642484020477982/image.png?ex=660c0b94&is=65f99694&hm=bafb323d726d24a48d565c36be84c6eb7539756c3a0dc2d7479692575fb3e73e& 14:43 < bridge> I hate unity 14:44 < bridge> although we are not using unity to bake lightings. but still 14:44 < ws-client> I think as long as LLMs are bad there wont be the roles you are describing of 100% prompt engineering devs. 14:44 < ws-client> As soon as LLMs are good we don't need devs anymore indeed and those roles do make sense then. 14:44 < bridge> ``` 14:44 < bridge> 1.: Adjust Shadow Mask Settings: If the shadow mask is not correctly applying to the shadow, you might need to adjust its settings. This could involve changing the mask's opacity, feathering, or the mask's shape to better fit the shadow's area. 14:44 < bridge> 2.: Use a Different Masking Technique: If the shadow mask is not working as expected, consider using a different masking technique. For example, if you're using a layer mask, try using a clipping mask instead, or vice versa. 14:44 < bridge> 3.: Reapply the Shadow Effect: Sometimes, simply reapplying the shadow effect to the object can resolve issues with the shadow mask. Make sure to apply the shadow effect after the shadow mask has been correctly set up. 14:44 < bridge> ``` 14:45 < bridge> trust chatgpt! 14:45 < bridge> bruh 14:45 < bridge> :DDD 14:45 < bridge> tldr? 14:45 < bridge> For real tho. I tried everything I know 14:45 < bridge> it only happens on this model too 14:45 < ws-client> @ryozuki windows defender flags ddnet auto update. llms are the solution to windows defender. 14:45 < bridge> I'm starting to think the artist fucked it up somehow 14:45 < bridge> It depends on how you define bad. I think it's bad because it generates buggy inelegant code. Do you think the shareholders think inelegant code is bad? Do you think they care buggy code that needs a restart every other day is an issue? 14:46 < bridge> I waited an hour to bake this fucking mess 14:46 < bridge> bruh 14:46 < bridge> i'm going home 14:46 < bridge> what is this my dude 14:46 < bridge> https://cdn.discordapp.com/attachments/293493549758939136/1219643244996984912/image.png?ex=660c0c49&is=65f99749&hm=ca2be098bd32fcb83c29ca14433953a45db2990ac1573a654ca132bb0dd561e4& 14:47 < bridge> I'm unsure what the issue is, where am I supposed to be looking? 14:47 < bridge> shadow 14:47 < bridge> the baked shadow is missing chunks on some quads 14:47 < bridge> Is it supposed to be sharper or something? 14:47 < ws-client> dont be rude lerato 14:47 < bridge> it is also misaligned 14:47 < bridge> I genuinely did not really understand what was wrong 😛 14:48 < bridge> Maybe not enough rays being cast? 14:48 < ws-client> xd 14:48 < bridge> shadowmask only does one ray for occlusion 14:49 < bridge> I thought it was a resolution issue but turning that up didn't help 14:51 < bridge> I don't think I'm actually asking for any help. I'm just frastrated to waste literal hours to this 14:51 < bridge> I had a thought but it escaped. Sorry, too sleep deprived 14:52 < bridge> is performance key? you could just pump up the entire shadowmask 14:52 < bridge> and see if that helps 14:52 < bridge> it is but I might try 14:52 < bridge> if it works I can downsample it anyway 14:53 < bridge> but it is 10pm 14:53 < bridge> i'm probably not gonna wait another hour to bake this 14:54 < bridge> still, only this model have the problem 14:54 < bridge> every else seems to be fine 14:56 < bridge> actually I could try soft shadows. so it actually uses more samples 14:57 < bridge> I'll let it bake and go home. i'm not the one paying electricity bill anyway. 14:58 < bridge> :kek: 15:00 < bridge> i wish they had more budget for more GPUs tho 15:01 < bridge> we are literally developing VR titles on GTX 1650s 15:02 < bridge> rip :D 15:03 < bridge> did Learath went to sleep 15:04 < bridge> fell asleep on the chair 15:04 < bridge> i feel like ive never chatted with him when he was completely sober 15:05 < bridge> maybe its a timezone thing 15:20 < bridge> aahhh, i hate when i dont have time to do anything at home 15:48 < bridge> got home 17:13 < bridge> <0xdeen> https://hookrace.net/blog/port-scan-with-spoofed-ip-addresses/ 17:22 < bridge> Discord game activity. 17:22 < bridge> When you leave a server it still shows the map you were playing in the discord game activity. I suggest two ways: 17:22 < bridge> 1) Stop showing game activity 17:22 < bridge> 2) Add game activity for just playing ddnet(when you run the game it also doesnt show anything in discord). 17:22 < bridge> https://cdn.discordapp.com/attachments/293493549758939136/1219682403073916958/image.png?ex=660c30c1&is=65f9bbc1&hm=3c1f06ad7128e928b85a099e85cc5e4dad04e872865188d4f278127b4e56e167& 17:48 < bridge> <0xdeen> Good luck finding anything nim-lang related in the future now that Nvidia calls their new software Nim too: https://nvidianews.nvidia.com/news/generative-ai-microservices-for-developers 😄 17:52 < bridge> context? 17:55 < bridge> NIM Inference Microservices Speed Deployments From Weeks to Minutes 17:56 < bridge> Thats basically the context for deens Message 17:56 < bridge> ```c++ 17:56 < bridge> //Thread 1 17:56 < bridge> x.store(1, seq_cst); 17:56 < bridge> y.store(1, release); 17:56 < bridge> //Thread 2 17:56 < bridge> r1 = y.fetch_add(1, seq_cst); 17:56 < bridge> r2 = y.load(relaxed); 17:56 < bridge> //Thread 3 17:56 < bridge> y.store(3, seq_cst); 17:57 < bridge> r3 = x.load(seq_cst); 17:57 < bridge> ``` 17:57 < bridge> Have any of you seen this absurd interaction before? This is allowed to produce `r1 == 1 && r2 == 3 && r3 == 0` 17:57 < bridge> These Services will be available through kubernetes 17:57 < bridge> Cool 17:57 < bridge> What Kind of memory mess is this :justatest: - and this is actually valid ? 17:57 < bridge> Completely legal 17:58 < bridge> What da hell 17:58 < bridge> Even the absurd result that I highlighted is allowed to be produced 17:58 < bridge> Mixing memory orders creates some very weird results 17:59 < bridge> <0xdeen> The post tells the story, except I'm the victim, not the attacker 17:59 < bridge> https://www.nvidia.com/en-us/ai/ 17:59 < bridge> 18:00 < bridge> For anyone who wants to Tinker with it 18:00 < bridge> I wonder how there are any hosts left who are configured badly enough to allow packet spoofing 18:00 < bridge> <0xdeen> Intentionally, they sell it as a feature 18:00 < bridge> You mean origin spoofing? You'd be surprised 18:00 < bridge> I meant origin, yes 18:01 < bridge> This will never be fixed until there is some repercussions for it 18:01 < bridge> s\/is/are/ 18:03 < bridge> <0xdeen> http://www.bcp38.info/index.php/Main_Page should be enforced 18:08 < bridge> <0xdeen> Apparently we accidentally used hosters which allow IP spoofing before, ouch 😄 https://archive.ph/jjqgT 18:24 < bridge> That issue has been there for decades and sadly some providers doesn't care 18:26 < bridge> + I don't think bcp38 would solve that 18:26 < bridge> As bcp38 is mostly applied at the very edge of the provider's network 18:28 < bridge> It'd be a huge step since it'd only be possible to spoof within an AS 18:29 < bridge> nice post 18:29 < bridge> Yeah for in-general spoofing 18:29 < bridge> But for what deen is describing it's harder 18:32 < bridge> Well it makes the attack more annoying to set up. Now you need to find an abuse mail happy target within the AS of your dubious server or find a dubious server in an AS with the target 18:32 < bridge> But ofc it's not enough to completely solve it 18:33 < bridge> For that you need to have filtering at every ingress point to the network by every ISP 18:35 < bridge> That's a lot of investment you can't really convince a private entity to make without some threat 18:37 < bridge> For every megabit of spoofed traffic you let into your network, the state nationalizes 0.1% of your company through eminent domain 🤔 18:38 < bridge> Can be converted to a cash penalty at 10 times the market value of the company 18:49 < bridge> <_noby> hopefully people won't read this as a tutorial 18:52 < bridge> <0xdeen> They are already doing that, I'm just making it public so actors like hosters and the university can be aware of it. I don't like explaining the same thing to them every time, so can just link the blog post instead in the future 18:52 < bridge> <_noby> fair enough. maybe this is making it too easy for people though? 18:53 < bridge> <0xdeen> Well, that was one of the first results when I googled for "dedicated server with ip spoofing" 18:54 < bridge> <_noby> dang 19:01 < bridge> @_noby when show me how to get Non-DDR moderator? 19:02 < bridge> <_noby> 1. be moderator 2. dont play (or moderate) DDR 19:02 < bridge> i do both! 19:02 < bridge> <_noby> wait for role to appear 19:02 < bridge> the last time i begged for dev role i got it within like 2 seconds 19:02 < bridge> hmmm 19:02 < bridge> :pepeW: 19:02 < bridge> thats what happened to my server 19:03 < bridge> good to know what actually happened, i thought it was a virus or something. was about to reinstall all 19:03 < bridge> good to know what actually happened, i thought it was a virus or something. was about to reinstall everything 19:03 < bridge> `In the next post we will continue in this vein and show you the equally satisfying techniques to steal candy from a baby.` 19:05 < bridge> <0xdeen> It happened to everyone hosting servers in Teeworlds 19:05 < bridge> <0xdeen> Some hosters just ignored the abuse emails 19:06 < bridge> Yeah, seems to have been happening since roughly a week 19:06 < bridge> I was in contact with my hoster & had it blocked and unblocked 3x during that time 19:06 < bridge> I was in contact with my hoster & had it blocked and unblocked 2x during that time 19:09 < bridge> @_noby hehehe i got the role lmao 19:09 < bridge> <_noby> :feelsamazingman: 19:09 < bridge> where do i get admin role :justatest: 19:09 < bridge> <_noby> nice color name 19:09 < bridge> oh wow! 19:09 < bridge> i'm also a non ddrace moderator!!! 19:09 < bridge> Ikr 19:09 < bridge> can i get one too? 19:09 < bridge> please! 19:09 < bridge> Oh god what have i done 19:09 < bridge> im mod on awb discord server! 19:10 < bridge> Guys this is getting non Developer ! :justatest: :justatest: :justatest: 19:10 < bridge> i moderate 127.0.0.1 non ddr servers 😏 19:10 < bridge> :pepeW: 19:11 < bridge> <_noby> almost matches ~~our~~ my tee color 19:11 < bridge> https://tenor.com/view/meme-our-now-gif-21036569 19:11 < bridge> its mine, you stole it from me 19:11 < bridge> we started at around the same time, idc XD 19:11 < bridge> <_noby> lol 20:15 < bridge> 10x dev xD 21:12 < bridge> oh no - mah color :( 23:18 < bridge> https://cdn.discordapp.com/attachments/293493549758939136/1219771943700533308/image.png?ex=660c8425&is=65fa0f25&hm=46bdb000a0f7c8a9bf5818d964e2964cfa9ea66dee96d2be2d874ff1d265d83a& 23:18 < bridge> lmfao 23:18 < bridge> why is it there... i did not type in ddnet