00:56 <+bridge_> wow i need to read tile PRs more, i didnt know bullets activate targets 00:56 <+bridge_> that's actually huge 00:57 <+bridge_> basically you can do solo maps without requiring dummy 00:57 <+bridge_> for stuff like Machine 02:21 <+bridge_> <12944qwerty> bumppppp 02:21 <+bridge_> <12944qwerty> please help 02:21 <+bridge_> <12944qwerty> ~~Might have to do with the fact that i'm pretty sure it's not building correctly? 02:21 <+bridge_> <12944qwerty> No errors, but any changes I make aren't shown. Strings edits for example~~ 02:21 <+bridge_> <12944qwerty> ~~this happens even when I rm -rf the build directory too~~ 02:21 <+bridge_> <12944qwerty> ~~btw, even though the vulkan error happened before, it used to update whatever I was changing about a week ago~~ 02:21 <+bridge_> <12944qwerty> ~~correction, seems like it doesn't build for src/game/map/render_map.cpp specifically~~ 07:36 <+bridge_> huh fokko did his own tunelock? xx-x 07:36 <+bridge_> huh fokko did his own tunelock? x-x 07:37 <+bridge_> seems his is additive or was 07:37 <+bridge_> i really wish tunelock was handled separate, so tunezones can still apply 08:49 <+bridge_> #1922 08:49 <+bridge_> https://github.com/ddnet/ddnet/pull/1922 09:29 <+bridge_> always: is this what makes hammer stronger the tick you're unfrozen? 09:30 <+bridge_> basically, the buffered hammer 09:31 <+bridge_> It's what made it possible to hold hammer while in freeze 09:31 <+bridge_> Also called the heinohammer :froggo_sip: 09:44 <+bridge_> ye I understood that 09:44 <+bridge_> but i always wondered what makes the buffered hammer stronger, maybe it always was from when freeze was first added, not after this 10:02 <+bridge_> what 10:03 <+bridge_> like when you exit freeze 10:03 <+bridge_> ur hammer is stronger? 10:10 <+bridge_> no 10:10 <+bridge_> hammering while frozen used to be a tick perfect timing 10:10 <+bridge_> you had to press shoot on the same tick you got unfrozen 10:10 <+bridge_> this made it easy 10:11 <+bridge_> the issue imo isn't really that it was tick perfect, but rather that it's impossible to react in 20ms 10:25 <+bridge_> skill issue 10:36 <+bridge_> I tried but haven't seen a way on how to extract the alpha for the slider anywhere else in the code so not sure if what I did is the way to go about it 10:47 <+bridge_> uhm I'd also need to look it up, do you know if you can convert it into ColorRGBA? 10:50 <+bridge_> I have put it in my PR if you mind reviewing https://github.com/ddnet/ddnet/pull/11771/changes/91c0a1cf567d33ecf55c6425f7996c9cd4a3365d 10:57 <+bridge_> You seem to be holding colors wrong, you don't want to pass an int around like that, pass the tipcolor as `const ColorRGBA &` instead 10:58 <+bridge_> You are already using a color picker to select the color including alpha, so a second scrollbar for the alpha is unnecessary 10:59 <+bridge_> but since on the menu all the other color options do not this would be better not to confuse people? 11:00 <+bridge_> I don't see any that do this. Colors that have alpha only use one color picker 11:01 <+bridge_> yes I am saying the other hook line color customizations do not support alpha 11:01 <+bridge_> (The components of a color are public members, so you can just get the alpha with `Color.a`) 11:01 <+bridge_> so users would have 3 color pickers not supporting alpha but one that has alpha 11:01 <+bridge_> That's fine, but we don't need separate color pickers and scrollbars for the same value 11:03 <+bridge_> I get that but like I said isn't this a little confusing for the user? if someone would want to turn hide the line tip there wouldn't be a straightforward way of doing so 11:04 <+bridge_> They can open the color picker and change alpha to zero. Just like for other colors settings like the UI color. It's more confusing and unnecessarily complex to have two UI elements that control the same value. 11:05 <+bridge_> will remove it 11:06 <+bridge_> Also, did you check the default value? Looks like you are enabling alpha for an existing setting, but the default is not adjusted, so is it transparent now? I think this should also handle user configs where the value was set without alpha. 11:07 <+bridge_> I did not 11:07 <+bridge_> It's a new setting, it's just a commit that isn't squashed down 11:08 <+bridge_> But it also gets removed again? I usually look at the final diff 11:08 <+bridge_> At one point he implemented it with 2 configs, alpha and color 11:08 <+bridge_> yes but I was told not to do 2 configs 11:08 <+bridge_> Then the last commit merged them, making it appear as if the color was an existing setting 11:09 <+bridge_> Yeah, it's better to have 1, just be careful that your default has an alpha now 11:09 <+bridge_> Yeah, it's better to have 1, just be careful that your default needs an alpha now 11:09 <+bridge_> I did not, but it does have 100 alpha 11:11 <+bridge_> I did not, will fix 11:11 <+bridge_> You can replace 11:11 <+bridge_> ```cpp 11:11 <+bridge_> g_Config.m_ClConfigVersion = 1; 11:11 <+bridge_> ``` 11:11 <+bridge_> with something like 11:11 <+bridge_> ```cpp 11:11 <+bridge_> if(g_Config.m_ClConfigVersion < 2) 11:11 <+bridge_> { 11:11 <+bridge_> // Repack color because alpha component was added 11:11 <+bridge_> g_Config.m_ClHookCollColorTipColl = ColorRGBA(g_Config.m_ClHookCollColorTipColl, false).Pack(true); 11:11 <+bridge_> } 11:11 <+bridge_> g_Config.m_ClConfigVersion = 2; 11:11 <+bridge_> ``` 11:11 <+bridge_> to properly migrate users' configs. 11:11 <+bridge_> g_Config.m_ClHookCollColorTipColl this is a new setting 11:12 <+bridge_> hmm :thonk: apparently GitHub just gave me an imcomplete diff. Should be bug 3 or 4 of the new PR experience :pepeW: 11:13 <+bridge_> I will look up how to stash them now sorry 11:20 <+bridge_> squash*, but it's not urgent anyway, you can do it at the very end 11:21 <+bridge_> @fushi_gg `color_cast(ColorHSLA(g_Config.m_ClChatBackgroundColor, true))` 11:21 <+bridge_> and if you have a ColorRGBA you can easily extract alpha, probably you can also work with HSLA directly 11:22 <+bridge_> I wonder if we should make the color variables a little easier to work with 11:22 <+bridge_> The config still giving you an unsigned is a little annoying 11:23 <+bridge_> Do all colors even round-trip between `unsigned` and `ColorHSLA`? 11:25 <+bridge_> You mean exactly? Nope 11:25 <+bridge_> Actually wait, HSLA yes 11:25 <+bridge_> If we only unpack the unsigned probably yeah 11:25 <+bridge_> But not if we color cast 11:26 <+bridge_> I thought about making the default colors `ColorRGBA`. You'd just have to some color functions actually `constexpr`. 11:26 <+bridge_> If you go to RGBA I can't guarantee it any longer. Or more accurately I never designed for it so I assume they don't 11:26 <+bridge_> I thought about making the default colors `ColorRGBA`. You'd just have to make some color functions actually `constexpr`. 11:27 <+bridge_> Should be very doable with C++17/20 we are allowed to use now 11:28 <+bridge_> Making the defaults `ColorHSLA` would probably be even easier 11:29 <+bridge_> There is also rounding there, so there is a chance I may have gotten it wrong, but the values I checked were fine 11:30 <+bridge_> I should probably also rename ClHookCollColorTipColl to ClHookCollColorTip right? 11:30 <+bridge_> 32 bit space can be checked exhaustively 11:31 <+bridge_> maybe do that @learath2 11:32 <+bridge_> True, I can try later 11:33 <+bridge_> who decided this variable naming anyway: `cl_hook_coll_color_tee_coll` 11:33 <+bridge_> probably whoever added the configs ^^ 11:33 <+bridge_> there's no central authority 11:33 <+bridge_> I'd prefer ClHookCollTipColor 11:34 <+bridge_> hook-collision-line-tip-color 11:53 <+bridge_> uhh I think I messed up the stashing down of the commits 🥀 11:56 <+bridge_> :050_Sadge: 11:56 <+bridge_> https://github.com/fushi-gg/ddnet/commit/d97d16eb12f5a1b9f44fb610b0de2fb583322e4e 11:57 <+bridge_> or do the old commits show up regardless? I am a total git noob 12:03 <+bridge_> What did you do? You need to do something like this to squash all commits into one, on top of the current master branch: 12:03 <+bridge_> 12:03 <+bridge_> 1. `git rebase -i master` 12:04 <+bridge_> 2. A text editor opens. Change all *except* the first `pick` to `squash` in the opened file. Then close the editor/tab. 12:04 <+bridge_> 3. A text editor opens. Change the commit message in the opened file. Then close the editor/tab. 12:04 <+bridge_> 4. `git push -f` 12:34 <+bridge_> I didn't git push -f, thank you got it now 13:35 <+bridge_> ikr but ddnet doesn't care in most cases, hence why many devs leave over time. 13:35 <+bridge_> i talked to corneum who really wanted this feature, about implementation details too. but it was not fully completed i guess, feel free to revive it 13:38 <+bridge_> ikr but ddnet doesn't care in most cases, hence why many devs leave over time. 13:38 <+bridge_> i talked to corneum who really wanted this feature, about implementation details too. but it was not fully completed i guess, feel free to revive it 13:38 <+bridge_> (missing snapshot handling for prediction and clientbased prediction was missing) 13:42 <+bridge_> @learath2 do you know when the next release is planned? 13:42 <+bridge_> could you maybe review my prs in the meantime? 16:12 <+bridge_> agreed w the additive tunelock 16:27 <+ChillerDragon> @avolicious i had zye do my solo part now i am banned xd sos i didnt know that was illegal 16:31 <+bridge_> Thanks for your feedback, I need to make the text bigger 16:31 <+bridge_> https://cdn.discordapp.com/attachments/293493549758939136/1472616408671322327/image.png?ex=69933867&is=6991e6e7&hm=a0872da1be77f5a3ace728d92833d01f3332f33f27b4c6c88c3bd629e5c56cc6& 16:32 <+bridge_> Seems that people cant read it as its too small 16:35 <+ChillerDragon> no thats fine 16:35 <+ChillerDragon> i remember this text :D 16:36 <+ChillerDragon> but i did not share my code 16:36 <+ChillerDragon> i only shared my timeout code because /swap didnt work 16:36 <+ChillerDragon> @avolicious it was non obvious to me that this is illegal its common on ddnet servers to /swap all the time w random ppl 16:37 <+bridge_> okay 16:37 <+bridge_> Now you know for next time 16:37 <+ChillerDragon> i indeed to know 16:37 <+ChillerDragon> do* 16:37 <+ChillerDragon> aaa xd 16:37 <+ChillerDragon> does the ban auto expire? 16:38 <+bridge_> Yes 16:38 <+ChillerDragon> ah nice how long? 16:38 <+bridge_> idk 16:38 <+ChillerDragon> approximately? 16:38 <+bridge_> 7 days? i dont know 16:38 <+ChillerDragon> oof thats long 16:39 <+ChillerDragon> but oke ill wait 16:39 <+ChillerDragon> but is zye banned too now? @avolicious 16:39 <+ChillerDragon> i am pretty sure he didnt know either 16:39 <+ChillerDragon> i made him do it 17:39 <+bridge_> discord.gg/2Jqsg96mZz 17:47 <+bridge_> Yes it is 17:48 <+bridge_> huh, do you have a summary of this convo somewhere? im curious what you worked out for pros/cons 17:55 <+bridge_> first of all, I definitely agree with the sentiment that it should follow existing tune restrictions (applies a complete override, with no additive effects) but to me half the feature was that you can have tunes that apply to both locked and unlocked in some area, either globally with tune or in certain areas with tunezone. if it stays truly "locked" (ie. can't be manipulated with tunezone after getting tunelock) then it makes it more capable for puzzl 18:00 <+bridge_> in technical terms I imagined it would be a separate net type, so prediction is easy (client knows tunelock state separately, apply tunelock then apply tunezone to get predicted player state) 18:01 <+bridge_> If not, the server could send a combined list of tunings that technically doesn't exist for the map but is a composite of both lock and zones, but that might not work since I think they're referred to by ID? 19:00 <+bridge_> Even the admin doesnt know the rules 🤣🤣 19:07 <+bridge_> I am not in daily business 19:07 <+bridge_> out long time ago 19:07 <+bridge_> just running the servers 19:07 <+bridge_> 🙂 19:10 <+bridge_> they have an entire rulebook for all the bannable offenses which include the above mentioned and ban times are case by case depending on the players previous offenses 20:24 <+bridge_> i saw a map was declined in kog and they gave a fucking pdf 20:24 <+bridge_> i think ddnet should try to be more like kog 20:24 <+bridge_> link? 20:24 <+bridge_> hold on 20:25 <+bridge_> https://cdn.discordapp.com/attachments/293493549758939136/1472675321550733364/document-1.pdf?ex=69936f45&is=69921dc5&hm=4d387dfd45d1e5765f6852f9b55b1032282dbbc1f9a11579e3a6a15e051fa3bc& 20:26 <+bridge_> and it's only like 14 pages 😭 20:26 <+bridge_> like whty 20:26 <+bridge_> like why 20:27 <+bridge_> bruh 20:27 <+bridge_> something something ddnet bajillion times bigger than kog and should put in same or more effort 20:28 <+bridge_> but im just a fucking dog with a blue name and chopped as fuck rcon so i cant do shiet about that 20:28 <+bridge_> other than whine loudly in all available channels 22:13 <+bridge_> Yeah we should require testers draft in overleaf so its harder for everyone involved 22:13 <+bridge_> coming to u next april 1 22:34 <+bridge_> :poggers2: 22:34 <+bridge_> i dont have much shade left to throw at testers 22:34 <+bridge_> less of a big deal than a lot of other stuff 22:34 <+bridge_> they just caught a stray by random example 23:43 <+bridge_> wtf 23:43 <+bridge_> I guess kog has more "active top-tier skilled players" than DDNet and is narrow gameplay-wise 23:43 <+bridge_> crazy pr 23:47 <+bridge_> wait what that's so cool 23:47 <+bridge_> goatbyt3