00:26 <+bridge_> What would you like to talk about? I can make some time tomorrow I think 00:27 <+bridge_> there's another issue with tele predict pr, idk what to do again 00:27 <+bridge_> As in a player disconnects? 00:28 <+bridge_> no, actually their projectiles get deleted when that happens 00:28 <+bridge_> A player kills? 00:28 <+bridge_> But then only their character is gone 😄 00:28 <+bridge_> as far as I'm aware it's possible for a player outside your snap range to fire a projectile into your snap range, and then you have to predict the projectile without their tee data 00:29 <+bridge_> Maybe don't predict those? You can't possibly do it correctly since you won't have the tunes, no? 00:29 <+bridge_> uh 00:29 <+bridge_> interesting 00:30 <+bridge_> I forgot about tunes 00:30 <+bridge_> isnt projectile 00:30 <+bridge_> I thought tunes are seperate from tee 00:30 <+bridge_> isnt projectile's tune based on its spawn pos 00:30 <+bridge_> that could also be true 00:30 <+bridge_> I thought tunes are separate from tee 00:30 <+bridge_> Do we have tune locks now though? That will change things 00:30 <+bridge_> same as other info, should be contained within projectile if its important 00:30 <+bridge_> projectiles still work same 00:31 <+bridge_> lock isnt merged, but it works only on tunes that affect hte player 00:31 <+bridge_> what? 00:31 <+bridge_> But a player might be tune locked to a different tune zone from the location the projectile started with, no? Or do we only limit tunelock to specific tunes? 00:31 <+bridge_> in tune lock, unrelated to ur pr mine wont get merged for long time i guess 00:31 <+bridge_> I have the same question as learath 00:32 <+bridge_> yes 00:32 <+bridge_> Yes to which question? 😄 00:32 <+bridge_> https://cdn.discordapp.com/attachments/293493549758939136/1465852049198415912/image.png?ex=697a9c9a&is=69794b1a&hm=e41001d2dce3ab612b612d0671e3ce1aaea8f9f167d750a7cc62617568072a24& 00:32 <+bridge_> its unrelated to player's tune/tune lock so it contains all necessary info 00:32 <+bridge_> If tunes aren't your issue, then why is there still an issue? That's what I thought you'd need the players info for 00:33 <+bridge_> let me check before I say something wrong 00:34 <+bridge_> Hum, so projectiles only check the tunezone at their spawn position? 00:34 <+bridge_> yes 00:35 <+bridge_> and startpos is sent in snap, so this isnt tele prediction blocker 00:35 <+bridge_> Ok, than that part is fine for now, though idk if maybe we'd want to allow that to be tunelock'd too, in that case maybe the players tunezone should be used. Idk different discussion for a different time 00:35 <+bridge_> probably just sending the tune with snap the, instead of guessing it based on spawn pos 00:35 <+bridge_> probably just sending the tune with snap then, instead of guessing it based on spawn pos 00:53 <+bridge_> I'm adding a m_RngSeed value to extended DDNetCharacter which I mix into the seeding 00:53 <+bridge_> 00:53 <+bridge_> this is technically optional but I thought it would be future proof if we decide we need any other kind of "semi secure random" features and it at least prevents even more replay sharing from happening on ddnet servers. 00:53 <+bridge_> 00:53 <+bridge_> So the options I see are 00:53 <+bridge_> 00:53 <+bridge_> 1. drop the m_RngSeed from the implementation, seed only with client id (which the projectile tells us) 00:53 <+bridge_> 2. don't predict teleport for projectiles without valid ``CCharacterInfo``, might be annoying on some maps idk 00:53 <+bridge_> 3. duplicate the m_RngSeed onto projectiles so we always know it (and yes it would need to be duplicated or we can't create projectiles from predicted players during prediction) 00:53 <+bridge_> 00:54 <+bridge_> there's also a more annoying option to save the m_RngSeed whenever we see a player and assume it hasn't changed since they left our snap range, which is kind of optimal but currently m_Snap gets reset between ticks so we don't save any information about the CharacterInfo after we lose sight of them. 00:55 <+bridge_> I'm adding a m_RngSeed value to extended DDNetCharacter which I mix into the seeding 00:55 <+bridge_> 00:55 <+bridge_> this is technically optional but I thought it would be future proof if we decide we need any other kind of "semi secure random" features and it at least prevents even more replay sharing from happening on ddnet servers. 00:55 <+bridge_> 00:55 <+bridge_> So the options I see are 00:55 <+bridge_> 00:55 <+bridge_> 1. drop the m_RngSeed from the implementation, seed only with client id (which the projectile tells us) 00:55 <+bridge_> 2. don't predict teleport for projectiles without valid ``CCharacterInfo``, might be annoying on some maps idk 00:55 <+bridge_> 3. duplicate the m_RngSeed onto projectiles so we always know it (and yes it would need to be duplicated or we can't create projectiles from predicted players during prediction) 00:55 <+bridge_> 00:55 <+bridge_> 4. there's also a more annoying option to save the m_RngSeed whenever we see a player and assume it hasn't changed since they left our snap range, which is kind of optimal but currently m_Snap gets reset between ticks so we don't save any information about the CharacterInfo after we lose sight of them. 00:55 <+bridge_> we can do 2 now and then either 3 or 4 in the future, but we can't change our mind about 1 without significant backcompat 07:35 <+bridge_> @totar could pressing and releasing inputs too fast not registering be a tclient issue? 07:35 <+bridge_> i probably should of recorded that video on ddnet client 07:35 <+bridge_> you should always test bugs on ddnet 07:35 <+bridge_> true 07:36 <+bridge_> but i dont think its a tclient thing 07:36 <+bridge_> I test all bugs on ddnet, even if it's not a tclient thing 07:37 <+bridge_> largely because tclient is usually closer to ddnet nightly which is much less stable in general 07:37 <+bridge_> I used to selectively merge when I thought ddnet was stable but I don't have time to do that anymore 07:37 <+bridge_> no it happens on latest ddnet ver 07:38 <+bridge_> I also have a folder with every ddnet release version for testing what version something broke in 07:39 <+bridge_> very useful 07:39 <+bridge_> damn 07:39 <+bridge_> how much storage does that take 07:39 <+bridge_> not that much 07:39 <+bridge_> several gigabytes? 07:39 <+bridge_> idk probably 07:39 <+bridge_> I don't have literally every version 07:39 <+bridge_> only like ~3 years 07:40 <+bridge_> super old versions are scary 07:40 <+bridge_> they mess up new ddnet configs 08:10 <+bridge_> Your config is not tracked in git? 08:12 <+bridge_> What could he scary about it xd 08:13 <+bridge_> I miss Jupstar 08:34 <+bridge_> cba 09:33 <+bridge_> you could automatically wait for 1 month after ddnet switches to a newer version - because maintainers - including me - tend to merge "more unsecure" features on the beginning of a new version in order to have a longer grace period for finding bugs 09:33 <+bridge_> idk still probably a lot of work 09:35 <+bridge_> 16.0 - 19.latest: ~3.8 GB, 15.0 - 15.latest, 700 MB 09:36 <+bridge_> ddnet doesn't have lots of assets by itself - keep in mind that this doesn't inlcude the appdata stuff 10:11 <+bridge_> Ah yes, classic 15k lines update readme commit 😬 10:11 <+bridge_> https://cdn.discordapp.com/attachments/293493549758939136/1465997601873592423/image.png?ex=697b2429&is=6979d2a9&hm=99c7966e5c6d965bfe9b6b7d31a8eb71c28b4df4c43f40f7db5e7c57e188c260& 10:11 <+bridge_> https://cdn.discordapp.com/attachments/293493549758939136/1465997602242957436/image.png?ex=697b2429&is=6979d2a9&hm=598304026551aca31ab451b7e0119674117df857d6899a4417d2382955063082& 10:25 <+bridge_> 👍 10:49 <+ChillerDragon> @robyt3 the default config name space is really cool. Is there a way to get the min and max too? 10:49 <+ChillerDragon> That would come in really handy for compile time bounds checking with static assert for me 10:50 <+ChillerDragon> i do sone `aGoofedArray[g_Config.m_ClMyHackCfg - 2]` and it looks scary xd 10:50 <+ChillerDragon> some* 10:50 <+ChillerDragon> i assume the UI pager code could profit from that too 11:16 <+bridge_> sounds reasonable to me, wanna PR it? 11:44 <+ChillerDragon> so it doesnt exist? 11:44 <+ChillerDragon> i rather open an issue i already have a pending pr xd 11:44 <+ChillerDragon> heinrichs comment about an LLM reviwer having caught the server info oopsie made me think 11:44 <+ChillerDragon> that would be really op 11:45 <+ChillerDragon> i would like to have a llm lsp that runs a simple local model and shows warnings like any other linter 11:45 <+bridge_> I'm not sure if it would have caught 15 other incorrect bugs as well 11:45 <+ChillerDragon> that could help combat the severe brain damage i got when i was dropped on the head during birth 11:45 <+ChillerDragon> check this out `bool IsDone() const { return m_State != EState::DONE; } 11:45 <+bridge_> (and then it'd be useles) 11:45 <+bridge_> (and then it'd be useless) 11:45 <+ChillerDragon> aaaa weechat paste ah 11:46 <+ChillerDragon> ye u gotta tweak it to be useful 11:46 <+ChillerDragon> but i think its feasible 11:46 <+bridge_> when I debugged my ctf solve script, I pasted it into chatgpt and it told me 15 bugs, 14 of which were made up 11:46 <+bridge_> but the one bug that was not was helpful 11:46 <+bridge_> but it was only helpful because I already knew that there was a bug 11:46 <+bridge_> otherwise I would have just dismissed them 11:46 <+ChillerDragon> ye but u just pasted into gpt 11:47 <+ChillerDragon> u can tune these models to reduce hallucinations and so on 11:47 <+ChillerDragon> im sure there is a way to optimize for no false positives 11:47 <+bridge_> I severely doubt it ^^ 11:47 <+ChillerDragon> if it misses a bit thats fine 11:47 <+ChillerDragon> woah 11:47 <+ChillerDragon> AI doubter 11:47 <+ChillerDragon> i will report you to sam 11:47 <+bridge_> LLMs love false-positives 11:47 <+bridge_> "hallucinations" 11:56 <+bridge_> Typing git init is 0 effort xd 12:39 <+ChillerDragon> @heinrich5991 can u merge the antibot pr or whats the holdup? 13:08 <+bridge_> the holdup is the last comment I sent 13:08 <+bridge_> I see you answered it 13:08 <+bridge_> you'd like me to drop whatever I'm working on and prioritize your PR right now 🤷‍♀️ 13:12 <+bridge_> actually, let me not do that 13:13 <+bridge_> it's clear what the holdup is. and I haven't had the time to look at your answer yet 13:13 <+bridge_> you can answer the question you gave on your own 13:13 <+bridge_> if you want to communicate something else, communicate that 13:16 <+bridge_> @heinrich5991 if I ping you like that, are you fine if I merge after a while: , because for me it looks like you seem to loose interest or don't get some pings. (I don't want you to drop whatever you are doing and look at this immediately, just a genuine question, I remember another PR where I requested review waiting for months) 13:18 <+bridge_> > waiting for months 13:18 <+bridge_> 13:18 <+bridge_> #10691 13:18 <+bridge_> https://github.com/ddnet/ddnet/pull/10691 13:49 <+bridge_> <0xdeen> @ldozdng Thanks! ^ 13:50 <+bridge_> I was told that is the official flow on how to get merges 13:50 <+bridge_> I don’t like it either tbh 13:51 <+bridge_> where did you get told that? 13:51 <+bridge_> Lerato 13:51 <+bridge_> In here 13:52 <+bridge_> if you have to, I'd prefer something like: "hey, could you take a look at my PR again" 13:52 <+bridge_> Isn’t that what I did? 13:52 <+bridge_> your message read to me that there are only two possible options: "merge or explain your reasoning now" 13:53 <+bridge_> I still see no difference to „hey look“ 13:54 <+bridge_> I understand that these reminders are annoying and I also would prefer to not ask for merges but the current state seems to require doing exactly that 13:55 <+bridge_> And the „how“ it’s being done is not that deep imo 13:55 <+bridge_> Same message either way 13:55 <+bridge_> thanks heinrich for taking a look at the PRs I mentioned 👍 ❤️ 13:55 <+bridge_> yea, it's okay. I'll probably get to it eventually, but I currently have a backlog of 600 messages (mostly ddnet), dating back to 2026-01-18, so this one was probably not lost 13:55 <+bridge_> the "how" is important in interpersonal communication 13:56 <+bridge_> yes I know it's hard to keep up with all of the pings, it's insane, on discord and on github 13:56 <+bridge_> Ok 13:56 <+bridge_> To me it still reads the same even interpersonally 13:56 <+bridge_> You can just respond with „holdup is I’m busy“ ez 13:56 <+bridge_> your message is a question, to which the literal answer is something you probably don't want to know 13:57 <+bridge_> "the holdup is the thing I said last time, and I haven't read the next message yet" 13:57 <+bridge_> what you want isn't in the message, as far as I'd interpret you, namely that you ask/expect me to take a look 13:58 <+bridge_> How would it be any different if I ask „could you look“? 13:58 <+bridge_> Answer is „yes soon“ 13:58 <+bridge_> Same thing 13:58 <+bridge_> @heinrich5991: I think we need more maintainers to help you with your backlog 14:00 <+bridge_> the difference is what you ask is in the message 14:00 <+bridge_> more maintainers will not help me with my backlog 14:00 <+bridge_> I think we currently have enough maintainers 14:10 <+bridge_> @heinrich5991: because only you can merge that pr? 14:11 <+bridge_> because the backlog of messages I see from ddnet/ddnet will not decrease when we get more maintainers 14:11 <+bridge_> But then I am not blocked by your backlog anymore 14:12 <+bridge_> But I see it doesn’t help you if you want to see everything 14:44 <+bridge_> anyone going to fosdem this weekend btw? 14:44 <+bridge_> https://fosdem.org/2026/ 14:44 <+bridge_> I'll be there 14:48 <+bridge_> are you there on both days? I am thinking about it tbh, it's only 2 hours away from me 14:48 <+bridge_> (I like how the website explicitly states belgian beer 😆 ) 14:49 <+bridge_> I'll be there on both days 15:47 <+bridge_> :Sadge: 15:47 <+bridge_> https://cdn.discordapp.com/attachments/293493549758939136/1466082287383875686/image.png?ex=697b7307&is=697a2187&hm=f7b907b5f16233bb50f8659349834dc891e2c886639e7bee268261b304635160& 15:48 <+bridge_> i would love to attend these things, but my stoopid butt decided "oh yeah, lets move close to austria" 15:51 <+bridge_> you decided to life in bavaria, how dare you 15:56 <+bridge_> maybe GPN works better for you? https://entropia.de/GPN24 16:00 <+ChillerDragon> @heinrich5991 @kebscs did i understand https://github.com/ddnet/ddnet/pull/11679 correctly? 16:00 <+ChillerDragon> you want to use the existing "team" field for ddrace teams too? 16:00 <+ChillerDragon> this is a bad idea 16:01 <+bridge_> I think it's a good idea to remove the concept of two different "teams" in the codebase: https://github.com/ddnet/ddnet/issues/11272 16:02 <+ChillerDragon> but thats a bad idea too 16:06 <+ChillerDragon> @heinrich5991 where do you want your style guide? In the wiki or markdown file in the ddnet repo? https://github.com/ddnet/ddnet/pull/11684 16:07 <+bridge_> The source of truth should be the git repository, either with automatic checks or contributing 16:08 <+ChillerDragon> well i agree on the "either or" 16:08 <+ChillerDragon> heinrich doesnt 16:08 <+ChillerDragon> he wants both 16:08 <+bridge_> both but remove the verbosity of contributing.md? 16:08 <+bridge_> both but remove the (over) verbosity of contributing.md? 16:08 <+bridge_> 😉 16:08 <+ChillerDragon> and i want to not pollute the text that has to be read with the things that are enforced automatically 16:12 <+bridge_> huh, Brussels is close enough, I might 16:16 <+bridge_> If the enforcement works well enough *and* makes correct suggestions, we don't need contributing, for example the check for standard C headers. The suggestions regarding variable names made by clang-tidy are often wrong because we abuse the system by overriding everything with regexes. 16:20 <+bridge_> @robyt3 to not pollute bugs further :kekMonki: 16:20 <+bridge_> (and i guess heinrich too, if you're here) 16:20 <+bridge_> 16:20 <+bridge_> ```md 16:20 <+bridge_> ## Symbolizing a crash dump (.RTP): 16:20 <+bridge_> Symbolizing converts raw crash data into humanly readable stacktraces. 16:20 <+bridge_> **Download the crash dump** 16:20 <+bridge_> Make sure it has the original filename because it contains important information. 16:20 <+bridge_> 16:20 <+bridge_> **Download the debug symbols** 16:20 <+bridge_> Get them from https://ddnet.org/downloads/symbols/ with matching git hash and platform (win32/64, steam/non-steam). 16:20 <+bridge_> - The git hash and platform are found in the filename of the crash dump. 16:20 <+bridge_> - If the filename does not contain `steam`, then it is the standalone version. 16:20 <+bridge_> 16:21 <+bridge_> **Install binutils** 16:21 <+bridge_> Install `addr2line` and `objdump` using your system's package manager or from msys2 for Windows: 16:21 <+bridge_> - **[MSYS2 binutils](https://packages.msys2.org/packages/mingw-w64-x86_64-binutils)** 16:21 <+bridge_> - **Ubuntu/Debian**: `sudo apt install binutils` 16:21 <+bridge_> 16:21 <+bridge_> **Run the script** 16:21 <+bridge_> ```sh 16:21 <+bridge_> bash scripts/parse_drmingw.sh 16:21 <+bridge_> ``` 16:21 <+bridge_> - The script is found under `./scripts/` 16:21 <+bridge_> - On Windows, you must explicitly run with `bash` and not in a Windows terminal. 16:21 <+bridge_> ``` 16:21 <+bridge_> 16:21 <+bridge_> i'd put this right before the DDNet DB stuff on the readme, thoughts before i PR? 16:21 <+bridge_> ah damn it, readme formatting broke discord's formatting 16:21 <+bridge_> :kek: 16:21 <+bridge_> Yeah, the 50 different flavors of markdown interact together brilliantly 16:21 <+bridge_> Especially the half ass one Discord ended up with 16:22 <+bridge_> @robyt3 to not pollute bugs further :kekMonki: 16:22 <+bridge_> (and i guess heinrich too, if you're here) 16:22 <+bridge_> 16:22 <+bridge_> 16:22 <+bridge_> ## Symbolizing a crash dump (.RTP): 16:22 <+bridge_> Symbolizing converts raw crash data into humanly readable stacktraces. 16:22 <+bridge_> **Download the crash dump** 16:22 <+bridge_> Make sure it has the original filename because it contains important information. 16:22 <+bridge_> 16:22 <+bridge_> **Download the debug symbols** 16:22 <+bridge_> Get them from https://ddnet.org/downloads/symbols/ with matching git hash and platform (win32/64, steam/non-steam). 16:22 <+bridge_> - The git hash and platform are found in the filename of the crash dump. 16:22 <+bridge_> - If the filename does not contain `steam`, then it is the standalone version. 16:22 <+bridge_> 16:22 <+bridge_> **Install binutils** 16:22 <+bridge_> Install `addr2line` and `objdump` using your system's package manager or from msys2 for Windows: 16:22 <+bridge_> - **[MSYS2 binutils](https://packages.msys2.org/packages/mingw-w64-x86_64-binutils)** 16:22 <+bridge_> - **Ubuntu/Debian**: `sudo apt install binutils` 16:22 <+bridge_> 16:22 <+bridge_> **Run the script** 16:23 <+bridge_> ```sh 16:23 <+bridge_> bash scripts/parse_drmingw.sh 16:23 <+bridge_> ``` 16:23 <+bridge_> - The script is found under `./scripts/` 16:23 <+bridge_> - On Windows, you must explicitly run with `bash` and not in a Windows terminal. 16:23 <+bridge_> 16:23 <+bridge_> 16:23 <+bridge_> i'd put this right before the DDNet DB stuff on the readme, thoughts before i PR? 16:25 <+bridge_> I don't want to "use it too" 16:25 <+bridge_> It's already like that 16:25 <+bridge_> I'm just adding client site handling 16:26 <+bridge_> is it `stacktraces` or `stack traces` 16:26 <+bridge_> is it `stacktraces` or `stack traces` :omo: 16:26 <+bridge_> https://en.wiktionary.org/wiki/stack_trace 16:26 <+bridge_> according to wiktionary 🤷‍♀️ 16:27 <+bridge_> Seems good, I was never really sure where to put it though. I feel like the readme has too many chapters and we should split it at some point. 16:28 <+bridge_> I'm just adding client side handling 16:35 <+bridge_> hmm Roby, given your comment on #10839 16:35 <+bridge_> 16:35 <+bridge_> maybe we should, at this point go with a `docs/` setup or something similar? we could split up the readme nicely with that. (and not have random documentation across the codebase) 16:35 <+bridge_> 16:35 <+bridge_> > I think it belongs in a separate document, e.g. src/engine/client/README-sound.md 16:35 <+bridge_> 16:35 <+bridge_> i.e 16:35 <+bridge_> 16:35 <+bridge_> readme.md 16:35 <+bridge_> docs/debugging.md 16:35 <+bridge_> docs/contributing.md 16:36 <+bridge_> https://github.com/ddnet/ddnet/pull/10839 16:36 <+bridge_> hmm Roby, given your comment on #10839 16:36 <+bridge_> > I think it belongs in a separate document, e.g. src/engine/client/README-sound.md 16:36 <+bridge_> maybe we should, at this point go with a `docs/` setup or something similar? we could split up the readme nicely with that. (and not have random documentation across the codebase) 16:36 <+bridge_> i.e 16:36 <+bridge_> 16:36 <+bridge_> readme.md 16:36 <+bridge_> docs/debugging.md 16:36 <+bridge_> docs/contributing.md 16:36 <+bridge_> hmm Roby, given your comment on #10839 16:36 <+bridge_> > I think it belongs in a separate document, e.g. src/engine/client/README-sound.md 16:36 <+bridge_> maybe we should, at this point go with a `docs/` setup or something similar? we could split up the readme nicely with that. (and not have random documentation across the codebase) 16:36 <+bridge_> e.g 16:36 <+bridge_> 16:36 <+bridge_> readme.md 16:36 <+bridge_> docs/debugging.md 16:36 <+bridge_> docs/contributing.md 16:37 <+bridge_> hmm Roby, given your comment on #10839 16:37 <+bridge_> > I think it belongs in a separate document, e.g. src/engine/client/README-sound.md 16:37 <+bridge_> maybe we should, at this point go with a `docs/` setup or something similar? we could split up the readme nicely with that. (and not have "random" documentation across the codebase) 16:37 <+bridge_> e.g 16:37 <+bridge_> 16:37 <+bridge_> readme.md 16:37 <+bridge_> docs/debugging.md 16:37 <+bridge_> docs/contributing.md 16:38 <+bridge_> Yeah, I would also go with a `docs/` approach. It's in .gitignore though because that's also the output folder for Doxygen 16:38 <+bridge_> https://github.com/libsdl-org/SDL/tree/main/docs 16:42 <+bridge_> hmm :/ 16:42 <+bridge_> Just ignore `docs/html` and `docs/warn.log` instead I guess 16:48 <+ChillerDragon> can we ban melon? 16:50 <+bridge_> what did i do now 16:52 <+bridge_> Hehe 16:52 <+bridge_> https://cdn.discordapp.com/attachments/293493549758939136/1466098545512943739/image.png?ex=697b822c&is=697a30ac&hm=9864b574fd26fc8398899825e11df025a9a83d3760f244f007f505f61399d71b& 16:52 <+bridge_> :) 16:52 <+bridge_> https://cdn.discordapp.com/attachments/293493549758939136/1466098545512943739/image.png?ex=697b822c&is=697a30ac&hm=9864b574fd26fc8398899825e11df025a9a83d3760f244f007f505f61399d71b& 16:53 <+bridge_> I'm still working on multithreading somehow :) 16:53 <+bridge_> 16:53 <+bridge_> The main problem was with the network, I did it, thanks 0xfaulty 16:53 <+bridge_> https://cdn.discordapp.com/attachments/293493549758939136/1466098545512943739/image.png?ex=697b822c&is=697a30ac&hm=9864b574fd26fc8398899825e11df025a9a83d3760f244f007f505f61399d71b& 16:53 <+ChillerDragon> @melon u is spammer 16:55 <+ChillerDragon> hmmm.. 16:56 <+ChillerDragon> i want to have the same oder in header and source file and a clean public api and yet still have the source file read cronologically smh 16:56 <+ChillerDragon> https://zillyhuhn.com/cs/.3624459c-894a-40a9-b7d4-11359f579a02.png 16:56 <+ChillerDragon> aaaaa xd 17:23 <+bridge_> Chiller gon hate me for that one 17:29 <+bridge_> why isnt 11685 not merged ? 17:29 <+bridge_> #11685 17:29 <+bridge_> https://github.com/ddnet/ddnet/pull/11685 17:29 <+bridge_> what 17:29 <+bridge_> it is 17:29 <+bridge_> wrong one xd 17:29 <+bridge_> #11665 17:29 <+bridge_> https://github.com/ddnet/ddnet/pull/11665 17:29 <+bridge_> why isnt this merged 17:29 <+bridge_> i mean, you practically said "why is 11685" merged 17:29 <+bridge_> :WICKED: 17:29 <+bridge_> why isnt 11685 merged ? 17:30 <+bridge_> omg my brain isnt braining 17:30 <+bridge_> why isnt #11665 merged 17:30 <+bridge_> https://github.com/ddnet/ddnet/pull/11665 18:24 <+bridge_> without looking at it: probably nobody reviewed it yet 18:24 <+bridge_> what are you looking for? 18:27 <+bridge_> im looking for it to be merged 18:31 <+bridge_> because i find the new change annoying 18:36 <+bridge_> todo: add new map requirements for tiles in contributing.md 18:38 <+bridge_> а 19:03 <+ChillerDragon> yo @louis someone just reported that the comfort entities do not work on fng 19:03 <+ChillerDragon> wanna add a fng version of it? 19:04 <+ChillerDragon> i already got this report twice 19:05 <+bridge_> yo 19:08 <+bridge_> ChillerDragon: i am not proud of those entities anymore so probably not. do custom assets even support fng modes? 19:08 <+bridge_> i can maybe edit them so they're compatible 19:17 <+ChillerDragon> yes 19:17 <+ChillerDragon> just create a fng.png 19:17 <+ChillerDragon> copy a existing fng.png as reference and copy paste ur stuff in there and turn urs into a folder i think 21:23 <+bridge_> > copy a existing fng.png as reference and copy paste ur stuff in there and turn urs into a folder i think 21:23 <+bridge_> ``` 21:23 <+bridge_> 2026-01-29 01:22:32 E png: failed to open file for reading. filename='assets/entities/comfort/fng.png' 21:23 <+bridge_> ``` 21:23 <+bridge_> You think correctly :) 21:24 <+bridge_> > copy a existing fng.png as reference and copy paste ur stuff in there and turn urs into a folder i think 21:24 <+bridge_> ``` 21:24 <+bridge_> 2026-01-29 01:22:32 E png: failed to open file for reading. filename='assets/entities/comfort/fng.png' 21:24 <+bridge_> ``` 21:24 <+bridge_> You think correctly :) // I don't have this file, but this is just an example of the path 21:29 <+bridge_> Another prediction error caused by bug #11360 21:29 <+bridge_> 21:29 <+bridge_> If you press ESC and receive a weapon at that moment, the weapon acquisition sound will play continuously, as well as when a player spawns. 21:29 <+bridge_> 21:29 <+bridge_> Is there already an issue created on this topic? 21:29 <+bridge_> https://github.com/ddnet/ddnet/pull/11360 21:36 <+bridge_> No, there's no issue for this yet 21:37 <+bridge_> Then I'll make a video now and create an issue. 21:42 <+bridge_> pick up weapon same time as pressing esc? 21:45 <+bridge_> I can't tell you exactly, I always catch this thing in the nightly build 21:45 <+bridge_> 21:45 <+bridge_> Now I want to catch it again and see if it hit 19.7. 21:49 <+bridge_> Maybe it's similar to a bug I found with unhooking and opening chat breaking prediction (#10463) 21:49 <+bridge_> https://github.com/ddnet/ddnet/issues/10463 21:51 <+bridge_> In the last "nightly", I can’t reproduce it in any way, if I come across it again in the near future, I’ll tell you about it 21:51 <+bridge_> Sound prediction with #11360 is not included in the 19.7 release 21:51 <+bridge_> https://github.com/ddnet/ddnet/pull/11360 21:56 <+bridge_> Guys I learned a lot about LLVM, can we do something ddnet x LLVM? 😄 22:11 <+bridge_> I want to do something with WASM but I have no idea what :feelsbadman: 22:15 <+bridge_> Cross language ddnet modding :poggers2: 22:18 <+bridge_> I wonder if you could utilize llvm IR for stuff like procedual map generation in real time, so you could actually create geometry dash type maps :kek: 22:24 <+bridge_> geometry dash has procedural map generation? 22:24 <+bridge_> any typst fans here? So much better than latex in my experience 22:50 <+bridge_> It is quite nice how well made the graph stuff is in LLVM ngl 22:51 <+bridge_> I wrote a couple very rudimentary optimization passes and it's a breeze with all the support you have. SCCs, DominatorTrees, Loop simplification 22:53 <+bridge_> https://unit42.paloaltonetworks.com/real-time-malicious-javascript-through-llms/ 23:51 <+bridge_> ingame, players showed me that if the hold laser, the fire rate is slower when you enter spec o.o 23:52 <+bridge_> this is true, it's one tick slower due to somebody not understanding direct input 23:52 <+bridge_> tater checked that