01:45 < bridge> eeehm 01:45 < bridge> shouldn't it?? 02:11 < bridge> Yes 03:00 < bridge> it does for me 03:00 < bridge> (on nightly) 07:21 < bridge> do i need to free quadindexes, and should i do it onshutdown or onreset? 13:51 < bridge> How to use `bans_save`? After the ban the nicknames are not added. Or do I need to put nicknames in there so that they will be banned? 13:51 < bridge> @blaiszephyr :>> 13:53 < furo> `bans_save` takes a file as an argument and will then write all current bans to that file. So, `bans_save bans.txt` 13:55 < bridge> I did, I ban myself through econ, but my nickname is not on the list. 13:55 < bridge> I did, I ban myself through econ, but my nickname is not on the list 13:56 < bridge> "current", Okay, I get it. Sorry :> 13:56 < bridge> :nouis: 13:56 < furo> I think you misunderstood me. It won't automatically add to that file, it will write all current ones. 13:57 < bridge> Can I make a list that bans IPs every time the server is restarted? 13:57 < furo> You can add `exec bans.txt` to your autoexec if that's what you mean. 13:59 < bridge> I want to test it 13:59 < bridge> :kek: 15:16 < bridge> Impressive that CodeQL found that easily 15:31 < bridge> @learath2 https://teerenderer.blazic.rs/ 15:31 < bridge> https://teeassembler.developer.li/ 15:31 < bridge> the second link actually has color support 15:32 < ws-client> @learath2 `` GNUC_ATTRIBUTE((format(printf, 3, 4)));`` magic 15:32 < ws-client> https://github.com/ddnet/ddnet/blob/683eb4aa57be1dd025c5602881446e2dec2399c7/src/base/system.h#L100-L101 15:41 < bridge> Oic, we hint it. I was like damn how is it so smart? 17:14 < bridge> https://cdn.discordapp.com/attachments/293493549758939136/1355575849767928110/file-1.jpg?ex=67e96de3&is=67e81c63&hm=8f76880eab9431269cda7ccf5e39deb094fb47ae49d8c5fb3c61ea1dba6183ea& 17:15 < bridge> lmfao 17:32 < bridge> Someone explain to me how in the fuck this is happening 17:32 < bridge> 17:32 < bridge> ```html 17:32 < bridge> 17:32 < bridge> 17:32 < bridge>
test
17:32 < bridge> ``` 17:32 < bridge> somehow turns into 17:32 < bridge> 17:32 < bridge> `
test
` 17:32 < bridge> How, what, why? I don't even know what to google 17:33 < bridge> looks like some internal conversion from hsl to rgb? 17:33 < bridge> is this some modern webdev magic? 😬 17:33 < bridge> where on earth would this even be documented? how do I stop it even? 17:34 < bridge> Svelte just decides to convert my hsl colors to rgb colors just to annoy me? 17:34 < bridge> sounds like an average java script experience to me 17:34 < bridge> I actually am baffled, who did they think would be helped by this feature? 17:35 < bridge> looks like they just convert hsl to rgb on runtime 17:35 < bridge> 17:35 < bridge> I don't even know who to blame, where is this happening, is it firefox doing this? 17:35 < bridge> what happens when you define HSL with % ? 17:35 < bridge> 17:35 < bridge> hsl(180 50% 50%) 17:36 < bridge> does it convert that? 17:36 < bridge> Yep 17:36 < bridge> maybe you can shit on it with css magic so it doesnt do that 17:36 < bridge> not firefox 17:36 < bridge> Is it vite, is it svelte? Who is ruining my day? 17:37 < bridge> I want to say some bad things about someone 17:38 < bridge> im writing php btw 😏 17:38 < bridge> im writing in php btw 😏 17:39 < bridge> oooo 17:39 < bridge> svelte 17:39 < bridge> @learath2 ur culprit is svelte most likely 17:40 < bridge> I have actually never been more annoyed with something 17:40 < bridge> if within 10 minutes I don't find whatever is doing this I'm going back to just writing jquery 17:40 < bridge> why use hsl though, browsers internally work with rgb im pretty sure 17:41 < bridge> because the stupid converter is also trying to convert my hsl colors derived from packed teeworlds colors, which wouldn't be an issue if it wasn't failing so bad that the variable ends up undefined and I get no style at all 17:42 < bridge> btw try doing it with a css variable like 17:42 < bridge> 17:42 < bridge> ```html 17:42 < bridge> 17:42 < bridge> 17:42 < bridge>
test
17:42 < bridge> ``` 17:42 < bridge> use whatever var name u want 17:42 < bridge> it should prevent svelte from auto converting it 17:43 < bridge> keyword \*should*, i have basically no real experience with svelte 17:44 < bridge> I figured it out, I was using the legacy hsl format, which the converter just can't handle, so instead of just bailing and leaving it alone, it outputs `undefined` without logging any error 17:44 < bridge> css variables and javascript are like stale bread and old butter 17:44 < bridge> :heh: 17:44 < bridge> I swear all modern developers need jail 17:44 < bridge> Just no questions, jail 17:44 < bridge> mm yes i agree 17:44 < bridge> you tell em 17:45 < bridge> tell em to also implement types to vanilla js too while you're at it plese :owo: 17:45 < bridge> tell em to also implement types to vanilla js too while you're at it please :owo: 17:45 < bridge> typescript people are solid, I'll allow them to go on 17:45 < bridge> If you created a js framework, jail 17:45 < bridge> no no, typescript people are typescript people 17:45 < bridge> solid is another customer 17:45 < bridge> https://www.solidjs.com/ 17:46 < bridge> Like who thought it was a good idea to just output `undefined` without logging anything when an undocumented obscure optimization fails? 17:46 < bridge> why risc-v is cocaine ? 17:46 < bridge> I might've done that before 😅 17:47 < bridge> in my defense, i was the only one working on the project 17:47 < bridge> and/or using it 17:48 < bridge> @learath2 a big thing in js is that anything can be undefined if not documented, remembering this and checking for it will save you a few headaches 17:48 < bridge> i learned the hard way :heh: 17:48 < bridge> i am sure that svelte has nothing to do with that 17:48 < bridge> probably some css library that svelte uses does it 17:48 < bridge> postcss or whatever 17:48 < bridge> Tell me who does it so I can complain on their issue tracker 17:49 < bridge> Can't even google for it because google thinks I'm trying to convert hsl to rgb 17:49 < bridge> have you tried geepeetee 17:49 < bridge> works 100% of the time, 20% of the time 17:50 < bridge> I was hoping I could just avoid rgb but I guess I need it for the transformation matrix anyway 17:50 < bridge> what are you cooking though? 17:52 < bridge> @learath2 this might be relevant https://stackoverflow.com/questions/39208559/browsers-automatically-evaluate-hex-or-hsl-colors-to-rgb-when-setting-via-elemen 18:01 < bridge> and the only thing that svelte does is apply the css style internally through the `style` property 18:02 < bridge> so the issue is software 18:15 < bridge> Not too far off I guess 18:15 < bridge> https://cdn.discordapp.com/attachments/293493549758939136/1355591270302617802/image.png?ex=67e97c40&is=67e82ac0&hm=36c712c4307cb38cf50f0fe1ef8f76dff217bdd454acd2961d28b1e2cce2e0a7& 18:15 < bridge> https://cdn.discordapp.com/attachments/293493549758939136/1355591270541820034/tee.png?ex=67e97c40&is=67e82ac0&hm=cb6bf1a97a61782bd97c6fcc3f33485a137dcb419273dfb9b84f2250fd15dd8f& 18:16 < bridge> Perhaps I can mess around with the greyscaling a bit but unsure if it's worth wasting more of my time 😄 18:16 < bridge> the rabbit hole is deeeeep 18:17 < bridge> i would know, professional bunny 18:17 < bridge> STOP IT 18:17 < bridge> https://cdn.discordapp.com/attachments/293493549758939136/1355591626860400753/image.png?ex=67e97c95&is=67e82b15&hm=7a95f1d3008e573226a9c14fb00d5ec3e4ecd782997d750fbeef15423314a6c8& 18:19 < bridge> 😭 18:19 < bridge> https://cdn.discordapp.com/attachments/293493549758939136/1355592090779779214/image.png?ex=67e97d04&is=67e82b84&hm=248a40ac73bc815d43e26751b040280cd3e6d65f1017092f70f4b557b73e78a5& 18:19 < bridge> @tsfreddie was it you who came up with the `background-image: inherit` idea? if so very clever, I was setting it on every component individually making my DOM massive 18:22 < bridge> When we fixing the dogshit custom colors anyways, forever ruined due to certain skins causing problems in team modes :feelsbadman: 18:23 < bridge> I swear we just accepted the worst fix for it and moved on 18:23 < bridge> how is this my problem ): 18:23 < bridge> https://cdn.discordapp.com/attachments/293493549758939136/1355593186772385812/image.png?ex=67e97e09&is=67e82c89&hm=a1f8e1c6d63821dd8c4bdc9cf2a079388cbc8b5c7214d7a9888160a2580aca40& 18:23 < bridge> temporary permanent fixes for the win 18:24 < bridge> 0.7 has better custom colors (I guess they never touched how the custom colors work? And they're a PVP focused client) so what's the issue here 18:24 < bridge> just add 0.7 skins to ddnet srvs :D 18:24 < bridge> I wouldn't go that far 18:25 < bridge> thats not very far [sad_cat](https://cdn.discordapp.com/emojis/873457028981481473.webp?size=48&name=sad_cat) 18:26 < bridge> I like the idea of customizing skins, but I don't like the idea of breaking every skin that already exists, a mix would be cool 18:26 < bridge> Straying from the topic though, fix custom colors : madge : 18:27 < bridge> yeah idk why it kills the contrast in skins when custom colors is enabled 18:27 < bridge> What happened with them? 18:27 < bridge> allowing 0.7 skins doesnt break ddnet/0.6 skins 18:28 < bridge> https://cdn.discordapp.com/attachments/293493549758939136/1355594445315379350/image.png?ex=67e97f35&is=67e82db5&hm=af485b7684ed2f066bd0466fa14276504b763457d0ed90fb08f9889883d6d2f6& 18:28 < bridge> Certain skins? Like really dark ones I'd guess? 18:28 < bridge> Ya 18:28 < bridge> cooked 18:28 < bridge> https://cdn.discordapp.com/attachments/293493549758939136/1355594599296405534/image.png?ex=67e97f5a&is=67e82dda&hm=b317015010010af0b8b96d512818e100701c03d2aca96dd6418f1a1944831f43& 18:29 < bridge> I doubt we touched this at all anytime soon, when was this skin fine? 18:29 < bridge> broken 18:29 < bridge> so the first step is to nicely scale the brightness so the brightest part of the image, no matter how dark, matches the target colour 18:29 < bridge> remember how fucked it made the AoE skin 18:29 < bridge> Ages ago 18:30 < bridge> Like 6 years ago now probably? 7? 18:30 < bridge> its not jank from vanilla? 18:30 < bridge> I don't think it ever was correct, this looks like it's the 0.6 greyscaling messing with it 18:30 < bridge> It was fine at one point 18:30 < bridge> I'd be very surprised, but if you do know a version that it definitely worked at I'd be happy to take a look 18:31 < bridge> Then just stopped being fine when people were mad about certain black skins being black in team modes 18:31 < bridge> I doubt we touched this at all anytime recently, when was this skin fine? 18:32 < bridge> Are you using my package? 18:32 < bridge> istg if i have to fix that thing once again i will commit die 18:32 < bridge> don't we have like a flag for pvp modes? So we could just force brighten dark skins in team modes specifically? 18:32 < bridge> would be a hella better approach 18:32 < bridge> Nah, I'm rendering them myself, I couldn't make yours work, was about to put a hole through my screen, so I decided to have some nice melissa tea and code my own 18:33 < bridge> wdym couldnt make it work XD 18:33 < bridge> Also I'm 100% confident this was an issue that was added to combat the problem quickly, and it was definitely fine for years of 0.6 18:33 < bridge> Lemme try to find when it happened, well, souly probably knows 18:33 < bridge> wheres the code segment that deals with how the tees look under custom colors? 18:33 < bridge> @soulyvevo HELP 18:33 < bridge> its for the backend ig you tried to run it in the frontend? 18:34 < bridge> Yeah I figured that out much later, I needed to render them at the frontend 18:34 < bridge> ehhh 18:34 < bridge> I'm not hosting a node instance just to render a couple tees lol 18:34 < bridge> fair 18:34 < bridge> Honestly I should probably make it web compatible at some point 18:34 < bridge> https://cdn.discordapp.com/attachments/293493549758939136/1355596058574589993/image.png?ex=67e980b6&is=67e82f36&hm=6fb9089cc8e1386e3b872c4add73f30ce309f820c486347e71b6d37d603d9002& 18:34 < bridge> but idk what i'd replace sharp with 18:34 < bridge> i love sharp too much 18:34 < bridge> :heh: 18:35 < bridge> Just need to move the eyes to the correct place then I'm not touching this again 18:35 < bridge> mmm 18:35 < bridge> btw 18:35 < bridge> did you know the eyes drift apart from each other 18:35 < bridge> in game 18:35 < bridge> :heh: good luck 18:35 < bridge> Yes, I implemented that a week ago in godot 18:36 < bridge> if you done it with the tee rendering doc by patiga then you did it wrong 18:36 < bridge> We also fixed the tee rendering doc along the way 18:36 < bridge> o 18:36 < bridge> no 18:36 < bridge> Well technically Patiga fixed it while I messed around with the numbers until I figured out what's wrong 18:36 < bridge> where update 18:37 < bridge> https://cdn.discordapp.com/attachments/293493549758939136/1355596649396965376/image.png?ex=67e98142&is=67e82fc2&hm=6aa8b5110460d38d3d97e6dccd41004690921866b862ae7da0d4132beeeacfed& 18:37 < bridge> heinrich may not have merged the PR yet 18:37 < bridge> https://github.com/heinrich5991/libtw2/pull/115 18:37 < bridge> heinrich!!!!! 18:39 < bridge> @learath2 my lib does it like this, and it's fundamentally wrong because I pulled it out of my ass, but it's close enough 18:39 < bridge> https://cdn.discordapp.com/attachments/293493549758939136/1355597323627008141/image.png?ex=67e981e3&is=67e83063&hm=9a750313379043c59c51e365834e97f138fe504d0970d380d950df95109e8bf4& 18:41 < bridge> Oh, I guess it was actually one of the first things changed? Am I old chat? I'd imagine it was this? 18:41 < bridge> https://cdn.discordapp.com/attachments/293493549758939136/1355597681149481171/image.png?ex=67e98238&is=67e830b8&hm=3548223b706e256d4bf809109e0563a6457abeb67f2ca1587c90923a6f1c57c1& 18:41 < bridge> I checked clients after this and they had the same problem, so tbh dunno 18:42 < bridge> I thought this is a bug intentionally left in what the 18:42 < bridge> https://cdn.discordapp.com/attachments/293493549758939136/1355597942731571241/image.png?ex=67e98277&is=67e830f7&hm=89447a05d27edec6ec2fb2e3df95c831a3b530e92bdced3a2e21b3d115e84146& 18:42 < bridge> praise the ddnet gods 18:44 < bridge> I feel like I'm being mad gaslit, who else remembers the colors being good then team color issues happening in pvp and then they went to shit? 18:44 < bridge> Calling all old players! 18:45 < bridge> Mandela effect, I don't think those skins were ever fine 😄 18:45 < bridge> :monkaStop: 18:45 < bridge> Oh well, 0.7 does it better, we steal from them aye? letsgooooo 18:46 < bridge> idk if 0.7s grayscaling will fix this specific skin, but anyone can try, it's not too hard 18:46 < bridge> It made my skin not shit with custom colors at least 18:46 < bridge> what's the skin 18:46 < bridge> Try with mine, Syrinok 18:47 < bridge> but this one specifically is bad 18:47 < bridge> https://cdn.discordapp.com/attachments/293493549758939136/1355599235776512121/00Broke.png?ex=67e983ab&is=67e8322b&hm=ac46f374140a8040e8ad549718bf5d624108731c16fa99cf28c8a39f34f7db2e& 18:47 < bridge> https://cdn.discordapp.com/attachments/293493549758939136/1355599306610049034/Syrinok.png?ex=67e983bc&is=67e8323c&hm=188b76f4408aafbbb22ced6437425c3307e5ab5939ee056fcd057731cd8595e4& 18:48 < bridge> (Forgot I had a higher res version) 18:48 < bridge> https://cdn.discordapp.com/attachments/293493549758939136/1355599450038468821/tee.png?ex=67e983de&is=67e8325e&hm=5d22ff997b5470ce2f041723bde8e8f12a423bb5038e00a6b94dbcd1fa97d30c& 18:48 < bridge> https://cdn.discordapp.com/attachments/293493549758939136/1355599450298650916/tee.png?ex=67e983de&is=67e8325e&hm=7de32b1c69e2594923036e3223d3db32f4ad4c9dbbd79bb1ed23505d2071700f& 18:48 < bridge> eeee 18:48 < bridge> https://cdn.discordapp.com/attachments/293493549758939136/1355599450038468821/tee.png?ex=67e983de&is=67e8325e&hm=5d22ff997b5470ce2f041723bde8e8f12a423bb5038e00a6b94dbcd1fa97d30c& 18:48 < bridge> https://cdn.discordapp.com/attachments/293493549758939136/1355599527436091442/tee.png?ex=67e983f1&is=67e83271&hm=c2910ccbf4eacd28b75ad753f4fedd660eb2bd422aa5dbcf7f4cc657c0d87277& 18:48 < bridge> looks fine to me 18:48 < bridge> Custom colors is the issue 18:48 < bridge> mm right 18:49 < bridge> gimme the color codes 18:49 < bridge> or component values 18:49 < bridge> or color component values 18:50 < bridge> player_color_body 8322890 18:50 < bridge> player_color_feet 13893441 18:50 < bridge> try these ig 18:50 < bridge> https://cdn.discordapp.com/attachments/293493549758939136/1355600102198218842/image.png?ex=67e9847a&is=67e832fa&hm=0a161f50384d22316c9fb9001c9884c7962f07fbabbfb4ef8c52d488beb19b43& 18:52 < bridge> From what I've seen from souly / SP showing me 0.7 colors, it should look like less of an eyesore 18:52 < bridge> https://cdn.discordapp.com/attachments/293493549758939136/1355600465873867007/image.png?ex=67e984d0&is=67e83350&hm=aa87c3701b5e6014e0a74a125588e45c45d06e550e17745e8d078b5355614884& 18:52 < bridge> looks the same, is that 0.7? 18:52 < bridge> nop 18:52 < bridge> its my 0.6 renderer 18:52 < bridge> Oh, just comparing colors 18:52 < bridge> I see 18:53 < bridge> x256 18:53 < bridge> https://cdn.discordapp.com/attachments/293493549758939136/1355600673466613890/image.png?ex=67e98502&is=67e83382&hm=46e62941935331533504fc5cb140b0d12e69d9d59eb02dd7bac871b8482d671a& 18:53 < bridge> the blurrrr 18:53 < bridge> I wanna see 0.7 colors now 18:53 < bridge> this thing wasnt made with such high res tees in mind 18:53 < bridge> Any smart, get to it! 18:53 < bridge> Any1 smart, get to it! 18:53 < bridge> wdym 0.7 colors 18:53 < bridge> They handle custom colors differently 18:53 < bridge> do they now 18:53 < bridge> ya afaik 18:54 < bridge> they dont lol 18:54 < bridge> Daaamn cleaan 18:54 < bridge> at least they apply the colors the same way im pretty sur 18:54 < bridge> at least they apply the colors the same way im pretty sure 18:54 < bridge> It's different somehow! what happened in 0.6 / ddnet to ruin everything 18:54 < bridge> The only difference is that they greyscale the initial image differently 18:54 < bridge> @syrinok is this skin on the skindb? 18:54 < bridge> ^^^^ 18:54 < bridge> Which one? 18:55 < bridge> Whichever one looks like shit 18:55 < bridge> The Broke one, nah, my skin is ya 18:55 < bridge> this one I guess 18:55 < bridge> What is the name of your skin? 18:55 < bridge> My skin looks like shit with custom colors imo 18:55 < bridge> Syrinok 18:55 < bridge> He's asking so he can remove it, ggs bros 18:56 < bridge> Problem solved :santatrollet: 18:56 < bridge> gg 18:56 < bridge> Pretty much every skin that has dark colors looks terrible, it's why most serious skin creators avoid it 18:56 < bridge> Cause custom colors destroy them 18:57 < bridge> I was curious what it'd look like on my new renderer, and it looks completely wrong 😄 18:57 < bridge> 😄 18:57 < bridge> https://cdn.discordapp.com/attachments/293493549758939136/1355601737150501096/image.png?ex=67e985ff&is=67e8347f&hm=6fc1e8078d42599babb81372fe611984f4b2dde7da54faf424728e251fe0edaa& 18:57 < bridge> That looks more akin to 0.7! 18:57 < bridge> but much darker 18:58 < bridge> @learath2 if it helps any, check out how I did my [grayscaling]() and [tinting]() 18:59 < bridge> I'm like 99.99% sure that any skin rendered by the lib looks exactly how i'd look in game 18:59 < bridge> i at least hope so, i spent too much time 18:59 < bridge> i at least hope so, i spent too much time on it 18:59 < bridge> Something like this is 100% how dark skins should be handled with custom colors, not just randomly brightened imo 19:01 < bridge> @soulyvevo I saw you type earlier, how dare you flake during such a pivotal moment in your job. YOU FOOL 19:01 < bridge> I'm like 99.99% sure that any skin rendered by the lib looks exactly how it'd look in game 19:05 < bridge> I had to look at my message history with SP Someone (ew) 19:05 < bridge> https://cdn.discordapp.com/attachments/293493549758939136/1355603737019682909/image.png?ex=67e987dc&is=67e8365c&hm=8d0ef93ccb8d154db0cd98c5d779f56812bae6020dcdcb2ca8627bfe38129fcf& 19:05 < bridge> Here is what it looks like with your colors 19:05 < bridge> https://cdn.discordapp.com/attachments/293493549758939136/1355603780690772058/image.png?ex=67e987e7&is=67e83667&hm=0f2d42a0a845b1c3f580c9540b6b4a41168b87dbe0b7470d6057e26b9c5795f7& 19:05 < bridge> This is the difference 19:05 < bridge> Actually let me see what it looks like in 0.7, I'm curious too now 19:06 < bridge> (i'd guess handling it like this allows completely black tees, which we probably didnt' 19:06 < bridge> (i'd guess handling it like this allows completely black tees, which we probably didn't want at some point) 19:06 < bridge> i think some parts are allowed to be completely black in 0.7 19:06 < bridge> Yep, but it ruins the custom colors unfortunately 19:07 < bridge> I would love a different solution 19:09 < bridge> As risu said, could just do it for PVP modes, rather than all 19:12 < bridge> This is what it looks like with 0.7 greyscaling 19:12 < bridge> https://cdn.discordapp.com/attachments/293493549758939136/1355605480764084535/skeithee.png?ex=67e9897c&is=67e837fc&hm=ce51002d65423753ee576dcd626ce5d1c792257373362adec10192270db42acd& 19:12 < bridge> Guys, why am I here fighting for things to change in a game I swore to take a break from 19:12 < bridge> Am I down bad 19:12 < bridge> So pretty close to what my css attempt looks like actually 😄 19:12 < bridge> huge improvement over wtf this is tbh 19:14 < bridge> Couldn't we slap the pure black skins with a hint of grey then color them based on that instead, if detected 19:14 < bridge> what are u fighting for 19:14 < bridge> MY RIGHTS 19:14 < bridge> (Better custom colors) 19:14 < bridge> @robyt3 do you happen to know why we don't just get rid of the weird frequency analysis thing? 19:14 < bridge> Also bring back my right click Lear, I'm not playing around 19:14 < bridge> theyre already pretty decent 19:15 < bridge> ur fault for using a black skin 19:15 < bridge> :justatest: 19:15 < bridge> What we could do if blacktees were the issue is to clamp the lighting of the grayscaled skin, just map it so the lighting is never below 0.2 or something like that 19:15 < bridge> racist as fuck tbh, I allow you 5 seconds to take it back 19:15 < bridge> We'd maybe have to do some test with existing skins to see how large the difference is 19:15 < bridge> He didn't take it back 19:15 < bridge> We could do field testing, change it, don't put it in the changelog, see who complains 😄 19:16 < bridge> It allows for lighter skins to be lighter too, afaik 19:16 < bridge> From what I was seeing on 0.7, at least 19:16 < bridge> We currently allow for awkwardly grey white, as the whitest tee for most of the vanilla skins 19:17 < bridge> 0.7 also changed the darkest allowed lightness value 19:17 < bridge> Lets steal from 0.7 19:18 < bridge> ```cpp 19:18 < bridge> constexpr static const float DARKEST_LGT = 0.5f; 19:18 < bridge> constexpr static const float DARKEST_LGT7 = 61.0f / 255.0f; 19:18 < bridge> ``` 19:18 < bridge> let users write their own shaders to apply to their tee 19:19 < bridge> that is upscaled from this 19:19 < bridge> https://cdn.discordapp.com/attachments/293493549758939136/1355607290316849213/Syrinok.png?ex=67e98b2b&is=67e839ab&hm=ff0b8cf7741cb09a8cb57cefd66ed0295b00abee61d9b455e6f3d8e83bec5765& 19:19 < bridge> Too many options, lets bin this whole thing. 19:19 < bridge> Good talk 🤝 19:19 < bridge> Move along everybody 19:19 < bridge> im getting the skin files from skrumplex proxy 19:20 < bridge> Ya :greenthing: custom colors are cookied for 0.6, life cruel 19:21 < bridge> I always thought 0.7 allowed darker lgt than 0.6 19:21 < bridge> I guess time does make you forget 19:22 < bridge> I really need to add a bar to my screen, not seeing the clock I keep forgetting to eat until I get a hunger headache 19:23 < bridge> You just enjoyed talking to me too much 19:23 < bridge> This is true 19:33 < bridge> heinrich mood 19:37 < bridge> Guys, I wasn't serious about this, I hope something will actually come out of this! 19:42 < bridge> I understand why https://github.com/heinrich5991/libtw2/blob/master/doc/tee_rendering.md feels so weird 19:42 < bridge> It reads like movements but without an origin given 19:46 < bridge> @learath2 @robyt3 bot is still outdated, thinks the new speedtiles are invalid 19:48 < bridge> In which channel did it happen? 19:48 < bridge> map channel Kingsleap, _searching for link_ 19:49 < bridge> https://discord.com/channels/252358080522747904/1310020925722198067 19:50 < bridge> my pain exactly 19:52 < bridge> I will make a graphic for it when I have some more time 19:52 < bridge> 🙏 19:52 < bridge> rebuilt twmap, can you try again 19:52 < bridge> trying again = reupload I guess 19:53 < bridge> aye 19:53 < bridge> thx ^^ worked, now it shows me deprecated tiles, which is prob. true xD 20:07 < bridge> so i presume this is the place where i ask questions related to code 20:07 < bridge> https://cdn.discordapp.com/attachments/293493549758939136/1355619357761339472/image.png?ex=67e99669&is=67e844e9&hm=7f0df3e9aadbe4524076a6055cd2565b55b9edab7925be5e60e2e4aa99ea183d& 20:08 < furo> You can use `CClient::SaveReplay`, I guess. 20:10 < bridge> i tried but idk enough c++ to figure out this 20:10 < bridge> https://cdn.discordapp.com/attachments/293493549758939136/1355620135192498246/image.png?ex=67e99722&is=67e845a2&hm=968f72e3d259bdfd2fd1d550dc08159cf039533c1aedb161ee0e0602b8ec3170& 20:10 < furo> How did you call it? 20:11 < bridge> just CClient::SaveReplay() with #include at the top of the file 20:12 < bridge> You need to get a reference to the client instance first 20:12 < bridge> i have no idea what that means 20:14 < bridge> from which file you try to call it 20:14 < bridge> this error is from using a base class (or interface) instead of directly using a derived class 20:14 < bridge> ~~bs~+ 20:14 < bridge> ~~bs~~ 20:14 < bridge> custom one from game/client/components 20:15 < bridge> ``` 20:15 < bridge> CClient *pClient; 20:15 < bridge> 20:15 < bridge> pClient->SaveReplay(arg1, arg2); 20:15 < bridge> ``` 20:15 < bridge> 20:15 < bridge> or smth 20:15 < bridge> `Client()->SaveReplay()` 20:17 < bridge> maybe works ? 20:17 < bridge> if you are calling it from component then you can us `GameClient()->...` 20:17 < bridge> compiler hasnt thrown an error yet 20:17 < bridge> ty 20:17 < bridge> use* 20:18 < bridge> I don't want to open yet another draft, because I am wainting for my own PRs to get merged 🙈 20:18 < bridge> #9972 #9901 20:18 < bridge> https://github.com/ddnet/ddnet/pull/9972 20:18 < bridge> https://github.com/ddnet/ddnet/pull/9901 20:21 < bridge> it’s object oriented programming my dhde 20:21 < bridge> it’s object oriented programming my dude 20:37 < bridge> Would a line "Choose any point in space" help? ^^ 20:39 < bridge> I also quite desperately avoided writing stuff in units, because then I'd need to specify a coordinate system (would've been better maybe) 20:39 < bridge> Instead, I just wrote up/down/left/write everywhere 20:44 < bridge> Here is how I'm planning to document it when I figure it out completely. 20:44 < bridge> 20:44 < bridge> Top left corner of the body sprite is (0,0) bottom right corner is (1, -1) 20:45 < bridge> that makes sense but... kinda cursed 20:46 < bridge> @ocosar account is comprimised, sending fake steam links 20:46 < bridge> I thought about doing it bottom left corner is (0,0) and top right corner is (1,1) 20:46 < bridge> but then I think a lot of the values will change dramatically from the values in the code, so it might not be easy to see how it relates 20:49 < bridge> I think its just a matter of time until Pulsar's acc spams steam links in here 20:50 < bridge> Actually I do not remember how we render quads in teeworlds. Do we position them from the TL corner? 20:50 < bridge> what is the lower left corner though? 20:50 < bridge> (0, -1) 20:50 < bridge> I think the center of a tee is quite well defined 20:51 < bridge> Oh, do we render quads positioned from their centers? 20:51 < bridge> yes 20:51 < bridge> Okay, then (0,0) at the center might make more sense 20:51 < bridge> at least the calls in the tee rendering code suggest that, would be weird if the backends do that differently later 20:52 < bridge> What's the origin of the tee physics-wise? I forget, is it at the feet or at the middle? 20:53 < bridge> I guess I'd keep the side of the tee as 1, so 0.5 at the corners, which is a little ugly, but what can you do 20:53 < bridge> middle iirc 20:54 < bridge> ok then I'd definitely agree with (0, 0) at the middle 20:54 < bridge> APPROXIMATE A TEE AS A UNIT CIRCLE 20:55 < bridge> Problem with (0, 0) in the middle is that it just isn't that nice to give measurements from the center 20:55 < bridge> assume a spherical ~~cow~~ tee 20:56 < bridge> Because usually in schematics you give distances to edges, it just is prettier to graph (and perhaps for actually building stuff much easier as a reference point) 20:57 < bridge> do we prefer a document that's prettier or one that's easier to just write out in code? 20:57 < bridge> @blaiszephyr you machine stuff, confirm people usually give measurements from edges when machining stuff 20:57 < bridge> from edges as in? 20:57 < bridge> I think document that is easier to get to code is better 20:57 < bridge> what are we talking about here 20:58 < bridge> Would you ever be given distance to the center of something + an angle when making a cut e.g.? 20:58 < bridge> the "side" of a tee is really ill-defined afaik, as long as you don't mean the size of the body quad 20:58 < bridge> and the body quad is quite large 20:58 < bridge> I mean the side of the body quad 20:59 < bridge> This is for rendering, I think the "physics size" of a tee should have absolutely nothing to do with it 20:59 < bridge> oh no 20:59 < bridge> I just had a tragic realisation 20:59 < bridge> tees aren't actually round 20:59 < bridge> it's an illusion 20:59 < bridge> they're squares with transparent corners 20:59 < bridge> 20:59 < bridge> like I know this is obvious but it hurts to think about 20:59 < bridge> ofc 21:00 < bridge> tho its mostly just done so math is easier 21:00 < bridge> not because its practical for everything 21:00 < bridge> well you do need to know how big to render a tee in relation to its physics size 21:00 < bridge> Say you are drilling a hole in a rectangle, would the schematic ever be positioning the hole relative to the center instead of one of the corners, e.g. 21:00 < bridge> or more like you need to know how big to render a tee in relation to how big tiles are 21:01 < bridge> theoretically never, no 21:01 < bridge> 21:01 < bridge> practically all the time xD 21:01 < bridge> Because that is kinda what we are dealing with here, the body is a square and we are finding points on the square to put other stuff at 21:02 < bridge> see it that way 21:02 < bridge> 21:02 < bridge> if you know your rectangle is a perfect 25.0000 | 25.0000 - you can easily take the center as the point zero (0|0) 21:02 < bridge> so yes, you can do that in our case 21:02 < bridge> That iirc has nothing to do with the "physics" size of a tee either since the "physics" size of a tee changes with what it's interacting with 😄 21:03 < bridge> just got here, any tldr 21:03 < bridge> If we are being reaaaally accurate what you want to know is the render scale of a tile relative to the render scale of a tee 21:03 < bridge> doing all that from one of the corners may make it easier or harder, depending on the actual schematic you're trying to achieve 21:03 < bridge> @essigautomat can we get different colors for doors and the other one 21:03 < bridge> the body quad of the tee = 2 ingame tiles iirc 21:03 < bridge> (or viceversa) 21:03 < bridge> grabby 21:03 < bridge> hi dev 21:03 < bridge> oh yeah I remember reading something in the vein of `.getPhysicalSize() * 1.2`, lotsa fun magic constants there 21:03 < bridge> risu good avatar xd 21:04 < bridge> grabby (or i can do that myself /shrug) 21:05 < bridge> what do you mean, door colors by door id? 21:05 < bridge> for rendering a tee, it should be easier to from from the center point and offset the eyes X0|Y25 instead of doing that from the left downwards corner going X15|Y35 for example 21:05 < bridge> 21:05 < bridge> i hope i got your actual question right and was of use 21:05 < bridge> have a color difference between doors and grabbers 21:06 < bridge> @hectavoxel did you have any ideas 21:06 < bridge> to me a door is more similar to the spinny one 21:06 < bridge> than a grabber is 21:06 < bridge> https://cdn.discordapp.com/attachments/293493549758939136/1355634260605669456/image.png?ex=67e9a44a&is=67e852ca&hm=d9edc331c664a6fba32b76732ac3b761914b3321afc87f6334fde319e3661717& 21:07 < bridge> that freezes you right? 21:07 < bridge> nvm xd 21:09 < bridge> @sollybunny yes, I'd usually agree, i am also working on this one: https://github.com/AssassinTee/ddnet/pull/13 21:09 < bridge> I am a bit unsure about that feature. Idea was to make the on/off have the same color as the door, but we don't have an on/off switch, we have an off- and an on-tile without containing entities 21:10 < bridge> so I see you've found the visual difference? xD 21:13 < bridge> i still would like seperate colors for them irregardless of \#13 21:15 < bridge> I could do that, this is just CItems->RenderLaser, CMenuSettings->LaserPreview and 2 new config variables 21:16 < bridge> @blaiszephyr and do you have one universal coordinate system? or do people use y and -y interchangeably? ^^ 21:16 < bridge> XYZ and ABC + and - 21:17 < bridge> ^??? 21:17 < bridge> in 2d, would +y be up or down? 21:17 < bridge> its basically: 21:17 < bridge> 21:17 < bridge> X=right 21:17 < bridge> -X=left 21:17 < bridge> Y=forward 21:17 < bridge> Y=backwards 21:17 < bridge> Z=up 21:17 < bridge> -Z=down 21:17 < bridge> 21:17 < bridge> A= rotate X 21:17 < bridge> B= rotate Y 21:17 < bridge> C= rotate Z 21:17 < bridge> y would be up, x right 21:17 < bridge> not a mc chad i see then 21:18 < bridge> in ddnet, y goes down 😅 21:18 < bridge> in 2d the origin is top left 21:18 < bridge> no one argues about that apart from opengl 21:18 < bridge> well that goes for uv coordinates I suppose? 21:18 < bridge> in opengl the bottom left is the origin 21:19 < bridge> and even in scratch where the origin is at the center its still +x -> right +y -> down 21:19 < bridge> in the viewport / in window coordinates, there is no top-left I'd say 21:19 < bridge> @sollybunny then find out for me how to render a frozen tee for the laser preview, let's overengineer this 21:19 < bridge> i guess its very not ovious that a laser freezes you 21:19 < bridge> similar to how i often miss hearts 21:19 < bridge> and i get frozen and am annoyed 21:19 < bridge> maybe we can add particles to it 21:20 < bridge> hearts are actually annoying, I always want to pick them up to heal 21:20 < bridge> dis how it works in machining 21:20 < bridge> https://cdn.discordapp.com/attachments/293493549758939136/1355637660873392258/image.png?ex=67e9a774&is=67e855f4&hm=caf22af9e2b8bd727ab517974d1a9c7b7a236decc566a92afcce37b0bba8b71d& 21:20 < bridge> in a 3D space 21:20 < bridge> in 3d space thats most common 21:20 < bridge> but theres alot more disagreement 21:20 < bridge> y = down 21:20 < bridge> x = right 21:20 < bridge> z = in your monitor 21:20 < bridge> you disgust me 21:20 < bridge> xD 21:20 < bridge> in ddnet* 21:21 < bridge> ddnet never uses the 3rd dimension does it? 21:21 < bridge> but.. why? 21:21 < bridge> depth buffer is disabled 21:21 < bridge> because .. legacy 21:21 < bridge> i think sheilds should be chanegd to a weapon with a minus on it or something 21:21 < bridge> and hearts to something which looks.. more freezy 21:21 < bridge> maybe like a snowflake 21:21 < bridge> I smell Multimap, the best of them all. 21:21 < bridge> and their hitbox to be more obvious 21:22 < bridge> (that is make them 2x bigger) 21:22 < bridge> you disgust me even more 21:22 < bridge> its obviously Aequilibrium 21:22 < bridge> with my current preview, the laser has a classical laser head and flickers, everything which can't freeze you has another laser head 21:22 < bridge> compiles but crashes when i run that bit 21:22 < bridge> it kinda makes sense because this way the coordinate system alignes with the map tilemaps 21:22 < bridge> with my current preview, the laser has a classical laser head and flickers, everything which can't freeze you has another laser head and doesn't flicker 21:22 < bridge> my apolocheese 21:23 < bridge> multimap is the only map I know 21:23 < bridge> so everything looks like it 21:23 < bridge> i mean it only aligns because it was designed that way 25 years ago? XD 21:23 < bridge> so its all matricks fault in the end 21:23 < bridge> I think that is the usual ndarray layout 21:23 < bridge> also @sollybunny show me how to render a frozen Tee in teeworlds 21:23 < bridge> also @sollybunny show me how to render a frozen Tee 21:23 < bridge> am I evil for kinda liking left-handed coordinates? 21:23 < bridge> you strip it off its colors and make its eyes weirdly shaped 21:24 < bridge> look at nameplate preview its quite simple 21:24 < bridge> the skin name is just x_frozen 21:24 < bridge> the skin name is just x_frozen / x_ninja i forgot 21:24 < bridge> gang signs and stuff. 21:24 < bridge> hey hand leak 21:24 < bridge> is he a crip?? 21:24 < bridge> look at his name hes a crip 21:25 < bridge> ```cpp 21:25 < bridge> CTeeRenderInfo TeeRenderInfo; 21:25 < bridge> if(Dummy == 0) 21:25 < bridge> { 21:25 < bridge> TeeRenderInfo.Apply(m_pClient->m_Skins.Find(g_Config.m_ClPlayerSkin)); 21:25 < bridge> TeeRenderInfo.ApplyColors(g_Config.m_ClPlayerUseCustomColor, g_Config.m_ClPlayerColorBody, g_Config.m_ClPlayerColorFeet); 21:25 < bridge> } 21:25 < bridge> else 21:25 < bridge> { 21:25 < bridge> TeeRenderInfo.Apply(m_pClient->m_Skins.Find(g_Config.m_ClDummySkin)); 21:25 < bridge> TeeRenderInfo.ApplyColors(g_Config.m_ClDummyUseCustomColor, g_Config.m_ClDummyColorBody, g_Config.m_ClDummyColorFeet); 21:25 < bridge> } 21:25 < bridge> TeeRenderInfo.m_Size = 64.0f; 21:25 < bridge> RenderTools()->RenderTee(CAnimState::GetIdle(), &TeeRenderInfo, 0, Dir, Data.m_Position); 21:25 < bridge> ``` @essigautomat 21:25 < bridge> crip? 21:25 < bridge> creep? 21:25 < bridge> no 21:25 < bridge> crip 21:25 < bridge> it's a gang 21:25 < bridge> what's a crip 21:25 < bridge> hm 21:25 < bridge> how do you not know what a crip is? 21:25 < bridge> ```cpp 21:25 < bridge> CTeeRenderInfo TeeRenderInfo; 21:25 < bridge> if(Dummy == 0) 21:25 < bridge> { 21:25 < bridge> TeeRenderInfo.Apply(m_pClient->m_Skins.Find(g_Config.m_ClPlayerSkin)); 21:25 < bridge> TeeRenderInfo.ApplyColors(g_Config.m_ClPlayerUseCustomColor, g_Config.m_ClPlayerColorBody, g_Config.m_ClPlayerColorFeet); 21:25 < bridge> } 21:26 < bridge> else 21:26 < bridge> { 21:26 < bridge> TeeRenderInfo.Apply(m_pClient->m_Skins.Find(g_Config.m_ClDummySkin)); 21:26 < bridge> TeeRenderInfo.ApplyColors(g_Config.m_ClDummyUseCustomColor, g_Config.m_ClDummyColorBody, g_Config.m_ClDummyColorFeet); 21:26 < bridge> } 21:26 < bridge> TeeRenderInfo.m_Size = 64.0f; 21:26 < bridge> RenderTools()->RenderTee(CAnimState::GetIdle(), &TeeRenderInfo, 0, Dir, Data.m_Position); 21:26 < bridge> ``` @essigautomat 21:26 < bridge> (Dir is a normalized vec2) 21:26 < bridge> probably too rich 21:26 < bridge> not 21:26 < bridge> thx ❤️ 21:28 < bridge> gang gang 21:28 < bridge> Dir is the direction the Tee looks in? 21:28 < bridge> So I can make him look directly into the laser >:D 21:28 < bridge> murican gang 21:28 < bridge> famous for crip walking 21:28 < bridge> https://tenor.com/view/snoop-dogg-rap-hip-hop-west-coast-crips-gif-24898891 21:31 < bridge> how innocent! as if all they do is the walk 21:35 < bridge> @sollybunny grabber :3 21:35 < bridge> https://cdn.discordapp.com/attachments/293493549758939136/1355641599320789093/screenshot_2025-03-29_21-35-09.png?ex=67e9ab1f&is=67e8599f&hm=7a0c53e7ca5725de471f29c0bef0c30e6a2c87404f0461de2613b6b7555ecf0d& 21:36 < bridge> Time to cntl c cntl v the rest of the menu 21:36 < bridge> you can space them out more 21:36 < bridge> then have a frozen tee on the frozen one 21:36 < bridge> is this without the rubberband effect 21:36 < bridge> I already asked you twice how to render a FROZEN tee 21:36 < bridge> and custom ends 21:36 < bridge> Also `TEE_EFFECT_FROZEN` 21:36 < bridge> . 21:36 < bridge> and that 21:38 < bridge> Check `CPlayers::OnRender`. To be fully correct you'd also have to handle `cl_show_ninja` correctly 21:38 < bridge> is the skin m_OriginSkin or something like that? 21:39 < bridge> what color are you going to make it 21:39 < bridge> i think there should be a method to render a frozen tee, because there are alot of settings (and tclient adds more) 21:40 < bridge> ok, looks like that doesn't work if you use `CRenderTools` functions to render the too 21:40 < bridge> :D 21:40 < bridge> was already going to ask :justatest: 21:41 < bridge> All tee rendering should probably be moved to one file `render_tee.cpp`. Some is currently in `render.cpp` but some only on `players.cpp` so you can't easily render a frozen tee it seems 21:41 < bridge> You need to get a valid copy of `CClient *`, how you can get one depends on where in the code we are currently 21:42 < bridge> @blaiszephyr pog 21:42 < bridge> https://cdn.discordapp.com/attachments/293493549758939136/1355643258578927730/image.png?ex=67e9acab&is=67e85b2b&hm=170563853498966c73ce4f28f62cc61e14a24c3d28bffb2daa91d4f8886306e5& 21:42 < bridge> well ill try to search trough the code and hope i understand 21:43 < bridge> melon playing ddnet?! 21:44 < bridge> me playing is more rare 21:44 < bridge> :owo: 21:44 < bridge> 🍈 21:44 < bridge> @blaiszephyr good job doing ur mod duty once in a year 21:45 < bridge> it might not be so easy if you are inside the game client under `src/game/`, we don't expose `SaveReplay` to the game client. So you'd need to wire that up too 21:45 < bridge> poggers! 21:45 < bridge> so what youre saying is that im screwed 21:46 < bridge> ay blya 21:46 < bridge> You can try to just go through the console, `ExecuteLine("save_replay")` might work 😄 21:47 < bridge> i couldve run a console command this whole time ? 21:47 < bridge> Yep 21:47 < bridge> bruh moment 21:47 < bridge> but you need an instance of `IConsole` for it, so you have the same issue 21:47 < bridge> but executeline is available unlike SAvereplay 21:56 < bridge> @sollybunny 21:56 < bridge> https://cdn.discordapp.com/attachments/293493549758939136/1355646772436926575/screenshot_2025-03-29_21-56-00.png?ex=67e9aff1&is=67e85e71&hm=5845af5288084e20b6590f67d40a5924620145629f95fc7ad8b9cf5ad4ca46cd& 21:56 < bridge> only thing missing is the freeze effect now 21:57 < bridge> Just add `GameClient()->m_Effects.FreezingFlakes(BodyPos, vec2(32, 32), Alpha);` manually I guess 21:58 < bridge> Effects might not be updated when offline though, there is some weird per tick caching of `time_get` in some components 22:00 < bridge> How about also rendering a tee trying to cross the closed door? 22:00 < bridge> yeah this one is not working 22:00 < bridge> so no colored lasers from editor? 22:00 < bridge> colored laser better than setting own custom color 22:00 < bridge> which noone does anyway 22:00 < bridge> spacing between the two ones with tees feel a bit close 22:00 < bridge> if its consistent with the other ones, maybe try to space all them out a bit just so theres a bit more space for the tees 22:01 < bridge> i dunno 22:01 < bridge> I already set the value up 22:01 < bridge> ohh 22:01 < bridge> but just a tiny bit 22:01 < bridge> https://cdn.discordapp.com/attachments/293493549758939136/1355648112625975457/screenshot_2025-03-29_22-01-28.png?ex=67e9b130&is=67e85fb0&hm=26cce677793f8d78b645555c77fc178c05a90328e40847197ac069d63e304f77& 22:01 < bridge> yea thats better 22:02 < bridge> this will definatley look better with the new end bits 22:02 < bridge> yes certainly 22:04 < bridge> I am currently not decided on it, as I wrote above, the use is missing 22:04 < bridge> minor refactoring 22:04 < bridge> https://cdn.discordapp.com/attachments/293493549758939136/1355648867944763543/image.png?ex=67e9b1e4&is=67e86064&hm=cb2b391fc25d62524167c759df4b0e25dce52f0cce7f27a885a16432e3bb4bab& 22:04 < bridge> colored displays 22:04 < bridge> we don't have real switches with switch-entities which we could color in the door which it's toggeling 😦 22:04 < bridge> so we can play doom 22:04 < bridge> on turing complete ddnet map 22:05 < bridge> I have a PR where I refactored maplayers, +1000 -1200 ... 22:05 < bridge> i am touching nameplates again to the horror of litreally everyone 22:05 < bridge> nothing visual this time, just raii and renaming 22:05 < bridge> :pepeW: 22:06 < bridge> xd 22:07 < bridge> i wanna make turing complete automapper 22:07 < bridge> i already have some ideas 22:07 < bridge> global pos rule would look at the entire map and see if coordinate X Y matches with smth 22:07 < bridge> basically a free variable :nouis: 22:08 < bridge> @hectavoxel can you come up with a new grabber color? 22:08 < bridge> 3 nameplate reworks for them still look the same :nouis: 22:08 < bridge> 3 nameplate reworks for them to still look the same :nouis: 22:09 < bridge> hmm, we currently have blue, brown, puple and green, I guess we have a lot of colors we could use xD 22:09 < bridge> 1 of them isnt a rework 22:09 < bridge> 1 of them was to make it more generalized 22:09 < bridge> 1 made it modular 22:09 < bridge> the diff between tater and ddnet is tiny (once i get this merged) 22:10 < bridge> tater just copied my masters nameplates.cpp which had changes not upstreamed yet so rn its a mess 22:10 < bridge> \#7777 mentioned 22:10 < bridge> # 22:10 < bridge> #7777 22:10 < bridge> https://github.com/ddnet/ddnet/issues/7777 22:11 < bridge> yep 22:11 < bridge> at least is this fixed? 22:12 < bridge> that was never an issue 22:12 < bridge> i thtink they were on an old version plagued by a an actuall issue (similar to as described) which was fixed 22:12 < bridge> see the comment i left 22:12 < bridge> where i overexplained 22:12 < bridge> im mobile 22:12 < bridge> #ff0000 22:12 < bridge> because it grabs your soul 22:13 < bridge> maybe orange? 22:13 < bridge> I agree xDD 22:13 < bridge> we dont have enough warm colors 22:13 < bridge> anything reddy i like 22:13 < bridge> also looks with the new orbs like the menace that it is 22:13 < bridge> not directly red tho 22:13 < bridge> if its red then it might signify its bad 22:13 < bridge> so like, a nice orange 22:13 < bridge> thats true 22:13 < bridge> go with orenge 22:13 < bridge> yeah i mixed a tiny bit of white in 22:13 < bridge> pink!?> 22:14 < bridge> whoo 22:14 < bridge> i mean you can change it thats the point but xd 22:14 < bridge> i think there should be other visual indication 22:14 < bridge> 1. for color blind people 22:14 < bridge> 2. for idiots who think black is a good color scheme 22:14 < bridge> 3. for being able to parse other people setups 22:14 < bridge> 4. for you yourself identifying them 22:15 < bridge> this fix was required for me to build using an older version of clang 14.0.6 22:15 < bridge> 22:15 < bridge> is this worth a pr? will this break stuff? 22:15 < bridge> https://cdn.discordapp.com/attachments/293493549758939136/1355651500936003676/image.png?ex=67e9b458&is=67e862d8&hm=6bc99e2acb2d06db8a3c347fa482f132620d57073148b9b3b3d2dc9c92158147& 22:15 < bridge> which there will be <3 22:15 < bridge> no, pr it 22:16 < bridge> thats good to know, yes, no, pr it 22:16 < bridge> There's already an issue for it, should be fixed. But the fix isn't optimal, just remove `str_format` and let `dbg_assert` do the format 22:16 < bridge> i see - i'll do that then ^^ 22:16 < bridge> #9961 22:16 < bridge> https://github.com/ddnet/ddnet/issues/9961 22:16 < bridge> o yeah big brain 22:29 < bridge> https://cdn.discordapp.com/attachments/293493549758939136/1355655005402566747/screenshot_2025-03-29_22-28-48.png?ex=67e9b79c&is=67e8661c&hm=d26830fade60ab6ce323248a846fc99853557f032f86c3b6879ed82306621c38& 22:31 < bridge> oh wait u can control the outline now? 22:31 < bridge> https://cdn.discordapp.com/attachments/293493549758939136/1355655542709944340/image.png?ex=67e9b81c&is=67e8669c&hm=6898db6ec8048c8b7a6b5b20cff9aab4b431a765c61544441f33711643f79f70& 22:31 < bridge> i feel like theres little reason to just -0.2 lightness or something but cool 22:31 < bridge> Enter meme here 22:31 < bridge> i see 22:31 < bridge> good to know 22:33 < bridge> Now, I could do the PR, but unfortunately I am missing reviews @sollybunny 😛 22:33 < bridge> https://cdn.discordapp.com/attachments/293493549758939136/1355656235021631558/screenshot_2025-03-29_22-33-07.png?ex=67e9b8c1&is=67e86741&hm=a004125740db010bf8782a297854e109519dc578d2c1a14a2bc46a6339b1735e& 22:33 < bridge> https://cdn.discordapp.com/attachments/293493549758939136/1355656235520884776/screenshot_2025-03-29_22-33-17.png?ex=67e9b8c1&is=67e86741&hm=2e3a38e89d1910dc4a8ad461188830439b6ec56aac279d32fabb52f69b918fa8& 22:34 < bridge> i mean i feel like all the features you have are non controversial 22:34 < bridge> just make em one or something /shrug 22:34 < bridge> xd 22:34 < bridge> btw why arent the doors got a thing on either side 22:34 < bridge> thats always been a thing thats bugged me 22:35 < bridge> @essigautomat 22:35 < bridge> ah you mean ingame 22:35 < bridge> https://cdn.discordapp.com/attachments/293493549758939136/1355656623389147246/image.png?ex=67e9b91d&is=67e8679d&hm=401ba4ef2153002606e0f250714d7d0b728639b2413a6f1103eadf344c4ee166& 22:35 < bridge> yeah 22:35 < bridge> its just cutoff 22:35 < bridge> because, they don't have a fixed length which exactly tiles 22:35 < bridge> you'll now say: that's bullshit 22:36 < bridge> i do 22:36 < bridge> but then you forgot diagonals 22:36 < bridge> i dont understand 22:36 < bridge> the end position of a door is not always in the middle of a tile 22:36 < bridge> thats fine 22:36 < bridge> I mean otherwise, open an issue xD 22:36 < bridge> does the icon have to be middle of the tile 22:37 < bridge> not really, grabbers are for some reason swapped as well, which is stupid and changed in my grabber visual update 22:38 < bridge> yep 22:38 < bridge> well ill make an issue 22:38 < bridge> idk how it would be controversial 22:38 < bridge> and i would merge it into my client if it was rejected 22:39 < bridge> it would break existing maps, which are creating 2 doors on oppsite sites 22:39 < bridge> so rejected 😠 22:39 < bridge> wdym 22:39 < bridge> doors arent animated ar they? 22:42 < bridge> no, except for the old laser head ofc 22:42 < bridge> @robyt3 its redundant to bounds check? 22:42 < bridge> I mean that current maps work around the missing head by placing 2 doors instead of one 22:43 < bridge> I only meant the `ScreenY0 -= 0;` lines 22:43 < bridge> also note that its useful here since offscreen text containers wont be updated 22:43 < bridge> oh okay 22:43 < bridge> i kept them in because it was there at the start just commented it out 22:58 < bridge> the evil laser that kills you 23:00 < bridge> did you see the latest orbs @hectavoxel ? 23:04 < bridge> how can i purposely trigger an assert to check if the formatting is correct? 23:05 < bridge> or do i just call it and wish its something readable xD 23:05 < bridge> Teero called for vote to kick essigautomat (stop complicating physics) 23:05 < bridge> Teero called for vote to kick essigautomat (stop complicating physics) — 30s left 23:05 < bridge> Teero called for vote to kick essigautomat (stop complicating physics) — 25s left 23:05 < bridge> Teero called for vote to kick essigautomat (stop complicating physics) — 20s left 23:05 < bridge> Teero called for vote to kick essigautomat (stop complicating physics) — 15s left 23:05 < bridge> Teero called for vote to kick essigautomat (stop complicating physics) — 10s left 23:05 < bridge> Teero called for vote to kick essigautomat (stop complicating physics) — 5s left 23:05 < bridge> Teero called for vote to kick essigautomat (stop complicating physics) — 4s left 23:05 < bridge> Teero called for vote to kick essigautomat (stop complicating physics) — 3s left 23:05 < bridge> Teero called for vote to kick essigautomat (stop complicating physics) — 2s left 23:05 < bridge> Teero called for vote to kick essigautomat (stop complicating physics) — 1s left 23:05 < bridge> Teero called for vote to kick essigautomat (stop complicating physics) — 0s left 23:05 < bridge> Vote passed. essigautomat kicked by vote (stop complicating physics) 23:06 < bridge> You can patch some condition to true or false so the assertion is always reached 23:12 < bridge> yea 23:12 < bridge> i think they're alright 23:12 < bridge> i had my own idea for a design but it feels too late now 23:14 < bridge> I didn't touch any physics in the last 10 PRs 23:15 < bridge> Don't make me angry, or I'll fix door physics 23:17 < bridge> how are door physics broken again 23:19 < bridge> doors don't actually have a hitbox, they just place stopper tiles 23:19 < bridge> place a diagonal door and find out 23:20 < bridge> And if I have a really bad day, I'll PR my maplayers refactoring 23:24 < bridge> i so wanna see how much chaos happens when you send your maplayer refactor 23:25 < bridge> cant be worse than nameplates 23:25 < bridge> it's a million tiles more readable, but @robyt3 will hate me, because there is a bug in Quad Counting which I can't find 23:25 < bridge> .. 💀 💀 💀 23:25 < bridge> I never finished my own map layers refactoring 23:26 < bridge> i once tried to make entities layer transition alpha 23:26 < bridge> :shudder: 23:37 < bridge> @sollybunny now it happened to me aswell 23:37 < bridge> https://cdn.discordapp.com/attachments/293493549758939136/1355672361860464691/image.png?ex=67e9c7c6&is=67e87646&hm=e32fd8d3a660303b0e4be3386ed267f1a4fd7b5020d7792d0de09694342c6d7e& 23:38 < bridge> damn you tater! 23:38 < bridge> eh thats not as bad 23:38 < bridge> i keep trying to merge tclient with ddnet 23:38 < bridge> xD 23:39 < bridge> about damn time 23:39 < bridge> exactlyt my thoughts 23:39 < bridge> i cant be bothered to wait for checks im just merging everything lmao 23:39 < bridge> ill check it at the end ya know