01:44 < bridge> chillerdragon: does your bot on multeasymap track block stats? 06:08 < bridge> Yes @Souly checkout !rank or !top3 06:08 < bridge> @soulyvevo: pinger 07:20 < bridge> Who added backdoor to Adorenarine? o0 07:22 < bridge> ``` 07:22 < bridge> Visit https://github.com/ipfs/kubo/releases or https://dist.ipfs.tech/#kubo and update to version 0.36.0 or later. 07:22 < bridge> panic: runtime error: invalid memory address or nil pointer dereference 07:22 < bridge> [signal SIGSEGV: segmentation violation code=0x1 addr=0x20 pc=0x561fd1b28346] 07:22 < bridge> ``` 07:22 < bridge> great 07:22 < bridge> was trying kubo, a ipfs node 07:23 < bridge> and it crashes 07:23 < bridge> go ftw 07:23 < bridge> golang ftw 07:27 < ws-client> **** sigmatationfault <:gigachad:960830678465933403> 07:28 < ws-client> **** @ryozuki urgent reminder that there are 108 pending prs 07:32 < bridge> has anyone thought of making a archive of maps on ipfs 07:32 < bridge> yeah prs, mm ill review sometime later 07:36 < ws-client> **** <:poggers2:1008007455936094328> mergozuki 07:50 < bridge> https://www.iroh.computer/ 07:51 < bridge> i wonder if a p2p masterserver could work 07:56 < bridge> how would registration work 08:03 < ws-client> **** how does registration in any p2p work? I guess you have a public list of known nodes to talk to somewhere. 08:04 < bridge> what would differentiate a tracker list from a matter server itself then 08:04 < bridge> master* 08:11 < bridge> well the tracker list would list some of the initial nodes 08:11 < bridge> but from then on u can find more ppl i guess 08:12 < bridge> it would be hard to ban bad servers tho 08:12 < bridge> ig 08:12 < bridge> also random ppl can make random tracker lists too 08:12 < ws-client> **** @zhn bru your github display name does not match your username I pinged some random https://github.com/vlad in the release because of the changelog script ._. 08:46 < bridge> hi 08:56 < ws-client> **** elo 09:06 < ws-client> **** did you ever have to test something locally that required players with multiple ips? I found this neat hack to get 3 ips locally. 09:06 < ws-client> **** https://zillyhuhn.com/cs/.1753599940.png 09:06 < ws-client> **** local network range, loopback and ipv4/ipv6 10:10 < bridge> gumo ^.^ 10:10 < bridge> #10527 and #10501 should be easy, they are approved and ready 10:11 < bridge> https://github.com/ddnet/ddnet/pull/10527 10:11 < bridge> https://github.com/ddnet/ddnet/pull/10501 10:11 < bridge> all others from me need some love, but I feel like I have too many PRs open simultaniously 10:17 < bridge> nice, added to queue 10:18 < bridge> Does anyone know how the laser in the laser-shotgun works? :justatest: like I need to find it if it is affected by LaserBounceDelay, but from testing it seems to have no effect 10:25 < bridge> but it should have oO idk 10:29 < ws-client> **** @avolicious is rufmord illegal on kog? i would like to report an incident 10:29 < ws-client> **** https://zillyhuhn.com/cs/.1753604911.png 10:58 < bridge> It actually looks like I never destroy the buffer objects in the render layers 10:58 < bridge> https://cdn.discordapp.com/attachments/293493549758939136/1398952714796404826/image.png?ex=68873bbe&is=6885ea3e&hm=b3d10af2413ddf6335c4322442cd77cc47bcb95ab470e8b7feea12f505f67856& 10:58 < bridge> to be fair, the previous code also didn't do this! 11:00 < bridge> I see the same issue in other parts of the code, the TextContainer may calls RecreateBufferObject but never deletes it 11:03 < bridge> ``` 11:03 < bridge> // destroying all buffer objects means, that all referenced VBOs are destroyed automatically, so the user does not need to save references to them 11:03 < bridge> void DeleteBufferContainer(int &ContainerIndex, bool DestroyAllBO = true) override; 11:03 < bridge> ``` 11:03 < bridge> What is a reference VBO? Do I need to care about these? 11:46 < bridge> chillerdragon crash when enter plot zone in BlmapChill, i compiled the latest version just now 11:46 < bridge> https://cdn.discordapp.com/attachments/293493549758939136/1398964771117862922/image.png?ex=688746f8&is=6885f578&hm=9b16741024b9160172492c18b4d603a2347292e317a311bdc36a6be05a2d9ee2& 11:46 < bridge> it happens everytime 12:55 < ws-client> **** could you get a backtrace idk which vector that is @vahemaaa 12:56 < ws-client> **** doesnt crash for me 12:57 < bridge> It's probably an MSVC specific assertion 12:57 < ws-client> **** asan should catch it i guess 12:58 < bridge> Yeah, or compile in RelWithDebInfo and click the Retry button in the popup, @vahemaaa 13:10 < ws-client> **** even asan doesnt have it maybe its a setting idk. Might be some war list entry i dont have 13:10 < ws-client> **** @vahemaaa can u try tuning off the warlist? 13:11 < bridge> Does the Buffer-memory always resizes itself to a max value? It seems like it doesn't get cleared, but it seems like it also doesn't get bigger if I load a smaller map 13:13 < bridge> same 13:14 < ws-client> **** this looks interesting tho ``prediction/entities/character.cpp:1366:4: runtime error: index -1 out of bounds for type 'struct WeaponStat[6]'`` 13:16 < bridge> Maybe depends on the graphics backend 13:17 < bridge> https://cdn.discordapp.com/attachments/293493549758939136/1398987670830579712/image.png?ex=68875c4c&is=68860acc&hm=ff8f4ec79733f6b38d8461291d25148e8b0b079e0d1e12252175342d279a14b5& 13:18 < bridge> Show callstack 13:18 < bridge> Check the call stack for the first frame in DDNet code 13:18 < bridge> Bottom right 13:18 < bridge> ``` 13:18 < bridge> > chillerbot-ux.exe!std::vector>::operator[](const unsigned __int64 _Pos) Line 1930 C++ 13:18 < bridge> ``` 13:19 < bridge> Can you copy the entire call stack? 13:19 < bridge> https://cdn.discordapp.com/attachments/293493549758939136/1398988235631366197/image.png?ex=68875cd3&is=68860b53&hm=8f93321d2de046cc5d1a1558f9c0a9fa767980419033458017d3cc8b4045ec4b& 13:21 < bridge> Thanks. Looks more like a general issue in DDNet to me. 13:23 < bridge> Wanted to ping ryo for review, already in merge queue :deen_star: 13:23 < bridge> aha 13:23 < bridge> when antiping is off 13:23 < bridge> it does not crash 13:23 < bridge> when i turned on antiping, it crashed, at plot zone 13:25 < bridge> @robyt3 can you take a look on #10572 ? I believe it's finished like that 13:25 < bridge> https://github.com/ddnet/ddnet/pull/10572 13:26 < bridge> @robyt3 can you take a look on #10572 ? I believe it's almost finished like that 13:27 < bridge> Yeah, can take a closer look later. `for(auto &&It = m_vRenderLayers.begin(); It != m_vRenderLayers.end(); ++It)` can probably be a for-each loop. And `m_aTextures[i].Invalidate();` should be unnecessary because `UnloadTexture` invalidates the handle. 13:27 < bridge> @ryozuki 13:27 < bridge> Probably needs a rebase so the mingw workflow runs 13:28 < bridge> and yes, it happens on DDNet client also 13:37 < ws-client> **** @robyt3 @vahemaaa yea none of that callstack code should be edited in chillerbot-ux 13:38 < ws-client> **** ah already confirmed thanks @vahemaaa 13:38 < ws-client> **** go open ddnet issue 13:42 < ws-client> **** @vahemaaa will you open an issue or should i? 13:43 < bridge> i was about to, but if you do it, it will be clearer to understand i guess xD 13:43 < bridge> duplicate, can be closed 13:46 < ws-client> **** ffs i could only reproduce once 13:46 < bridge> Where on the map does it crash? 13:46 < ws-client> **** plots 13:46 < ws-client> **** they use special switch tiles 13:47 < ws-client> **** ``set_view 515 365`` @robyt3 45.141.57.154:8303 13:47 < ws-client> **** xd saw u crash @vahemaaa 13:48 < bridge> xd 13:48 < bridge> I see 13:48 < bridge> Why is there a switch with number `-1`? 13:48 < ws-client> **** its for plots 13:48 < bridge> Well, `-1` is out of bounds :monkaS: 13:49 < ws-client> **** thats the idea xd its not a normal switch 13:49 < bridge> :omo: 13:49 < ws-client> **** its a fake switch used for plot tiles 13:49 < ws-client> **** do you also get this @robyt3 ? ``prediction/entities/character.cpp:1366:4: runtime error: index -1 out of bounds for type 'struct WeaponStat[6]'`` 13:49 < bridge> What is the expected behavior? Am I going to break the game mode when simply ignoring those invalid values 13:50 < ws-client> **** i dont think so 13:50 < ws-client> **** server side F-DDrace is forked and client side it would only hide the entities. Not sure if it already requires a custom client to map that. 13:51 < bridge> No, I only added assertions manually, but that one looks worse. Probably a result of supporting no weapon with `-1` 13:52 < ws-client> **** maybe https://github.com/ddnet/ddnet/pull/9230 is not supported too well in prediction code? 13:52 < bridge> yeah, it's missing a check at least there 13:57 < bridge> lmao i hit edge of this drawing, it also crashes with drawings 13:57 < bridge> https://cdn.discordapp.com/attachments/293493549758939136/1398997682781032538/image.png?ex=6887659f&is=6886141f&hm=d8c6d80560890add8082db8ac4600c35acd9eeea3ea322bb799a8114d92dae0d& 14:04 < bridge> im a bad issue opener 14:08 < bridge> can you append a crashlog @vahemaaa ? 14:08 < bridge> let me try 14:09 < bridge> should be config_dir in /dumps 14:10 < bridge> Will DDNet support special color characters in the future, like in Minecraft? It would be helpful if server messages could display different colors in different parts to clearly show their function. 14:12 < bridge> i couldnt find the log there, so i added visual studio's log 14:37 < bridge> 97 prs now @chillerdragon 14:59 < bridge> what's wrong with the test here? https://github.com/ddnet/ddnet/pull/10572 15:02 < bridge> Nice @ryozuki 15:05 < bridge> @xcwqw1: probably not happening any time soon. Here my last attempt https://github.com/ddnet/ddnet/pull/8283 if you go and write a html parser there might be a chance otherwise I don’t think anyone will work on it 15:32 < bridge> Try running the test locally with `scripts/integration_test.py your-build-folder` 15:36 < bridge> Seems like we exceeded the maximum runners though, so some were removed from the queue again due to timeout 15:41 < ChillerDragon> opening console or clicking a tab in menu had a slight delay 15:41 < ChillerDragon> the first time 15:42 < bridge> If you have a lot of console messages that have not been rendered yet and then open the console it may delay a bit 15:42 < bridge> Switching between the browser tabs would probably be due to sorting and filtering of servers being performed every time 15:43 < ChillerDragon> i thought its some super smart render cache feature 15:43 < ChillerDragon> especially in console 15:44 < ChillerDragon> but today the delay increased to like seconds and i full on failed my run xd 15:44 < ChillerDragon> might also be my bot client 15:44 < ChillerDragon> im just surprised 15:44 < bridge> The console rendering isn't very smart at the moment 15:44 < ChillerDragon> was menu 15:44 < ChillerDragon> i clicked "call vote" 15:44 < ChillerDragon> and was stuck like 1s 15:45 < bridge> Weird, but if it's reproducible you could try profiling 15:46 < ChillerDragon> i clicked other menu entries they were as slow as always like just noticable but not game breaking 15:46 < ChillerDragon> lemme boot other client quickly 15:47 < ChillerDragon> cant reproduce gg 15:53 < bridge> I believe the tests timeouted because of this, I can't rerun them 15:54 < bridge> Doesn't really seem related, it's only one test case that times out in both runners and other test cases pass after that 15:54 < bridge> Just how long is the CI/CD pipeline now? 15:55 < bridge> Actually we don't even do any CD 15:57 < bridge> The longest appears to be clang-tidy around 30 minutes 15:58 < bridge> But the queue was hung up on the shorter workflows like checking the rust format, licence etc. 15:58 < bridge> Because the early queue entries were waiting for those workflows to finish, some later queue entries timed out 15:59 < bridge> I don't recall clang-tidy being the slowest run though, was probably from switching to clang-tidy 20 15:59 < bridge> xD 15:59 < bridge> i added o ne again 16:00 < bridge> clang-tidy is pretty slow, I never run it locally 17:07 < bridge> @blaiszephyr we never talked about that one PR after you said you were gonna test it 17:08 < bridge> did you run into anything 17:14 < bridge> I can't even run the integration tests, do I need a specific python version? 17:14 < bridge> ``` 17:14 < bridge> FileNotFoundError: [Errno 2] No such file or directory: './integration_start_client_pipkd33r/client0.fifo' 17:14 < bridge> ``` 17:18 < bridge> Any recent Python 3 version should work 17:19 < bridge> But apparently something on Ubuntu doesn't work, see #9937 17:19 < bridge> https://github.com/ddnet/ddnet/pull/9937 17:23 < bridge> it should be `name_arg = os.open(name, flags=os.O_WRONLY|os.O_CREAT)` , it's missing the create flag 17:23 < bridge> now every test is timing out on ubuntu :/ for me 17:25 < bridge> there is a timeout multiplier? 17:26 < bridge> yeah, there should even be a command line argument for that 17:26 < bridge> but if every test times out it's probably not the timeout that's broken 17:29 < bridge> I only get timeout errors, I can't integration test at all 17:29 < bridge> set the timeout multiplier now to 10 17:41 < bridge> test timeouts on wait_for_exit oO 17:43 < bridge> does it state somewhere, that you need sudoers rights for the tests? 17:44 < bridge> Also I can not reproduce the issue the pipeline had, it works for me on ubuntu24 17:44 < bridge> ``` 17:44 < bridge> sudo python scripts/integration_test.py build 17:44 < bridge> running 11 tests 17:44 < bridge> meta_timeout ... ok 17:44 < bridge> meta_test_timeout ... ok 17:44 < bridge> start_server ... ok 17:44 < bridge> start_client ... ok 17:44 < bridge> client_can_connect ... ok 17:44 < bridge> open_editor ... ok 17:44 < bridge> smoke_test ... ok 17:44 < bridge> start_mastersrv ... skipped 17:44 < bridge> server_can_register ... skipped 17:44 < bridge> server_can_register_tw_0_6 ... skipped 17:44 < bridge> server_can_register_tw_0_7 ... skipped 17:44 < bridge> 17:44 < bridge> test result: ok. 7 passed; 4 skipped, 0 failed; finished in 52.85s 17:44 < bridge> ``` 17:45 < bridge> You shouldn't need sudo for the integration tests, did it only work with sudo for you? 17:57 < bridge> it only worked with sudo for me, and with the fix for directory creation 17:58 < bridge> I know why the test failed, the runner was probably busy, and the smoke test on ubuntu 24 with valgrind enabled takes ages 17:58 < bridge> and it probably cancelled itself after 10 minutes even tho it was still running fine 17:59 < bridge> Can you comment that on #9937? 17:59 < bridge> https://github.com/ddnet/ddnet/pull/9937 18:03 < bridge> @robyt3 can you try to rerun [this action](https://github.com/ddnet/ddnet/actions/runs/16550924173/job/46805622942?pr=10572) once? 18:03 < bridge> merci 18:25 < bridge> tested ogl3 backend it it doesn't have a buffer-memory (it's always 0), I think it means that vulkan is double buffered. But the textures also appear to be cleared in my PR 18:25 < bridge> tested ogl3 backend it seems it doesn't have a buffer-memory (it's always 0), I think it means that vulkan is double buffered. But the textures also appear to be cleared in my PR 18:30 < bridge> they failed again :/ idk 18:35 < bridge> If someone needs an easy issue to work on: 18:35 < bridge> Add allocation size of all vram to all assert messages coming from the gfx backend 18:36 < bridge> Would give us potentially some better clue on what's going on 18:36 < bridge> Even better would probably current ram usage and vram usage fetched from the os too 18:36 < bridge> ``` 18:36 < bridge> if self.valgrind_memcheck: 18:36 < bridge> self.timeout_multiplier *= 10 18:37 < bridge> ``` 18:37 < bridge> I should try to up the timeout multiplier even more, I just seem to cause more overhead or something 19:21 < bridge> anyone tried keycloak 19:21 < bridge> seems like a nice thing to not have to make auth on every app 19:23 < bridge> There are different solutions depending on your type of federation, I guess you're fine with keycloak 19:24 < bridge> at my work we are using unity-idm, which would be probably overkill for you, or do you need to server users in the 5 digits or more? 19:25 < bridge> at my work we are using unity-idm, which would be probably overkill for you, or do you need to serve users in the 5 digits or more? 19:25 < bridge> if you only need SSO, I think the keycloak would already be overkill 😄 19:38 < bridge> lol no 19:38 < bridge> im just new into this stuff 19:38 < bridge> i might do some random apps and thought why not try this fancy stuff 19:38 < bridge> i just want to have auth fast and easy 19:38 < bridge> xd 19:43 < bridge> ``` 19:43 < bridge> for _ in range(2): 19:43 < bridge> server.wait_for_log_prefix("server: player has entered the game", timeout=20) 19:43 < bridge> ``` 19:43 < bridge> 19:43 < bridge> integration tests fail here 🤔 I already upped the timeout from 10 to 20, I guess the log is not there then? 19:43 < bridge> idk if it would be a "fix" just to remove that check 19:44 < bridge> The fix is figuring out why the client doesn't enter the game 19:46 < bridge> it's right after the sv_map command 😦 19:47 < bridge> if the client would have crashed, the test would have noticed, wouldn't it? 19:49 < bridge> i thought about making a mini social app for ddnet 19:49 < bridge> but how would u link ur profile to ur player name 19:49 < bridge> thats impossible i guess 19:51 < bridge> in what sense do you speak about linking? 19:52 < bridge> imagine i register as Ryozuki 19:52 < bridge> and i want to verify im Ryozuki in ddnet 19:52 < bridge> u cant 19:52 < bridge> unless maybe u use discord but it still isnt a surefire way 19:52 < bridge> you get a code, that you need to send as ryozuki in a chat command 19:52 < bridge> hmm 19:52 < bridge> that requires a ingame bot 19:52 < bridge> maybe as a clanname 19:52 < bridge> but nobody could ever stop you from faking to be sb else 19:52 < bridge> so i can use master 19:53 < bridge> true 19:53 < bridge> it may require a econ bot 19:53 < bridge> cuz i can join as a name ingame i want to fake 19:53 < bridge> without accounts its not possible 19:56 < bridge> if you mod a server, you could only let people play after they /login code but this is bound to cause other problems and would basically be a local account 20:03 < bridge> finish accounts pr 👀 20:11 < bridge> client gets stuck in this screen: something like "Asking the server to join" 20:11 < bridge> https://cdn.discordapp.com/attachments/293493549758939136/1399091788307759205/screenshot_2025-07-27_20-10-19.png?ex=6887bd44&is=68866bc4&hm=496f58a8468f7abf958897c543ca1efed71f708354c28f4b6bae89a070970d1c& 20:11 < bridge> cancelling and retrying works 20:19 < bridge> idk, seems like a protocol/timing issue for me, client takes a lot longer in trying to download and setup the map 20:19 < bridge> > Requesting to join the game 20:34 < bridge> I can't reproduce it 22:10 < bridge> huuuge! 22:51 < bridge> i read the pr name as ban linear