00:06 < bridge> yes, map on local server for testing 00:09 < bridge> oky 00:10 < bridge> i think you should release it 💀 05:09 < bridge> + 09:41 < bridge> Is the interpolation off for those? 10:01 < bridge> Idk 10:19 < bridge> @chillerdragon why is roby rossbit? 10:20 < bridge> Don't think the interpolation is a prediction issue 10:20 < bridge> It is 10:20 < bridge> I explained it here 10:20 < bridge> Does it also happen with low ping? 10:21 < bridge> No, the client basically always is 1 snap behind the server 10:21 < bridge> So ping doesn't really matter 10:21 < bridge> It happens with cl_predict 0 tho 10:21 < bridge> Same as with demos 10:23 < bridge> So if it happens without prediction, I don't see why revert the pr 10:24 < bridge> It didn't happen with prediction on tho 10:24 < bridge> Also your PR introduced tele prediction for only 1 exit. I defs don't blame you here. But we should make this consistent 10:24 < bridge> Can't predict multiple exits bcs they're random 10:25 < bridge> I cannot accept that we cannot find a proper solution to tele prediction even tho we own this code, nobody can stop us from adding pseudo random tele 10:25 < bridge> I've linked an issue where Deen says let's do at least 1 10:25 < bridge> Yes, as said I don't blame you 10:25 < bridge> But srsly, what kind of solution is this? 10:25 < bridge> We __can__ fix it 10:25 < bridge> Idk, better than none at all 10:25 < bridge> I think inconsistent is worse 10:26 < bridge> psuedo random is the same as (unknown system dependent psuedo) random 10:26 < bridge> A user that is not programmer does not understand why it sometimes works and sometimes not 10:26 < bridge> If noone wants to work on it I'd rather have consistent 1 tele 10:27 < bridge> This doesn't sound consistent :dTeuMonkaW: 10:27 < bridge> I'd prefer we either fix the issue or don't touch it 10:29 < bridge> Whatcha mean? 10:29 < bridge> Just opinions 10:30 < bridge> Ah sry wrong message reaction. I was talking about the introduced behaviour by #10275 10:30 < bridge> https://github.com/ddnet/ddnet/issues/10275 10:30 < bridge> 10254*** 10:30 < bridge> Phone hard 10:30 < bridge> it has got squishy circruitary inside, needs hard to protect it 10:31 < bridge> I mean, ppl with 60hz probs don't see it so much. But I defs saw it after like 10 seconds of playing a teleport map 10:31 < bridge> I'll try it out when I'm home on 10K fps 500 something hz on my dad's Mac :nouis: 10:32 < bridge> fix: add 1000 tick/s 10:32 < bridge> 😏 10:32 < bridge> :dTeuMonkaW: 10:32 < bridge> He has a 500hz display? 10:32 < bridge> Holy 10:32 < bridge> Ye he smoked smth really good when buying that 10:32 < bridge> :KEKW: 10:33 < bridge> I defs wonder how noticable the diff is. 10:33 < bridge> 10:33 < bridge> 144 vs 240 is defs noticable, but less than 60hz to 144hz. 10:33 < bridge> 10:33 < bridge> I mean makes sense, but yeah 10:33 < bridge> Will be interesting if I'd enjoy a 500hz upgrade 😄 10:34 < bridge> I noticed a difference going down, ergo 500 down to 240 10:34 < bridge> 10:34 < bridge> You notice the suuuuper slight delay in your mouse movement, it's weird xD 10:34 < bridge> I see, yeah I assume 2D stuff generally seems to profit more from higher refresh rate 10:34 < bridge> https://cdn.discordapp.com/attachments/293493549758939136/1377203459279032342/20250528_103418.jpg?ex=68381c2b&is=6836caab&hm=113501794aa5f94812d64116945f8fa1dc5b9be2fa92f804c67eb2b6ed802c09& 10:34 < bridge> E.g. in CS2 playing with 60hz is much less worse to me than in teeworlds xD 10:35 < bridge> Probs bcs the camera view is _kinda_ fixed 10:35 < bridge> In 3D too much going on 10:35 < bridge> Ok I assume heavy spinners still notice it right away 10:35 < bridge> Maybe i'm just too noob to notice 😬 10:35 < bridge> What is that? 10:36 < bridge> lambda man? 10:37 < ws-client> haskell man 10:37 < ws-client> @Jupstar ✪ maybe u suck in cs and thats why you dont care about refresh rate 10:39 < bridge> I mean I defs notice it 10:40 < bridge> It's just in teeworlds, having tearing or delay feels even worse 10:40 < bridge> thank you 11:19 < bridge> was trying to find original teewars topic, can't find the link i wanted. seems im gaslighting myself 11:36 < ws-client> monthly bump for #9787 11:36 < chillerbot> https://github.com/ddnet/ddnet/issues/9787 11:46 < bridge> I guess that one can be merged, did you make sure the teehistorian bump is still happening? 12:12 < bridge> 10 year old issue that noone picked up, but we **can** predict multiple teles, so lets wait instead 12:12 < bridge> this community so cooked 💔 12:16 < ws-client> @learath2 yes i go from 9 to 10 https://github.com/ddnet/ddnet/blob/48b3b0e468de874fddb4647ceb37107f4a83785d/src/game/server/teehistorian.cpp#L27 12:17 < ws-client> @learath2 you can also comment "please rebase" on my prs and my rebase bot will rebase it then you can see that there is still a historian diff 12:19 < bridge> What about #1233 btw? Super old issue and furo rewrote the entire docker script a while ago. 12:19 < bridge> https://github.com/ddnet/ddnet/issues/1233 12:19 < ws-client> question is what is the Dockerfile for? 12:21 < bridge> #1751 wasnt reproduced in ~6 years either it seems 12:21 < bridge> 12:21 < bridge> Maybe we should clean up issues at some point :dTeuMonkaW: 12:21 < bridge> https://github.com/ddnet/ddnet/issues/1751 12:24 < bridge> 1874 as well (I don't want to spam the bots reaction here) 12:28 < bridge> macOS is probably not possible now, until I finish some other things, but wrapper scripts would still be nice 12:29 < bridge> The Dockerfile is supposed to be an "easy" way to build ddnet for linux and windows. My very original goal with it was to completely automate the release process in a reproducible manner 12:31 < bridge> did anyone even try reproducing it? give it a go, if it doesn't happen I can close it 12:45 < bridge> @ryozuki I made a cool macro which allows defining variants for different opcodes and their asssembly representation for my new ir :poggers2: (there's still a lot of copy pasting tho :\) 12:45 < bridge> ```rust 12:46 < bridge> opcodes! { 12:46 < bridge> Mov8rr = "mov {dest}, {src}", (dest = r8, src = r8); 12:46 < bridge> Mov8rm = "mov {dest}, {src}", (dest = r8, src = m8); 12:46 < bridge> Mov8mr = "mov {dest}, {src}", (dest = m8, src = r8); 12:46 < bridge> Mov8mi = "mov {dest}, {src}", (dest = m8, src = imm); 12:46 < bridge> Mov8ri = "mov {dest}, {src}", (dest = r8, src = imm); 12:46 < bridge> } 12:46 < bridge> ``` 12:46 < bridge> @ryozuki I made a cool macro which allows defining variants for different opcodes and their asssembly representation for my new ir :poggers2: (there's still a lot of copy pasting tho :\\) 12:46 < bridge> ```rust 12:46 < bridge> opcodes! { 12:46 < bridge> Mov8rr = "mov {dest}, {src}", (dest = r8, src = r8); 12:46 < bridge> Mov8rm = "mov {dest}, {src}", (dest = r8, src = m8); 12:46 < bridge> Mov8mr = "mov {dest}, {src}", (dest = m8, src = r8); 12:46 < bridge> Mov8mi = "mov {dest}, {src}", (dest = m8, src = imm); 12:46 < bridge> Mov8ri = "mov {dest}, {src}", (dest = r8, src = imm); 12:46 < bridge> } 12:46 < bridge> ``` 12:47 < bridge> :owo: 13:40 < bridge> @gorp_tw friendly reminder 14:31 < ws-client> @learath2 well if you want the dockerfile to work it should be added to the CI i guess 14:32 < bridge> I probably wouldn't want that running every single time. CI is already sloooooooow 14:40 < bridge> how hard would it be to make a btree+ memory mapped key value store 14:41 < bridge> Sounds like something someone would have already made 😛 14:44 < bridge> yes, in C https://github.com/erthink/libmdbx 14:46 < bridge> Upon thinking about it a little, it shouldn't really be too hard to roughly implement one. Optimizing it idk 14:48 < bridge> @learath2 this one uses a lot of "unlikely" sprinkled at ifs 14:48 < bridge> so its def optimized on purpose 14:48 < bridge> ``` 14:48 < bridge> #define likely(x) __builtin_expect(!!(x), 1) 14:48 < bridge> #define unlikely(x) __builtin_expect(!!(x), 0) 14:48 < bridge> 14:48 < bridge> if (unlikely(fd < 0)) 14:48 < bridge> { 14:48 < bridge> /* Do something */ 14:48 < bridge> } 14:48 < bridge> 14:48 < bridge> ``` 14:49 < bridge> could we use [[unlikely]] in ddnet 14:50 < bridge> https://lumosql.org/src/lumosql/doc/trunk/README.md 14:51 < bridge> https://tenor.com/view/pipotam-baby-hippo-hippo-wash-shower-gif-3406421565683572068 14:54 < bridge> @jupeyy_keks does it change if the seed of tele is decided at the start of a run? 14:55 < bridge> Full prediction, teleporters are pseudo random, the ~~server~~ start tick is the seed 14:55 < bridge> It's good that you picked this issue, and i support it by asking maintainers to give a final opinion on how we want to approach tele prediction. 14:55 < bridge> 14:55 < bridge> I don't feel like this issue got major attention yet from all maintainers, so I tagged them all, and if they ignore this, then they simply have no opionion I guess. 14:55 < bridge> 14:55 < bridge> I support prediction for everything, I personally just feel like just adding a half backed prediction is not much better then none at all. But if other maintainers say otherwise so be it. 14:55 < bridge> 14:55 < bridge> So please don't give up just because I am rather strict in this case 14:55 < bridge> Yeah the exact implementation detail doesn't matter, it's more about using a non random seed 14:56 < bridge> the thing i want the most: make replay bots as hard as possible to do 14:56 < bridge> Eh, idk if we have much use for it. Especially on modern hardware the branch predictor is almost as good as us 14:56 < bridge> so my question is: does pseudo random make it easier? 14:57 < bridge> I think no, e.g. with a random seed it's still almost impossible, except if you literally do the TAS on the game server you are on 14:57 < bridge> Making it predictable in anyway will make replay bots easier definitely 14:57 < bridge> But with any non predefined seed replay bots should have no chance 14:57 < bridge> yeah, but maybe there is a way that makes it annoying 14:58 < bridge> i would use some combination of server random seed + start seed or smth 14:58 < bridge> But they cannot predict stuff like the server tick (not easily at least), or even a real random seed 14:58 < bridge> I get you 14:58 < bridge> Well we have to send the real random seed to the client. No? At which point now they can predict it 14:59 < bridge> but i mean that this game should move forward even a little bit 14:59 < bridge> 10 year old issues are just bad 14:59 < bridge> Since he said "replay" bot i assume it's pre recorded 14:59 < bridge> None of the current tas bots are suited for this kind of thing btw. They are all very dumb input replayers 14:59 < bridge> well its not like the dev is dead. its just ppl volunteer and tackle issues they want 14:59 < bridge> cant blame anyone 15:00 < bridge> Honestly I think it's fine to make it easily predictable 15:01 < bridge> A bot can already just observe the outcome of the teleport and react accordingly if it wants. I'll write my opinion on the issue 15:01 < bridge> im also in favour of adding prediction to everything 15:02 < bridge> are weapons predicted? like sg and such 15:02 < bridge> i guessy e 15:02 < bridge> xd 15:02 < bridge> freeze is missing 15:02 < bridge> I'd like to have that too, since I play lot of solo xd 15:02 < bridge> xd 15:02 < bridge> wdym by freeze pred 15:02 < bridge> u dont move like u used to 15:02 < bridge> i think it correctly stops you, just the ninja skin isnt applied 15:02 < bridge> So that u instant freeze when u touch freeze client side 15:03 < bridge> back in old days u moved and teleported back 15:03 < bridge> when frozen 15:03 < bridge> hm 15:03 < bridge> yeah maybe just visual 15:03 < bridge> but sounds and particles should be predicted too, but arent rn 15:03 < bridge> is it predicted if a player holds the fire button? 15:03 < bridge> that should be predictable as well xd 15:04 < bridge> DDNet: Oracle edition 15:04 < bridge> || made in java || 15:05 < bridge> laser/hammer unfreeze is predicted so it works 15:06 < bridge> right now only teleports and freeze lasers arent predicted 15:34 < bridge> Anyone have any issues they want a comment on? 😛 15:35 < bridge> I'm hungry, sleepy and have no motivation 15:35 < bridge> Who isn't 15:35 < bridge> Idk. If you can solve those please notify me 15:35 < bridge> I have skill issues 15:36 < bridge> What kind of soccery is learath cooking up xd 15:36 < bridge> what? cestlavle? 15:36 < bridge> I prescribe you 2 doses of git gud 15:37 < bridge> cestlavie 15:37 < bridge> was is das 15:37 < bridge> Wait I forgot we are not allowed to spam reactions like this 15:37 < bridge> What kind of sorcery is learath cooking up xd 15:38 < bridge> timeout yourself for 5 minutes 15:38 < bridge> "that is life" 15:38 < bridge> C'est la vie 15:38 < bridge> I see 15:38 < bridge> @learath2 how did you remove all reactions at once? Was that an admin cheat or is there some hotkey for that 15:39 < bridge> There is a button to remove all reactions if you are a mod/admin 15:39 < bridge> https://cdn.discordapp.com/attachments/293493549758939136/1377280125816541255/image.png?ex=68386392&is=68371212&hm=bc0e7b3e5621d15ec5f90192b8271aeb6313833eca83f8d197a88cd981042c92& 15:39 < bridge> woah learath can rig #📬submit-skins 15:39 < bridge> 😬 15:40 < bridge> I think this is enough ddneting for one day. I looked at all the issues I wanted to check up on. I finished up my reviews of the mod applications 15:40 < bridge> gtg shop a little, then pack a bag 15:41 < bridge> okey cya 15:41 < bridge> Who has free tomorrow? 15:41 < bridge> I do 15:51 < bridge> me 16:10 < bridge> theres a thing on tclient to fix this but it doesnt apply to anything but the skin 16:38 < bridge> submit pr if its a good solution 16:38 < bridge> would be nice 16:38 < bridge> since rn you just cant move and then ninja skin gets applied later 16:43 < bridge> bullet smoke trail is predicted, idk why other sounds or visuals arent 16:44 < bridge> its an incomplete fix, idk how its implemented 17:00 < bridge> Hello, this is a problem, I made myself a nickname Nice and 3 people started bullying me, 1 moderator, nickname zahar8350, this is an approximate nickname, he threw threats at me and banned me for swearing even though I didn't do it and forced me to change my nickname, I ask you to fix this problem 17:05 < bridge> i'm not familiar with a mod called zahar8350 17:05 < bridge> 17:05 < bridge> what server did this happen on? 17:06 < bridge> i think thats his nickname 17:06 < bridge> there's already a person with that exact username in this discord, and they haven't sent a single message 17:06 < bridge> from the text i thought it said the moderator's nickname is zahar8350 because he called himself "Nice" - maybe language barrier ._. 17:09 < bridge> could be either 17:09 < bridge> no idea 17:10 < bridge> https://cdn.discordapp.com/attachments/293493549758939136/1377302995154243684/IMG_1355.jpg?ex=683878df&is=6837275f&hm=b841dc68252c4bb625d997aa27a6ba0624ed20b8cecc6c3d4104479ff2fee9a4& 17:10 < bridge> Tutorial 17:11 < bridge> Or nickname zahan3303 17:11 < bridge> If you want to specify a server you should send the IP and port, since there are many tutorial servers 17:12 < bridge> no such player appears to be online and I don't think they're a ddnet moderator either 17:17 < bridge> How was I banned then? 17:18 < bridge> https://cdn.discordapp.com/attachments/293493549758939136/1377304998504955986/IMG_1357.jpg?ex=68387abc&is=6837293c&hm=5f6d3b0c58d6927dc6ce1b4ed7a226aac6ccecedcbb5ba2a3937ee3ae371232e& 17:19 < bridge> https://cdn.discordapp.com/attachments/293493549758939136/1377305222912933940/IMG_1358.png?ex=68387af2&is=68372972&hm=c8353c01ae473bb9d0810b07961a2776a61c5d6745361fec9a5f17007c5463d9& 17:42 < bridge> whoa we're already 277 past the big 10k? 17:43 < bridge> whoa we're already 277 past the big 10k!? 17:46 < bridge> kebs carrying qol rn with all the prediction prs 17:55 < bridge> I got another one in me with the freeze ninja skin prediction 17:56 < bridge> Just need figure out if it's best way to do it 17:59 < bridge> oh @essigautomat it was loaded from old version, my impression though would be these tiles would get cleaned up on load? 18:07 < bridge> @learath2 https://lief.re/blog/2025-05-27-dwarf-editor/ 18:08 < bridge> Now that sounds very interesting. Did you read it at all? Promising? 18:08 < bridge> didnt read all 18:14 < bridge> I'll give it a read when I get back. It's such a great idea because then you can very easily move to dynamic analysis 18:51 < bridge> https://x.com/GrantSlatton/status/1927448376439714224 18:57 < bridge> https://cdn.discordapp.com/attachments/293493549758939136/1377329940738867311/20250528_115718.jpg?ex=683891f7&is=68374077&hm=925ff36a5755a8fd6c22601323d61c5a59793f7d540d79513d9c85d3ecc749fd& 18:59 < bridge> xd 19:54 < bridge> ew xd 19:55 < bridge> it's glorious 19:58 < bridge> of course "greater than or equal" is "not less than" 19:58 < bridge> it's arguably just as reasonable of a way of expressing the relation as the common way, if not even more so 20:01 < bridge> think of how common the phrases "no more than" and "no less than" are 20:01 < bridge> and you wouldn't expect to hear "greater than or equal to" in everyday speech 20:01 < bridge> you use atleast or atmost 20:02 < bridge> but english is a speaking language not a 20:02 < bridge> progarmming languaage 20:02 < bridge> and theres no point beinginventive in notation of operators 20:02 < bridge> and theres no point being inventive in symbols of operators 20:02 < bridge> depending on the age of the language it is ... understandbale 20:04 < bridge> it is that old 20:19 < bridge> why not 20:47 < bridge> natural made horrors beyond your comprehension: 20:47 < bridge> https://cdn.discordapp.com/attachments/293493549758939136/1377357657828098299/Screenshot_20250528-204654.png?ex=6838abc7&is=68375a47&hm=a00f49831effe3e1cafb6c1ce497a068b25fc57e84ea00999a518835b8da2a7f& 20:47 < bridge> :kek: 20:48 < bridge> is it your first time hearing about mumps 22:09 < bridge> no 22:09 < bridge> at least not the desease 22:23 < bridge> im confused 22:23 < bridge> hello confused haha so funny 22:27 < bridge> when u coding, is your inner monologue more like full sentences, or more like "mhh yeah, this shit, mhh, bit of this" 22:28 < bridge> It's full sentences but not normally related to what I'm typing 22:28 < bridge> Well sometimes now I don't bother internally articulating my thoughts 22:29 < bridge> I know what I'm thinking I don't need to make it english 22:29 < bridge> I code with emotions 22:29 < bridge> That's probably very bug prone 22:30 < bridge> Passionately overflowing with user input 23:30 < bridge> ^ why build failed? 23:33 < bridge> Makes no sense to me, I reran with whatever the github verbose option does, let's see