00:00 <+bridge> [ddnet] I might not be doing this right, since editing the outline color in the if statement doesn't affect the outline color. But does affect the actual character color. 00:05 <+bridge> [ddnet] Oh yea, fixed it so that curly brackets are now normal brackets 00:33 <+bridge> [ddnet] Is there a reason why `TextRender()->TextOutlineColor` doesn't do anything in this scenario, yet `TextRender()->TextColor` does? 00:33 <+bridge> [ddnet] I rearranged the code a tiny but to have the colors change to default before the first text is rendered, and at the end of the if statement. 00:56 <+bridge> [ddnet] the clip/trim icons are a little hard to understand but everything else look good 00:56 <+bridge> [ddnet] I wish there were better symbols for them <:( 00:57 <+bridge> [ddnet] If any of you guys want to help out, feel free to search though the free icons in here: 00:57 <+bridge> [ddnet] https://fontawesome.com/search?m=free 00:57 <+bridge> [ddnet] keep in mind they **have** to be in the free section 01:22 <+bridge> [ddnet] Also if we find enough files, do you think we can also replace `file_icons.png` with FontIcons? 01:42 <+bridge> [ddnet] @Not Keks I was told you know a bit about this 01:44 <+bridge> [ddnet] can we not create character on our own and embed them in font icon file? 01:45 <+bridge> [ddnet] I mean... 01:46 <+bridge> [ddnet] I never thought about that. 01:49 <+bridge> [ddnet] But if the font file needs updating again it would overwrite 01:54 <+bridge> [ddnet] overwrite what? 01:54 <+bridge> [ddnet] creating character seems rather easy on linux with fontforge package 01:55 <+bridge> [ddnet] Oh, you mean adding NEW characters? I thought you meant replacing already existing characters 01:55 <+bridge> [ddnet] or replacing yeah 01:55 <+bridge> [ddnet] whatever works i guess 01:56 <+bridge> [ddnet] Even then I don't think you can update a font file without replacing all the characters 01:56 <+bridge> [ddnet] in both way, you still need to design the character and put it in font file 🙂 01:56 <+bridge> [ddnet] of course you can 01:56 <+bridge> [ddnet] Oh... 01:57 <+bridge> [ddnet] I'm reading the license right now to see if you can do that 01:58 <+bridge> [ddnet] i meant it technically, no idea about legal terms 05:14 <+bridge> [ddnet] lots of chinese servers lost connection to masters 05:14 <+bridge> [ddnet] rip 07:09 <+bridge> [ddnet] Just look how the server browser verified symbol did it 07:09 <+bridge> [ddnet] Maybe do label overwrites it or smth like that 07:10 <+bridge> [ddnet] I **did** look at how the verified symbol was made. All it is is just two unicodes on top of each other. 07:11 <+bridge> [ddnet] Maybe 07:13 <+bridge> [ddnet] Maybe. The verified symbol uses DoLabelStreamed, meanwhile I just used DoLabel 07:31 <+bridge> [ddnet] U can add it to the props struct with default value and remove wherever it overwrites it 08:45 <+bridge> [ddnet] @Not Keks any idea what might cause this? 08:45 <+bridge> [ddnet] ``` 08:45 <+bridge> [ddnet] [2022-08-18 01:18:03][vulkan]: device lost 08:45 <+bridge> [ddnet] [2022-08-18 01:18:03][vulkan]: vulkan error: Submitting to graphics queue failed.: device lost 08:45 <+bridge> [ddnet] [2022-08-18 01:18:03][assert]: src\engine\client\backend\vulkan\backend_vulkan.cpp(1114): Submitting to graphics queue failed.: device lost 08:45 <+bridge> [ddnet] ``` 08:45 <+bridge> [ddnet] It happened 4 times randomly in the last 6 months 08:51 <+bridge> [ddnet] hmm actually it may be from using nvidia overlay to record. I'm pretty sure it only happens when I do that 08:51 <+bridge> [ddnet] hmm actually it may be from using nvidia overlay to record. I'm pretty sure it only happened when I did that 09:03 <+bridge> [ddnet] :\ 09:19 <+bridge> [ddnet] Putting this here to remind myself later (Now that we're changing the icons, why not have there be actually different icons for the different elements?) 09:19 <+bridge> [ddnet] https://cdn.discordapp.com/attachments/293493549758939136/1009723202081144842/unknown.png 09:35 <+bridge> [ddnet] All of your sketches look better than anything I ever drew 09:36 <+bridge> [ddnet] All of your sketches look better than anything I ever drawn 10:25 <+bridge> [ddnet] It's because it's digital 10:28 <+bridge> [ddnet] any file which aren't generated by the client cannot be accessed like that 10:28 <+bridge> [ddnet] perhaps the .map files only, but anything else needs permissions at least 10:44 <+bridge> [ddnet] isnt there literally a fuction in the code that detects what type of file it is 10:45 <+bridge> [ddnet] theres an enum AND a endswith thing 10:47 <+bridge> [ddnet] file.endswith('.map') etc. 10:47 <+bridge> [ddnet] yea 10:48 <+bridge> [ddnet] dunno what it's in C++ tho 10:48 <+bridge> [ddnet] dunno what the function is called in C++ tho 11:12 <+bridge> [ddnet] eh? 11:17 <+bridge> [ddnet] ```if (filename[filename.lenght-1] == 'p' and filename[filename.lenght-2] == 'a' and filename[filename.lenght-3] == 'm' and filename[filename.lenght-4] == '.') { 11:17 <+bridge> [ddnet] 11:17 <+bridge> [ddnet] }``` 11:17 <+bridge> [ddnet] LOL, is that actual code we have? 11:17 <+bridge> [ddnet] no 11:18 <+bridge> [ddnet] Should be replaced with an str_endswith if so 11:18 <+bridge> [ddnet] I hope not lol 11:18 <+bridge> [ddnet] lenght 11:18 <+bridge> [ddnet] That's just my solution 11:18 <+bridge> [ddnet] i checked, we do use endswith (fortunately) 11:19 <+bridge> [ddnet] when i get back on computer im going to try and make file_icons.png obsolete :troll: 11:19 <+bridge> [ddnet] (which is harder than it sounds for me) 11:21 <+bridge> [ddnet] Where are all the console commands described in the sources? 11:23 <+bridge> [ddnet] config_variables.h 11:23 <+bridge> [ddnet] i think thats what u mean right 11:26 <+bridge> [ddnet] Or rather, where the code of each rcon command is described 11:26 <+bridge> [ddnet] i need to edit super command, addweapon and jetpqck 11:27 <+bridge> [ddnet] i need to edit super command, addweapon and jetpack 11:30 <+bridge> [ddnet] I am not an expert but maybe src/game/server/ddracecommands.cpp ? 11:32 <+bridge> [ddnet] that's exactly what I was looking for, thanks 11:48 <+bridge> [ddnet] I'm looking at the c++ codebase for the first time 🙂 I have seen multiple times an int be used instead of a bool, why is that? 11:49 <+bridge> [ddnet] Are there any sources with more server administration functionality? 11:50 <+bridge> [ddnet] It's hard for me to rewrite the code to give someone a jetpack or something else 12:33 <+bridge> [ddnet] Depends on what you do 12:34 <+bridge> [ddnet] When you have 32 bits you can store 32 booleans 12:53 <+bridge> [ddnet] well here for example 12:53 <+bridge> [ddnet] IsStrokeCommand is only used there 12:53 <+bridge> [ddnet] https://cdn.discordapp.com/attachments/293493549758939136/1009777105560670268/unknown.png 12:58 <+bridge> [ddnet] This one is probably just an artifact of migration from C way back in the day 12:59 <+bridge> [ddnet] ok.. there are quite a few then. It doesn't matter too much I suppose, but I found it a bit confusing 13:17 <+bridge> [ddnet] Or that, didn't know tw was C only before 13:59 <+bridge> [ddnet] https://en.cppreference.com/w/cpp/utility/bitset 13:59 <+bridge> [ddnet] i heard some funky stuff about this tho 14:01 <+bridge> [ddnet] https://stackoverflow.com/questions/30295174/what-is-the-performance-of-stdbitset 14:02 <+bridge> [ddnet] > sizeof(bitset<8>) => 8 14:02 <+bridge> [ddnet] > sizeof(uint8_t) => 1 14:02 <+bridge> [ddnet] zero cost abstractions in c++ hehe 14:06 <+bridge> [ddnet] lol didn't know that 14:06 <+bridge> [ddnet] afterall C++ has too many stuff 14:07 <+bridge> [ddnet] yeah 14:07 <+bridge> [ddnet] but bitset doesnt optimize as well 14:07 <+bridge> [ddnet] xd 14:07 <+bridge> [ddnet] I guess that's more for simplicity ? 14:07 <+bridge> [ddnet] its cuz 14:07 <+bridge> [ddnet] oh hey 14:07 <+bridge> [ddnet] u cant use operator[] to index bits 14:07 <+bridge> [ddnet] the answer explains it 14:07 <+bridge> [ddnet] that BMTH song has a six impala remix 14:08 <+bridge> [ddnet] #off-topic ? 14:08 <+bridge> [ddnet] it's not good tho imo lol 14:08 <+bridge> [ddnet] Hm, I thought bitset did optimize properly for sizes that are = 0 (mod 8) 14:08 <+bridge> [ddnet] > If you are using bitset in a way that does actually make it clearer and cleaner than bit-fiddling, like checking for one bit at a time instead of using a bit mask, then inevitably you lose all those benefits that bitwise operations provide, like being able to check to see if 64 bits are set at one time against a mask, or using FFS instructions to quickly determine which bit is set among 64-bits. 14:08 <+bridge> [ddnet] > 14:08 <+bridge> [ddnet] > I'm not sure that bitset incurs a penalty to use in all ways possible (ex: using its bitwise operator&), but if you use it like a fixed-size boolean array which is pretty much the way I always see people using it, then you generally lose all those benefits described above. We unfortunately can't get that level of expressiveness of just accessing one bit at a time with operator[] and have the optimizer figure out all the bitwise manipulati 14:11 <+bridge> [ddnet] Huh, doesn't std::bitset have member functions that implement these operations in an optimal way? I'm sure `std::bitset::any` uses an FFS 14:14 <+bridge> [ddnet] > If you genuinely need to access a bunch of bits with a random access pattern which, for some reason or other, needs to check and set just one bit a time, then it might be ideally implemented for such a purpose. But my point is that almost all use cases I've encountered didn't require that, and when it's not required, the old school way involving bitwise operations tends to be significantly more efficient. 14:14 <+bridge> [ddnet] idk 14:17 <+bridge> [ddnet] hm, you can't get it to emit a clz, so finding the first set bit is annoying 14:18 <+bridge> [ddnet] but `any`, `all`, `none` all seem to be implemented in a sane way 14:21 <+bridge> [ddnet] I guess you could technically do `to_ulong` followed by a `builtin_clzl` 14:22 <+bridge> [ddnet] Hm, not that I could get gcc to emit a clz with a loop and an ulong 16:06 <+bridge> [ddnet] https://www.tomshardware.com/news/tsmc-initiates-3nm-chips-production-next-month 16:25 <+bridge> [ddnet] https://cdn.discordapp.com/attachments/293493549758939136/1009830308272685086/unknown.png 16:25 <+bridge> [ddnet] its upgrade time 16:32 <+bridge> [ddnet] uff 18:52 <+bridge> [ddnet] Metasploit? 18:52 <+bridge> [ddnet] https://cdn.discordapp.com/attachments/293493549758939136/1009867392551231578/unknown.png 18:52 <+bridge> [ddnet] young hacker 18:53 <+bridge> [ddnet] he also uses telegram, probably a catalan secessionist 18:54 <+bridge> [ddnet] Maybe 18:57 <+bridge> [ddnet] Wtf 18:57 <+bridge> [ddnet] https://cdn.discordapp.com/attachments/293493549758939136/1009868531506106460/unknown.png 18:57 <+bridge> [ddnet] Wtf 18:57 <+bridge> [ddnet] https://cdn.discordapp.com/attachments/293493549758939136/1009868695977349211/unknown.png 19:00 <+bridge> [ddnet] ₽id0r 19:14 <+bridge> [ddnet] :monkalaugh: 19:14 <+bridge> [ddnet] what's wrong? 19:15 <+bridge> [ddnet] API Log4j 19:15 <+bridge> [ddnet] bro 19:15 <+bridge> [ddnet] it's not log4j 19:16 <+bridge> [ddnet] it's log4cpp 19:17 <+bridge> [ddnet] may be. I didn't read the documentation 19:17 <+bridge> [ddnet] Hey, which maps have the most finishes? Excluding race stuff 19:19 <+bridge> [ddnet] I very quickly went through the documentation and fashioned a few keywords: “C ++”, “API”, “Java Log4j” 19:19 <+bridge> [ddnet] #mapping 19:19 <+bridge> [ddnet] 19:20 <+bridge> [ddnet] idk if that fits into mapping 19:20 <+bridge> [ddnet] mapping and maps are 2 different things 19:21 <+bridge> [ddnet] i'd say flappy bird 19:22 <+bridge> [ddnet] Nope, only new best time counts 19:22 <+bridge> [ddnet] nerfed it 22:15 <+bridge> [ddnet] I'll 20 people on how to earn $10,000 or more in just 3day's from the crypto market.but you will pay me 10% commission when you receive your profit. if interested send me a direct message, for more information... or Contact via Telegram\: https://t.me/+tfGh-LUPGbdmY2U8 22:16 <+bridge> [ddnet] @Discord Mod 22:17 <+bridge> [ddnet] Zwelf\: 23:05 <+bridge> [ddnet] use with caution 23:05 <+bridge> [ddnet] https://github.com/ortegaalfredo/kscope/blob/master/doc/HDD-microphones.pdf 23:12 <+bridge> [ddnet] lol? 23:12 <+bridge> [ddnet] there's a python program to kill your hdd as well 23:12 <+bridge> [ddnet] or kill your vps' hdd 23:30 <+bridge> [ddnet] feature idea: soft reset 23:31 <+bridge> [ddnet] soft reset will teleport you back to the last checkpoint, and it could be toggled within a map setting or tile or whatnot 23:31 <+bridge> [ddnet] cause sometimes a map doesn't work with teleport tiles so you're forced to make it faily 23:33 <+bridge> [ddnet] allow practicing players to teleport to any teleport using a custom command: /tp [number], instead of having access in rcon 23:33 <+bridge> [ddnet] allow practicing players to teleport to any teleport location using a custom command: /tp [number], instead of having access in rcon 23:33 <+bridge> [ddnet] allow practicing players to teleport to any cp location using a custom command: /tp [number], instead of having access in rcon