06:43 < courageousboaRy> Hi Guys! It's Madeleine Czura! Just thought I'd leave my number here in case you're lonely ;) . 06:43 < courageousboaRy> You can reach me on +44-7599248843 or maddyczura@gmail.com or madeleine.czura@arcadis.com anytime! 06:43 < courageousboaRy> Linkedin: uk.linkedin.com/in/maddy-czura 06:43 < courageousboaRy> Instagram: instagram.com/maddy_czura 06:43 < courageousboaRy> Brothers: Benjamin V Czura(Ben), Timothy P Czura(Tim), Greg Czura 06:43 < courageousboaRy> Sisters: Eleanor Lousie Czura, Josie Czura 06:43 < courageousboaRy> Mom: Lucy P Czura 06:43 < courageousboaRy> Dad: Peter Christopher Czura 06:43 < courageousboaRy> Dad Emails: peter.czura@ntlworld.com, peter.czura@corrigenda.co.uk 06:43 < courageousboaRy> Business Address: Top Floor, 164 Plashet Road, London, United Kingdom, E13 0QT 06:43 < courageousboaRy> Home Address: Comrie, 8 Southampton Road, Fareham, Hampshire, United Kingdom, PO16 7DY 06:52 <+bridge> -_- 07:02 <+bridge> @Discord Mod 07:11 <+bridge> does IRC not have any moderation tools? can you just ban some words in that message? 08:02 <+bridge> I think if you respond to a message it’s already too late 08:02 <+bridge> If it’s sent it’s in the log and also bridged 08:03 <+bridge> That’s why you need to operate your own irc network to drop the send of the message earlier :D but honestly idk maybe quakenet offers that smh 08:04 <+bridge> I mean the bridge is selfhosted, can just patch the go lang app and drop the message there so it doesn’t arrive on discord 09:25 <+bridge> hey, i was wondering how to get a custom color for my mod type in the master server . my mod is called "Nova++" and i'd like to have it colored, do i need to submit a request somewhere or be part of an official list? thanks! 09:36 <+furo> @zarkkx You could append an existing gametype to your gametype, e.g. "Nova++ idm" to get a red color as only the first few letters will be displayed. Otherwise you would need to make a PR to add your color mapping, e.g. https://github.com/ddnet/ddnet/pull/6158 (But I don't think that should be done for some generic block mod) 09:49 <+bridge> I'll open an issue for you - there is a task on my list which involves generating colors automatically for any mod by the mod name 09:52 <+bridge> @learath2 does this need discussion? I think this is sane 10:03 <+bridge> generating the same colors every time based on the mod name? 10:07 <+bridge> I'd guess the harder part is to keep the current colors people are used to while doing this. But I guess the idea in itself sounds sane 10:12 <+bridge> if you have a working code once, just don't touch it - as long as a mod doesn't rename it's color should stay 10:13 <+bridge> this would also go in both directions, like you could rename your mod to force a color 10:14 <+bridge> That's easy, just hash the name, modulo it by 360 and you get a hue. I meant how do you keep the old ones stable after that. (I guess you can keep the hardcoded table for these mods) 10:14 <+bridge> 10:14 <+bridge> Also perhaps some mods get unlucky with their color, is that something we'd want to accomodate? 10:15 <+bridge> this is exactly what I wanted to do 😄 10:15 <+bridge> you keep the old list as is 10:15 <+bridge> and only apply the autocolor after that 10:39 <+bridge> https://cdn.discordapp.com/attachments/293493549758939136/1504040353236516886/Screenshot_20260513-092600.png?ex=6a058a3b&is=6a0438bb&hm=f22ab4a424d677a633a842178aca2159a7cc829a29d3e7ed8b1f65d67c3582fc& 10:39 <+bridge> rip 10:41 <+bridge> https://copilot-billing-preview.github.com/ 10:41 <+bridge> good luck 10:43 <+bridge> what is this about? 10:43 <+bridge> like paying copilot obviously, but I need more context 10:44 <+bridge> github copilot will change their billing model to consumption based billing. That website calculates your projected costs based on your csv file of your usage of the last month. 10:45 <+bridge> https://github.com/settings/billing/premium_requests_usage 10:46 <+bridge> here you can download your csv 10:48 <+bridge> 0$ 10:49 <+bridge> is this your bill? 10:57 <+bridge> I think this shows that the 2-argument `Constant` doesn't work for all cases, some don't have corresponding C++ constants 10:58 <+bridge> damn 💰 10:59 <+bridge> my bill is in the screenshot $60+ 10:59 <+bridge> and next month, it might become $5k+ 11:00 <+bridge> I expanded the PR already, it now has an optional description field and removes the need for the key of the constant 11:00 <+bridge> it then generates the key internally from the value, and doesn't create a static_assert (there is no need for a static_assert that -1 == -1 for example) 11:01 <+bridge> and the description is only used for debugging 11:02 <+bridge> ```C++ 11:02 <+bridge> 11:02 <+bridge> NetIntCustom("m_Jumped", 11:02 <+bridge> values=[ 11:02 <+bridge> Constant(0, description="Not jumping and can air jump"), # Tee has not jumped on current input and can do air jumps 11:02 <+bridge> Constant(1, description="Jumping and can air jump"), # Tee made a jump on current input and can do air jumps 11:02 <+bridge> Constant(2, description="Not jumping but can't air jump"), # Tee has not jumped on current input but can't do air jumps 11:02 <+bridge> Constant(3, description="Jumping but can't air jump"), # Tee made a jump on current input and can't do air jumps anymore 11:02 <+bridge> ] 11:02 <+bridge> ), 11:02 <+bridge> ``` 11:02 <+bridge> 11:02 <+bridge> This is how it currently looks like 11:02 <+bridge> ```python 11:02 <+bridge> 11:02 <+bridge> NetIntCustom("m_Jumped", 11:02 <+bridge> values=[ 11:02 <+bridge> Constant(0, description="Not jumping and can air jump"), # Tee has not jumped on current input and can do air jumps 11:02 <+bridge> Constant(1, description="Jumping and can air jump"), # Tee made a jump on current input and can do air jumps 11:02 <+bridge> Constant(2, description="Not jumping but can't air jump"), # Tee has not jumped on current input but can't do air jumps 11:03 <+bridge> Constant(3, description="Jumping but can't air jump"), # Tee made a jump on current input and can't do air jumps anymore 11:03 <+bridge> ] 11:03 <+bridge> ), 11:03 <+bridge> ``` 11:03 <+bridge> 11:03 <+bridge> This is how it currently looks like 11:04 <+bridge> I'd love to know how I get the debug-snap from `emit_dump` so I can see whhat it produces, because I currently only work from the generated protocol.cpp 11:05 <+bridge> I'm curious, why do you use copilot over the other options? Was it more tokens before? 11:05 <+bridge> I've never seen anyone who uses copilot and pays for it 11:06 <+bridge> ease of use, i guess and vs code integration. haven't really looked for other options. any recommendations? 11:06 <+bridge> And I still see the Constant as useful like this, there are some nasty hidden special values: 11:06 <+bridge> 11:06 <+bridge> ```python 11:06 <+bridge> NetIntCustom("m_Jumps", 11:06 <+bridge> values=[ 11:06 <+bridge> Constant(-1, description="Only groundjump"), # Only a single ground jump 11:06 <+bridge> Range(0, 255) 11:06 <+bridge> ], 11:06 <+bridge> default=2 11:06 <+bridge> ), 11:06 <+bridge> ``` 11:06 <+bridge> codex, claude and gemini all have vs code plugins too, you can just sign up for whichever one you were using the most I guess 11:07 <+bridge> like I assumed that m_Jumps == -1 means infinite jumps 11:07 <+bridge> omg the jumps code 💀 11:07 <+bridge> ptsd 11:07 <+bridge> it's so bad 11:08 <+bridge> it's unchangable netcode at this point - we need to life with the patchwork and do the best out of it 11:09 <+bridge> you could probably refactor it without technically changing the protocol 11:09 <+bridge> like it could become an enum sometimes 11:09 <+bridge> yes by adding a translation layer 11:10 <+bridge> if you didn't have to keep the legacy code I wonder what the best representation would be? 11:10 <+bridge> maybe 2 counters? 11:10 <+bridge> ground_jumps 11:10 <+bridge> air_jumps 11:11 <+bridge> or just ground_jump 11:12 <+bridge> so you could have like 11:12 <+bridge> 11:12 <+bridge> ```cpp 11:12 <+bridge> bool CanGroundJump; 11:12 <+bridge> bool HasGroundJump; 11:12 <+bridge> int MaxAirJumps; 11:12 <+bridge> int RemainingAirJumps; 11:12 <+bridge> ``` 11:13 <+bridge> Maybe instead of a Constant I should add a "Descriptor" which is very similar 11:13 <+bridge> this would be fun too because you could have air jumps but not ground jumps 11:14 <+bridge> after my PR you could add "m_Jumps == -2" for only air jumps :justatest: 11:15 <+bridge> I don't really want to touch that 11:15 <+bridge> how would you even activate that? 11:15 <+bridge> you need a new tile? or can the jump count tile do it? 11:15 <+bridge> how do you activate m_jumps == -1 currently? Is this not a config variable? 11:18 <+bridge> okay no idea 11:18 <+bridge> it's a tile, I think 11:18 <+bridge> it was added for the tutorial 11:18 <+bridge> ``` 11:18 <+bridge> int NewJumps = Collision()->GetSwitchDelay(MapIndex); 11:18 <+bridge> if(NewJumps == 255) 11:18 <+bridge> { 11:18 <+bridge> NewJumps = -1; 11:18 <+bridge> } 11:18 <+bridge> ``` 11:18 <+bridge> you need to set switch delay to 255 11:19 <+bridge> stuff like this makes me think about "virtual" tiles in the editor, that place the right switch tiles but a bit hidden from the mapper 11:24 <+bridge> gh job says "ubuntu latest", runs on 24.04 11:27 <+bridge> why u use copilot 11:29 <+bridge> it's right at the start of the tutorial 🙂 should have noticed already, because I used this for debugging xD 11:30 <+bridge> because my weekends are time limited and I like to keep side projects limited a (few) weekend(s) 🥲 11:30 <+bridge> i mean why not use another like claude 11:30 <+bridge> if ur paying 60 11:31 <+bridge> i was running copilot for like 5 days straight, dunno if usage based billing would be cheaper there at all. 11:31 <+bridge> define 5 days straight 11:31 <+bridge> 24/7? 11:31 <+bridge> yes 11:32 <+bridge> and it doesnth ave limits? 11:32 <+bridge> it did not, which is why they are now changing their billing model 11:32 <+bridge> copilot has (/used to have?) billing per prompt 11:32 <+bridge> ah now it makes more sense 11:32 <+bridge> they had billing oer session 11:32 <+bridge> so you'd have to make sure it runs forever 11:32 <+bridge> so not token based 11:32 <+bridge> i wonder what u do 24/7 11:33 <+bridge> there I played around with reimplementing the teeworlds client protocol in Go 11:33 <+bridge> using chillers Go code and other Code as reference 11:33 <+bridge> and its running prompts 24/7 for real? 11:33 <+bridge> cuzthats a bit insane xD 11:34 <+bridge> there is the yeet mode 11:34 <+bridge> auto approve 11:34 <+bridge> @heinrich5991 valgrind integration tests are failing for me on cachyos, idk how to debug this: 11:34 <+bridge> ``` 11:34 <+bridge> ❯ python scripts/integration_test.py --show-full-output --valgrind-memcheck build 11:34 <+bridge> running 13 tests 11:34 <+bridge> meta_timeout ... ok 11:34 <+bridge> meta_test_timeout ... ok 11:34 <+bridge> start_server ... ok 11:34 <+bridge> start_client ... FAILED (build/integration_start_client_1d9qxhda) 11:34 <+bridge> ... 11:35 <+bridge> ``` 11:35 <+bridge> and then I had multiple sessions in parallel working on different features on the same codebase 11:35 <+bridge> what's the error message? ^^ 11:35 <+bridge> I didn't get one 11:35 <+bridge> maybe I should wait for all tests to finish first 🙈 11:35 <+bridge> this is the whole output? 11:35 <+bridge> okay, i do that too. but i at most just spent work hours using it, not 24/7 and the sub lasts more than enough, altho i use the 90€ one 11:35 <+bridge> for the start_client test - yes 11:35 <+bridge> like it continues with the next test 11:36 <+bridge> claude? 11:36 <+bridge> `python scripts/integration_test.py --valgrind-memcheck build start_client` 11:36 <+bridge> yeah 11:37 <+bridge> i might wanna take a look at that, once GitHubs kills its Copilot Product on the 1st of June. 11:37 <+bridge> u should, claude is much much better 11:37 <+bridge> copilot uses older models from providers 11:37 <+bridge> or first of July, once people cancel their subscriptions 11:37 <+bridge> I used the Claude Opus Models in Copilot 11:37 <+bridge> but i thiunk its 4.5 11:38 <+bridge> i am using 4.7 11:38 <+bridge> no 11:38 <+bridge> Github integrates the new models in a matter of a few days after official announcement 11:38 <+bridge> and the thing is, claude code, the cli program, is a better harness to run the model itself 11:38 <+bridge> but maybe ur right, i havent totally tried copilot cuz i prefer to go to the source 11:38 <+bridge> codex used to have per prompt billing too, it was basically infinite. now it's per token and not infinite 11:39 <+bridge> claude used to be infinite too 11:39 <+bridge> ehh 11:39 <+bridge> there was a stream of a guy with 20 agents on a screen 11:39 <+bridge> when? 11:39 <+bridge> maybe due to the price explosion, Github will try to better optimize the token usage. 11:39 <+bridge> very early days 11:39 <+bridge> must have been 11:39 <+bridge> I used claude over a year ago and it was already tokens 11:39 <+bridge> no what i mean is that the claude max sub 11:40 <+bridge> the 90€ one 11:40 <+bridge> had infinite usage 11:40 <+bridge> oh lmao 11:40 <+bridge> ``` 11:40 <+bridge> ==27245== realloc() with size 0 11:40 <+bridge> ==27245== at 0x58CF250: realloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so) 11:40 <+bridge> ==27245== by 0x1E312B4E: ??? (in /usr/lib/libnvidia-glcore.so.595.71.05) 11:40 <+bridge> ==27245== by 0x1D7A38F6: ??? (in /usr/lib/libGLX_nvidia.so.595.71.05) 11:40 <+bridge> ==27245== by 0x1D7FF581: ??? (in /usr/lib/libGLX_nvidia.so.595.71.05) 11:40 <+bridge> ==27245== by 0x1D7A3012: ??? (in /usr/lib/libGLX_nvidia.so.595.71.05) 11:40 <+bridge> ==27245== by 0xF: ??? 11:40 <+bridge> ==27245== by 0x507FC28: call_init.part.0 (dl-init.c:60) 11:40 <+bridge> ==27245== by 0x507FDA2: call_init (dl-init.c:120) 11:40 <+bridge> ==27245== by 0x507FDA2: _dl_init (dl-init.c:121) 11:40 <+bridge> ==27245== by 0x507B5A3: _dl_catch_exception (dl-catch.c:215) 11:40 <+bridge> ==27245== by 0x508807F: dl_open_worker (dl-open.c:799) 11:40 <+bridge> ==27245== by 0x507B515: _dl_catch_exception (dl-catch.c:241) 11:40 <+bridge> ==27245== by 0x5088573: _dl_open (dl-open.c:900) 11:40 <+bridge> ==27245== Address 0x13bd6fe0 is 0 bytes after a block of size 0 alloc'd 11:40 <+bridge> ==27245== at 0x58C78D8: malloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so) 11:40 <+bridge> ==27245== by 0x1E312B3E: ??? (in /usr/lib/libnvidia-glcore.so.595.71.05) 11:40 <+bridge> ==27245== by 0x1D7A38F6: ??? (in /usr/lib/libGLX_nvidia.so.595.71.05) 11:40 <+bridge> ==27245== by 0x1D7FF581: ??? (in /usr/lib/libGLX_nvidia.so.595.71.05) 11:40 <+bridge> ==27245== by 0x1D7A3012: ??? (in /usr/lib/libGLX_nvidia.so.595.71.05) 11:40 <+bridge> ==27245== by 0xF: ??? 11:40 <+bridge> ==27245== by 0x507FC28: call_init.part.0 (dl-init.c:60) 11:40 <+bridge> ==27245== by 0x507FDA2: call_init (dl-init.c:120) 11:40 <+bridge> ==27245== by 0x507FDA2: _dl_init (dl-init.c:121) 11:40 <+bridge> ==27245== by 0x507B5A3: _dl_catch_exception (dl-catch.c:215) 11:40 <+bridge> ==27245== by 0x508807F: dl_open_worker (dl-open.c:799) 11:40 <+bridge> ==27245== by 0x507B515: _dl_catch_exception (dl-catch.c:241) 11:41 <+bridge> ==27245== by 0x5088573: _dl_open (dl-open.c:900) 11:41 <+bridge> ==27245== 11:41 <+bridge> { 11:41 <+bridge> oooh k 11:41 <+bridge> yeah NVIDIA wohoo! 🎉 11:41 <+bridge> not anymore tho 11:41 <+bridge> damn 11:41 <+bridge> thanks! 11:41 <+bridge> maybe you could add a `--fail-fast` or `--continue-after-error` flag to `integration_test.py` 11:41 <+bridge> if u want to try models https://ollama.com/library/deepseek-v4-pro has a 20€ sub and u can use opencode with it and try the open models, mainly chinese ones 11:41 <+bridge> they arent that bad 11:41 <+bridge> if u want to try models https://ollama.com/search?c=cloud has a 20€ sub and u can use opencode with it and try the open models, mainly chinese ones 11:41 <+bridge> if u want to try models https://ollama.com/search?c=cloud has a 20€ sub and u can use opencode with it and try the open models, mainly chinese ones 11:41 <+bridge> i'm too lazy D: 11:42 <+bridge> *back to work* 11:47 <+bridge> I could also build the headless client and do a check with valgrind 11:57 <+bridge> turns out the valgrind integration test is just flakey again (: 11:59 <+bridge> flaky in what way? 11:59 <+bridge> what's the error? ^^ 12:00 <+bridge> flakey in terms of "I restarted the job on github and it passed now" 12:01 <+bridge> attempt 1: https://github.com/ddnet/ddnet/actions/runs/25787307850/attempts/1?pr=12106 12:02 <+bridge> ```console 12:02 <+bridge> failures: 12:02 <+bridge> 12:02 <+bridge> ---- smoke_test ---- 12:02 <+bridge> Traceback (most recent call last): 12:02 <+bridge> File "/home/runner/work/ddnet/ddnet/scripts/integration_test.py", line 137, in run_test 12:02 <+bridge> test(env) 12:02 <+bridge> File "/home/runner/work/ddnet/ddnet/scripts/integration_test.py", line 729, in smoke_test 12:02 <+bridge> client1.wait_for_log_exact("client: state change. last=2 current=3", timeout=15) 12:02 <+bridge> File "/home/runner/work/ddnet/ddnet/scripts/integration_test.py", line 427, in wait_for_log_exact 12:02 <+bridge> return self.wait_for_log(lambda l: l.line == line, description=f"log line exactly matching `{line}`", timeout=timeout) 12:02 <+bridge> ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 12:02 <+bridge> File "/home/runner/work/ddnet/ddnet/scripts/integration_test.py", line 413, in wait_for_log 12:02 <+bridge> event = self.next_event(timeout_id) 12:02 <+bridge> ^^^^^^^^^^^^^^^^^^^^^^^^^^^ 12:02 <+bridge> File "/home/runner/work/ddnet/ddnet/scripts/integration_test.py", line 398, in next_event 12:02 <+bridge> event.raise_on_error(timeout_id) 12:02 <+bridge> File "/home/runner/work/ddnet/ddnet/scripts/integration_test.py", line 77, in raise_on_error 12:02 <+bridge> raise TimeoutError(f"timeout waiting for {self.description}") 12:02 <+bridge> TimeoutError: timeout waiting for log line exactly matching `client: state change. last=2 current=3` 12:02 <+bridge> ``` 12:03 <+bridge> eh 12:14 <+bridge> Maybe we should just increase the valgrind timeout multiplier. Timeouts on that line correspond to too slow client starting/connecting when running with valgrind. 13:22 <+bridge> @robyt3 What do you think of the review comment though :D? 13:22 <+bridge> @robyt3 What do you think of the review comment though 😄 ? 13:42 <@heinrich5991> I've set the #ddnet channel on IRC to moderated again 13:43 <@heinrich5991> ChillerDragon: please log into Q so that I can grant you voice permanently 13:50 <+bridge> ` 277G │ /var/lib/docker │ of which 214G is build cache (213.6G reclaimable per docker system df) │` 13:50 <+bridge> damn docker 13:52 <+bridge> cargo clean 13:52 <+bridge> Removed 111227 files, 79.7GiB total 13:52 <+bridge> monkaS 13:52 <+bridge> :justatest: 14:10 <+bridge> i just saved up 400gb data 14:10 <+bridge> pruning builds xD 14:10 <+bridge> I heard something about automatic cache cleaning, but not sure if that's about the global ~/.cargo cache or build directories 14:11 <+bridge> my disk isn't as large, but I also save a lot when I clean up target directories before doing backups 😅 14:24 <+bridge> its been ages since i havent logged to irc 14:24 <+bridge> i guess i probs lost my q account 14:32 <+bridge> We are servicing our own gitlab runners at work, I can tell you docker is a bitch and you should setup cronjobs 14:32 <+bridge> maybe quakenet deletes Q accounts that are unused for a while 14:32 <+bridge> let me check what we set up just for you 14:34 <+bridge> ``` 14:34 <+bridge> 0 21 7 * * docker system prune -a 14:34 <+bridge> 0 21 7 * * docker volume prune -a 14:34 <+bridge> ``` 14:35 <+bridge> 14:35 <+bridge> Well that was less than I expected 😄 14:36 <+bridge> ``` 14:36 <+bridge> 0 21 * * * docker system prune -a 14:36 <+bridge> 0 21 7 * * docker volume prune -a 14:36 <+bridge> ``` 14:36 <+bridge> 14:36 <+bridge> Well that was less than I expected 😄 14:50 <+bridge> is it worth to open a PR if I can improve the client startup time by 2 ms? 🙈 14:54 <+bridge> if it doesn't make the code worse, or even makes it better, go ahead 🙂 15:02 <+bridge> how does it achieve 2 ms? ^^ 15:12 <+bridge> Hi everyone, 15:12 <+bridge> 15:12 <+bridge> I wanted to reach out regarding a project I'm working on: creating an official FreeBSD port for DDNet. 15:12 <+bridge> 15:12 <+bridge> Currently, FreeBSD users have no straightforward way to install DDNet — compiling from source on FreeBSD requires resolving several compatibility issues (missing libnotify, inotify vs kqueue differences, etc.), which is a barrier for many users. The goal of this port is to make installation as simple as: 15:12 <+bridge> 15:12 <+bridge> sudo pkg install ddnet 15:12 <+bridge> 15:12 <+bridge> I've already started mapping all dependencies to their FreeBSD ports equivalents (SDL2, freetype2, opusfile, glew, ffmpeg, etc.) and drafted the initial port Makefile, pkg-descr, and pkg-plist following the FreeBSD Porter's Handbook guidelines. 15:12 <+bridge> 15:12 <+bridge> Before going further, I'd like to confirm a few things with the team: 15:12 <+bridge> 15:12 <+bridge> 1. Do you have any objections to an unofficial port being submitted to the FreeBSD ports tree? 15:12 <+bridge> 2. Are there any known FreeBSD-specific issues I should be aware of beyond the Linux-specific APIs? 15:12 <+bridge> 3. Would you be willing to provide an official release tarball (or confirm the GitHub release tarballs are suitable) for the distinfo checksums? 15:12 <+bridge> 15:12 <+bridge> I'm planning to submit the port to FreeBSD Bugzilla once it builds and passes portlint cleanly. 15:12 <+bridge> 15:12 <+bridge> Thanks for building such a great game — happy to share the port files if anyone is interested. 15:12 <+bridge> 15:12 <+bridge> Best regards 15:12 <+bridge> it doesn't, it achieves alsmost nothing xD 15:17 <+bridge> > 1. Do you have any objections to an unofficial port being submitted to the FreeBSD ports tree? 15:17 <+bridge> I don't think there are any objections 15:17 <+bridge> > 2. Are there any known FreeBSD-specific issues I should be aware of beyond the Linux-specific APIs? 15:17 <+bridge> I'm not aware of any 15:17 <+bridge> I am pretty sure we have code in order to support FreeBSD, I wonder _why_ it's not working out of the box in the first place 15:18 <+bridge> > 3. Would you be willing to provide an official release tarball (or confirm the GitHub release tarballs are suitable) for the distinfo checksums? 15:18 <+bridge> you can find release tarballs at https://ddnet.org/downloads/ 15:19 <+bridge> code not tested in CI rots and eventually doesn't work without small fixes anymore 15:21 <+bridge> I leave this decision to you 15:21 <+bridge> I just needed the mutable keyword for the first time 🎉 15:23 <+bridge> why, where? 15:25 <+bridge> inside the tune color PR, because the tune mapper needs to be modified, but I also need CRenderLayerEntityTune::GetTileData to be const correct due to the polymorphism 15:26 <+bridge> Like, I need a function from a class to be const, but one of it's members to be _mutable_ 15:26 <+bridge> only other solution I know is putting it into a shared_ptr 15:28 <+bridge> Thank you so much for your reply, I'll do my best and try to make the game 100% identical to the original 😁 15:29 <+bridge> @heinrich5991 i don't know what I did wrong, but why does this now show a 2K diff? https://github.com/ddnet/ddnet/pull/11711 15:30 <+bridge> what did you do? 🙂 15:30 <+bridge> I apparently didn't write rebase --continue ... 15:32 <+bridge> ah and then I ammended the changes to the wrong commit 15:32 <+bridge> beatiful 15:34 <+bridge> fixed 15:34 <+bridge> ... ;_; 15:36 <+bridge> this would not have happened with jj 15:37 <+bridge> I just had a weird bug, I did the same as in the video, and after executing `/r` command I was always put on the edge with the tee in deep. I can't reproduce it anymore. Is this a known bug? 15:37 <+bridge> https://cdn.discordapp.com/attachments/293493549758939136/1504115431256887377/azazel_2026-05-13_16-31-41.mp4?ex=6a05d027&is=6a047ea7&hm=27e28a088e779873894f0d0604ee365b9f54bc481908cfb9f68b93fd81e3f2b0& 15:39 <+bridge> you probably hit the "save" ground in the same tick as the deep freeze, and the save ground is set and stored before the deep freeze is applied 15:39 <+bridge> this is just my guess ... 15:40 <+bridge> I could probably build you a map with a speedtile pointing down which allows you to autojump in the freeze triggering this 15:44 <+bridge> @12944qwerty I turned down the saturation from 100% to 75% :owo: 15:58 <+bridge> is there any documentation on how teeworlds calculates mouse sensivity? like the formula how the inp mousesens value maps to ingame cursor movement 16:00 <+bridge> I guess this is a good starting point: 16:01 <+bridge> thank u 16:02 <+bridge> and then from here 16:02 <+bridge> 16:02 <+bridge> idk what "OnCursorMove" does 16:02 <+bridge> teeworlds* or ddnet? Because they work differently 16:02 <+bridge> teeworlds* or ddnet? Because they work/behave differently 16:02 <+bridge> what are you trying to do? ^^ 16:02 <+bridge> I assume writing an aimbot :p 16:02 <+bridge> if i knew about coding i wouldve founded it myself 16:03 <+bridge> im trying mouse acceleration and am trying to match my ingame sensivity to my windows sensivity 16:04 <+bridge> and on rawaccel i can configure some things 16:04 <+bridge> and here is the conversion logic: 16:04 <+bridge> ok ty 16:04 <+bridge> in ddnet `inp_mousesens 200` should translate 1:1, IIRC 16:04 <+bridge> 16:04 <+bridge> There was a forum post about that somewhere 😆 16:04 <+bridge> I think you just need to set inp_mousesense to 100 then 16:05 <+bridge> i already did that 16:05 <+bridge> why 200? 16:05 <+bridge> it still feels off 16:05 <+bridge> :Shruggo:, it's also the default valur 16:05 <+bridge> :Shruggo:, it's also the default value 16:05 <+bridge> oh wait 200? 16:05 <+bridge> do you have mouse accleration on on windows? 16:05 <+bridge> i set it to 100 16:06 <+bridge> no, i have it turned on on rawaccel, a software that works on kernel level 16:06 <+bridge> @qxdfox why the questionmark :p 16:06 <+bridge> why 200 :thonk: maybe something with zoom factor 16:06 <+bridge> https://forum.ddnet.org/viewtopic.php?t=3554 16:06 <+bridge> oh right.. i use 11 zoom 16:06 <+bridge> why would you need mouse sens for that 16:07 <+bridge> I won't explain myself here. 16:07 <+bridge> I won't explain myself here now about this topic. 16:08 <+bridge> does the zoom affect anything? 16:08 <+bridge> it shouldnt no? 16:09 <+bridge> it doesnt change how fast the cursor moves 16:09 <+bridge> it does, but it also affects the screen size in the game which should cancel itself out 16:09 <+bridge> I assume you don't use dyn 16:10 <+bridge> it only affect(ed) precision, but that was fixed I think 16:11 <+bridge> I think I understand where the factor 2 comes from 16:11 <+bridge> it's screen/physics pixel conversion 16:11 <+bridge> ok thank you for the help, since 200 is the default value ill try putting rawaccel to 0.95 and see if its better 16:12 <+bridge> wow it really does feel better 16:12 <+bridge> but now my windows sens is messed up 16:13 <+bridge> :ohNooo: 16:13 <+bridge> need perfect precision to delete history as fast as possible 16:13 <+bridge> :HmmNoted: 17:24 <+bridge> rawaccel is fun 17:24 <+bridge> i turned it off now 17:24 <+bridge> so much better 17:24 <+bridge> its ahh 17:25 <+bridge> i got used to it for several days but its just not for tw 17:25 <+bridge> depends which curve you use and if you can get used to it 17:26 <+bridge> https://cdn.discordapp.com/attachments/293493549758939136/1504142721546322051/image.png?ex=6a05e992&is=6a049812&hm=aa0c1551f7004aaa628521bacbf878d0f59f7773395df3e73225ac8c9ad1feea& 17:26 <+bridge> doesn't look sane in my eyes probably for something like cs and val maybe 17:27 <+bridge> input offset that high will always feel bad in tw 17:27 <+bridge> yeah you're right 17:27 <+bridge> i still think teeworlds is not a game where you can effectively use accel tho 17:29 <+bridge> I use a default power curve to help with stopping power since I'm on a glasspad with a 35g mouse 17:29 <+bridge> so works for me personally 17:30 <+bridge> does it provide you any benefits that no raw accel wouldnt tho 17:31 <+bridge> it's configurable mouse acceleration either you like it or you don't 17:31 <+bridge> there really isn't much more to it 17:31 <+bridge> it can help with bad habits too like mouse rotation 17:33 <+bridge> putting on random curves isn't gonna do you any good if you wanna use it to help you with your aim you will have to make a curve that suits you 17:33 <+bridge> that also means you need to know your weakness 17:33 <+bridge> how is it gonna help you with mouse rotation 17:34 <+bridge> should go to #off-topic 18:10 <+bridge> <12944qwerty> So uh how long does it take for a pr to get merged lol 18:10 <+bridge> <12944qwerty> Also what does it look like with 75% 18:10 <+bridge> 7000 years minimum 18:15 <+bridge> i think most top aimers dont use it 19:21 <+bridge> https://github.com/ddnet/ddnet/issues/12135 for your 3rd point though 20:42 <+ChillerDragon> @qxdfox when advertise chillerbot in the ban message 20:42 <+ChillerDragon> `You have been banned for 5040 minutes (Download a suitable client from ddnet.org, tclient.app or entityclient.net)` 20:43 <+bridge> i dont advertise bots 20:43 <+ChillerDragon> :troll: 20:43 <+bridge> :owo: 20:43 <+ChillerDragon> its legit -.- 20:43 <+bridge> no its not 20:43 <+ChillerDragon> ?? 20:43 <+bridge> chiller**bot** 20:43 <+ChillerDragon> whats not legit about it 20:43 <+bridge> it says botr 20:44 <+ChillerDragon> its a joke i made 10 years ago 20:44 <+bridge> 50 ddcoins 20:44 <+ChillerDragon> there are no unfair cheats in it 20:44 <+ChillerDragon> also send unban 20:44 <+bridge> why u banned again 20:44 <+ChillerDragon> i joined 20:44 <+ChillerDragon> and got banned 20:44 <+ChillerDragon> as always xd 20:44 <+bridge> see ur bot 20:44 <+ChillerDragon> bru 20:45 <+bridge> does ur custom private bot version send what the normal one sends 20:45 <+ChillerDragon> it identifies it self as zx instead of ux 20:45 <+ChillerDragon> but other than that yea 20:46 <+bridge> okay 20:46 <+ChillerDragon> i mean you made it work 3 times already 20:48 <+bridge> i didnt change anything 20:50 <+ChillerDragon> weird last time it worked 21:12 <+bridge> status on 128p test server? 21:15 <+bridge> https://tenor.com/view/happy-dusting-spider-web-cleaning-house-back-to-work-gif-12791562 21:16 <+bridge> :/ 21:17 <+bridge> why cant everyone just be nice to each other 21:40 <+bridge> because it's impossible 21:40 <+bridge> saddo shit 21:51 <+bridge> The port already exists ? 21:51 <+bridge> Just probably not updated 21:52 <+bridge> https://www.freshports.org/games/DDNet 21:53 <+bridge> You can probably just help maintaining this version 23:05 <+bridge> chillerbot I found the issue btw... 23:05 <+bridge> i wont go into details but its hella stupid