00:19 < bridge> @avolicious: by scale down I meant turn off some tw servers or whatever is using all the ram (looking at you k8s) 01:01 * _1___ slaps ChillerDragon around a bit with a large fishbot 01:01 * _1___ slaps _1___ around a bit with a large fishbot 03:30 < bridge> anyone had issues running ddnet with xwayland before? 03:30 < bridge> I'm using xwayland-satellite and it's just a black screen after Vulkan context 03:32 < bridge> not sure why its not just... running with Wayland though 03:32 < bridge> i thought this was possible 03:32 < bridge> i installed via arch package 03:33 < bridge> holy shit there's an Arch Linux wiki page for DDNet? that's awesome 03:38 < bridge> any1 know how to speed this up? 03:38 < bridge> https://cdn.discordapp.com/attachments/293493549758939136/1374199618811723797/image.png?ex=682d2ea0&is=682bdd20&hm=7479f57706fef4e8f13d3d6d0343652346b696f4c373f1d10c794aac4368dd60& 03:38 < bridge> i want unique, mostly unused names 03:39 < bridge> this took 30 seconds 03:40 < bridge> Also tried using xwayland-run instead 03:41 < bridge> why do you need to run it in xwayland 03:41 < bridge> SDL_VIDEODRIVER=wayland 03:41 < bridge> I shouldnt need to right lol 03:41 < bridge> ya idk what SDL needs at all 03:41 < bridge> i thought this would be managed completely by the package 03:41 < bridge> . 03:41 < bridge> so do I have to stick this in my login or whatever 03:42 < bridge> no 03:42 < bridge> just surprised is all 03:42 < bridge> well .profile 03:42 < bridge> yeah 03:42 < bridge> i would recommend 03:42 < bridge> as well as the hundred other env vars you need 03:42 < bridge> but first test it 03:42 < bridge> SDL_VIDEODRIVER=wayland ./DDNet 03:42 < bridge> well act i put it in your desktop env rc 03:43 < bridge> incase you every wana run xorg 03:43 < bridge> SDL_VIDEODRIVER is set but re-running DDNet still attempts to get gfx with x11 03:43 < bridge> i will try to restart my session 03:43 < bridge> if you dont export it DDNet doesnt get it 03:43 < bridge> unless you put it directly beforehand as 03:44 < bridge> this 03:44 < bridge> if DDNet can't get wayland it will try x11 03:46 < bridge> I think I can set environment variables related to the session in niri 03:46 < bridge> niri's config 03:46 < bridge> . 03:46 < bridge> if that doesnt work then setting the envvar doesnt work 03:47 < bridge> new error! 03:47 < bridge> requested presentation mode was not available. falling back to mailbox / fifo relaxed. 03:47 < bridge> but window is black regardless 03:47 < bridge> Vulkan error 03:47 < bridge> ?? 03:48 < bridge> i must need a lot of vars... 03:49 < bridge> thats not really an error 03:49 < bridge> but is a symptom of something else 03:49 < bridge> is there a way I can put this ddnet config? 03:49 < bridge> non 03:49 < bridge> like use wayland instead 03:50 < bridge> fucked up 03:50 < bridge> well either way, still just blank 03:50 < bridge> anyone here play on Wayland? 03:50 < bridge> ddnet config shouldnt have config for that 03:50 < bridge> the environment should do those 03:50 < bridge> if they are required 03:50 < bridge> idk why every idiot needs a seperate and multiple env vars 03:51 < bridge> XDG_SESION-TYPE is all you shoul d need 03:51 < bridge> wow nice discord lag 03:51 < bridge> not really sure what you're saying 03:51 < bridge> are you mad at SDL or something 03:51 < bridge> yes 03:52 < bridge> and chrome 03:52 < bridge> by extention all electron based apps 03:52 < bridge> gtk and qt idk abt them 03:52 < bridge> qt is fucked 03:53 < bridge> i suppose I cannot play ddnet unless i use steam 03:53 < bridge> gtk is fucked but better than qt 03:53 < bridge> see what env vars steam sets 03:53 < bridge> i havent even tried steam at all yet because Wayland is a mess with steam 03:53 < bridge> obviously 03:53 < bridge> theres a well defined 03:53 < bridge> standard setting 03:54 < bridge> for whether to use wayland or x11 03:54 < bridge> and no one bloody uses it 03:54 < bridge> ``` 03:54 < bridge> env | grep x11 03:54 < bridge> XDG_SESSION_TYPE=x11 03:54 < bridge> ``` 03:54 < bridge> GAH 03:55 < bridge> `cat /proc//environ | tr '\0' '\n'` 03:55 < bridge> if you get it to run in steam 04:57 < bridge> Steam works and I wish I knew why 05:04 < bridge> doesnt steam sometimes use its own stuff 05:04 < bridge> gamescope or whatever 05:05 < bridge> hm only on steam deck ig 05:06 < bridge> You can install gamescope manually 05:07 < bridge> if using dbeaver I like the “explain plan” option a lot because it’ll tell you what the optimizer is thinking 05:08 < bridge> nothing sticks out to me as apparently slow but i’m not that smart with sql 05:08 < bridge> deen tho. he might know 05:08 < bridge> :kek: 05:08 < bridge> i apologize gorp i responded to the wrong message. 05:09 < bridge> i meant to respond to this 05:09 < bridge> yeah it works fine but I get better latency in gamescope in a VT 05:10 < bridge> what… Qt has its own detection system and the first thing it looks at is this env vat 05:10 < bridge> do u mean qt5 05:10 < bridge> what… Qt has its own detection system and the first thing it looks at is this env var 05:10 < bridge> because that just doesn’t have a Wayland platform plugin 05:13 < bridge> it is, if you have nvidia i can share my big ol list of env vars 05:16 < bridge> 05:16 < bridge> ^ nvidias 05:16 < bridge> 05:16 < bridge> ^ wayland (hyprland session ones should be changed) 05:17 < bridge> i’ve only gotten ddnet to work under xwayland specifically by virtue of hyprland’s implementation so idk how easy it’ll be to set up from scratch. i know for single-window game applications gamescope would provide better results (this is what steam uses on le deck) 05:17 < bridge> i’ve only gotten ddnet to work under xwayland specifically by virtue of hyprland’s integration so idk how easy it’ll be to set up from scratch. i know for single-window game applications gamescope would provide better results (this is what steam uses on le deck) 05:18 < bridge> gamescope with automatic backend detection should work the same as xwayland in this case, only con is you have to manually set window dimensions 05:18 < bridge> gamescope with automatic backend detection in ur desktop should work the same as xwayland in this case, only con is you have to manually set window dimensions 05:30 < bridge> i was moved towards qt5 05:43 < bridge> why? 05:43 < bridge> last ver came out in 2020 unless you count the (enterprise only) lts extension 05:43 < bridge> you want them to use a time machine? they were on top of the wayland stuff from the start 05:44 < bridge> Qt natively has the means to behave as a wayland compositor and they have a whole module for it 05:44 < bridge> big chads 05:59 < bridge> export QT_QPA_PLATFORM=wayland 05:59 < bridge> and they require an env var 05:59 < bridge> which isnt xdg_session_type 06:23 < bridge> i feel like it falls back to what XDG says unless it has reason not to 06:38 < bridge> for the brief period when i tried wayland, everything wanted to use xwayland 06:39 < bridge> chrome wanted platform ozone, gtk, qt and sdl wanted env vars, steam never worked, sdl needs one 06:39 < bridge> chrome wanted platform ozone, gtk, qt and sdl wanted env vars, steam never worked 06:41 < bridge> de have the advantage of being the people who are working on wayland 06:41 < bridge> idk how they get it to work so seemlessly 06:41 < bridge> if it does 07:17 < bridge> aaaaaaaa 07:17 < bridge> can things just use wayland 07:17 < bridge> alreadu 07:17 < bridge> already 07:21 < bridge> it’s very difficult in a lot of scenarios 07:22 < bridge> afaik the pull request to get it in dolphin emu still hasn’t been merged 07:49 < bridge> we are not wayland yet till everything respects xdg_session_type 07:49 < bridge> change my mind 08:00 < bridge> <0xfaulty> SELECT r.name 08:00 < bridge> <0xfaulty> FROM race r 08:00 < bridge> <0xfaulty> JOIN maps m ON m.map = r.map 08:00 < bridge> <0xfaulty> GROUP BY r.name 08:00 < bridge> <0xfaulty> HAVING MAX(m.points) <= 8 08:00 < bridge> <0xfaulty> LIMIT 1; 08:00 < bridge> <0xfaulty> 08:00 < bridge> <0xfaulty> But compare with "explain" to be sure 08:02 < bridge> im on x11 08:09 < bridge> cvery interesting, unfortunatley i have long deleted the 6gb of database 08:10 < bridge> doesnt the having max bit go on for ages 08:10 < bridge> like there could be a name with 1 4pt complettion very very far away with a 5pt one 08:10 < bridge> = long 08:56 < bridge> Based choice 09:07 < bridge> it just works for me 09:07 < bridge> i wont witch to wayland until it is polished 09:07 < bridge> wayland is way less logical for the end user in a lot of fucking ways tho 09:08 < bridge> like, client side decorations are a joke for accessibility purposes 09:08 < bridge> and performance is not always better as far as i know 09:09 < bridge> you have to opt out of certain niceties to benefit from it imo but even then it wouldn’t inherently be better than x 11:04 < bridge> Old software keeps winning fr 11:12 < bridge> hmm well 11:12 < bridge> after tweaking some stuff, everything works with xwayland-satellite 11:13 < bridge> i don't think any aspect of wayland is not "polished" its ofc a software thing 12:09 < bridge> this was a ready pr for like months now 12:09 < bridge> this is a ready pr for like months now 12:10 < bridge> closed as pooplicate 12:43 < bridge> @chillerdragon "The first click into the window should be ignored. And ideally also a short delay after getting killed." on windows? 12:43 < bridge> idk how to recreate 13:29 < bridge> This should already be the case if the window wasn't active before. But if you switch to the window with alt+tab then it's already active and should also handle the next mouse click. 13:35 < bridge> I am not home. Can’t test. I just remembered following random players at all times on kog 13:36 < bridge> I will investigate later 14:22 < bridge> How can I download the codm skinchanger? 14:23 < bridge> I've seen it on the tik tok 14:26 < bridge> https://artofproblemsolving.com/community/c2532359h2760821_the_emoji_problem__part_i 14:27 < bridge> https://cdn.discordapp.com/attachments/293493549758939136/1374362775073329202/p92108lekoq11.png?ex=682dc694&is=682c7514&hm=aa37346dfd695f1bb84195375fd2f90ea5a477a549c2d07bc01cf261828adf3b& 14:34 < bridge> hi is the netmsg_clientver sent to all servers? 14:34 < bridge> with CClient::SendInfo 14:36 < bridge> yea, on connect 14:37 < bridge> i want to get netmsg_clientver data on the server side in fng2 14:37 < bridge> like ddnet 14:38 < bridge> server.cpp `if(Msg == NETMSG_CLIENTVER)` 14:42 < bridge> pls someone help why CreateExplosion doesnt create explosion 14:54 < bridge> #1 14:55 < bridge> #1234 14:55 < bridge> https://github.com/ddnet/ddnet/issues/1234 14:55 < bridge> good bot 14:55 < bridge> :3 14:58 < bridge> #5 14:58 < bridge> :feelsbadman: 15:02 < bridge> i did this: 15:02 < bridge> ```c++ 15:02 < bridge> if(Msg == NETMSG_CLIENTVER) 15:02 < bridge> { 15:02 < bridge> if((pPacket->m_Flags&NET_CHUNKFLAG_VITAL) != 0 && m_aClients[ClientID].m_State == CClient::STATE_PREAUTH) 15:02 < bridge> { 15:02 < bridge> //CUuid *pConnectionId = (CUuid *)Unpacker.GetRaw(sizeof(*pConnectionId)); 15:03 < bridge> int DDNetVersion = Unpacker.GetInt(); 15:03 < bridge> const char *pDDNetVersionStr = Unpacker.GetString(CUnpacker::SANITIZE_CC); 15:03 < bridge> if(Unpacker.Error() || DDNetVersion < 0) 15:03 < bridge> { 15:03 < bridge> return; 15:03 < bridge> } 15:03 < bridge> Console()->Print(IConsole::OUTPUT_LEVEL_STANDARD, "hsagdj", pDDNetVersionStr); 15:03 < bridge> m_aClients[ClientID].m_State = CClient::STATE_AUTH; 15:03 < bridge> } 15:03 < bridge> } 15:03 < bridge> // system message 15:03 < bridge> else if(Msg == NETMSG_INFO) 15:03 < bridge> ``` 15:03 < bridge> but im stuck on the 'sending initial client info' screen 15:03 < bridge> when entering the server 15:03 < bridge> ddnet has this in code idk what initial client info 15:04 < bridge> i already got it from the ddnet code 15:06 < bridge> this code is works in ddnet source 15:06 < bridge> the same code does not work in fng2 15:08 < bridge> idk then 15:14 < bridge> nvm fixed 16:24 < bridge> @milkeeycat ever used locks along with tokio? 16:24 < bridge> xd 16:25 < bridge> Is there any way to have the list of the players name on DDNet as a file or website api request or anything that can be close to that. 16:26 < bridge> I'm a big rust async noob 16:26 < bridge> async coloring is a pain sometimes 16:27 < bridge> im sure getting async correctly done in a language is the biggest hurdle 16:27 < bridge> @milkeeycat if u dont use, for example, tokio version of RwLock, which when u use .read() you have to .await then 16:27 < bridge> no async, no hurdles :santatrollet: 16:27 < bridge> if u use the normal std rwlock 16:27 < bridge> u cant hold the lock 16:27 < bridge> across await points 16:27 < bridge> pain 16:27 < bridge> but it makes sense 16:27 < bridge> the lock guard is not send 16:29 < bridge> so it makes u either: 16:29 < bridge> - Carefully use the std locks to avoid holding them across await points (pain) 16:29 < bridge> - Use tokio RwLock which can be held across await points, but you have to .await them, which means u have to convert any function wanting to use this lock to async, even if it only does that, getting the lock 16:29 < bridge> also tokio rwlok is not refunwindsafe, so u cant catch_panic if u use it 16:30 < bridge> doc.rust-lang.org/std/panic/trait.RefUnwindSafe.html 16:30 < bridge> https://doc.rust-lang.org/std/panic/trait.RefUnwindSafe.html 16:31 < bridge> I should write something to get more familiar with async 16:41 < bridge> 😭 why is there no solution 16:41 < bridge> atleast put a ridiculous solution man 16:41 < bridge> like 25221 21111 64 16:41 < bridge> or smth 16:41 < bridge> but there is none :( 16:42 < bridge> unfun 16:43 < bridge> ```cpp 16:43 < bridge> #include 16:43 < bridge> int main() { 16:43 < bridge> for (int b = 1; b <= 100; b++) 16:43 < bridge> for (int a = b; a <= 100 * b; a += b) 16:43 < bridge> for (int p = 1; p <= 100; p++) 16:43 < bridge> if (a / b + p == 4 && 2 * a + 2 * b + p == 4) { 16:43 < bridge> printf("Solution: a = %d, b = %d, p = %d\n", a, b, p); 16:43 < bridge> return 0; 16:43 < bridge> } 16:44 < bridge> printf("No solutions found.\n"); 16:44 < bridge> return 0; 16:44 < bridge> } 16:44 < bridge> ``` 16:47 < bridge> wdym he shows it 16:47 < bridge> WDYM 16:48 < bridge> am i stupid? 16:48 < bridge> https://cdn.discordapp.com/attachments/293493549758939136/1374398280091308092/image.png?ex=682de7a5&is=682c9625&hm=7c75140cd8958d5ecba926ac40208560f3a3245a788e9fb4d0973388205b539c& 16:48 < bridge> u are kek 16:48 < bridge> i am a kek 16:48 < bridge> i did not check that high 16:48 < bridge> i am happy 16:48 < bridge> this is what happens 16:48 < bridge> when u have eliptic curves not bounded by a modulo prime 16:48 < bridge> xd 16:48 < bridge> high numbers 16:50 < bridge> ah didn't click on the link ig 16:52 < bridge> Not like this is a trivial problem though, is it? Am I missing sth? Diophantine equations are a pain 16:54 < bridge> its extremely hard problem 16:59 < bridge> The meme is that you're taking the traditional caption "95% of people can't solve this" and making it *extremely* true by making sure that the real figure is closer to 99.9% 16:59 < bridge> there's a bunch of them and they're great 17:05 < bridge> in particular it's inevitable for there to be diophantine equations like these whose smallest solutions are massive 17:05 < bridge> diophantine equations are turing complete so there can't be some simple bound on smallest solutions based on the coefficients, otherwise you could just determine solvability by exhaustive search 17:09 < bridge> https://cdn.discordapp.com/attachments/293493549758939136/1374403704744317009/ut6ilpb1zit71.png?ex=682decb2&is=682c9b32&hm=4ceb7a9c634a403cb8c640d005aa4da1469d7249a1a9fe09f3823c62e221a285& 17:10 < bridge> this is ridiculous 17:23 < bridge> Given 🤪 and 🥕_i the condition that 🥕_i = 🥕 o 🍓_i for all i is equivalent to 🥕((🍏, i)) being equal to 🥕_i(🍏) for all i in 🍎 and all 🍏 in 🥭 _i. Since all elements of 😳 are of the form (🍏, i) for some i in 🍎 and some 🍏 in 🥭 by definition, this defines 🥕 uniquely. Moreover, every element of 😳 can in fact be uniquely written as (🍏, i), defining 🥕 in this way makes it well-defined, so there e 17:27 < bridge> Given 🤪 and 🥕_i the condition that 🥕_i = 🥕 o 🍓_i for all i is equivalent to 🥕((🍏, i)) being equal to 🥕_i(🍏) for all i in 🍎 and all 🍏 in 🥭 _i. Since all elements of 😳 are of the form (🍏, i) for some i in 🍎 and some 🍏 in 🥭 by definition, this defines 🥕 uniquely. Moreover, since every element of 😳 can in fact be uniquely written as (🍏, i), defining 🥕 in this way makes it well-defined, so t 17:29 < bridge> Is it even doable by hand btw? 17:31 < bridge> @cyberfighter pls asmr 17:35 < bridge> it's very tedious but not impossible 17:36 < bridge> it's described in the aops post, and none of the individual computations are too hard 17:36 < bridge> I like your funny words, magic man 17:37 < bridge> showing that it's the smallest solution is trickier though, you have to compute the rank of the curve for that 17:37 < bridge> you started it 17:38 < bridge> I just picked the one that looked the most intimidating to me 17:38 < bridge> I skipped the one that was asking you to prove or disprove the Riemann hypothesis in fruits because I found that was a bit too on the nose 17:57 < bridge> lol aops blogs have some gems huh 17:58 < bridge> when i was on that site most of the blogs were troll 18:35 < bridge> @aegisub i didnt know ur a math guy thats cool 19:00 < bridge> lately new ai slop about coding is out 19:00 < bridge> https://jules.google/ 19:06 < bridge> oh god, I hate changing a semver string in a single file 19:06 < bridge> this is LIFECHANGING 19:08 < bridge> lets see if it cooks 19:08 < bridge> https://cdn.discordapp.com/attachments/293493549758939136/1374433647188381826/image.png?ex=682e0895&is=682cb715&hm=a39a53719d718b3e74542ee0eea741a8d46cf29732fa0f18ef700e6422f6587a& 19:09 < bridge> LMAO 19:10 < bridge> aww yeah its cookin 19:10 < bridge> https://cdn.discordapp.com/attachments/293493549758939136/1374434205043523684/image.png?ex=682e091a&is=682cb79a&hm=78710798bd29ee39549ccac02a2cdf69aba0144f257ed9ce7f0ec42ad426f1bd& 19:13 < bridge> sounds easy enough 19:13 < bridge> https://cdn.discordapp.com/attachments/293493549758939136/1374434924437700739/image.png?ex=682e09c5&is=682cb845&hm=68505508cd46288b68e8c5eb0f1d21acb1e6e0ef4c745641fede3c33ee33ecfa& 19:14 < bridge> achieve a cryptic style !!!! 19:17 < bridge> do we have any steam telemetry? like downloads to uninstalls 19:17 < bridge> No everyone else does but they told gaben they don’t want the numbers because it’s a violation of user privacy 19:18 < bridge> i mean it is 19:18 < bridge> He had them patch the Steam servers to exclude DDNet 19:18 < bridge> i agree 19:18 < bridge> true story 19:18 < bridge> BUT 19:18 < bridge> it would be really nice to know who is leaving the game forever in 1 minute 19:19 < bridge> i have this type of person in my head that is mostly theoretical but mythical 19:19 < bridge> and it would be nice to know how big this group is 19:20 < bridge> IME as soon as someone gets that first drop of "hey you can do cool shit with another tee" they are much less likely to leave and will hop on for day 2 19:21 < bridge> i got a stable full of hoes 19:22 < bridge> getting them in game with real players quickly and with decent retention is really important to me, because the elitist mentality does more of a disservice to the game, I think it deserves to be popular really 19:22 < bridge> I'm gonna write a 100 page manifesto 19:30 < bridge> hello @sollybunny sry for ping, what about adding `cl_nameplates_same_clan_color`? 19:30 < bridge> https://cdn.discordapp.com/attachments/293493549758939136/1374439095887069328/image.png?ex=682e0da8&is=682cbc28&hm=297a7e2b71adb08b1a6a48459a2277ecfae993ffec2c679d6b607f40a42004f9& 19:40 < bridge> i think that should be default behaviour 19:41 < bridge> although bit of a pain to implement 21:43 < bridge> let it cook 21:43 < bridge> https://cdn.discordapp.com/attachments/293493549758939136/1374472643235024987/31cc3f64bd3db33d.png?ex=682e2ce6&is=682cdb66&hm=7030bea3067c49634f08f324b9c9bb25738dd80c5c83d4429fc2fd45b19714f2& 23:10 < bridge> https://tenor.com/view/pipotam-baby-hippo-hippo-wash-shower-gif-3406421565683572068 23:43 < bridge> theres an option to add entire clans to the list though, cant you just do that?