00:27 <+bridge_> <_qey> How do I add custom tuning to maps in tune_zones? It says unknown argument value, despite it being a real tune. 00:27 <+bridge_> <_qey> Real tune that I added server-side. 00:28 <+bridge_> <_qey> Is there maybe an option like “Allow unused” for tiles? I really don’t want to redo tune_zones to accommodate my needs in the code, not in the map. 00:29 <+bridge_> <12944qwerty> random question, where are the servers located 00:29 <+bridge_> <12944qwerty> random question, where are the servers located (usa1,2,4) 00:29 <+bridge_> https://ddnet.org/status/ 00:38 <+bridge_> <_qey> Nvm, I forgot you can do it in the config. 04:05 <+bridge_> yeahh i always think about this happening 04:05 <+bridge_> i get weird about building up too much dotfiles 04:06 <+bridge_> and im like damn, if im ever faced with defaults, can i even work still? 04:06 <+bridge_> so its weird to customize too much 04:07 <+bridge_> and by Ashburn, it's Ashburn, VA, and Hillsboro is OR 04:07 <+bridge_> so west central/mx and east 04:07 <+bridge_> pretty much all of USA can get good ping now, only weird spot i guess is northern alberta 04:08 <+bridge_> we used to have CAN but there's no point now that there's east coast, and it was quebec or ontario anyway 05:13 <+bridge_> https://github.com/ddnet/ddnet/pull/7253 (reply to the q about `cl_sub_tick_aiming`) 06:46 <+bridge_> btw if you'd like to convince yourself that it's sufficently random you can check 06:46 <+bridge_> https://brashandplucky.com/2022/08/29/the-avalanche-effect.html 06:46 <+bridge_> and 06:46 <+bridge_> (need to modify the code to select murmur3) 06:46 <+bridge_> 06:46 <+bridge_> the murmur3 finalizer is the best 32bit mixer not found by exhaustive search, but the exhaustive search ones have some sketchy questionable RNG test results where it seems optimizing for low bias causes it to fail certain randomness tests, so I just kept murmur3 06:46 <+bridge_> 08:36 <+bridge_> i started using micro in terminals its kinda nice 10:16 <+bridge_> what does micro have that nvim/emacs/helix doesnt? 10:16 <+bridge_> 10:16 <+bridge_> i tried it out and i really really really dont like the default keybinds :kek: 10:58 <+bridge_> Better default keybinds 10:58 <+bridge_> Xd 10:59 <+bridge_> at least for me, because i grew up using gui text editors on computers before touching terminal text editors 10:59 <+bridge_> Same here 11:00 <+bridge_> I still kinda like vim bindings at least the two I know 11:00 <+bridge_> Imagine if there was ssh as alternative for fifo and Econ. Would that be cool? 12:00 <+bridge_> its still missing some and doesnt integrate with kitty anyhows 12:01 <+bridge_> as far as i know doesnt have a pallete for change settings with just searching for them 12:01 <+bridge_> default them has a bg instead of transparent 12:01 <+bridge_> and syntax highlighting uses regex and breaks alot 12:25 <+bridge_> Privet, anymonya can edit my map? 13:15 <+bridge_> @cartmanbrooffical: yes 13:59 <+bridge_> huh I wonder why ddnet no longer gets this error 14:00 <+bridge_> I still get it all the time on my repositories 14:58 <+bridge_> QUIC mentioned??? 14:58 <+bridge_> https://cdn.discordapp.com/attachments/293493549758939136/1460996410811089060/image.png?ex=6968f270&is=6967a0f0&hm=47ac6daa2866681599fafafb4e76e8c53c99d0261818a3a1b23a7ee31466c8c4& 15:19 <+bridge_> ❤️ 15:23 <+bridge_> eeeeeeeeh 15:24 <+bridge_> Won't this require embedding ddnet specific stuff into the maps? I don't quite like the sound of that 15:32 <+bridge_> Jupstar already did that 15:33 <+bridge_> sure, we can try to do that 🙂 I'd also like to see an easier map format, probably based on .zip 15:33 <+bridge_> please tell us where we could improve by breaking "unnecessary backward compatibility" 15:33 <+bridge_> this is just mythical thinking IMO 15:38 <+bridge_> local privilige escalation zeroday won't give you that much, I think 15:39 <+bridge_> no 15:40 <+bridge_> @learath2 see ^ 15:41 <+bridge_> I remember `.map.cfg` getting embedded into the map though, no? 15:42 <+bridge_> GER1(0) has custom DDoS protection. if you're not sending exactly what the official client sends, you might get rejected. you can check wireshark for the differences 15:42 <+bridge_> only `.cfg` 15:42 <+bridge_> very nice distinction btw 15:42 <+bridge_> (/s) 17:02 <+bridge_> well, mapfile changes would be one of them. ideally, images are not embedded but referred to by some hash, so clients can reuse common image files across multiple maps 17:05 <+bridge_> you don't necessarily need to break backwards compatibility for this but i think it'd be easier to make features if we did not guarantee backwards compatibility on major versions 17:07 <+bridge_> are you suggesting releasing a new version where everyone needs to upgrade at the same time? 17:07 <+bridge_> otherwise you'll necessarily need backward compatibility so not everyone has to upgrade at the same time 17:09 <+bridge_> if you have a proposal for a new map format, I'd be interested in being involved in it — I could try writing the backward compatibility, too 17:10 <+bridge_> the backward compatibility "just" has to take a map in the new format and serve it to the client in the old format, right? 17:10 <+bridge_> i think you could upgrade servers over time so if people want to play on servers with new features, they have to upgrade their client. Then over a few months you close the old servers. 17:10 <+bridge_> yeah i think ideally the server just converts it in memory on new map load for older clients 17:12 <+bridge_> hmm, actually this sounds a bit tricky because the client should be able to save maps with full images as well 17:13 <+bridge_> yes, I think designing the actual map format is a bit trickier than the backward compatibility 17:14 <+bridge_> ill just open an issue so it doesnt get lost cuz i remember discussing this a while ago too 17:14 <+bridge_> https://github.com/ddnet/ddnet/issues/5165 17:15 <+bridge_> @l._ouis maybe we could start by finding the requirements for our new map format 17:16 <+bridge_> yep, there are also some other good requests from mappers like better layer organization and higher numbers on teleports/switches that i'd want considered too 17:16 <+bridge_> perhaps you could post them to that thread 17:35 <+bridge_> can't we just adapt to twmap™ which already handles both :monkalaugh: 17:35 <+bridge_> can't we just adapt to twmap™ which already handles both :monkalaugh: (external and embedded images and parsing of said external images) 17:36 <+bridge_> yes, it might be possible to use that for backward compatibility 17:37 <+bridge_> does twmap have its own format? 17:37 <+bridge_> yes, `.twmap.tar` 17:37 <+bridge_> i think the trickiness is that you can't share maps from downloadedmaps/, because they won't contain embedded images 17:37 <+bridge_> yes, but it wasn't designed to be a good map format 17:37 <+bridge_> perhaps we could merge the maps again for downloadedmaps/ 17:39 <+bridge_> We probably first want to make sure there is real value to a new map format, because whether you like it or not both the client and the server will have to support old and new maps for a decent while 17:39 <+bridge_> Lots of extra code 17:40 <+bridge_> yes, but for that we have to collect requirements, and I think it's good that @l._ouis is doing that 🙂 17:40 <+bridge_> I would love to have a format that you can edit more easily in tools other than ddnet 17:41 <+bridge_> especially for embedded mapres etc. — which is why I think a zip file would be good 17:41 <+bridge_> like libreoffice etc. also do it 17:44 <+bridge_> yeah, i was trying to think of requested features that aren't possible to just add onto the current map format, which I guess is higher values for tile flags/values? 17:45 <+bridge_> separated map/images can also not be added in a backward compatible fashion to the current map format 17:46 <+bridge_> so might as well change the format if that's done 17:50 <+bridge_> or changing the image format to PNG 17:50 <+bridge_> would also be nice 20:04 <+bridge_> q3 had this, but it didn't really work well because some map required you to have other maps to be visually correct, but you had no way of knowing which maps you lacked 20:05 <+bridge_> q3 as well 🙂 20:29 <+ChillerDragon> @handerfall a moderator of mine asked to ban cactus client from my server because the player indicator is an unfair advantage. Could you disable that on pvp servers? 22:26 <+ChillerDragon> what could i have messed up server side to cause this when updating my client? https://github.com/ddnet-insta/ddnet-insta/issues/518 22:26 <+ChillerDragon> my projectile is only visible like 10 tiles far if i am walking 22:26 <+ChillerDragon> if i stand still its fully visible 22:30 <+bridge_> i think u should use python instead of c++, i like it better tbh 22:32 <+ChillerDragon> @Assa looks like you broke the scoreboard on onbgy fng 22:32 <+bridge_> I don't think so, I think onbgy broke it 22:33 <+bridge_> they probably just need to rebase 22:44 <+bridge_> wait what, the snapping of the finish time breaks the scoreboard? 22:52 <+bridge_> Chiller: I am investigating, this is a bug 22:53 <+ChillerDragon> @robyt3 thanks for the nostalgia of reminding me about https://github.com/ddnet/ddnet/pull/9417 I cracked that together drunk at the airport in bangkok xd 22:53 <+ChillerDragon> @Assa cool thanks, tbh not your fault the reviewers should have tested and caught that so its on me 22:54 <+bridge_> approved by 3 people, but this was hard to spot tbh 22:54 <+ChillerDragon> not really 22:54 <+ChillerDragon> its a obvious thing to test 22:55 <+bridge_> > if(GameClient()->m_MapBestTimeSeconds != FinishTime::UNSET) 22:55 <+bridge_> This condition seems not to be meet at the noby server, like it's not unset oO 22:55 <+bridge_> > 2026-01-14 22:55:46 I dbg: Server sends finish times 22:56 <+bridge_> ``` 22:56 <+bridge_> else if(MsgId == NETMSGTYPE_SV_RECORD || MsgId == NETMSGTYPE_SV_RECORDLEGACY) 22:56 <+bridge_> { 22:56 <+bridge_> CNetMsg_Sv_Record *pMsg = static_cast(pRawMsg); 22:56 <+bridge_> dbg_msg("dbg", "Server sends finish times"); 22:56 <+bridge_> if(pMsg->m_ServerTimeBest > 0) 22:56 <+bridge_> { 22:56 <+bridge_> m_MapBestTimeSeconds = pMsg->m_ServerTimeBest / 100; 22:56 <+bridge_> m_MapBestTimeMillis = (pMsg->m_ServerTimeBest % 100) * 10; 22:56 <+bridge_> } 22:56 <+bridge_> else if(m_MapBestTimeSeconds == FinishTime::UNSET) 22:56 <+bridge_> { 22:56 <+bridge_> m_MapBestTimeSeconds = FinishTime::NOT_FINISHED_MILLIS; 22:56 <+bridge_> m_MapBestTimeMillis = 0; 22:56 <+bridge_> } 22:56 <+bridge_> } 22:56 <+bridge_> ``` 22:57 <+bridge_> 22:57 <+bridge_> Wtf is the mod doing 22:57 <+bridge_> why is it sending record times, wdym 🙁 22:57 <+ChillerDragon> i think its a common thing for a ddnet server 22:58 <+bridge_> it sends a finish time of 0 22:58 <+bridge_> I'll add an extra check 22:58 <+ChillerDragon> sounds good 22:59 <+ChillerDragon> where did projectile rendering even change?? 22:59 <+ChillerDragon> bruv 22:59 <+ChillerDragon> i hate that bug so much already 23:00 <+ChillerDragon> i have enough pain with the removed reset file and its bugs 23:00 <+bridge_> > i hate that bug so much already 23:00 <+bridge_> I am feeling that on another level 23:00 <+ChillerDragon> maintaining a bug free ddnet pvp mode is becoming more and more painful 23:00 <+ChillerDragon> that was not the goal 23:00 <+ChillerDragon> at al 23:01 <+ChillerDragon> this shit was meant to be a side project for 2 weeks 23:01 <+bridge_> what should I check for, for < 0 @chillerdragon ? 23:01 <+bridge_> checking the old code 23:02 <+bridge_> the old code just always assumes > 0, maybe I can just remove the else case 23:05 <+bridge_> > MsgLegacy.m_PlayerTimeBest = Msg.m_PlayerTimeBest = round_to_int(Score()->PlayerData(ClientId)->m_BestTime.value_or(0.0f) * 100.0f); 23:05 <+bridge_> 23:05 <+bridge_> I see why it always sends 0 23:11 <+bridge_> basically a bug, but it hasn't surfaced so far because the ddnet client ignored it 23:11 <+bridge_> annoying 23:16 <+bridge_> hmm I wonder if I should follow up with a server fix and just not send this message if it doesn't have a value 23:16 <+bridge_> do I need to fix legacy network code 🤔 23:19 <+bridge_> Is there ever a reason, a server undo-s the map best time? Because the client would not undo the value once it's set 23:20 <+bridge_> record got deleted perhaps? probably needs no support in the legacy message 23:21 <+bridge_> The new message supports it already :happy: 23:21 <+bridge_> by design 23:26 <+bridge_> @heinrich5991 23:26 <+bridge_> ``` 23:26 <+bridge_> else 23:26 <+bridge_> { 23:26 <+bridge_> // lots of mods (including pvp mods) send zero indicating no best time 23:26 <+bridge_> } 23:26 <+bridge_> ``` 23:26 <+bridge_> You mean like this? Are you happy with the text? 23:30 <+bridge_> ``` 23:30 <+bridge_> else 23:30 <+bridge_> { 23:30 <+bridge_> // some PvP mods based on DDNet accidentally send a best time of 0, despite having no finished races 23:30 <+bridge_> } 23:30 <+bridge_> ``` 23:30 <+bridge_> yea, something like that 23:30 <+bridge_> I am just bad at writing stuff like this 😆 thank you 23:32 <+bridge_> I guess if I'd fork ddnet and do a mod, I also wouldn't remove this random netmessage tbh 23:33 <+bridge_> 🙈 23:34 <+bridge_> oh, you should probably keep the condition 23:34 <+bridge_> `else if(m_MapBestTimeSeconds == FinishTime::UNSET)` 23:35 <+bridge_> oops 23:35 <+ChillerDragon> woah 23:35 <+ChillerDragon> if i rm -rf my build dir 23:35 <+ChillerDragon> and recompile 23:36 <+ChillerDragon> i get a sha256sum match on the binary 23:36 <+ChillerDragon> i thought compilers are random xd 23:36 <+bridge_> compilers are generally deterministic 23:36 <+ChillerDragon> makes sense i guess 23:36 <+bridge_> nondeterministic stuff gets introduced by other parts of the build process 23:36 <+ChillerDragon> its just so many other things like compiler versions and dependencies 23:36 <+ChillerDragon> ye i see 23:36 <+ChillerDragon> fair 23:36 <+bridge_> builds are often not (i.e. adding the current time to the compiled binary) 23:37 <+ChillerDragon> what the shitfuck 23:37 <+ChillerDragon> is that a bug in my client now or what 23:37 <+ChillerDragon> I REPRODUCED IT ON DDNET MASTER 5 MINUTRES AGO 23:37 <+ChillerDragon> I HATE PROGRAMINNG 23:38 <+ChillerDragon> u cant make that shit up 23:38 <+bridge_> take a break, get a tea chiller 🙂 23:38 <+ChillerDragon> i managed to reproduce on local server with fresh ddnet client built from source 23:38 <+ChillerDragon> i reproduced every possible combination 23:38 <+ChillerDragon> now only one is bugged 23:38 <+ChillerDragon> my custom client on a online server 23:38 <+ChillerDragon> not local server 23:38 <+ChillerDragon> ONLY ONLINE? 23:38 <+ChillerDragon> why 23:38 <+ChillerDragon> nah fak this 23:38 <+bridge_> ping perhaps 23:38 <+ChillerDragon> i sleep 23:39 <+ChillerDragon> ye perhaps 23:39 <+bridge_> good night 🙂 23:39 <+bridge_> good night ^^ 23:39 <+bridge_> meh, reading comprehension 0