00:04 < bridge> <_voxeldoesart> i like chocolate cookie dough knome better 00:26 < bridge> > i use arch, idk how anything could possibly break 00:26 < bridge> lmfao 00:27 < bridge> one day you will get unlucky and the bleeding edge repo updates will brick your system 01:20 < bridge> I can handle being unlucky once a decade, especially as I can fix it without doing anything special because it's such a delightfully simple distro to manage 01:22 < bridge> The days of rolling a D6 to see if your Xorg will break when you update ended forever ago 05:31 < bridge> After I am home I will add to the ai that it will be able to learn ddnet so at the end it would be possible to play ddnet 05:31 < bridge> After I am home I will add to the ai that it will be able to learn ddnet so at the end it would be possible to complete some maps 05:32 < bridge> If its not against ddnet rules :) 07:38 < bridge> I've been hearing decent things about fedora for a long time now. But as it's the first distro to unleash the cancer that is systemd out into the world I will not be giving it a chance 09:04 < bridge> morning 09:04 < bridge> got my fsf card 09:04 < bridge> https://cdn.discordapp.com/attachments/293493549758939136/1321025677222215711/PXL_20241224_080401854.jpg?ex=676bbc88&is=676a6b08&hm=11b17833e5da0f747e7668bfdd3a95ea2350281292a6ca9bd9e0a0c6474196d2& 09:06 < bridge> what does gnu linux inside mean 09:08 < bridge> @louis.place this is also a usb 09:08 < bridge> the left side thing 09:08 < bridge> its dope 09:09 < bridge> does it boot? 09:09 < bridge> idk what it has inside 09:09 < bridge> let me see 09:09 < bridge> iu hope its gnu hurd 09:10 < bridge> ``` 09:10 < bridge> [ 360.068936] usb 1-3: new high-speed USB device number 3 using xhci_hcd 09:10 < bridge> [ 360.284415] usb 1-3: New USB device found, idVendor=090c, idProduct=1000, bcdDevice=11.00 09:10 < bridge> [ 360.284420] usb 1-3: New USB device strings: Mfr=1, Product=2, SerialNumber=3 09:10 < bridge> [ 360.284422] usb 1-3: Product: Flash Disk 09:10 < bridge> [ 360.284424] usb 1-3: Manufacturer: USB 09:10 < bridge> [ 360.284426] usb 1-3: SerialNumber: SCY0000000026583 09:10 < bridge> [ 360.296454] usb-storage 1-3:1.0: USB Mass Storage device detected 09:10 < bridge> [ 360.296589] scsi host12: usb-storage 1-3:1.0 09:10 < bridge> [ 361.826133] scsi 12:0:0:0: Direct-Access USB Flash Disk 1100 PQ: 0 ANSI: 4 09:10 < bridge> [ 361.826323] sd 12:0:0:0: Attached scsi generic sg0 type 0 09:10 < bridge> [ 361.829320] sd 12:0:0:0: [sda] 31129600 512-byte logical blocks: (15.9 GB/14.8 GiB) 09:10 < bridge> [ 361.829967] sd 12:0:0:0: [sda] Write Protect is off 09:10 < bridge> [ 361.829970] sd 12:0:0:0: [sda] Mode Sense: 43 00 00 00 09:10 < bridge> [ 361.830421] sd 12:0:0:0: [sda] Write cache: enabled, read cache: enabled, doesn't support DPO or FUA 09:10 < bridge> [ 361.847160] sda: sda1 09:10 < bridge> [ 361.847228] sd 12:0:0:0: [sda] Attached SCSI removable disk 09:11 < bridge> ``` 09:11 < bridge> its a flash disk 09:11 < bridge> ``` 09:11 < bridge> Disk /dev/sda: 14.84 GiB, 15938355200 bytes, 31129600 sectors 09:11 < bridge> Disk model: Flash Disk 09:11 < bridge> Units: sectors of 1 * 512 = 512 bytes 09:11 < bridge> Sector size (logical/physical): 512 bytes / 512 bytes 09:11 < bridge> I/O size (minimum/optimal): 512 bytes / 512 bytes 09:11 < bridge> Disklabel type: dos 09:11 < bridge> Disk identifier: 0x5d6d715e 09:12 < bridge> 09:12 < bridge> Device Boot Start End Sectors Size Id Type 09:12 < bridge> /dev/sda1 * 2048 31129599 31127552 14.8G c W95 FAT32 (LBA) 09:12 < bridge> ``` 09:12 < bridge> 16gb probs xD 09:12 < bridge> https://cdn.discordapp.com/attachments/293493549758939136/1321027767269068851/image.png?ex=676bbe7b&is=676a6cfb&hm=727f6812e1c1b8186fbddb44eb61a935a1badf7f7a4685d0e96346ab06d86087& 09:12 < bridge> its trisquel linux 09:12 < bridge> https://trisquel.info/ 09:39 < ChillerDragon> @0xdeen so sometimes the mouse is fully lost and i can not get it back in by moving it onto the screen then moving it onto the screen and toggeling the console helps you said it should happen every render? I assume closing the console does one more thing that really helps 09:40 < bridge> That's really cool ASCII art, I think the weird angle is super neat 10:27 < bridge> <0xdeen> yes, closing the console refocuses the mouse 10:47 < bridge> https://en.wikipedia.org/wiki/Most_vexing_parse 10:50 < bridge> How to properly deal with utf8 inside ddnet code? I want to encode players' nicknames into ddnet-web like string, where special characters are being replaced with `-number-`, but I'm getting errors because my chars are obviously wrong 10:56 < bridge> Okay I think I got it 11:01 < bridge> <0xdeen> sorry, it's my own format, I think I should have used something standard instead 11:09 < ChillerDragon> @0xdeen what do you suggest i do here? try to patch ddnet to force refocus? or downgrade gnome? 11:10 < ChillerDragon> i wonder why i am the only one with this issue 11:10 < ChillerDragon> no other gnome arch users with multiple screens? 11:23 < bridge> ChillerDragon: what is your issue 11:23 < bridge> i think i have a related issue 11:24 < bridge> using mouse inside ddnet menu basically moves the cursor on my desktop and it'll freeze when it hits screen borders 11:45 < bridge> llvm is adding a type sanitizer 11:45 < bridge> https://github.com/llvm/llvm-project/commit/a487b792e2da 11:45 < bridge> > 11:45 < bridge> > C/C++ have type-based aliasing rules, and LLVM's optimizer can exploit 11:45 < bridge> > these given TBAA metadata added by Clang. Roughly, a pointer of given 11:45 < bridge> > type cannot be used to access an object of a different type (with, of 11:45 < bridge> > course, certain exceptions). Unfortunately, there's a lot of code in the 11:45 < bridge> > wild that violates these rules (e.g. for type punning), and such code 11:45 < bridge> > often must be built with -fno-strict-aliasing. Performance is often 11:45 < bridge> > sacrificed as a result. Part of the problem is the difficulty of finding 11:45 < bridge> > TBAA violations. Hopefully, this sanitizer will help. 11:46 < bridge> i think ddnet does type punning 11:46 < bridge> which is why we cant do lto iirc 11:48 < ChillerDragon> @louis i dont get freezes but my mouse escapes the ddnet window onto the second screen 11:49 < bridge> yeah, i think i got that behavior if i connected multiple monitors, but i can re-test it later 11:49 < bridge> i'm using gnome on fedora with nightly ddnet but i don't think this occured before (the issue with single monitor) 11:49 < bridge> i wonder if you'd also get the issue using one monitor 12:03 < ChillerDragon> i think my issue is impossible with one monitor and fullscreen because then the mouse cant escape anywhere 12:04 < ChillerDragon> it might mess up your aim tho if the mouse can move freely instead of only the max mouse distance radius 12:05 < ChillerDragon> @louis i dont think its a new ddnet bug but a new gnome bug 12:07 < ChillerDragon> is halloween'ipo on this discord? or does someone know how to contact him? 12:22 < bridge> yeah, my issue was that the ddnet menu cursor would freeze when the desktop cursor hit the edge of the desktop. 13:17 < bridge> <0xdeen> I sometimes had this issue on macOS, maybe DDNet client should acquire mouse focus when we get the SDL event for window focus 13:38 < bridge> Tbh relative mouse mode is simply a mess. Every backend behaves different on it. 13:38 < bridge> 13:38 < bridge> 13:38 < bridge> I do not understand why the OS itself doesn't simply ungrab the mouse if the window is inactive. Who needs relative mouse mode on an unfocused window realistically 13:38 < bridge> In fact I once tried to upstream it to sdl: 13:38 < bridge> https://github.com/libsdl-org/SDL/pull/4683 13:38 < bridge> 13:38 < bridge> But seems they don't care that using relative mouse mode just sucks xD 13:39 < bridge> this just recently started happening for my ddnet 13:39 < bridge> yeah probs a gnome issue 13:39 < bridge> just use kde, all other window managers on linux are simply bad xD 13:40 < bridge> gnome better 13:40 < bridge> and wayland also still feels unfinished 13:40 < bridge> i use it daily now, but always some annoying bugs xD 13:40 < bridge> how recent can the gnome issue be though? i can't remember this happening any more than a month ago 13:40 < bridge> do you use arch? 13:40 < bridge> btw 13:41 < bridge> fedora 13:41 < bridge> and was there some update last month? 13:41 < bridge> wait do you use steam version or website? 13:41 < bridge> steam 13:42 < bridge> ah ok 13:42 < bridge> yeah tbh i think our steam version for linux is broken rn anyway 13:42 < bridge> 😟 13:42 < bridge> https://github.com/ddnet/ddnet/issues/9242 13:42 < bridge> this only happens for me on the steam build 13:42 < bridge> so most likely the shipped sdl is broken 13:43 < bridge> @louis.place do you use wayland? 13:43 < bridge> with gnome 13:43 < bridge> yes 13:43 < bridge> maybe they changed some protocol again lmao 13:43 < bridge> @louis.place can u try to see if website verison works 13:43 < bridge> then we'd at least know if it's sdl related 13:44 < bridge> Should I start building my own DDNet? 13:44 < bridge> i dunno 13:44 < bridge> i mean yes 13:44 < bridge> program your own ddnet 13:44 < bridge> i need competition 13:45 < bridge> I like the Steam playtime tracking but installing into steamapps/common seems somewhat annoying 13:45 < bridge> i solved the issue by only playing ddnet <30 min 13:45 < bridge> 😏 13:45 < bridge> I guess I could just change the launch command 13:45 < bridge> yeah https://github.com/ddnet/ddnet/issues/9242#issuecomment-2483391370 13:46 < bridge> that guy even said a solution 13:46 < bridge> I played over 200h in a month because I'm mentally ill 13:46 < bridge> For like my first two months 13:46 < bridge> the first years of teeworlds are addiction 13:46 < bridge> we all been through that 13:46 < bridge> but im lazy 13:46 < bridge> ill try 13:48 < bridge> hmm the website download has whole other issues 13:48 < bridge> i can only play 1440x960 although i'm on double that with 200% scaling 13:49 < bridge> can't seem to reproduce the cursor bug though 16:46 < bridge> ok apparently sveltekit can bite you in the ass if you don't understand exactly how runes works 16:46 < bridge> 16:47 < bridge> spent two hours rewriting most of my pages. a lot of search results are still for sveltekit 4. it's a bit confusing 17:28 < bridge> thats why smushed default eyes are good, you always know what emotion it is 17:28 < bridge> fuck fsf lol 18:03 < bridge> <_voxeldoesart> half the db skins have default eyes 18:03 < bridge> <_voxeldoesart> if we make one default crying eye we can make a tool that replaces all the default ones 18:04 < bridge> <_voxeldoesart> and if i get bored enough i could help replace the rest 18:08 < bridge> <_voxeldoesart> so: 18:08 < bridge> <_voxeldoesart> 18:08 < bridge> <_voxeldoesart> Angry: :signs: :fury: 😠 18:08 < bridge> <_voxeldoesart> Squint: :zzzz: :tear: :mmm: 18:08 < bridge> <_voxeldoesart> Shock: :wtf: :what: :hey: :boo: 18:08 < bridge> <_voxeldoesart> Happy: :music: :heartw: :happy: 18:08 < bridge> <_voxeldoesart> Hurt: :sorry: :ouch: :oop: 18:09 < bridge> <_voxeldoesart> dunno what we can change to a sad face 18:09 < bridge> <_voxeldoesart> or if we were to add more emotes 18:23 < bridge> @jupeyy_keks Anyway I can do CUi::DoButtonLogic with my own mousepos? I added component that uses remapped screen resolution and ui's mousepos is like 1/4's of my component's screen. I don't want to duplicate code for such minor stuff 18:26 < bridge> Also what is HotItem and ActiveItem, I couldn't understand purely from usages in code 18:47 < bridge> I kinda wish I could use the shocked emotes without changing my eyes... Maybe make emotes and eyes separate? 18:48 < bridge> 💀😑 and 💀😱 are very different in tone 18:48 < bridge> <_voxeldoesart> theres a command for that 18:48 < bridge> <_voxeldoesart> /eyeemote i think 18:48 < bridge> Ah, I guess I should rtfm 18:57 < bridge> He joined them and shared the software 18:57 < bridge> He became free, hackers, he became free 20:13 < bridge> smash or pass? 20:13 < bridge> https://cdn.discordapp.com/attachments/293493549758939136/1321194024152858644/2024-12-24_21-11-13.mp4?ex=676c5951&is=676b07d1&hm=1bcddbd0c464656615675160758879cf038d2b3a29dfd66402af684ea6b852f2& 20:13 < bridge> smash 20:14 < bridge> smash 20:14 < bridge> noobs also need a custom menu to join teams 20:15 < bridge> cus even when u explain them how to do it 20:15 < bridge> they are not capable of understanding 20:39 < bridge> actually goated 20:39 < bridge> https://cdn.discordapp.com/attachments/293493549758939136/1321200563215405056/2024-12-24_21-38-54.mp4?ex=676c5f68&is=676b0de8&hm=44af0fde1fe3d030dbb616c67d5d82cc6bd2473b0efc39948831281919769cc4& 20:41 < bridge> omg 20:42 < bridge> magnificent 20:58 < bridge> add mute and ban buttons with in place duration and reason fields 20:58 < bridge> :justatest: 21:03 < bridge> protocol expers here, what does sequence mean in the vital chunk header? 21:07 < bridge> this needs to be merged holy 21:07 < bridge> man you're making me want to rice up ddnet on my own 21:35 < bridge> <_voxeldoesart> smash but the colored icons feel off fsr 21:48 < ChillerDragon> oof not being able to scroll while the demo menu is hidden is crazy annoying 21:52 < bridge> i wish there was a tile like speeders but it sets your speed to a specific amount 21:53 < bridge> and maybe something to tp you to a direct coord 21:58 < bridge> white looked a little too plain to me, but yeah, im not very good with colors and stuff 22:01 < bridge> Every chunk header can contain a vital flag (MSGFLAG\_VITAL). Note that one teeworlds packet can contain multiple chunks. If said vital flag is set to true the receiving party has to increment a counter. This counter is called the sequence or acknowledge number. Client and server will send the amount of vital chunks they received as sequence number in the packet header 22:02 < bridge> https://chillerdragon.github.io/teeworlds-protocol/06/fundamentals.html#sequence_numbers 22:02 < bridge> In the packet header its amount received and in the chunk header its amount sent 22:12 < bridge> thank you, i got it working by trial and error, but wasnt sure what i was doing 22:12 < bridge> pretty much the connection part up to the EnterGame packet is done :P 22:13 < bridge> Nice 22:14 < bridge> @jupeyy_keks Any way I can do CUi::DoButtonLogic with my own mousepos? I added component that uses remapped screen resolution and ui's mousepos is like 1/4's of my component's screen. I don't want to duplicate code for such minor stuff 22:34 < bridge> i honestly dunno, maybe robyte can help. 22:34 < bridge> havent touched ddnet ui code in like 2 years 22:35 < bridge> i mean there is always a way ig xd 22:43 < bridge> F4 I don't want my mouse unlocked while looking at the scoreboard 22:43 < bridge> i kinda just made implementation myself, referencing emoticon menu, and for some reason sometimes clicks don't count lol, but i didn't debug this yet 22:44 < bridge> It's pretty inline with other games I play ¯\_(ツ)_/¯ 22:44 < bridge> don't worry, i don't think i will pr this, also it's locking/unlocking with key 22:44 < bridge> Ah ok 22:45 < bridge> omg the server is working 22:45 < bridge> https://cdn.discordapp.com/attachments/293493549758939136/1321232256576258119/image.png?ex=676c7ced&is=676b2b6d&hm=ecedc6141a914743ec8b1683bd806bcfeb9fa1efab8f6bed1a200c6d73b8832f& 22:45 < bridge> To be fair, it would be nice to have a hotkey to toggle the mouse on tab, that way you don't loose the freedom of looking around with tab open, and if you want those nice and juicy quick actions you can toggle ur mouse, and do whatever 22:45 < bridge> kinda like in shooter games (cs2, val) 22:45 < bridge> oh god thanks heinrich i love u for libtw2 22:45 < bridge> nooo, pls do, it's too good 22:45 < bridge> tf2 was insipration xd 22:46 < bridge> nice 22:51 < bridge> You can't use most UI functions outside of components that update the UI (menus and editor). I think the first step towards a clean solution would be to also use separate `CUi` instances for emoticon/spectator/scoreboard and update those like the menus/editor UI. 22:51 < bridge> Just having this in a custom client would be sick 22:55 < bridge> The hot item it the top-most UI element that was hovered in the previous frame. The active item is the UI element that is being activated in the current frame. Only the hot item can become the active item. 22:58 < bridge> https://cdn.discordapp.com/attachments/293493549758939136/1321235555459006508/image.png?ex=676c7fff&is=676b2e7f&hm=0e4331745b11a3ded1ab05aa8ed64f217c384422a690b301d1b80abd8e5ff301& 22:58 < bridge> why it do that 22:59 < bridge> the 'top-most' factor aka z-index is calculated just by render order or I can manually specify what should be on top? 22:59 < bridge> yes, the last UI element being rendered at that position 23:00 < bridge> oki, thanks. can't think of usage tbh, but will kow it exists 23:00 < bridge> oki, thanks. can't think of usage tbh, but will know it exists 23:01 < bridge> It's for example to handle popup menus where UI elements in the popup are rendered above those in the regular UI 23:02 < bridge> Of you only looked at the position then you could activate UI elements below the active popup menu 23:03 < bridge> can this be patched or something 23:03 < bridge> happens when i just go afk 23:03 < bridge> and do nothing 23:04 < bridge> monitor was off but idk if it affects anything