01:21 < bridge> @0xdeen: the debug render option in the release log belongs to assa not me .\_. 01:21 < bridge> And automatic quad clipping is also assa instead of ryo I assume 01:23 < bridge> Ah you already fixed it on GitHub. I still see it on \#announcements tho 01:25 < bridge> I suppose using a pr like process for the changelog is overkill but maybe let one of the currently active mergers double check it 01:25 < bridge> what, you mean he wrote Ryo instead of Assa??? 01:25 < bridge> what 01:26 < bridge> Oh, he fixed it from Github 01:27 < bridge> in his defense, there are a bunch of engine changes in this patch 01:27 < bridge> I guess in his defense the merge commits are confusing and also trolled Heinrich 01:28 < bridge> But anyone looking actively at the prs knows that it’s assa coding quads and ryo doing the merged 01:28 < bridge> But anyone looking actively at the prs knows that it’s assa coding quads and ryo doing the merges 01:28 < bridge> ryo stealing all the credit, smh 01:28 < bridge> :kek: 01:29 < bridge> I wonder how manual the process is. I have the changelog generation basically automatic in ddnet-insta 01:29 < bridge> It filters the merge commits and finds the correct author 01:31 < bridge> But is it reliable? 01:31 < bridge> No 01:31 < bridge> ofc lmao 01:31 < bridge> Xd zhn had to set some weird git name and it pinged the wrong person lmao 01:31 < bridge> ig It's better that Deen does it manually 01:32 < bridge> But at least it’s a name zhn chose instead of a different maintainer 01:32 < bridge> wait, who xd 01:32 < bridge> gerdoe-jr had as commit author something like vlad 01:32 < bridge> So the changelog said @vlad 01:33 < bridge> Which happens to be a GitHub account owned by someone else 01:33 < bridge> oh shit, git oopsie 01:49 < bridge> ChillerDragon: yo 01:49 < bridge> how does your irc bridge work? 01:49 < bridge> I'm curious 02:55 < bridge> @ryozuki can code on your OS segfault? 03:15 < bridge> Chillerdragón::YY: :OO: 03:27 < bridge> chillerdragön 04:15 < bridge> @chillerdragon new bug with ddnet-insta -- you can shoot yourself with laser lol 04:34 < bridge> @chillerdragon new bug with ddnet-insta v2 -- you can shoot yourself with laser lol 04:34 < bridge> Another bug is when you suicide with nade, you respawn instantly 05:02 < bridge> And the `sv_welcome` thing was problem in 2.0, but not in 1.7 it seems 06:20 < bridge> it's heinrich's bridge 06:20 < bridge> but he just has a websocket that sends messages through irc 06:27 < bridge> ohh 06:34 < bridge> do you mean the kernel code or user run programs? for user run programs, yeah and you need to handle that ,with the page fault interrupt, there u can for example terminate the process and cleanup it. 06:34 < bridge> if u mean at kernel level, yeah and for lot of reasons, because interactiong with lot of stuff x86_64 has requires asm or registers that if u set a value wrong can segfault 06:34 < bridge> those interactions still happen inside unsafe code 06:35 < bridge> do you mean the kernel code or user run programs? for user run programs, yeah and you need to handle that ,with the page fault interrupt, there u can for example terminate the process and clean it up. 06:35 < bridge> if u mean at kernel level, yeah and for lot of reasons, because interactiong with lot of stuff x86_64 has requires asm or registers that if u set a value wrong can segfault 06:43 < bridge> webhook 06:52 < bridge> i meant chiller 06:53 < bridge> o 08:17 < bridge> gumo 08:25 < bridge> @pathos3005: did you read the docs about the reset.cfg it explains how to disable that 08:26 < bridge> @pathos3005: the welcome message is not in the code. It has to be your config 08:26 < bridge> @pathos3005: the suicide sounds bad I will investigate thanks for reporting. You can also open issues on GitHub so we don’t have to spam this channel 09:40 < ws-client> **** @pathos3005 I can not reproduce the missing delay. https://github.com/ddnet-insta/ddnet-insta/issues/422#issuecomment-3252332442 09:40 < ws-client> **** What did you set this config to? ``sv_self_kill_respawn_delay_ms`` which gamemode did you use? 10:08 < bridge> ``` 10:08 < bridge> 0.025111] Syscall: sys_write(fd=1, buf=0x402000, count=23) 10:08 < bridge> [0.025378] Hello from user space! 10:08 < bridge> 10:08 < bridge> [0.025580] called exit with 42 10:08 < bridge> ``` 10:08 < bridge> im back with user space programs 10:08 < bridge> this time with a super clean way 10:11 < bridge> (elf loaded) 10:14 < bridge> awesome 10:15 < bridge> no custom executable format :feelsbadman: 11:38 < bridge> i had a weird showthought, the cpu is like the engine and the LAPIC is the gearbox 11:38 < bridge> elf is p good imhi 11:39 < bridge> elf is p good imho 11:39 < bridge> supporting elf means compilers like gcc and rust work 11:40 < bridge> Not like you couldn't add that part to the backend 11:41 < bridge> the hard part of generating efficient machine code is already done for you... though I'm sure there's a lot of work done to maintain alignments and such in the actual file 11:47 < bridge> !remind 5760 test if long map setup times cause client getting stuck in loading screen waiting for server response 11:47 < chillerbot12> Helo Assa I will remind you at Mon Sep 08 2025 11:47:25 GMT+0200 (Central European Summer Time) about your matter again. 12:03 < bridge> There's already an open issue about this, but it hasn't consistently been reproduced yet 12:30 < bridge> i believe this is the cause behind the stuck valgrind Pipeline back in another PR 12:32 < bridge> Doesn't look like the timed-out message is about the client joining though 12:33 < bridge> Or is the connecting itself not checked so this is the next test that fails? 12:34 < bridge> the check that failed was on server side waiting for the client joined message 12:35 < bridge> I also had this once in a build client, but it was not reproducable 12:36 < ws-client> **** @kebscs do we have a plan for #10712 ? 12:36 < chillerbot12> https://github.com/ddnet/ddnet/issues/10712 12:39 < bridge> Idk how to fix 12:39 < bridge> Maybe the test is written poorly 12:40 < ws-client> **** sadge 12:40 < bridge> @chillerdragon "Klammer" in german can mean bracket, parenthesis, clip, clamp, paperclip, clothespin ... 12:40 < ws-client> **** germans are nuts 12:41 < ws-client> **** runde klammern, eckige klammern, gezwörbelte klammern 12:41 < bridge> I think we are animals, not nuts 12:41 < ws-client> **** rawrrr 12:41 < ws-client> **** du bist mir so ein klammer affe 12:42 * bridge steals your PR 12:43 < bridge> Do we care about changelog accuracy btw? 12:44 < bridge> you are missing "geschweifte Klammern" e.g. {} 12:47 < ws-client> **** @Assa i do 12:47 < ws-client> **** proper credit is the only payment volunteer contributors get 12:47 < ws-client> **** especially the user facing stuff should be correct 12:48 < ws-client> **** @Assa i tried to be funny by calling it "gezwörbelte" 12:48 < bridge> Looks like a teehistorian bump happened in the meanwhile. It probably just needs a rebase 12:48 < ws-client> **** replyer discord andy 12:49 < bridge> yeah the debug render frature is attributed to you, so you are now responsible for that 12:50 < bridge> yeah the debug render feature is attributed to you, so you are now responsible for that 12:50 < ws-client> **** i am the responsible merger yes. All bugs are on me. 12:50 < ws-client> **** But the feature credit should fully go to you 12:51 < bridge> The GitHub pr one can be work in progress. Nobody sees stuff on discord. But the changelog is also posted in \#announcements and the website and even visible to all players in the client news. There the credit should be correct. 12:52 < bridge> The GitHub pr one can be work in progress. Nobody sees stuff on GitHub. But the changelog is also posted in \#announcements and the website and even visible to all players in the client news. There the credit should be correct. 12:52 < bridge> I ask because I gave deen a list of corrections which got mostly ignored 12:52 < bridge> yes deen does that sometimes he gives a big disconnected vibe 12:53 < bridge> I don’t think that he doesn’t care it’s just that it got lost. He is 10x engineer with busy life who runs entire ddnet with a time budget of 20 seconds per day 12:54 < bridge> Maybe one day he can let someone else in to help him with the holy task of compiling a changelog 12:54 < bridge> yeah I know, and I am not angry or anything 12:55 < bridge> Yea you are famous anyways 12:55 < bridge> I just wanted to support him in that 12:55 < bridge> But imagine a first time contributor waiting to be plugged in the client to see someone else’s name in the end 12:55 < bridge> famous for what? Afaic maybe in zCatch 12:55 < bridge> Your name is all over the changelog 12:56 < bridge> <01000111g> for King's Leap aswell 12:56 < bridge> You are top ddnet contributor 12:56 < bridge> true ❤️ 12:56 < bridge> am I? Didn't do that much yet 12:57 < bridge> did you see the mapsize thing from patiga for this map? xD 12:58 < bridge> Yes you are 12:58 < bridge> I wonder how quad arts can be smaller than embedded png files 12:59 < bridge> <01000111g> no, was it an extreme reduction? 12:59 < bridge> @kebscs: can you try rebasing? I doubt that the teehistorian bump causes compile errors on outdated branches. But I blindly trust lerato. 12:59 < bridge> no I mean this @01000111g 12:59 < bridge> https://cdn.discordapp.com/attachments/293493549758939136/1413116373604765788/FileSizeStats.png?ex=68bac2ad&is=68b9712d&hm=f3d1ed3154683935edf14b2e95fdaee5fc3ae94bddb63d431f500ea6e40c0cef& 13:00 < bridge> Patiga is heaven sent. 13:00 < bridge> Patiga the goat 13:00 < bridge> map is > 50% just sound 13:02 < bridge> like the bell sound is a 1 second opus file, uses as much space as a mapres 13:05 < bridge> !remind fix callback hell by moving findnext to outer scope 13:05 < chillerbot12> Helo chillerdragon I will remind you at Fri Sep 05 2025 13:05:37 GMT+0200 (Central European Summer Time) about your matter again. 13:08 < bridge> Oh actually the people bumping teehistorian, are you guys fixing the tests? 13:08 < bridge> Yes 13:09 < bridge> It’s in the pipeline. Without adapting the test no CI 13:09 < bridge> Hm, I wonder why that pr you mentioned in the morning isn't passing CI then 13:09 < bridge> And we merge only green CI this is a stable project! 13:10 < bridge> Yes that’s what we all wonder 13:10 < bridge> It’s fancy c++ code idk I’m not a developer 13:10 < bridge> But shouldn’t be teehistorian version related 13:10 < bridge> iirc creating the elf file is the linker job, im writing a OS not a linker 13:11 < bridge> maybe some day ill make an entire custom toolchain but first i need a proper os 13:18 < bridge> Just rebase it first, if it still doesn't pass I'll look at it 13:19 < bridge> > Maybe one day he can let someone else in to help him with the holy task of compiling a changelog 13:19 < bridge> 13:19 < bridge> * removed virus by @chillerdragon 13:20 < bridge> as if there is no changelog by git diff creator 13:20 < bridge> it has a manual pass, and whoever is doing that pass can do whaetevr 13:21 < bridge> im sure me and chiller and atter can atest to change log being a right pain 13:21 < bridge> im sure me and chiller and tater can atest to change log being a right pain 13:21 < bridge> oh btw theres this new feature i just forgo 13:21 < bridge> oops thats not meant to be there 13:21 < bridge> whats important enuf!??!?! 13:22 < bridge> @sollybunny: \* removed herobrine 13:22 < bridge> https://www.conventionalcommits.org/en/v1.0.0/ 13:22 < bridge> 13:22 < bridge> @chillerdragon if we enforce this commit style its easy to do a changelog automatically 13:22 < bridge> * hide easteregg 13:22 < bridge> @ryozuki: I do that in ddnet-insta actually 13:22 < bridge> yes yes 13:23 < bridge> With conventional commits and bash script 13:23 < bridge> I proposed this before, I don't remember why but @0xdeen wasn't all that positive about it 13:23 < bridge> actually u can enforce it on github pr titles only, not commits 13:23 < bridge> and it works 13:23 < bridge> But I still manually filter out the boring commits 13:23 < bridge> iuts not gonna be easy with that tree jesus 13:23 < bridge> https://cdn.discordapp.com/attachments/293493549758939136/1413122296415129801/git-flow--welcome.png?ex=68bac832&is=68b976b2&hm=01d6d12a95dfcad1b019b62beb13b1a3457f15b4cb4c5687db315fad984c0def& 13:23 < bridge> we can also make PRs start with emojis as I had to do at my old work place 13:24 < bridge> one of the most famous rust tools https://github.com/orhun/git-cliff 13:24 < bridge> 🔥 idea 13:24 < bridge> we should do like kernel, patches by mail to filter out nobo devs 13:24 < bridge> /s 13:24 < bridge> :cammostripes: I was joking 13:25 < bridge> xd 13:25 < bridge> 🚀 optimize quad rendering 📈 13:25 < bridge> He did do that xd 13:25 < bridge> 😂 bcachefs 13:25 < bridge> Check prs 13:25 < bridge> Assa the emoji dev 13:26 < bridge> 🥸 fixed a startline skip bug 13:26 < bridge> ⚡ this PR actually contains an emoji 13:26 < bridge> 💩add backdoor for sp someone 13:27 < bridge> https://cdn.discordapp.com/attachments/252358080522747904/1267876556261560454/EB37683D3A4CDA1932DD5DD1561EC9AF.gif 13:28 < bridge> 🧹 💩 Cleanup: ... 13:28 < bridge> today i asked ai how to enable other cores than bootstrap, it said this 13:28 < bridge> 13:28 < bridge> Wake up APs using INIT-SIMP-SIMP sequence via LAPIC 13:28 < bridge> 13:28 < bridge> i didnt know x86-64 loves simps 13:32 < bridge> I don't think it solves the problem of having to go through the list of PRs, filtering, summarizing and sorting them by importance for the changelog. We could just use GitHub for releases and have it list all merged PRs for a lazy changelog that's less helpful for players, if we wanted to avoid the effort. And deen would still have to summarize the changes again for the in-game news anyhow. 13:34 < bridge> I agree, but he probably hopefully doesn't do this fully manually, does he? 13:38 < bridge> How else would he do it? There's no way to automatically determine the importance of changes. 13:38 < bridge> It might make it easier if he gets a list of all prs first though. I think currently he just stares at all the commits 13:41 < bridge> Yeah, I guess he looks at the commits which causes the author confusion because of merge commits 13:42 < bridge> I'd also like to rewrite the in-game news to be more flexible, but then it would have to automatically transform them into the old format for backwards compatibility 13:43 < bridge> When are we sneaking in chromium? 13:44 < bridge> :monkaS: 13:46 < bridge> I'd add the formatting as json objects, allow the news to scroll, and add an identifier so typos in the news can be updated without making the News button green for players 13:46 < bridge> didnt work 13:47 < bridge> Did you run the tests locally btw? Is it just a CI issue? 13:48 < bridge> I think it tried it locally and couldn't reproduce it 13:48 < bridge> I think I tried it locally and couldn't reproduce it 13:48 < bridge> I wonder if strlen becoming constexpr actually somehow modifies teehistorian files, do we have length prefixed stuff in there? Maybe some UB? 13:51 < bridge> :poggers2: 13:51 < bridge> my friend UB 13:51 < bridge> its married to C++ so we cant miss it 13:56 < bridge> doesnt fail for me 13:57 < bridge> but msvc doesnt fail on ci either 14:02 < bridge> Ok, let me find a cafe where I'm allowed to laptop, then I'll check 14:09 < bridge> roby is on mingw 14:24 < bridge> Hello, I've encountered an error during importing the record_maps.sql into the database: 14:24 < bridge> ERROR 1180 (HY000) at line 40: Got error 1 "Operation not permitted" during COMMIT 14:24 < bridge> the line 40 is INSERT INTO "record_maps" VALUES and the map info below 14:24 < bridge> 10.11.13-MariaDB-0ubuntu0.24.04.1 Ubuntu 24.04 14:24 < bridge> I've tried to execute it with sudo, but the question seems not on it 14:27 < bridge> Does your db user have write access? 14:30 < bridge> I've succeeded importing the record_mapinfo.sql before 14:31 < bridge> mysql -uroot teeworlds < ddnet-sql/record_maps.sql 14:31 < bridge> (under root bash) 14:33 < bridge> Can reproduce with MSYS2 in release mode 14:39 < bridge> Oh, it's not a test failure, the testrunner flat out fails to link 14:39 < bridge> Oh, it's not a test failure, the testrunner flat out fails to compile 14:40 < bridge> https://nnethercote.github.io/2025/09/04/faster-rust-builds-on-mac.html 14:41 < bridge> @0xdeen for u 14:42 < bridge> Commenting out `WriteBuffer(vBuffer, aTimeBuf, str_length(aTimeBuf));` fixes it for some reason 14:43 < bridge> This buffer is not constant, but apparently the compiler thinks it is 14:43 < bridge> Huh, compiler is rarely wrong about things being constant, it's usually on the conservative side with those 14:44 < bridge> As in it'd usually rather assume it's not constant then be wrong 14:44 < bridge> maybe u casted a non const to const:? 14:44 < bridge> (im ootl) 14:46 < bridge> Ah, managed to reproduce it here too 14:48 < bridge> <0xdeen> Thanks, but I mostly build on a Hetzner server 😄 14:55 < bridge> Hm, I wonder if we are hitting an stl defect here 14:59 < bridge> Or a gcc defect maybe 14:59 < bridge> https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105746 it was broken some time ago for some cases 15:01 < bridge> Replacing the `str_length` with `__gnu_cxx::char_traits::length` in this line also fixes it apparently 15:03 < bridge> Hm, theirs is static constexpr too, I wonder why that doesn't optimize the same way triggering Warray-bounds 15:04 < bridge> btw I think the issue is the line below the one you are messing with, it has compile time constant str_length 15:05 < bridge> yeah, that's what the compiler output indicates as well, but changing that lines seems to change the optimization behavior 15:06 < bridge> does clang has the issue 15:06 < bridge> No 15:06 < bridge> clang ftw 15:07 < bridge> I think it's just a gcc defect given other people reported issues with vector too, perhaps everything we append before that is constant length, that makes gcc make assumptions about the size of the buffer 15:07 < bridge> Inlining the size 295 instead of `str_length(PREFIX2)` gives the same issue 15:08 < bridge> Seems unrelated to the `str_length` change itself 15:08 < bridge> That's what is already happening, I think it might work if that value is not constant 15:09 < bridge> Yep 15:10 < bridge> Make `PREFIX2` volatile and it doesn't happen 15:10 < bridge> `vBuffer.resize(OldSize + DataSize + 1);` also fixes it :nouis: 15:11 < bridge> Anyway, it's related to the str_length change, it allows the optimizer to take a more optimal path which triggers the bounds issue 15:11 < bridge> (doesn't for me) 15:12 < bridge> > gcc version 15.2.0 (Rev8, Built by MSYS2 project) 15:12 < bridge> > gcc (Gentoo 14.3.0 p8) 14.3.0 15:14 < bridge> ➜ ~ gcc --version 15:14 < bridge> gcc (Debian 14.2.0-19) 14.2.0 15:14 < bridge> my debian is close to ur gentoo lol 15:15 < bridge> sys-devel/gcc rolls especially slowly on stable gentoo, it can break a lot of things to update your system compiler 15:16 < bridge> yesterday i asked ai how can a data transfer differentiate a bit stream full of 0s from no data, i learn about 8b/10b encoding and derivatives 15:16 < bridge> rly interesting 15:17 < bridge> you could have asked this to me instead, that's why I exist 15:17 < bridge> i was at bed about to sleep and had the sudden urge to know this 15:17 < bridge> i didnt know if u would answer before i slept 15:17 < bridge> xd 15:17 < bridge> ``` 15:17 < bridge> The core issue: 15:17 < bridge> If you send a long string of 0s (or 1s), the receiver can lose synchronization because there are no voltage transitions to extract timing from. 15:18 < bridge> How PCIe solves it: 15:18 < bridge> 8b/10b encoding (PCIe 1.x/2.x): 15:18 < bridge> 15:18 < bridge> Every 8 data bits gets encoded as 10 bits 15:18 < bridge> The encoding guarantees at most 5 consecutive identical bits 15:18 < bridge> Maintains DC balance (roughly equal 0s and 1s over time) 15:18 < bridge> Example: 8 bits of all zeros 00000000 becomes something like 1001010001 15:18 < bridge> ``` 15:18 < bridge> this is a part of the answer 15:18 < bridge> then asked about usb 15:18 < bridge> USB uses similar concepts but different specific encoding schemes depending on the version: 15:18 < bridge> USB 1.x/2.0 (Low/Full/High Speed): 15:18 < bridge> 15:18 < bridge> Uses NRZI encoding (Non-Return-to-Zero Inverted) 15:25 < bridge> https://rustcurious.com/elements/ 15:29 < bridge> Hm, I couldn't reproduce it in a small program :/ 15:29 < bridge> tbh not surprised with how finnicky it is, it's probably an extremely specific line of optimization that's bricking it 15:55 < bridge> @robyt3 so I think this is a gcc defect anyway, what would you like to do about it? I worry the defect might be the optimizer rather than the warning, as in the optimized code now truly invokes UB 15:58 < bridge> Would it help the GCC maintainers if we'd find a minimal example? Or how do we motivate them to fix it? 16:00 < bridge> I.e. an example without unions or move constructor overloading like in the bug report 16:01 < bridge> If we find a minimal repro we can report it on the gcc mailing list. I highly doubt they would bother if we report it with our huge codebase, they probably can't be assed 16:02 < bridge> I tried to extract everything relevant, but couldn't get it to issue the same warning, and idk how to inspect the generated IL to investigate further 16:07 < bridge> Could tools like creduce help to automatically reduce the program? 16:07 < bridge> Never heard of this, so idk 16:07 < bridge> https://github.com/csmith-project/creduce 16:10 < bridge> I didn't even think something like this could exist, sounds very useful if it can be used for this 16:18 < bridge> USB will add some 1s or some 0s in a constant data transfer 16:20 < bridge> iirc, inserted every 6 same bits 16:20 < bridge> yep 16:20 < bridge> well depends on version iirc 16:20 < bridge> im currently struggling on making animated tikz-timing table for I2C, then i'll do SPI and then USB 16:21 < bridge> USB 1.x/2.0 (Low/Full/High Speed): 16:21 < bridge> Uses NRZI encoding (Non-Return-to-Zero Inverted) 16:21 < bridge> A '0' bit causes a voltage transition, a '1' bit maintains current voltage 16:21 < bridge> Bit stuffing: After 6 consecutive '1' bits, automatically insert a '0' bit 16:21 < bridge> This guarantees transitions at least every 7 bit periods 16:21 < bridge> Start-of-packet and end-of-packet use special signal states (SE0, etc.) 16:21 < bridge> 16:21 < bridge> USB 3.x (SuperSpeed): 16:21 < bridge> Uses 8b/10b encoding just like early PCIe 16:21 < bridge> Same DC balance and transition guarantees 16:21 < bridge> Differential signaling pairs like PCIe 16:21 < bridge> 16:21 < bridge> (the message) 16:22 < bridge> i just want itt o be next monday 16:22 < bridge> i got vacations 16:22 < bridge> holidays 16:22 < bridge> idk the word 16:22 < bridge> im gonna enjoy my european rights 16:33 < bridge> @blazulite https://sollycluncdev.sollybunny.xyz/twinbop.html 16:36 < bridge> Viruz 16:44 < ChillerDragon> souly there is quoting issue in tclient 16:44 < ChillerDragon> if first player in tab complete has a space it quotes the name 16:44 < bridge> ? 16:45 < ws-client> **** https://zillyhuhn.com/cs/.d8082225-9934-4d80-915a-6af76ff0015c.png 16:45 < bridge> epic fail 16:45 < ws-client> **** fr 16:46 < bridge> @chillerdragon doenst happen for me 16:46 < ws-client> **** wat u do? 16:47 < ws-client> **** come solofng 16:47 < bridge> https://cdn.discordapp.com/attachments/293493549758939136/1413173529926701066/image.png?ex=68baf7e9&is=68b9a669&hm=7ccf8d0aecbddf454981d5ecf73b3648811e75987e09c8b726fa42c035cb7a7d& 16:47 < bridge> tab 16:47 < bridge> just tab 16:47 < bridge> also does it for me 16:47 < ws-client> **** https://zillyhuhn.com/cs/.f44fc19f-e064-4cf1-a6c5-26b4eaf7553f.png 16:47 < bridge> wtf 16:48 < ws-client> **** thats chillerbot-zx tho xd 16:48 < ws-client> **** switching screen while typing bugged the renderer xd 16:51 < ws-client> **** also the console selecting is offset 16:51 < ws-client> **** also i need two attempts to move the client to another screen 16:51 < ws-client> **** the first time it bounces off xd 16:52 < ws-client> **** using super+arrow keys 16:52 < ws-client> **** in ``gfx_fullscreen 3`` 16:52 < ws-client> **** i hate all these bugs that might also be gnome or xorg related there are so many of them 16:55 < bridge> @chillerdragon change to sdl2 instead of sdl2-compat 16:55 < bridge> if thats a thing 16:59 < ws-client> **** also sdl2-compat is the future 16:59 < ws-client> **** when finish sdl3 pr souly 17:00 < bridge> @chiller Take a string range as input and write start and end as output. Returns true if it is a valid range and false otherwise. 17:00 < bridge> i dont get it 17:01 < bridge> sdl2-compat is easily the stupidest engineering decision I have ever heard in my life. Especially when sdl2 is still getting patches 17:01 < ws-client> **** @kebscs hm 17:01 < bridge> Arch's decision to make it provide sdl2 by default is even stupider 17:01 < ws-client> **** @kebscs it parses a string range to two integers 17:02 < ws-client> **** if you dont like the design dont do it i guess 17:02 < ws-client> **** i thought it would be cool 17:02 < bridge> so string "abcd" would return a and d? 17:02 < ws-client> **** return false 17:03 < bridge> i dont get it 17:03 < ws-client> **** maybe u get rossbits comment? 17:04 < ws-client> **** the method takes as input a string such as ``"2-6"`` and then returns the two integers `2` and `6` 17:04 < ws-client> **** but you can only return one value so the actual return value is a bool for success 17:04 < ws-client> **** and the parameters are pointers where the values will be written to 17:04 < ws-client> **** thats a bit wonkey C returning 17:04 < bridge> complicated for 0 17:04 < ws-client> **** you can also go full bloated c++ approach using rossbit approach 17:05 < ws-client> **** yea if u think its complicated dont do it 17:05 < bridge> whats rossbit 17:05 < ws-client> **** Or more modern: return an std::optional>. 17:05 < bridge> ok i refreshed and see 17:05 < bridge> What are you guys implementing? 17:05 < bridge> rossbit is probably a human. 17:05 < ws-client> **** A* 17:05 < ws-client> **** https://github.com/ddnet/ddnet/pull/10819 17:06 < ws-client> **** i feel like parsing ranges could be something reusable in a method 17:06 < bridge> idk `aReason[0] >= '0' && aReason[0] <= '5'` is easy to understand for me 17:06 < ws-client> **** makes also reading the vote code easier 17:06 < ws-client> **** yea idc much 17:06 < ws-client> **** if u dont like it dont do it 17:07 < bridge> Ah, we have system.cpp now. You can definitely go for the std optional std pair 17:07 < ws-client> **** ew lerato c++ enjoyer 17:07 < ws-client> **** what happend to the C senpai enjoyer of goto 17:08 < ws-client> **** lerato got infected by std 17:08 < bridge> Actually that's not great api, you want to return the rest of the string after parsing out a range, so it's usable for other stuff too 17:08 < bridge> I still enjoy goto, even in my C++. I'm a huge advocate of responsible goto usage. Modern control flow primitives made us all lazy 17:08 < ws-client> **** i mean the range is also limited to 1-5 so yea idk 17:09 < ws-client> **** reuseable might be trash anyways 17:09 < ws-client> **** but testable and moving the code away from the votes 17:09 < bridge> i wouldnt care if it worked 17:10 < bridge> robo would kill me tho 17:10 < bridge> Replacing a library that is still getting patches 17:10 < bridge> With an emulation of it is insane 17:10 < bridge> eah 17:10 < bridge> but i wouldnt care if it worked 17:10 < bridge> which it doesnt 17:10 < ws-client> **** but u guys also blame all bugs on the compat layer 17:10 < ws-client> **** without any proof 17:10 < bridge> Yeah, I lost that battle in this project sadly. Goto makes such nice patterns, just to emulate a fraction of its power you need to invent exceptions 17:11 < bridge> without any proof 17:11 < bridge> my mouse keeps escaping the window in sdl2 compat but in sdl2 it doesnt 17:11 < bridge> There are at least 2 bugs that I know of caused by it. They were confirmed by people linking to actual sdl2 manually 17:11 < bridge> literally unplayable 17:11 < ws-client> **** .-. 17:11 < bridge> So it is worth checking 17:11 < bridge> yes 17:12 < bridge> I had to disconnect all my other monitors and set ddnet to full screen xd 17:13 < bridge> now I'm single monitor enjoyer with all my workspaces 17:13 < bridge> This is the demo for it since I can't paste demos on GitHub. To clarify, this was v2.0. We were in a CTF game and everybody experienced the same bug. 17:13 < bridge> https://cdn.discordapp.com/attachments/293493549758939136/1413180198421135481/suicide_respawn_bug.demo?ex=68bafe1e&is=68b9ac9e&hm=dfc4ab8df239564cff451236ccb6cb76c024d5093298c90ebcd916b01f313d7e& 17:14 < bridge> I saw that in the beginning, but when I set `sv_old_laser 1` and `tune laser_bounce_num 1`, it didn't do anything. Do I need to reload? 17:15 < ws-client> **** @pathos3005 wdym "happend"? 17:15 < ws-client> **** i see the demo it looks bad 17:15 < ws-client> **** but can you consistently reproduce? 17:15 < bridge> Yeah it was every single time 17:15 < ws-client> **** still? 17:15 < ws-client> **** why is it not for me? 17:15 < bridge> I don't host the v2.0 anymore, so I couldn't tell you, I host 1.7 now 17:16 < ws-client> **** could you please try to reproduce again 17:16 < ws-client> **** i dont know how else to fix it 17:16 < ws-client> **** for me it works perfectly 17:16 < bridge> Errr I don't think I will touch v2.0 again lol 17:17 < ws-client> **** @pathos3005 bru 17:17 < ws-client> **** then ill guess i close the issue as cant reproduce and stop investigating 17:17 < ws-client> **** @pathos3005 you cant put these in your normal config you know that right? 17:17 < bridge> Do I need to reload after `sv_old_laser 1` and `tune laser_bounce_num 1` ? 17:17 < ws-client> **** they have to be in the reset file 17:18 < bridge> Wait what, so I need to name the file literal `reset.cfg`??? 17:18 < ws-client> **** depening on your config how the file is called 17:18 < ws-client> **** read the docs ._. 17:18 < bridge> The demo is the reproduction of it, I don't have any other demo, sorry, but it was 100% consistent, every single time, I don't know 17:18 < ws-client> **** i would need to see it 17:18 < ws-client> **** go turn on v2 server now! 17:18 < bridge> The docs doesn't explain about the necessity of the name of the file 17:19 < ws-client> **** we fix this 17:19 < ws-client> **** IT DOES 17:19 < bridge> I deleted v2 and you see the demo lol 17:19 < ws-client> **** the demo does not help 17:19 < ws-client> **** if i do it in lan it works 17:19 < bridge> `sv_reset_file filename.cfg` or it *must* be `sv_reset_file reset.cfg`??? 17:19 < ws-client> **** https://zillyhuhn.com/cs/.f6f63f95-bc9e-4c55-b47f-014765d419a3.png 17:19 < ws-client> **** ITS BOLD 17:20 < ws-client> **** by default its reset.cfg 17:20 < ws-client> **** unless you touched `sv_reset_file` 17:21 < ws-client> **** @pathos3005 go turn on server again 17:21 < bridge> Yeah... exactly... 17:21 < bridge> I deleted v2 17:21 < ws-client> **** clone it again 17:21 < bridge> lol not now 17:21 < ws-client> **** !!! 17:21 < bridge> Busy at the moment, just taking a break right now 17:21 < ws-client> **** you cant edge me with unreproducible bug report and then leave 17:21 < ws-client> **** okok 17:21 < ws-client> **** i can wait 17:23 < ws-client> **** @robyt3 did you test this? https://github.com/ddnet/ddnet/pull/10826#discussion_r2322525397 17:24 < bridge> Yeah, command completions and help still display properly 17:24 < ws-client> **** why does gh still say queued after a force push? 17:24 < ws-client> **** or were you faster than me? 17:25 < ws-client> **** nah u were slower 17:25 < bridge> It only stops the queue for users without write access 17:25 < ws-client> **** interesting 17:25 < ws-client> **** seems like a flaw to me 17:25 < ws-client> **** or maybe feature idk 17:25 < bridge> Yeah, not sure if it automatically restarts the queue build 17:25 < bridge> `char *str_to_range(const char *pStr, std::optional> &Range);` 17:25 < ws-client> **** ima choke it to be sure 17:27 < ws-client> **** style in system.cpp is fucked somehow 17:27 < ws-client> **** should be `str` not `pStr` to be consistent 17:28 < bridge> Oh yeah, system.cpp we still pretend is in C 😄 17:28 < ws-client> **** sometimes 17:28 < bridge> Actually this needs to take `char *`. I hate this about C++ 17:29 < ws-client> **** wot why not const 17:29 < ws-client> **** a 17:29 < bridge> Cause you'd have to cast away the const when returning otherwise, which is not legal 17:29 < ws-client> **** if u want to return it 17:29 < ws-client> **** ye ye didnt see the return 17:29 < bridge> It's one thing I hate about C++ and C 17:30 < ws-client> **** you and your consuming consequental ranges parser 17:30 < ws-client> **** xd 17:30 < ws-client> **** watf is the use case xd 17:30 < ws-client> **** when do you have multiple ranges 17:30 < ws-client> **** @learath2 can rust do that? 17:30 < bridge> Idk, say we want to parse a list of ranges? 17:30 < ws-client> **** or any language? 17:30 < ws-client> **** @learath2 yea lets say that xd but bruv when 17:31 < bridge> WHY ARE THERE SO MANY PAGES DESCRIBING HOW TO GET SOMEWHERE INSTEAD OF JUST THAT PAGE 17:31 < bridge> IM TRYNA FIND MY STUDENT FEES THING WHICH IS A SPERATE THIG FROM EVERYTHING ELSE BECAUSE MIDDLE FINGER 17:31 < bridge> AND THERES LITERALLY 50 PAGES 17:32 < bridge> WHICH ARENT THE PAGE IM LOOKING FOR 17:32 < bridge> fun 17:32 < bridge> (literally very literally) 17:32 < bridge> That's just how you have parsing functions usually, idk why you hate it so much 17:32 < bridge> Look at `atoi` 17:32 < bridge> When the manual starts with *How to read this manual* 17:32 < bridge> i know the page im lookign for its literally, "this is waht u have to pay, and status" 17:33 < ws-client> **** @Solly (bun bun) im sure lerato knows ur fee. He is in university since 60 years 17:33 < bridge> why the fck are you sheldon now 17:33 < bridge> BAZINGA 17:33 < bridge> Now I use MariaDB 11.8.2 (Exactly the same version with the .sql header shows), but I got the same Error when importing 17:33 < ws-client> **** @learath2 yea no i get it i just feel like all the consuming stuff is already implemented but idk 17:34 < ws-client> **** we split args on spaces and then a correct range has to fully parse the entire string and not partially 17:35 < bridge> Can rust do that, hm, rust I think suffers from the same issue, take in non-mut slice, have to return non-mut slice, idk how you'd go back to mut from that without some hacky bs 17:35 < ws-client> **** i dont even feel like its that hacky in C 17:35 < bridge> Now you are either allocating stuff, or introducing temporary stateful nuls into the string 17:35 < ws-client> **** just cast everything to `void *` 17:35 < bridge> ``` 17:35 < bridge> We are writing to inform you that, after the UK Government’s decision to increase the annual tuition fees for undergraduate students your tuition fee will increase by £285 from £9,250 to £9,535 at Southampton Solent University for 2025/2026 returning students. 17:35 < bridge> ``` 17:36 < bridge> epic dox 17:36 < ws-client> **** u in uk? 17:36 < bridge> I sometimes forget there are lots of 2024 devs in here. Allocations are free 17:36 < bridge> ``` 17:36 < bridge> We are writing to inform you that, after the UK Government’s decision to increase the annual tuition fees for undergraduate students your tuition fee will increase by £285 from £9,250 to £9,535 at ...... University for 2025/2026 returning students. 17:36 < bridge> ``` 17:36 < bridge> Irc never forgets 17:36 < bridge> i know.. 17:36 < ws-client> **** never forgets 17:36 < bridge> i dont get an email about how to pay, just that i have to pay more 17:36 < ws-client> **** solly u brit? 17:37 < bridge> yes 17:37 < ws-client> **** no way 17:37 < bridge> i wish to leave 17:37 < ws-client> **** isnt ur english supposed to be native level then? xd 17:37 < bridge> @Robyt with old behavior this did linebreaks on width, is this atill the case? I already wondered if this should also have a clip option for example 17:37 < bridge> Innit? 17:37 < ws-client> **** xd 17:37 < bridge> @chillerdragon you just cant underastnd my splendid native tongue 17:38 < bridge> did the ping just nor work:( 17:38 < ws-client> **** souly u gonna hear so many brit jokes now 17:38 < bridge> It didnt 17:38 < bridge> @robyt3 17:38 < bridge> @Robyt with old behavior this did linebreaks on width, is this still the case? I already wondered if this should also have a clip option for example 17:39 < bridge> @Robyt with old behavior this did linebreaks on width, is this still the case? I already wondered if this should also have a clip option for the console for example 17:39 < bridge> I FOUND IT 17:39 < bridge> Mine is a very memorable figure, 12000€, except I don't have to pay because life is good like that :) 17:40 < bridge> You pay the fees to my IBAN. I'll send it to you 17:40 < bridge> `portal -> different portal -> search fee -> top result -> pay here -> pay here -> pay for upcoming tuition -> i have to re-enter all the information i put in the last time i did this -> i get to pay` 17:40 < bridge> how much 👻 17:40 < bridge> do something against your goverment survailence act 17:41 < bridge> i cant 17:41 < bridge> i wish to leave 17:41 < bridge> 9,535£ 17:41 < bridge> my government is retarded 17:41 < bridge> burn officials 17:41 < bridge> what is the pt 17:41 < bridge> what is the pt 17:41 < bridge> Should be unaffected, test while it's still in the queue. I'm not near my laptop right now. 17:41 < bridge> Announce your support for palestine action so you can go directly to jail 17:42 < bridge> i dont support anyone theyre all retarded stop fighting like children 17:42 < ws-client> **** @Solly (bun bun) where exactly do you live? xd 17:42 < bridge> england 17:42 < bridge> Send coordinates 17:42 < ws-client> **** which city 17:42 < bridge> 0,0 17:42 < bridge> england city 17:42 < ws-client> **** thats 17:42 < ws-client> **** not a thing right? 17:42 < bridge> no 17:42 < ws-client> **** i mean there is mexico city 17:42 < ws-client> **** so .. 17:42 < ws-client> **** u never know 17:42 < bridge> Send coordinates relative to null island 17:43 < bridge> atleast 3 17:43 < ws-client> **** is ur city confidental or wat? 17:43 < bridge> yeah 17:43 < ws-client> **** its a city nobody is gonna stream snipe u there 17:43 < bridge> but the pedofiles 17:43 < ws-client> **** right 17:43 < bridge> I will track you down for tuition fees owed 17:43 < bridge> https://cdn.discordapp.com/attachments/293493549758939136/1413187830766899293/image.png?ex=68bb053a&is=68b9b3ba&hm=7bc0ff4febaa9e3ff05d59edeab327795afe68d07d076c4df6c0de2f7e4e2d79& 17:43 < bridge> AAAAAAA 17:43 < bridge> I HATE THIS WEBSITE 17:44 < bridge> ITS WRONG AGAIN 17:44 < bridge> https://cdn.discordapp.com/attachments/293493549758939136/1413187906520223764/image.png?ex=68bb054c&is=68b9b3cc&hm=6dc6956dbef07075641c1a1926fc0375d0be266f6d8189935c9a3db8f1e1fc04& 17:44 < bridge> Sounds about right. It's probably 9.35k£ per semester, 2 semesters 17:45 < bridge> its the price of tyour iban per year 17:45 < bridge> Sounds about right. It's probably 9.535k£ per semester, 2 semesters 17:45 < bridge> Oh, you must've been mistaken, it wasn't increased *to* £9,535, it was increased *by* £9,535 17:45 < bridge> xd 17:45 < bridge> same thing happened last year 17:45 < bridge> it kept increasing by 50 pounds per day 17:45 < bridge> i wasnt told why 17:45 < bridge> Oh this isn't #off-topic lol 17:45 < bridge> same difference 17:46 < bridge> lucky europeans with low tuition :justatest: 17:46 < bridge> I pay 2.6k€ per year here 17:46 < bridge> Oh did you read my brag that I don't have to pay? :P 17:47 < bridge> https://cdn.discordapp.com/attachments/293493549758939136/1413188698333511762/image.png?ex=68bb0609&is=68b9b489&hm=07fe88bdd89410f4e87a6768c502a8868cdaa7f0da297acf96bfa32169b4ebe8& 17:47 < bridge> ur admin ername channel 17:47 < bridge> i want out 17:47 < ws-client> **** according to my quick grep the word off-topic has been mentioned 480 times in the #developer channel xd 17:48 < bridge> If only Brexit hadn't happened you could have pulled up to NL 17:48 < ws-client> **** 466 only #ddnet and the rest is in #teeworlds 17:48 < bridge> I KNOW 17:48 < bridge> I HATE MY GOVERNEMNT SO MCUH 17:49 < bridge> bazinga 17:49 < bridge> I want to do #Development, but there is a no laptop policy in this cafe/bar thing 17:49 < bridge> i was indifferent about a stupid decision but now that i have been informed about how they havent done anything meaningfull since i was born 17:49 < ws-client> **** lerato wants big D ? 17:49 < bridge> what about pcs? 17:49 < ws-client> **** or wat 17:49 < bridge> @learath2 you are coding ur ai girlfriend so its fine 17:49 < bridge> peices? 17:49 < ws-client> **** ah development 17:50 < bridge> I could pull out my desktop, it says nothing about that 17:50 < ws-client> **** i read #Developer 17:50 < bridge> personal computers 17:50 < ws-client> **** renaming the channel would be troll 17:50 < ws-client> **** can discord do capital letters? 17:50 < bridge> noice 17:50 < bridge> I would do it to mess around, but it might break the bridges and stuff 17:50 < ws-client> **** @learath2 why u spend time in laptopless bar? 17:50 < bridge> lerato fix this 17:50 < bridge> https://cdn.discordapp.com/attachments/293493549758939136/1413189545964343296/Screenshot_2025-09-04-18-50-32-58_572064f74bd5f9fa804b05334aa4f912.jpg?ex=68bb06d3&is=68b9b553&hm=b9b2c51f076ed26c91918906446eb83f3d30a78b6d68df6fd2a764d7173ecaa4& 17:50 < bridge> it bothers me 17:50 < bridge> It's beer o'clock 17:51 < ws-client> **** lez go 17:51 < bridge> Information 17:51 < bridge> guys come to Finland you can get free uni as long as you're from the EU, the EEA, have a permanent residence permit for Finland, or are proficient enough in Finnish to do your studies in the language 17:52 < ws-client> **** @learath2 i saw so many cool pubs in ams where ppl would chill w laptops and nobody would care 17:52 < bridge> voice and archive categories are also not capitalized :feelsbadman: 17:52 < bridge> I can't it doesn't let me 17:52 < bridge> wtf an admin doesn't have perms 17:52 < bridge> I can do a second masters in Finland in 2 years 17:52 < bridge> well, I deleted the UNIQUE KEY "Map" ("Map") in record_maps.sql(line 29), and the importing just go back to normal 17:52 < bridge> deen controls everything 17:52 < bridge> Nvm it was my internet connection, it worked now 17:53 < bridge> how 17:53 < bridge> i love u 17:53 < bridge> I hope murpi didn't have that hardcoded in the bot somewhere 17:53 < bridge> bad map name maybe? 17:53 < bridge> it's probably by ids 17:53 < bridge> u can't interact with discord apis with just names 17:54 < bridge> Should be, but if you are insane enough you could technically get a list of all channels and filter by name to get the id 😄 17:54 < bridge> I don't know, but I download the sql file from https://ddnet.org/stats/ddnet-sql.zip 17:54 < bridge> let's hope murpi is not insane 17:55 < bridge> And next, the record_race.sql have duplicated entry when importing, I guess I need to got some method to check a file around 10 GB ( DX 17:55 < bridge> ive heard the map discord bot is coded kinda insane 17:57 < bridge> I'm stuck around it for 3 days 17:57 < bridge> Nearly insane 17:58 < bridge> It is, it uses the topics in the channels as data, and the channels themselves as rows. It's abusing discord as a db 17:59 < bridge> It's quite weird that you are having trouble with it. It should be a direct export of what we have live 17:59 < bridge> i once made a website for a client which used payment service metadata as db 17:59 < bridge> am i insane too 17:59 < bridge> @ryozuki I think you regularly import the dump, do you have to change anything? 17:59 < bridge> https://cdn.discordapp.com/attachments/293493549758939136/1413191753090990203/image.png?ex=68bb08e1&is=68b9b761&hm=3d013abbc192ef461d4d9f643462abd279e7f3b487c5e1122fe6096298ba3cec& 17:59 < bridge> oh wait i understood incorrectly you just cant create the table? 18:00 < bridge> Map is supposed to be a unique key of that table, did we put out a broken dump or something? 18:00 < bridge> I don't know, It just throw Error 1180 Got error 1 "Operation not permitted" during COMMIT 18:01 < bridge> Is that mysql or some other db you are importing this in? 18:01 < bridge> what ever on win or linux, 11.8.2 or latest 18:01 < bridge> mariadb 18:01 < bridge> except I havn't yay, so I use apt 18:02 < bridge> Mh, that looks about right, idk 18:02 < bridge> i stoppped that, but i added indexes 18:02 < bridge> i used sqlite 18:02 < bridge> Ah, sqlite is so lax that it isn't a good measure of correctness 18:03 < bridge> They don't even have real data types 18:03 < bridge> btw mariadb uses few mb if not configured 18:03 < bridge> record_maps.sql 18:03 < bridge> https://cdn.discordapp.com/attachments/293493549758939136/1413192823091761255/image.png?ex=68bb09e0&is=68b9b860&hm=863aeda965e975f3fea7b56595b298bf75f62a1cf0478b053b3138a4e999a0df& 18:04 < bridge> I can check later tonight, but I'm pretty sure nothing should be broken, we just dump whatever is on the server 18:04 < bridge> Especially duplicates inside record_maps, that would break so many things 18:05 < bridge> I tried both on linux and windows, but I have 80% percent of confidence that the problem is not on me, or the instruction is missing some steps like configuring 18:06 < bridge> There is a special solution that 'skip' this error on record_maps 18:06 < bridge> greenich or something... idk London 18:07 < bridge> that is delete anything like /**/; 18:07 < bridge> and delete the "m like "record_maps" -> record_maps 18:07 < bridge> but then it throw duplicated entry 18:08 < bridge> When I did this, the program seems to be not case sensitive 18:09 < bridge> but the importing of record_mapinfo.sql is totally normal 18:10 < bridge> I compare the record_maps.sql to it, and found anything was matched except the UNIQUE KEY "Map" ("Map"), so I delete it (I have no choice), and the importing of this file back to normal 18:14 < bridge> The default MariaDB seems to be not case sensitive, that lead the duplicated enrty error occurring during importing record_race.sql 18:19 < bridge> renderplayer is so messy help 18:19 < bridge> im so scared ima mess something up 18:24 < bridge> https://github.com/ddnet/ddnet/pull/10434 18:24 < bridge> bump 18:26 < bridge> OK I think I got the problem, the case sensitivity 18:28 < bridge> I think you should add COLLATE utf8mb4_bin for "Map" or "Name", or the case sensitivity problem will cause errors 19:00 < bridge> https://cdn.discordapp.com/attachments/293493549758939136/1413207178352922726/image.png?ex=68bb173f&is=68b9c5bf&hm=e9597edb8f074ce38f47b98454f3e617f89b82f9e023677441f1303bad35097e& 19:00 < bridge> ermm 19:37 < bridge> 14 commits? 19:42 < bridge> its so that its reviewable xd 19:42 < bridge> it is 200 lines of changes 19:42 < bridge> 14 lines per change 19:45 < bridge> 14 lines per commit 19:51 < bridge> Bad gateway Error code 502 19:51 < bridge> Visit cloudflare.com for more information. 19:51 < bridge> 2025-09-04 17:51:17 UTC 19:53 < bridge> oh oop gimme a momenet 19:54 < bridge> try now 19:54 < bridge> oke 1 sec 19:56 < bridge> OMG LMAO 19:56 < bridge> i love this 19:56 < bridge> throw one of them 19:57 < bridge> I tried doing thst 19:59 < bridge> @blazulite i made a pr for it 19:59 < bridge> will merge it once i go to the pc 20:14 < ChillerDragon> does the antiping margin thingies actually lower ping displayed in scoreboard? 20:14 < ChillerDragon> that would be weird to me xd 20:14 < ChillerDragon> but someone in chat just said it does, idk i never turned that stuff on 20:19 < bridge> chillerdragon: it changes the prediction time in milliseconds, but nothing changes on scoreboard 20:19 < bridge> https://cdn.discordapp.com/attachments/293493549758939136/1413226878680174592/Screenshot_232.png?ex=68bb2998&is=68b9d818&hm=75fe5bc84c85dc0403b97547666116ee33bc6d7b8f791344a703cc9a5260dbff& 20:19 < bridge> https://cdn.discordapp.com/attachments/293493549758939136/1413226879099338778/Screenshot_231.png?ex=68bb2998&is=68b9d818&hm=16faaff87fa474e2562aa2cefee298aeffd45bf8d239c7faf5e5b462da82587c& 20:35 < ws-client> **** yea thats what i thought 20:37 < ws-client> **** nice antibot pr souly https://github.com/ddnet/ddnet/pull/10828 20:38 < ws-client> **** ok now split into 14 prs like a boss 20:45 < ws-client> **** @Solly (bun bun) ci is failling https://github.com/ddnet/ddnet/actions/runs/17473550087/job/49627682271?pr=10829 20:46 < bridge> steal my commit, make a new pr, make me fix the ci? 20:46 < bridge> what is this 20:46 < ws-client> **** yes 20:46 < ws-client> **** well i would prefer if you open the pr 20:46 < bridge> that was a bazinga 20:47 < ws-client> **** did you create the commits in the end or what? 20:47 < ws-client> **** imo commits should always build 20:47 < bridge> i agree 20:47 < bridge> its a mistake 20:47 < bridge> from trying to squash even more commits 20:47 < bridge> and merge errors 20:47 < ws-client> **** i see 20:47 < ws-client> **** lemme know when its fixed 20:48 < bridge> xd okay 20:48 < bridge> they are quite sequential 20:48 < bridge> cuz they edit the same code 20:48 < ws-client> **** yes 20:48 < ws-client> **** thats fine 20:48 < ws-client> **** just git rebase -i and make the first commit build 20:48 < ws-client> **** i wonder if we could check individual commits building in the CI 20:49 < ws-client> **** there is no use in rossbit splitting his prs in liek 20 commit steps if in the end we cant bisect anyways 20:49 < bridge> yeah the no compile was a mistake 20:49 < ws-client> **** yea dw 20:49 < bridge> i only checked a few points 20:49 < ws-client> **** im just wondering how often this gets missed 20:50 < bridge> github already wastes millions with excessive builds i bet 20:50 < ws-client> **** because the lazy ass clima change stopping CI only builds the latest commit 20:50 < bridge> like yes please buiold project because i push forced README.md 12 times 20:50 < bridge> like yes please buiold project 12 times because i push forced README.md 12 times 20:50 < bridge> idk why its free like damn 20:50 < ws-client> **** because open src 20:50 < bridge> there should be guidelines on adding build on some files changes 20:50 < ws-client> **** also i think there are tricks to exclude readme from ci 20:50 < bridge> thats a free pr for ddnet if u want 20:51 < ws-client> **** but cring who doesnt run CI on the readme 20:51 < bridge> well for pulls u need atleast 1 build 20:51 < ws-client> **** "there should be guidelines on adding build on some files changes" 20:51 < bridge> idk if its smart enough to build pr head once then not agin on force push readme 20:51 < ws-client> **** idk wat this means 20:51 < bridge> restrict build to changes on only some files 20:51 < ws-client> **** a 20:52 < ws-client> **** its not like we get a lot of readme prs 20:52 < ws-client> **** we are not electron 20:52 < ws-client> **** or what was the india ddos repo? 20:52 < ws-client> **** were u here for that solly? xd 20:52 < ws-client> **** there is one open source project where 100 of indians send prs to add their own name to the readme a day 20:52 < bridge> india ddos repo?? 20:52 < ws-client> **** because of some indian tech influencer showing how to get a job 20:53 < ws-client> **** by doing exactly that 20:53 < bridge> oh yeah 20:53 < bridge> theres tons of those 20:53 < ws-client> **** they need to deactivate the CI for the readme 20:53 < bridge> `git push origin fa0c3a96d35c5cf3df2bf7f47996b35e62329c1e:refs/heads/10828_1` 20:53 < bridge> i am the git'er 20:53 < ws-client> **** in ddnet its not that dramatic i would say 20:53 < ws-client> **** wowo gitter 20:53 < ws-client> **** but are you also githubber? 20:53 < ws-client> **** or do you need me to pr? xd 20:53 < bridge> i guess so 20:54 < bridge> if it compiles im petty sure it will work 20:54 < bridge> i have to wait for ci anyway ^~^ 20:56 < bridge> https://cdn.discordapp.com/attachments/293493549758939136/1413236338970333204/image.png?ex=68bb3267&is=68b9e0e7&hm=2e89a7d6258b9130a137a0eb7af58804fbd98cb6202232a4b06c30002e2eead4& 20:56 < bridge> idk why this needs a new experience, this is purely better (minus forgetting 2 buttons) 20:57 < bridge> and the dot instead of "files reviewed" 21:04 < ws-client> **** the float notation is also a free merge 21:05 < ws-client> **** i am personally also a never nester but maybe for that we should give other maintainers more time than 10 minutes 21:08 < bridge> you guys in #developer are crazy 21:11 < bridge> 🐖 21:18 < bridge> @chillerdragon i have to wait 40m per commit 21:18 < bridge> bloody ci 21:30 < ws-client> **** @Solly (bun bun) i did not farm enough maintainer aura to bypass ci xd 21:30 < ws-client> **** also solly remember the ddnet-insta incident xd 21:31 < ws-client> **** CI is your friend 21:35 < bridge> @chillerdragon yeah not a good record for that 21:36 < bridge> i vibe googled that u can cache github ci container stuff 21:36 < bridge> You can, I think we even do 21:36 < ws-client> **** we cache a bunch of rust stuff 21:36 < ws-client> **** thats how you get nice cache errors causing failling ci 21:36 < ws-client> **** xd 21:36 < bridge> rust onl;y 21:36 < ws-client> **** hrhrhhr 21:37 < bridge> we dont even need rust 21:37 < bridge> ):< 21:37 < bridge> anyway i was more looking at android 21:37 < ws-client> **** i think it could be possible to drop rust dependency without dropping rust bridge 21:37 < ws-client> **** just precompile it into ddnet-libs 21:37 < bridge> wait 21:37 < bridge> yeah... 21:37 < ws-client> **** so rust is no longer required in the CI or for devs 21:37 < bridge> but eventually there will be rust stuff 21:37 < ws-client> **** we only need to recompile it when it changes 21:37 < ws-client> **** which is rare 21:38 < ws-client> **** and then we need ddnet-libs update 21:38 < bridge> well we can cache the entire rust build which should be equivilant (no dropping rust dep tho) 21:38 < bridge> I think rust is the least of our issues with the CI. Isn't clang-tidy taking like 8 days and waiting for a macOS instance? 21:38 < bridge> actually macos is sometimes the first to complete on tater 21:38 < bridge> its android 21:38 < bridge> clang tidy is also very fast 21:38 < bridge> well compared to building 21:39 < bridge> fix style runs in under a min on my old hardware 21:39 < bridge> Clang tidy being fast doesn't compute in my brain 21:39 < bridge> idk how that compare with the ci 21:39 < bridge> Fix style is almost instant 21:39 < bridge> most of my clang tidy issues are style 21:39 < bridge> are they not seperate bits? 21:39 < bridge> would be nice for people who dont have ide setup and force push 20 times 21:39 < bridge> also feels like wasted work reparsing the entire codebase 40 times 21:39 < bridge> clang-tidy is not clang-format. clang-tidy is basically as slow as a build but slower 21:40 < bridge> incremenetal ci build? 21:40 < bridge> can u cache cmake dir? 21:40 < bridge> You don't want this, unless it's in just a single pr context 21:40 < bridge> whyn;t 21:40 < bridge> Incremental builds can hide bugs accidentally, they are not perfect 21:40 < bridge> i guess so 21:41 < bridge> It'll still fail, but it might fail on the wrong issue 21:41 < bridge> sigh 21:41 < bridge> just get better incremental builds 21:41 < bridge> Honestly, you shouldn't really be abusing CI like that 21:42 < bridge> if it didnt hide bugs why not? 21:42 < bridge> if it didnt hide bugs why else not? 21:42 < bridge> with the hiding bugs (which i have experienced) i understand but is that it 21:42 < bridge> Do we do fix style before everything else? That might be a good optimization most people fail the style 21:42 < bridge> i dont fail style anymore B) 21:42 < bridge> arent they all parralel? 21:43 < bridge> Maybe, but if it is we can sequence fix style before everything so long CI runs can be avoided in some cases 21:43 < bridge> if its just style i want the rest of the ci to go ahead 21:43 < bridge> so i know all the problems 21:43 < bridge> before i start fixing them 21:44 < bridge> Well then there is no other easy optimization 21:45 < bridge> ): 21:45 < ws-client> **** https://zillyhuhn.com/cs/.650c2aae-7b0b-43f7-9479-da2542ac7a05.png 21:45 < bridge> Maybe incremental builds within a single PR and only a full clean build when merging, but idk if github has granular enough control for that 21:45 < bridge> oh yeah im sure that apt is slower than what github cache can do 21:45 < ws-client> **** android build is 34mins prepare linux 21:45 < bridge> its cuz of ndk/sdk 21:45 < bridge> its cuz of android ndk/sdk 21:45 < ws-client> **** all prepare linux can be containerized and downloaded from a registry in seconds i suppose 21:45 < bridge> That can definitely get cached somehow. Maybe we can install the android stuff in the userdir and cache it 21:45 < bridge> well ima push "my" vibe coded solution to that 21:45 < ws-client> **** but then we need to maintain a Dockerfil instead of a github action yaml 21:45 < bridge> see if it works 21:46 < ws-client> **** i might look into it 21:46 < ws-client> **** lemme open todo 21:47 < bridge> which icon looks better to represent top players? 21:47 < bridge> https://cdn.discordapp.com/attachments/293493549758939136/1413249104020111551/image.png?ex=68bb3e4b&is=68b9eccb&hm=c8847a7e5404d6f9b12f3ac366d2f10f3db652ac8cc11e8956b0c9da59b9cc8e& 21:47 < bridge> https://cdn.discordapp.com/attachments/293493549758939136/1413249104477421608/image.png?ex=68bb3e4b&is=68b9eccb&hm=a115baa28fd72c0f38531ab239ab23adf9a6daaf8f569aaa88c9d7785a71c817& 21:47 < bridge> https://cdn.discordapp.com/attachments/293493549758939136/1413249105009967124/image.png?ex=68bb3e4b&is=68b9eccb&hm=e765ff26a89569b44f2b8698eb0086b02ec8897d7ecead4d32428c1a90d4d206& 21:47 < bridge> I personally think the trophy but I'm not quite sure 21:47 < bridge> trophee tee 21:47 < bridge> for context: 21:47 < bridge> https://cdn.discordapp.com/attachments/293493549758939136/1413249198010142851/image.png?ex=68bb3e61&is=68b9ece1&hm=e5f13a26bc8a0749ab328492199eaa0fe7cc402b5c675d3f5b5cf04746c44abb& 21:47 < bridge> looks like osu but a bit scuffed 21:47 < bridge> looks like osu but a scuffed 21:48 < bridge> looks like osu but scuffed 21:48 < bridge> (i like osu) 21:48 < bridge> https://cdn.discordapp.com/attachments/293493549758939136/1413249297549627482/image.png?ex=68bb3e79&is=68b9ecf9&hm=9d8e3230ff641f716a8ae9db086c4dc5d8e8a25e514cab9eb6e30bcf0c32caeb& 21:48 < bridge> but without clan 21:48 < bridge> That would fit as the leaderboard's icon, I mean the top players one 21:48 < bridge> do we not have a troptee? 21:48 < bridge> and skin 21:48 < bridge> wait u can use docker images as bases? @chillerdragon 21:49 < ws-client> **** ofc 21:49 < bridge> Why? It would help identify players easily 21:49 < bridge> then ig award looks cleanest 21:49 < ws-client> **** https://namespace.so/docs/solutions/github-actions/custom-base-images 21:49 < bridge> Why? It would help identify players easier 21:49 < bridge> nice 21:49 < bridge> can u have docker images autoupdate 21:49 < bridge> Hmm fair 21:49 < ws-client> **** yes 21:49 < bridge> nickname is the only needed in top list 21:49 < bridge> thats very clean 21:49 < ws-client> **** still effort to setup and maintain 21:49 < bridge> would it be better to have one docker for everything 21:50 < bridge> would it be better to have one docker for everything (per os) 21:50 < ws-client> **** idk 21:50 < ws-client> **** would need to play 21:50 < bridge> or just do android 21:50 < bridge> play 21:50 < bridge> it hasnt failed 21:50 < bridge> grr stop lying 21:50 < bridge> https://cdn.discordapp.com/attachments/293493549758939136/1413249977152700537/image.png?ex=68bb3f1b&is=68b9ed9b&hm=d2a05a8f16158aefcb49fe45e57f9799bf484b877ebe9c1ced4a9d36afda5c9f& 21:51 < bridge> @jupeyy_keks Also btw, this is how it's going so far 21:51 < bridge> https://cdn.discordapp.com/attachments/293493549758939136/1413250061110083697/image.png?ex=68bb3f2f&is=68b9edaf&hm=3c2438a590bbf4904e3aa37926428be39633488f4b039a626a3df40b62d1c7f4& 21:51 < bridge> it's still missing a lot of stuff 21:51 < bridge> But eh the layout is good enough I think 21:51 < ws-client> **** looks nice! 21:51 < bridge> Tyy 21:51 < ws-client> **** ddnet-rs really evolved since i last tried it 21:52 < bridge> It did 21:52 < bridge> I love ddnet-rs so much 21:52 < bridge> :pepeW: 21:52 < bridge> you'll make my life miserable 21:52 < bridge> The only downside is the fact it's rust (i hate rustlang so much) (anything's better than rust) (change my mind) 21:52 < bridge> I love u too melon <3 21:52 < bridge> is this ingame rendered or what 21:52 < bridge> or just photoshop 21:53 < bridge> its a POC in some sort of editor 21:53 < bridge> just a mockup of the design 21:53 < bridge> is POC or mockup the right word for that 21:53 < bridge> english hard 21:53 < bridge> is this in code? 21:53 < bridge> https://cdn.discordapp.com/attachments/293493549758939136/1413250584911544412/image.png?ex=68bb3fac&is=68b9ee2c&hm=d504a8b9ebfb2befe320eb8361236c5106c604dcb193ce040ecfa94eb272f1c4& 21:53 < bridge> ah I wish 21:53 < bridge> Mockup sounds more accurate, a POC would be in code 21:53 < bridge> hehe okay 21:53 < bridge> ic - ty 21:54 < bridge> i wonder if i should just restructure existing elements or redo the entire thing 21:54 < bridge> i'm just glad jupsti actually has good folder structure 21:54 < bridge> I think would need to write a 8941 lines paragraph on the guidelines to maintain consistence among all the interface in case y'all wanna craft some menus designs by yourselves 21:54 < bridge> :Pepega: 21:54 < bridge> I made it in a way it would mainly just need to restructure existing elements 21:55 < bridge> For example, the friends list in its closed status is pretty much based on the current navigation bar on ddnet-rs 21:55 < bridge> https://cdn.discordapp.com/attachments/293493549758939136/1413251024965210335/image.png?ex=68bb4015&is=68b9ee95&hm=89a7820ae99ad5aa7f68aea2a17c038e855e65a26a2870442545737bbe2f964c& 21:55 < bridge> https://cdn.discordapp.com/attachments/293493549758939136/1413251086386724885/image.png?ex=68bb4023&is=68b9eea3&hm=7ca645ae58f0952b2c717cd712e74d14181821818fa03b8003c068d2313689bf& 21:55 < bridge> wati w 21:55 < bridge> wait what 21:55 < bridge> why is it showing like that 21:55 < bridge> oh nvm it just didnt load 21:55 < bridge> https://cdn.discordapp.com/attachments/293493549758939136/1413251159656763633/image.png?ex=68bb4035&is=68b9eeb5&hm=1c7f9156a88b355790bde434c0fa3e4a36e2faef5fb22b145a3af32c8991c4cf& 21:56 < bridge> Or IOW this is the C of the POC 21:56 < bridge> Why is internet so bad in this country 21:57 < bridge> oh by the way, i have a question: 21:57 < bridge> Should I keep this bar? or should I add the "Exit" thing to the left bar? 21:57 < bridge> https://cdn.discordapp.com/attachments/293493549758939136/1413251545365086278/image.png?ex=68bb4091&is=68b9ef11&hm=8f8d01890d7979e4a03982ed913dc0a031416a27f7517af90249a2f476a56856& 21:57 < bridge> I'd maybe put home, editor, demos into some kind of "Collection" popover. 21:57 < bridge> 21:57 < bridge> Then have your favorite commuties below it similar to discord and currently in ddnet-rs 21:57 < bridge> 21:57 < bridge> I dunno what bookmark is for. 21:57 < bridge> 21:57 < bridge> i like the center panel. at least for ddrace this looks cool. 21:57 < bridge> Always the question how it looks like if you have 4:3 screen or smth. 21:57 < bridge> 21:57 < bridge> Desining for a single resolution is always easy 😄 21:57 < bridge> icons arent cached rn, that is why it sucks rn xd 21:57 < bridge> You care about 4:3 people? The last 4:3 monitor was probably sold a decade or two ago 😄 21:57 < bridge> if not 4:3, then 21:9 21:58 < bridge> jokes on you, my best friend got a 4:3 monitor a few days ago 21:58 < bridge> Don't ask why, I don't know either 21:58 < bridge> something always breaks in different aspect ratios 21:58 < bridge> 21:9 is wider, should almost always be fine 21:58 < bridge> Thinner is what breaks stuff. Wider you get some empty space, not the end of the world 21:58 < bridge> Definitely not something the ultrawide people aren't used to 22:00 < bridge> > I'd maybe put home, editor, demos into some kind of "Collection" popover. 22:00 < bridge> Ohh, maybe like three icons in the same row? 22:00 < bridge> > I dunno what bookmark is for. 22:00 < bridge> That was just an idea I suggested but never got a reply about it xD, it can be removed if you want though 22:00 < bridge> 22:00 < bridge> Basically, a place where you can save pages, maps, servers and pretty much anything you want 22:00 < bridge> https://cdn.discordapp.com/attachments/293493549758939136/1413252369881239683/image.png?ex=68bb4155&is=68b9efd5&hm=feb6476b3b842e7d15b82455e1fe0588ae7acaea19c9285ea410d233cba985f5& 22:00 < bridge> > I'd maybe put home, editor, demos into some kind of "Collection" popover. 22:00 < bridge> Ohh, maybe like three icons in the same row? 22:00 < bridge> > I dunno what bookmark is for. 22:00 < bridge> That was just an idea I suggested but never got a response back xD, it can be removed if you want though 22:00 < bridge> 22:00 < bridge> Basically, a place where you can save pages, maps, servers and pretty much anything you want 22:00 < bridge> https://cdn.discordapp.com/attachments/293493549758939136/1413252369881239683/image.png?ex=68bb4155&is=68b9efd5&hm=feb6476b3b842e7d15b82455e1fe0588ae7acaea19c9285ea410d233cba985f5& 22:00 < bridge> could be useful for ease of access 22:01 < bridge> > Always the question how it looks like if you have 4:3 screen or smth. 22:01 < bridge> And about this: these can get one above each other in one row instead of two and making it scrollable 22:01 < bridge> https://cdn.discordapp.com/attachments/293493549758939136/1413252728548884540/image.png?ex=68bb41ab&is=68b9f02b&hm=021d0cd8f33f87a15d038dcbdba5c962e6521c1f83dcc5e0d4ed8cd4af416873& 22:02 < bridge> This is also another idea I had - Direct messages 22:02 < bridge> https://cdn.discordapp.com/attachments/293493549758939136/1413252951543119892/image.png?ex=68bb41e0&is=68b9f060&hm=60f0a49363a236e9f89622698f7e71bcf22bc697530a95464310892805fe54c4& 22:02 < bridge> Thing is, I don't know how moderation could even work in this case 22:02 < bridge> "fuck you 10 0 l2p whysoeasy dontcry" in my dms, cant wait 22:03 < bridge> No moderation of dms, no one does it 22:03 < bridge> Just don't allow dms from non-friends 22:03 < bridge> Oh well that 22:03 < bridge> that makes sense yeah 22:04 < ws-client> **** moderation of dms sounds like cctv on toilet smh 22:04 < bridge> what about showing discord dms in ddnet chat? 22:04 < bridge> Someone added me after a league game, called my mother a midget, and me an n-word f-word. Was a very nice experience 22:04 < bridge> i saw rust has it with the new discord sdk integration 22:04 < bridge> let me quickly win the lottery and we can start making the ui 22:04 < bridge> At ddnet inc. we would never do that 22:04 < bridge> rust game, not the nerdy rust 22:04 < bridge> :KEKW: i would want to work on it, but it'll take a few months to be usable if i work on it alone 22:04 < bridge> oh yeah the discord game sdk 22:04 < bridge> They don't let just anyone integrate that deeply, at least last I checked 22:05 < bridge> that's what a friend suggested 22:05 < bridge> well they say you can't never know til you try 22:05 < bridge> I just know shit aint free tho💀 22:05 < bridge> i think i sawi it in the docs too 22:05 < bridge> You'd 100% need a closed source blob for it, at the very least 22:05 < bridge> well they say you can never know til you try 22:06 < bridge> oh by the way I just realized i did not show anything about the open status of this bar 22:06 < bridge> https://cdn.discordapp.com/attachments/293493549758939136/1413253989918834739/image.png?ex=68bb42d8&is=68b9f158&hm=e678d49e13be817d1860fdd1e014819c105f0e3f696e3a63f18f2c13ea6bcfb1& 22:07 < bridge> https://discord.com/developers/docs/discord-social-sdk/development-guides/sending-direct-messages#receiving-and-rendering-messages 22:07 < bridge> The map preview would be the ones from the website 22:07 < bridge> Also it would be very meh if people could only dm if they have discord. Idk what rules you guys have for ddnet-rs but we definitely don't do platform lock-in for features in ddnet 22:07 < bridge> According to the discord game sdk you don't really need an account for that 22:08 < bridge> https://cdn.discordapp.com/attachments/293493549758939136/1413254296803344565/image.png?ex=68bb4321&is=68b9f1a1&hm=23b0b18c49924b3d014f448dab20a680ff46182e5518a3d5e40ea75320bb4d62& 22:08 < bridge> ah nvm 22:08 < bridge> According to the discord social sdk you don't really need an account for that 22:08 < bridge> Yeah, this is how I remember it too 22:08 < bridge> :omo: 22:08 < bridge> I considered it for voice support in ddnet sometime back 😄 22:08 < bridge> https://discord.com/developers/docs/discord-social-sdk/core-concepts/core-features#provisional-accounts 22:09 < bridge> That's nice but you need to get approved by discord to use this stuff 22:09 < bridge> Yeah I see 22:10 < bridge> Our game is way too loose in moderation for them to like us 22:10 < bridge> Also no money, they probably ask for money 22:10 < bridge> yep 22:12 < bridge> Anyway, I would like you all to know that I have started rebasing my old accounts implementation 22:12 < bridge> is that the chat command based one? 22:12 < bridge> The hope is that when I PR it heinrich will show back up to complete QUIC 22:12 < bridge> ._. 22:13 < bridge> Chat commands would be easy enough to hack in, but it is based on netmsgs natively 22:13 < bridge> oooh! 22:14 < bridge> It has protocol overhead for all the encrypted traffic. `NETMSG_ENCRYPTED` wrapping all encrypted packets 22:14 < bridge> It has protocol overhead for all the encrypted traffic. `NETMSG_ENCRYPTED` wrapping all encrypted netmsgs 22:15 < bridge> :deen_star: 22:16 < bridge> Idk if I would merge it honestly, but hopefully it'll push the other accounts working group to finish up 22:16 < bridge> Just to stop my shitcode from getting in 22:21 < bridge> Probably still necessary for Google Play 22:22 < bridge> No dms on android version downloaded from google play 22:23 < bridge> Probably no socials at all if we'd ever want Google Play 22:24 < bridge> Fine by me tbh. Doubt we are allowed to advertise the non google-play version at all in there, but I would if possible 22:24 < bridge> No player names, or players need to be able to report then in-game 22:24 < bridge> No player names, or players need to be able to report them in-game 22:25 < bridge> If the Google Play version is so restrictive, I'm questioning whether anyone wants to use it though 22:25 < bridge> No player names either is insane lol 22:25 < bridge> Yeah maybe fdroid only 22:26 < bridge> wouldn't it help with general reach 22:26 < bridge> download google play vers -> play a bit, find it fun -> play on pc on the same account with social features 22:27 < bridge> Tbh if we have accounts we can have report username feature 22:28 < bridge> ios? 22:28 < bridge> https://x.com/cormachayden_/status/1963643566443601957 22:28 < bridge> apple users pay for everything 22:28 < bridge> easy donation goal 22:29 < bridge> https://tenor.com/view/cat-scared-gif-27466237 22:29 < bridge> i just know developing for ios is a pain in the ass 22:29 < bridge> Ios probably has similar or harsher rules, and we don't have a metal backend 22:30 < bridge> could try but developing on ios is generally really finnicky 22:33 < bridge> is there any console client that i can use on Termux? 22:35 < bridge> IIRC apple was more forgiving than google's app store and that its more about the fact that you have to pay for it and need IOS hardware 22:35 < bridge> IIRC apple was more forgiving than google's app store and that its more about the fact that you have to pay for it and need apple hardware 22:35 < bridge> I think we have issues with it 22:36 < bridge> Such a chillerdragon question to ask 22:36 < bridge> https://github.com/ChillerDragon/teeworlds-headless-clients 22:37 < bridge> thanks meloni 22:44 < bridge> did someone try porting it already? 22:48 < bridge> It would work except for clipping issues 22:48 < bridge> Which we don't have on ddnet-rs. So either sdl bug or we misuse it somewhere 22:49 < bridge> It already does work* 22:49 < bridge> oh nice 23:02 < bridge> Some apps are obviously exempt from the rules though like browsers, how does it work for them? 23:02 < bridge> (meant to reply to this) 23:33 < bridge> I assume because they are web browsers, special rules apply to them. 23:34 < bridge> You can't advertise a browser as something that shows NSFW etc. I guess 23:35 < bridge> Tbh an in-game player report thing doesnt seem much hard to do 23:35 < bridge> Restrictions like cooldowns n stuff could be done server-side 23:35 < bridge> Could make it automatically attach the last 30 seconds of demo maybe 23:36 < bridge> We can't store all that data. I assume cooldowns go against Google's guidelines. If the reviewer doesn't like it, it's banned. 23:37 < bridge> Oh damn 23:38 < bridge> Maybe sending the thing thru a webhook directly to the place where all the reports go? 23:38 < bridge> Idk 23:38 < bridge> Maybe sending the thing thru a Discord webhook directly to the place where all the reports go? 23:46 < bridge> i was planning going off on my own, but i guess that woke you up to attempt to wake someone else up 23:46 < bridge> netmsg/chatcmd logins are great if they are encrypted and even greater if the accounts can be made cross erver 23:47 < bridge> ~~stop using discord for moderation~~ 23:47 < bridge> more code to interact with discord for moderation 23:50 < bridge> I don't think it's wrong, only the fact that users need to have a Discord account to create tickets 23:50 < bridge> but for internal purposes I don't think it's wrong at all 23:50 < bridge> discord too slow x-x