00:12 <+bridge_> @furo 00:13 <+bridge_> gen1 00:13 <+bridge_> genericore 1 00:13 <+furo> Don't think I will play now, sorry! 00:13 <+bridge_> OKAY 09:41 <+bridge_> im only here to say 2 things 09:43 <+bridge_> 1. im rewriting chiller's 0.7 Lua client library (luluworlds) to use LuaJIT (LuaBitops, and way better perf) and to handle 19.1 ddnet spec 09:43 <+bridge_> 2. i just had sparkling sake for the first time and i think its the best thing that's ever been in my mouth 09:43 <+bridge_> > luluworlds 09:44 <+bridge_> guess chiller is sometimes a but delulu 09:44 <+bridge_> guess chiller is sometimes a bit delulu 09:44 <+bridge_> the sake though is like 7 dollars for 300ml 09:45 <+bridge_> like wtf why would i ever buy this regularly 09:45 <+bridge_> i hope its cheaper in japan, god damn 09:45 <+bridge_> ah you mean sake like the rice wine 09:45 <+bridge_> yes yes 09:45 <+bridge_> XD question mark resolved 09:46 <+bridge_> learning about the teeworlds protocol was fun ^^ there was a lot i had to do in order to change the bits around for 0.6 09:47 <+bridge_> seems like my packets with chunks are still not formed correctly, first miniboss is to simply send NETMSG_INFO 09:47 <+bridge_> If I translate that into whisky prices - that's cheap 09:47 <+bridge_> gorp pizza 09:47 <+bridge_> well keep in mind, sake is like 5% 09:47 <+bridge_> whisky is like a premium liquor and like 40%+ 09:47 <+bridge_> this is just wine xd 09:47 <+bridge_> RICE wine 09:47 <+bridge_> If I translate that to finish beer prices :justatest: @inv41idu53rn4m3 09:47 <+bridge_> gorp can you deliver pizza overseas 09:47 <+bridge_> i wish 09:48 <+bridge_> why not 09:48 <+bridge_> i think chiller and heinrich tho are like the most important ppl for the overall client/server-making community 09:48 <+bridge_> jesus christ ive consumed so much knowledge from both their docs 09:48 <+bridge_> so thank you to both (if they read this) 09:49 <+bridge_> especially the traffic decoder is nice, then i dont have to keep spamming assert() everywhere in lua xd 09:50 <+bridge_> I guess if you mean the modding community - but only because of ddnet insta right? 09:50 <+bridge_> no no, i just mean the info they put out on all protocols is so thorough 09:50 <+bridge_> so i can easily see the differences or figure out how to change things 09:52 <+bridge_> also ive never really done low-level bitwise stuff like this 09:52 <+bridge_> what about roby 09:52 <+bridge_> ```lua 09:52 <+bridge_> -- first 2 bits are flags, last 6 are first 6 of size (of 10 total) 09:52 <+bridge_> local first_byte = bit.bor(bit.lshift(flags, 6), bit.band(bit.rshift(chunk.size, 4), 0x3f)) 09:52 <+bridge_> 09:52 <+bridge_> if chunk.flag_vital then 09:52 <+bridge_> return string_char( 09:52 <+bridge_> first_byte, 09:52 <+bridge_> -- first 4 of seq, then last 4 of size 09:52 <+bridge_> bit.bor(bit.band(bit.rshift(chunk.seq, 2), 0xf0), bit.band(chunk.size, 0x0f)), 09:52 <+bridge_> -- last 8 of seq (note that bits 7 and 8 are duplicated on purpose) 09:52 <+bridge_> bit.band(chunk.seq, 0xff) 09:52 <+bridge_> ) .. chunk.data 09:53 <+bridge_> else 09:53 <+bridge_> return string_char( 09:53 <+bridge_> first_byte, 09:53 <+bridge_> -- 4-bit padding, then last 4 of size 09:53 <+bridge_> bit.band(chunk.size, 0x0f) 09:53 <+bridge_> ) .. chunk.data 09:53 <+bridge_> end``` 09:53 <+bridge_> chunk packer ^^ 09:54 <+bridge_> i figured out how to make immutable enums in Lua as well :D 09:54 <+bridge_> (with metatable methods) 09:56 <+bridge_> huh, i think i can remove CTRL_TOKEN from this lib, seems to be 0.7 only (since token is negotiated immediately on CTRL_CONNECT) 10:38 <+bridge_> Very bad, but thanks for the help friend 10:57 <+bridge_> yay lua pog 10:58 <+bridge_> @gorp_tw: btw I streamed the messy build of this library https://www.youtube.com/live/_5Kfogdsxyw 10:58 <+bridge_> !ping 10:59 <+bridge_> ๐Ÿ™ 10:59 <+bridge_> chiller I always wondered 10:59 <+bridge_> 10:59 <+bridge_> What is it with you and so many different languages, is it adhd, mild autism or are you required to do all dat for work 10:59 <+bridge_> go, ruby, python, bash, assembly, C(++) 11:00 <+bridge_> especially your gem projects scare me 11:00 <+bridge_> for me it's all of the above 11:01 <+bridge_> I mean for me it's pretty simple 11:01 <+bridge_> 11:01 <+bridge_> I like rust so I learned it, I use C/C++ at work so I learned it, and I use scripting languages cuz I'm a Linux nerd 11:02 <+bridge_> I didn't learn php because I liked it so much :pepeW: but it was required for work 11:03 <+bridge_> on the other hand, I use python at work and in private, just for scripting and writing code fast 11:03 <+bridge_> I don't care if python is 1000 times slower than rust, if I just needed 30 minutes and I can just keep the computer running 11:04 <+bridge_> I don't care if python is 1000 times slower than rust, if I just needed 30 minutes to write code and I can just keep the computer running 11:05 <+bridge_> When ddnet-rs update 11:05 <+bridge_> ๐Ÿฅน 11:05 <+bridge_> jupstar is still on break 11:10 <+bridge_> I heard php came a long way actually 12:00 <+bridge_> melon: I just like the game. It took me annoyingly long to understand the protocol. So I want enjoyers of different languages to be able to start quicker at building something cool 12:00 <+bridge_> Different languages have different use cases 12:00 <+bridge_> And I want gaming in all of them 12:25 <+bridge_> It would be cool to create a bot 12:25 <+bridge_> Which can actually to parts 12:25 <+bridge_> Surely it's possible 12:27 <+bridge_> At least for some simpler parts 12:37 <+bridge_> I wonder what Teero's tools can do 12:38 <+bridge_> I imagine they're not great for making decisions in real time 12:42 <+bridge_> do you want another bot crisis upon the already existing TAS problem we have? 12:42 <+bridge_> I mean 12:43 <+bridge_> It's probably hard to make it good in real time 12:53 <+bridge_> in teero's tas there must be pathfinder 12:53 <+bridge_> special one 12:54 <+bridge_> that makes his runs best on the wild west 12:54 <+bridge_> I think he does quite a lot of pathfinding himself too, and uses the tools to refine that path 12:55 <+bridge_> I know y'all love botting but please don't discuss it in here - at least not in the context of ddnet 12:55 <+bridge_> It's bad enough as is, we'd be spreading the know how for future ChatGPTEE's. 12:55 <+bridge_> o shit 12:56 <+bridge_> :justatest: 13:49 <+bridge_> Okay, i never talk about botting in a malicious context, i think it's just cool 13:51 <+bridge_> I also had an idea to create a heat map based on the teehistorian data 13:52 <+bridge_> It would be useful to get some samples though 13:57 <+bridge_> I always wanted a heatmap of death, but you need to take the survivor bias into account (like most resets are right at the start line) 13:58 <+bridge_> https://cdn.discordapp.com/attachments/819539371954929714/1458400087192637540/image.png?ex=695f806c&is=695e2eec&hm=98895a795a0820634ca5f043a7f83cb0383a93859091e2e95d4bd7ca95d59389 13:58 <+bridge_> 13:58 <+bridge_> Sadly I cant install DDNet on MacOS anymore ๐Ÿ™ It worked in the past, but somehow its not signed anymore? 13:58 <+bridge_> oh das bad, did Deen change something on his build machine? :justatest: 13:59 <+bridge_> I guess you'd just have to take run duration into account 13:59 <+bridge_> In some way 13:59 <+bridge_> Probably not a huge issue 14:00 <+bridge_> Already sent him a DM & asked if he forgot to sign the exe 14:01 <+bridge_> Btw is it possible for physics to be ever so slightly inconsistent because of compiler optimizations? 14:01 <+bridge_> Floating point operations might be rearranged based on compiler flags 14:03 <+bridge_> https://www.youtube.com/watch?v=EI4geo5KJe8 14:03 <+bridge_> just found this old vid. For mapping this would be really cool. 14:16 <+bridge_> https://cdn.discordapp.com/attachments/295908390956433410/1438249972733710488/movement-DA8F3x.mp4?ex=695f5d6a&is=695e0bea&hm=bbdbe14042ea484ee45ab763cdbe33952d3186c7e19b117eb90ea41ddb6df841& 14:16 <+bridge_> anyone have theories? 14:17 <+bridge_> what is the most likely theory how that happened 14:20 <+bridge_> The wind blew in the right direction 14:24 <+bridge_> I mean is it supposed to not happen? 14:26 <+bridge_> yeah its impossible 14:26 <+bridge_> with just walking on ground speed 14:26 <+bridge_> if u do from the same coords it wont work 14:27 <+bridge_> It won't work when starting from the same coords? 14:27 <+bridge_> That is in fact interesting 14:28 <+bridge_> I would guess that you were somehow perfectly aligned 14:28 <+bridge_> But it should work every time 14:28 <+bridge_> If that were the case 14:28 <+bridge_> https://github.com/ddnet/ddnet/issues/8172 full discussion 14:29 <+bridge_> He never hit 0.00 x speed, maybe that's part of the trick 14:29 <+bridge_> oh yeah patigas calculations make it seem impossible ig 14:32 <+bridge_> cosmic ray bit flip 14:32 <+bridge_> Probably not 14:33 <+bridge_> keyword "probably" 14:33 <+bridge_> Opened on April 1st 14:33 <+bridge_> XD 14:34 <+bridge_> https://discord.com/channels/252358080522747904/757720336274948198/1169925381155983430 14:34 <+bridge_> yeah lowkey elaborate troll setup 14:34 <+bridge_> it was before 14:34 <+bridge_> But what about my original concern? 14:35 <+bridge_> <01000111g> maybe it has something to do worh high coordinates. I remember sone setzps working at low coords but not for instance at x=10000 14:35 <+bridge_> Do we have any check to assure that physics doesn't just change randomly 14:35 <+bridge_> <01000111g> and the running through is dependent on the tick you start, because freeze isnt detected in each tick iirc. 15:32 <+bridge_> chiller tweakin 15:35 <+bridge_> https://cdn.discordapp.com/emojis/1451112977062428744.webp?size=96&animated=true 15:57 <+bridge_> ye he lost his mind :kek: 16:00 <+bridge_> Zwelf is working on that 16:01 <+bridge_> Then it would be reproducible on the same map, but we tried and failed :/ 16:02 <+bridge_> how would they 16:02 <+bridge_> if it code 16:02 <+bridge_> certain numbers 16:09 <+bridge_> what does that mean, is there any discussion on this problem? 16:09 <+bridge_> <01000111g> how did u reproduce starting at the same tick? I remember having a discussion about setups with d+jump and then falling through freeze. It was only consistent if u start at the same tick relative to the freeze ticks (the solution was to freeze urself first and hold the buttons) 16:18 <+bridge_> Woah u had pChr->GetId() give me a value of over 1000 today??? I thought these are the same as client id 16:19 <+bridge_> Isnโ€™t the entity ID also used for the snap? 16:19 <+bridge_> I was talking about the coord setup which you were mentioning might be relevant. I kinda assume the tick should be irrelevant 16:20 <+bridge_> Maybe a macOS update? I remember one of us having an apple developer account, I wonder if a certificate expired or sth 16:21 <+bridge_> Automatically test the same scenarios in multiple versions and compare if you got the same movement. Basically replay bot and see if it works perfectly 16:21 <+bridge_> https://github.com/ddnet/ddnet/pull/11498 16:21 <+bridge_> Already talked with deen about that 16:22 <+bridge_> Sadly MacOS locked down the os to not run any unsigned code, unless you manually maintain a list of allowlisted apps 16:22 <+bridge_> But every update (binary hash) removes the allowlisted item 16:22 <+bridge_> But every update (binary hash) removes the allowlisted item & you have to re-allow again 16:27 <+bridge_> i mean how would physics change 16:30 <+bridge_> It could happen if someone makes a mistake while editing physics related code. That's why we really avoid working on it even if we just want to improve existing code. 16:31 <+bridge_> It could happen if someone makes a mistake while editing physics related code. That's why we really avoid working on it even if we just want to improve existing code without adding fancy new features. 16:36 <+bridge_> are game physics coded in server or what 16:37 <+bridge_> i cannot just edit my exe code and get speed hack 16:39 <+bridge_> Yes they are in the server 16:39 <+bridge_> Thatโ€™s why there is also no speedhack 17:05 <+bridge_> imagine change game physics as april fool 17:06 <+bridge_> i mesn entirely 17:06 <+bridge_> i mean entirely 17:06 <+bridge_> but the way it wont affect scoreboards 17:06 <+bridge_> then its hard 17:06 <+bridge_> hmm 17:25 <+bridge_> Imagine not storing ranks as April fools 17:25 <+bridge_> Then it would work xd 17:54 <+bridge_> and I guess it's not really worth it for us to get a signing cert for macOS when almost no one plays on it 18:19 <+bridge_> Initially I proposed to provide my cert to sign the exe for deen, but then he decided to sign it with his own key - which i totally understand ๐Ÿ˜„ 18:20 <+bridge_> Sadly I cant install / play ddnet on my laptop as my compliance center would alert me every 30 seconds 18:20 <+bridge_> I did have one too back in the day when I was thinking of doing some IOS development 18:21 <+bridge_> such a genius guess 18:21 <+bridge_> admins take it seriously 18:21 <+bridge_> i gave you idea for april fool 18:22 <+bridge_> how can you get a certificate that works for everyone? 18:22 <+bridge_> From Apple? 18:22 <+bridge_> Or what do you mean by getting a cert for everyone? 18:23 <+bridge_> technically you can add any certificate on your own system 18:23 <+bridge_> Not on Apple 18:23 <+bridge_> MacOS is very restrictive on how their apps work 18:23 <+bridge_> oh ok 18:23 <+bridge_> not very surprising 18:24 <+bridge_> so on MacOS all apps are controlled by apple just like on IOS? 18:24 <+bridge_> No, you can install 3rd party apps as well, but Apple doesnt allow you to run them unless you allowed them manually 18:24 <+bridge_> But if the checksum of the binary changes you have to do the same process over and over again 18:25 <+bridge_> If you sign the binary with an apple developer certificate, you can distribute any binary & apple trusts the binary 18:25 <+bridge_> it's weird that you can't add your own certificate 18:25 <+bridge_> Its a bit sad that you have to pay 99 EUR / year for the developer license 18:25 <+bridge_> Microsoft has also started doing this https://discord.com/channels/252358080522747904/757720336274948198/1456095961490260049 18:26 <+bridge_> Oh, havent seen this so far 18:27 <+bridge_> btw i am trying to parse teehistorian 18:27 <+bridge_> and it's annoying 18:27 <+bridge_> There is a rust lib available 18:27 <+bridge_> those variable length ints are annoying 18:28 <+bridge_> And a python lib: https://pypi.org/project/teehistorian-py/ 18:28 <+bridge_> i want to do it myself 18:28 <+bridge_> basically it's hard to control exactly the layout of data in memory 18:29 <+bridge_> because compilers can do so much stuff 18:29 <+bridge_> like add padding 18:29 <+bridge_> or using big endian 18:29 <+bridge_> so it's hard to rely on anything 18:54 <+bridge_> damn might watch this xd 19:09 <+bridge_> 6 hours yes 20:05 <+bridge_> https://github.com/ddnet-insta/ddnet-insta/issues/509 20:05 <+bridge_> I suspect that this error is on the client side of ddnet-insta. 20:05 <+bridge_> 20:05 <+bridge_> Can anyone explain why this is happening?... 20:12 <+bridge_> empty 21:25 <+bridge_> https://cdn.discordapp.com/attachments/293493549758939136/1458557113834930483/1.jpg?ex=696012aa&is=695ec12a&hm=202f783f34d343571225d683bfa74cdc351d405cfd745d3e282f114a9dbf2f47& 21:25 <+bridge_> https://cdn.discordapp.com/attachments/293493549758939136/1458557114090786876/2.jpg?ex=696012aa&is=695ec12a&hm=fc5b4f6785aad46d828cd9110d0fe87be1cfd00149428dc70e4f935be4cc24a6& 21:25 <+bridge_> https://cdn.discordapp.com/attachments/293493549758939136/1458557114359480341/3.jpg?ex=696012aa&is=695ec12a&hm=ff3f04612a21bde53e61b66585d842b83cb24fa0c1e7c699131ca34c13884a34& 21:25 <+bridge_> https://cdn.discordapp.com/attachments/293493549758939136/1458557114627653776/4.jpg?ex=696012aa&is=695ec12a&hm=b9a3deb088a713ae5b7dd058d6ce7705cfd12ee8c8024ac8c28d510a0ef036a4& 21:25 <+bridge_> @Discord Mod 21:27 <+bridge_> Can anyone with macOS test #11439? In particular, build the release package, and test if starting the local server from within the client works with that. 21:27 <+bridge_> https://github.com/ddnet/ddnet/pull/11439 21:49 <+bridge_> <12944qwerty> anyone know what the setting is to hot reload maps 21:50 <+bridge_> hot_reload 21:50 <+bridge_> isn't it 22:01 <+bridge_> need test cmds enabled 22:07 <+bridge_> <12944qwerty> oh my god i thought it would be some complex server flag or soething 22:07 <+bridge_> <12944qwerty> my bad i should've checked 22:20 <+bridge_> 0.6 connection works :feelsamazingman: 22:21 <+bridge_> i should probably stick this lib somewhere now 22:21 <+bridge_> (not that it does anything after enter_game though) 22:23 <+bridge_> chiller can u plz explain this xd 22:23 <+bridge_> https://cdn.discordapp.com/attachments/293493549758939136/1458571754325676325/image.png?ex=6960204d&is=695ececd&hm=e2c14ed6a2e5bb47adbbcb94041ea9681cec23343b6988a22f6800238708d146& 22:25 <+bridge_> needed for neovim 22:25 <+bridge_> whats not understandable :greenthing: 22:25 <+bridge_> for sure it's chillers hack commands that will detonate all servers as he press red button 22:25 <+bridge_> for sure it's chillers hack command that will detonate all servers as he press red button 22:26 <+bridge_> afaik flush is only needed to ensure output stream buffer is written 22:26 <+bridge_> but i guess if i am not running this in an environment where i think that's an issue already i can remove this? 22:27 <+bridge_> if you don't use neovim sure 22:27 <+bridge_> it's just strange that neovim *needs* this 22:27 <+bridge_> maybe neovim never automatically flushes or smt 22:27 <+bridge_> chiller's genius ways to solve problems 22:27 <+bridge_> we cannot understand 22:28 <+bridge_> his code was not bad honestly, i just had to tweak a few things here and there and i think it's quite clean now 22:28 <+bridge_> plus optimizations 22:38 <+ChillerDragon> @gorp_tw here the live incident https://www.youtube.com/live/_5Kfogdsxyw?si=QjTRk44T1T_n8Dff&t=5810 22:38 <+ChillerDragon> i thought there was a bug in my code because i did `lua client.lua` in neovim and it came back blank 22:39 <+bridge_> XDD 22:39 <+bridge_> ok i see 22:39 <+bridge_> i guess i can leave it there 22:40 <+ChillerDragon> yea idk 22:41 <+ChillerDragon> it probably makes everything slower and you dont need it xd 22:41 <+ChillerDragon> idk why lua doesnt flush when run from neovim 22:41 <+bridge_> i wonder if micro also has this issue.. 22:41 <+ChillerDragon> there is probably some SO about it but i never investigated 22:41 <+bridge_> (i run in the terminal always anyway) 22:44 <+bridge_> wow this is impossible to search for btw 22:44 <+bridge_> because it is configured *in* lua 22:45 <+bridge_> so all results are about that 22:47 <+ChillerDragon> xd 22:48 <+ChillerDragon> yea i think i have the same problem there too if i print from my config file i dont see it but might be something else 22:49 <+ChillerDragon> recently i learned about `:messages` which allowed me to show my debug prints from my neovim config 22:52 <+bridge_> https://cdn.discordapp.com/attachments/1287716834682081280/1338422730428645396/petpet.gif 22:57 <+bridge_> https://cdn.discordapp.com/attachments/1407378288002732075/1431311718830702674/petpet.gif 22:59 <+bridge_> bush with eyes and 2 rocks 22:59 <+ChillerDragon> woah i didnt know the server can send you back to the menu? 22:59 <+ChillerDragon> i just tried to join onbgy fng with vpn and it sent me back to server browser 22:59 <+ChillerDragon> no error popup 22:59 <+ChillerDragon> is that a bug? 23:03 <+bridge_> i really help there is no exec in close reason xddd 23:03 <+bridge_> i really hope there is no exec in close reason xddd 23:06 <+bridge_> *berries 23:16 <+ChillerDragon> https://github.com/ddnet/ddnet/blob/1017277af656c0d926eddc608bbbe064712e2a92/src/game/client/components/menus.cpp#L2262 23:16 <+ChillerDragon> yea i guess the server can close the connection without sending an error 23:17 <+ChillerDragon> oddly unexpected ux for me 23:35 <+bridge_> ah, time to pour a beer 23:35 <+bridge_> certificates are a material cost now 23:35 <+bridge_> oh, apple, lovely 23:36 <+bridge_> @0xdeen SES_UNCAUGHT_EXCEPTION: TypeError: can't access property "toFixed", cost[server] is undefined 23:36 <+bridge_> https://ddnet.org/funding/:289 23:37 <+bridge_> deen is "merging it right now!" 23:38 <+bridge_> (im joking, i mean about the merge before test) 23:38 <+bridge_> (im joking, i mean about the commit before test) 23:39 <+bridge_> seems it will be impossible to meet the yearly quota for infrastructure guys. regions is covered though... or undeterminable? 23:39 <+bridge_> https://cdn.discordapp.com/attachments/293493549758939136/1458590800408612894/image.png?ex=6960320a&is=695ee08a&hm=e6918de62191d3d04ed452a04682081bac2c16061fc552a461224b8f0a00fe29& 23:41 <+bridge_> NaN 23:47 <+bridge_> <12944qwerty> how can I get the server executable after installing from ubuntu repository or do I have to build it msyelf. I only found the client executable 23:48 <+bridge_> `find / -name "*ddnet*server*" -type f 2>/dev/null` 23:48 <+bridge_> <12944qwerty> thanks 23:48 <+bridge_> <12944qwerty> i need to use linux more 23:49 <+bridge_> <12944qwerty> i forget all of these commands 23:49 <+bridge_> <12944qwerty> ah rip 23:49 <+bridge_> <12944qwerty> https://cdn.discordapp.com/attachments/293493549758939136/1458593449916895274/image.png?ex=69603481&is=695ee301&hm=99d2004a4efa5f7106c8a47fc49bed7263adce0d252e8443491d7cd9cfb0a907& 23:50 <+bridge_> ddnet-server might be a a different package 23:50 <+bridge_> theres `ddnet` `ddnet-server` and `ddnet-tools` 23:50 <+bridge_> and `ddnet-data` 23:50 <+bridge_> <12944qwerty> yeah just realized too 23:52 <+bridge_> <12944qwerty> ain't that just fun 23:52 <+bridge_> <12944qwerty> https://cdn.discordapp.com/attachments/293493549758939136/1458594168795431045/image.png?ex=6960352d&is=695ee3ad&hm=a35ba51d2d8b89f3ad80c56e2df5a4c8baafe180ba67ce068cfc5572dc873eb8&