00:09 < bridge> <Solly> ohhh no!!!
00:09 < bridge> <Solly> profile it :)
00:10 < bridge> <Solly> also at 10k you only get 100 micro seconds per frame x-x
00:15 < bridge> <zhn> check #2232
00:15 < bridge> <DDNet> https://github.com/ddnet/ddnet/issues/2232
00:24 < bridge_> <Solly> didnt see that oops
00:24 < bridge_> <Solly> but that closes it
00:24 < bridge_> <Solly> but this closes it
00:25 < bridge_> <Solly> i think its a good solution
00:25 < bridge_> <Solly> which covers everything
00:26 < bridge_> <zhn> check out all discussions :D
00:27 < bridge_> <Solly> oh dear
00:27 < bridge_> <Solly> i guess ill list all the issues and prs
00:28 < bridge_> <Solly> can we get a bot cmds tab
00:28 < bridge_> <Solly> can we get a bot cmds channel
00:29 < bridge_> <zhn> wdym
00:29 < bridge_> <Solly> i want to spam bot commands
00:29 < bridge_> <zhn> #bot-cmds
00:29 < bridge_> <Solly> it deletes ur msg
00:29 < bridge_> <Solly> that should really be in information
00:29 < bridge_> <rol2ka> where is the place where I can submit an idea for a new version??
00:29 < bridge_> <zhn> use #off-topic then :p
00:29 < bridge_> <rol2ka> okie thanks
00:29 < bridge_> <Solly> you allowed to spam?
00:29 < bridge_> <zhn> #town-hall
00:29 < bridge_> <Solly> or create an issue
00:29 < bridge_> <rol2ka> okie agn
00:30 < bridge_> <zhn> its not a link spam or something, ig you can
00:30 < bridge_> <zhn> use it too*
00:30 < bridge_> <Solly> i want to do it for quick issue listing
00:30 < bridge_> <Solly> cuz i can just paste it in it gives me link
00:30 < bridge_> <Solly> ig its me being lazy
00:30 < bridge_> <zhn> just paste a list here
00:30 < bridge_> <Solly> eh ill just not be lazer
00:30 < bridge_> <Solly> eh ill just not be lazy
00:31 < bridge_> <zhn> anyway all related issues are linked to that one
00:31 < bridge_> <zhn> even prs
00:33 < bridge_> <zhn> #2221 and #7691 - old prs
00:33 < bridge_> <DDNet> https://github.com/ddnet/ddnet/pull/2221
00:34 < bridge_> <DDNet> https://github.com/ddnet/ddnet/pull/7691
00:34 < bridge_> <zhn> @mpft your masterpiece still pops up xd
00:36 < bridge_> <Ewan> :pepeRage:
00:36 < bridge_> <Ewan> just a waste of time
00:36 < bridge_> <Solly> Team practice vs kill tile #2232: Closes, Heinrich wants spectate to be default action
00:36 < bridge_> <Solly> Death tiles automatically /rescue when rescue is enabled or in practice mode #2221: Closed, Def wants a 500ms rate limit (for rescue), this perhaps can put into spectate for those 500ms
00:36 < bridge_> <Solly> kill protection for team, could we keep died players in spectactor mode till team decides/timer ends? #2206: Closes, I don't want to have a team desicion behaviour. I think if any person has death as an on action the entire team dies
00:36 < bridge_> <Solly> Remove kill immunity and replace it with something cheatsafe #898: Closes
00:36 < bridge_> <Solly> Add /rescuemode support #7820: Merged, /rescuemode should work with this
00:36 < bridge_> <DDNet> https://github.com/ddnet/ddnet/issues/2232
00:36 < bridge_> <DDNet> https://github.com/ddnet/ddnet/pull/2221
00:36 < bridge_> <DDNet> https://github.com/ddnet/ddnet/issues/2206
00:37 < bridge_> <DDNet> https://github.com/ddnet/ddnet/issues/898
00:37 < bridge_> <DDNet> https://github.com/ddnet/ddnet/pull/7820
00:37 < bridge_> <Solly> could the bot not embed them please
00:37 < bridge_> <Solly> the links and even maybe the title is fine
00:37 < bridge_> <Ewan> too much brain space allocated to such a simple lr
00:37 < bridge_> <Ewan> too much brain space allocated to such a simple pr
00:37 < bridge_> <Ewan> i think the embed is intended to make it easier than just pr title/description
00:38 < bridge_> <Solly> i dont know why my solution wasnt thought of instantly
00:39 < bridge_> <Solly> x-x
00:39 < bridge_> <Solly> (it was my first idea)
00:40 < bridge_> <Solly> i cant train until this is a feature
00:40 < bridge_> <Solly> i keep dying on spikes
00:45 < bridge_> <zhn> because before you implement any, you should know how to implement at least one
00:46 < bridge_> <zhn> all of this was discussed well but still no ideal implementation of spec/freeze/rescue on kill
00:47 < bridge_> <louis> @sollybunny use /lasttp
00:47 < bridge_> <jxsl13> pretty funny experience today with programming that log parser. the spambot rejoined like multiple times per minute, sent a message, left, regenerated its nickname, joined again, message, and so in and so forth. When I was done with my tool and let it parse my logs, the final result was a single ip address.
00:47 < bridge_> <Ewan> no it’s just heinrich being opposed to the idea and not offering an alternative
00:48 < bridge_> <Ewan> well i guess he did
00:48 < bridge_> <louis> I think /lasttp is a very good alternative
00:49 < bridge_> <louis> I used to think practice on kill behavior was frustrating until i used lasttp binds
00:49 < bridge_> <01000111g> tbh most people dont spend much time in practice, and those who do should then take the 10 min to create a proper set of binds for doing so efficiently
00:49 < bridge_> <Ewan> think about what this choice actually is for a second. this should be core functionality of practice mode, not an afterthought like a recovery command
00:50 < bridge_> <Ewan> because why would you actually want it to work that way, and not just restart the same way you do manually by pressing kill
00:50 < bridge_> <louis> we can have a mode for auto-calling /lasttp after dying in practice mode?
00:50 < bridge_> <Ewan> if there is to be any intervention it should just be that
00:50 < bridge_> <Ewan> and how do you turn that on in a non painful way
00:50 < bridge_> <Ewan> every user has to bind it for on join or the server keeps track
00:50 < bridge_> <Ewan> both of those suck
00:50 < bridge_> <louis> what else would you suggest
00:50 < bridge_> <Ewan> my pr
00:51 < bridge_> <Ewan> just tp them back
00:51 < bridge_> <Ewan> and if they want to restart the level
00:51 < bridge_> <louis> that shouldn't be on by default
00:51 < bridge_> <01000111g> consistent autorecover would be cool, still u use practice mostlyto learn how to do a prt consistently. So what is more consistent than starting at the exact same position u defined with ur /lasttp
00:51 < bridge_> <Ewan> their muscle memory will just press the button before they can consciously think about it
00:52 < bridge_> <Ewan> or type /kill
00:52 < bridge_> <Ewan> this is something players are acclimated to doing
00:52 < bridge_> <louis> kill tiles should by default kill you, i think auto-rescuing is unintuitive behavior if you didn't already set it somehow
00:52 < bridge_> <Ewan> i disagree, it’s practice mode
00:52 < bridge_> <Ewan> i’ve never known a game where you can die in practice mode
00:52 < bridge_> <louis> every other pracice feature requires a command
00:52 < bridge_> <louis> every other practice feature requires a command
00:52 < bridge_> <louis> it'd be odd to have some that aren't documented or used thru commands
00:53 < bridge_> <louis> that's different from what you suggested though
00:53 < bridge_> <louis> that would mean enabling invincible by defualt, not rescuing by default
00:53 < bridge_> <zhn> nah he did, but still no obe implemented it
00:53 < bridge_> <zhn> one*
00:53 < bridge_> <Ewan> i forgot his idea until i said that
00:54 < bridge_> <louis> going to a spectator mode after death sounds annoying too
00:54 < bridge_> <Ewan> it is better than nothing but i think it’s just insanely unnecessary
00:54 < bridge_> <Ewan> then you have to opt into practicing every time you hit the kill tile
00:54 < bridge_> <Ewan> it’s not good
00:54 < bridge_> <zhn> id rather convert kill tiles into freeze tiles with bolder bounds to imitate hitbox
00:54 < bridge_> <zhn> so player can actually use rescue lol
00:54 < bridge_> <louis> that's jank af 💀
00:55 < bridge_> <zhn> sounds sane tho
00:55 < bridge_> <louis> then u have to modify collision logic for what should be in team/practice code only
00:55 < bridge_> <zhn> bruh bro we have 0.7 code in both client and server
00:56 < bridge_> <louis> i don't agree with that either
00:56 < bridge_> <zhn> its like 7 loc change
00:56 < bridge_> <Ewan> the way i see it kill tiles in practice mode should effectively be treated as tp & have the same general thing happen when you die, take you back to safety so you can try again. i dont think this is any more expensive than say running really fast into a blue TP with its checkpoint right next to it (very common in older maps)
00:57 < bridge_> <Ewan> his points against it seemed weak and nit picky, his alternative seems half assed, and if he isn’t going to engage in the discussion then he shouldn’t be entrusted with the decision
00:57 < bridge_> <louis> i just dont think anything in practice should be changed by default without additional text commands
00:57 < bridge_> <Ewan> we are all for adding new server commands but not client settings
00:58 < bridge_> <Ewan> one of those can be trivially set and remembered, the other sorta can’t
00:58 < bridge_> <Ewan> more commands = more work
00:58 < bridge_> <zhn> wait but then all suggested changes (unless spec) are bad from your perspective
00:58 < bridge_> <Ewan> just another thing to bind and remember and press in this edge case where i’m practicing a part with kill tiles
00:59 < bridge_> <Ewan> unrealistic, and annoying, and makes sense from a dev perspective
00:59 < bridge_> <Ewan> but NO
00:59 < bridge_> <louis> hm i dont think so
00:59 < bridge_> <louis> i think its better to modify for example a Die() function with if (practice) rather than modify kill collision logic with if(practice)
00:59 < bridge_> <zhn> ewans idea depends on kill tile behaving like tp, mine idea - on behaving like a freeze
01:00 < bridge_> <zhn> it can be done there and there too xd
01:00 < bridge_> <zhn> there's like no difference
01:00 < bridge_> <louis> we have run on join commands
01:00 < bridge_> <louis> hmmmm
01:00 < bridge_> <louis> actually idk how u would differentiate from /kill and kill tile in Die()
01:00 < bridge_> <Ewan> most players dont touch that
01:00 < bridge_> <Ewan> or know how
01:01 < bridge_> <zhn> based on how server kills player
01:01 < bridge_> <Ewan> and it’s cumbersome nonetheless, that’s not really the point in making
01:01 < bridge_> <zhn> if killer is player id then we are fine
01:01 < bridge_> <louis> ah right
01:01 < bridge_> <louis> even then i think the freeze thing is just too odd to be the best solution
01:01 < bridge_> <zhn> still no arguments for it to be odd xP
01:02 < bridge_> <zhn> any solution will be odd
01:02 < bridge_> <louis> that doesn't mean we should immediately change default activity
01:02 < bridge_> <louis> it's not really practice mode's fault that people don't use the run on join commands
01:02 < bridge_> <louis> cuz ur changing kill to freeze
01:02 < bridge_> <louis> freeze should be the only thing that freezes u
01:02 < bridge_> <zhn> wdym "change"
01:02 < bridge_> <zhn> what about hearts
01:02 < bridge_> <louis> + if a kill and freeze r very close, and you hit them, you don't know if you really died or if you really got froze
01:03 < bridge_> <louis> so it doesn't give as good feedback as getting teleported / other solution
01:03 < bridge_> <zhn> deep freeze eheh
01:03 < bridge_> <louis> okay then kill and deep freeze together :justatest:
01:03 < bridge_> <zhn> just a kill particle then
01:03 < bridge_> <zhn> without being killed
01:03 < bridge_> <zhn> whats problem?
01:03 < bridge_> <louis> ye, that is probably better than just freezing
01:03 < bridge_> <louis> kill particle -> deep freeze state
01:03 < bridge_> <louis> then player can use /lasttp
01:03 < bridge_> <louis> :thonk:
01:04 < bridge_> <zhn> no just freeze then
01:04 < bridge_> <zhn> i don't remember if rescue reacts identically on any freeze kind
01:04 < bridge_> <louis> it should
01:04 < bridge_> <Ewan> it’s practice mode’s fault that practice mode currently works unintuitively. i don’t think people in practice mode are relying on kill tiles to kill them. whenever they hit one they get annoyed and have to tp back to where they were, get their weapons, get their player state modifiers like endless/jp/etc
01:05 < bridge_> <Ewan> and if they do want to die their finger will do it for them instantly
01:05 < bridge_> <zhn> can you pull up this question to testers community? what behaviour they want?
01:05 < bridge_> <louis> actually i think kill particles -> getting frozen somehow is a better solution instead of what I proposed
01:06 < bridge_> <Ewan> now the lasttp suggestion (if it covered every tee attribute) is a neat idea but it’s still a manual workaround for something that really just doesn’t make sense to work this way (imo
01:07 < bridge_> <zhn> lasttp is necessary anyway though
01:07 < bridge_> <Ewan> why?
01:07 < bridge_> <syrinok> Should care more about usability than logic or anything like that imo, having kill tile work as auto /r would probably feel the best, cause then you get feedback for hitting it but also get put back to where you're currently trying to practice
01:07 < bridge_> <Ewan> i am fairly sure i fixed the hitbox thing
01:07 < bridge_> <zhn> nah wait what about you are talking
01:07 < bridge_> <zhn> lasttp vs rescue?
01:08 < bridge_> <Ewan> yea wdym
01:08 < bridge_> <Ewan> i think lasttp would take you to where you were before dying?
01:08 < bridge_> <zhn> lasttp is last tp triggered afair
01:09 < bridge_> <zhn> is this even a thing xd
01:09 < bridge_> <Ewan> i think we are conflating the terms
01:09 < bridge_> <louis> i disagree, i think it would actually feel not nice
01:09 < bridge_> <zhn> i don't get "manual workaround" part
01:09 < bridge_> <syrinok> For the average user, I think they'd disagree
01:09 < bridge_> <louis> imagine hitting kill while doing some inputs and then you get /r immediately, then your inputs are still being held and you just start flailing around for 0.25 seconds
01:09 < bridge_> <louis> tilt machine
01:09 < bridge_> <zhn> like what do you do to bypass what
01:10 < bridge_> <Ewan> just fine
01:10 < bridge_> <Ewan> blue tp maps already do this
01:10 < bridge_> <zhn> blue tp maps are troll
01:10 < bridge_> <zhn> kill trolls you other way
01:11 < bridge_> <louis> maps with troll blue tps probably constitute a small portion of what's being played
01:11 < bridge_> <Ewan> fwiw my implementation resets them with velocities reset iirc
01:11 < bridge_> <Ewan> so you’d be placed stopped, where you were standing in the prior tick
01:11 < bridge_> <louis> ye, but if you're holding an input you'll still move
01:11 < bridge_> <Ewan> same with any tp??
01:12 < bridge_> <Solly> thats why spectate is the default option
01:12 < bridge_> <Solly> according to heinrich
01:12 < bridge_> <Solly> i disagree but whatever is accepted idm you can change it with ur own config
01:12 < bridge_> <zhn> spectating on kill is the worst thing imho
01:12 < bridge_> <Solly> well u can change it
01:12 < bridge_> <zhn> by default i mean
01:13 < bridge_> <Solly> its only in /practice
01:13 < bridge_> <louis> take this part for example:
01:13 < bridge_> <louis> you say [instant /r] will cause less keybinds / keystrokes, but here if you're doing this part and holding D and getting killed, you'll rescue to the edge of the left side and will still have to /r again because you're going to fall off every time
01:13 < bridge_> <louis> https://cdn.discordapp.com/attachments/293493549758939136/1309310656452886598/image.png?ex=67411e12&is=673fcc92&hm=b8297fc348b537e19a925b84f0ddb120c6fe38e062b29af353a9de43b59f4158&
01:13 < bridge_> <syrinok> Making it do /lasttp when you hit kill tiles or /r is basically the same thing anyways, I don't really care which one is implemented, they'd both be better than kill tiles killing you. So 🤷
01:13 < bridge_> <Solly> we can add an option for /lasttp
01:13 < bridge_> <louis> no it's not, see above screen and explanation
01:14 < bridge_> <syrinok> Skill issue 🤷
01:14 < bridge_> <Ewan> no
01:14 < bridge_> <Ewan> you dj and hold left
01:14 < bridge_> <zhn> eh?
01:14 < bridge_> <Ewan> or you just know how that works and treat it the same as tp
01:14 < bridge_> <louis> that's still another input
01:14 < bridge_> <Ewan> and stop moving when you hit it
01:14 < bridge_> <Ewan> like
01:14 < bridge_> <louis> ???
01:14 < bridge_> <louis> the part is tight so you can't just stop when you hit it
01:14 < bridge_> <louis> if you let go of D you'll fail anyways
01:14 < bridge_> <syrinok> Hein doesn't like options, you'd have to pick one
01:14 < bridge_> <Solly> well it doesnt work if u dont have options
01:15 < bridge_> <Ewan> you are emplaced in your rescue position with your velocities set to 0
01:15 < bridge_> <syrinok> gg, never going to be implemented
01:15 < bridge_> <Ewan> you are not moving
01:15 < bridge_> <Ewan> and you are guaranteed to be on ground
01:15 < bridge_> <zhn> that what we have currently
01:15 < bridge_> <Ewan> stop touching the key and you dont go off
01:15 < bridge_> <syrinok> Yep, as it'll remain
01:15 < bridge_> <louis> yeah but you're holding D
01:15 < bridge_> <louis> unless you claim you can instantly react in 1 tick (20 ms) when you hit the kill tile to stop holding D
01:15 < bridge_> <zhn> imagine 2 declined prs on such a small thing already
01:15 < bridge_> <Ewan> definitely well enough to adjust to it
01:15 < bridge_> <louis> plus you'll still have to hold A for a split second because you have to build up velocity to do the actual part
01:16 < bridge_> <louis> the point is /r will put you at corners half of the time and that's annoying
01:16 < bridge_> <louis> so i just dont' think it's practically the best solution
01:16 < bridge_> <zhn> guys
01:16 < bridge_> <louis> you definitely get more control over where you respawn with /lasttp
01:16 < bridge_> <zhn> it depends
01:16 < bridge_> <zhn> both of u are right
01:16 < bridge_> <zhn> someone needs full control, someone don't
01:16 < bridge_> <Ewan> so you’d rather automatically determine a better starting spot, or go to the last tp (even though the section you’re doing probably doesn’t have one, because it’s kill tiles)
01:17 < bridge_> <Ewan> the former seems promising if kinda complicated
01:17 < bridge_> <louis> lasttp teleports you to where you last /telecursored
01:17 < bridge_> <syrinok> lasttp goes to your last manual TP afaik, not teleport tile
01:17 < bridge_> <zhn> u can place manual rescue point and go on btw
01:17 < bridge_> <Ewan> that’s pretty good then
01:17 < bridge_> <syrinok> Ya, as I said, basically same shit, nothing to argue about, I'll take either
01:17 < bridge_> <louis> oh yeah sorry i guess i should've clarified that xd
01:17 < bridge_> <Solly> how do u set rescue point manual?
01:17 < bridge_> <Ewan> you’ll get neither cuz none of us can press the button
01:17 < bridge_> <Ewan> only hein
01:18 < bridge_> <Ewan> and he doesn’t care
01:18 < bridge_> <zhn> /rescuemode manual
01:18 < bridge_> <Solly> and roby
01:18 < bridge_> <Solly> then /rescue
01:18 < bridge_> <Solly> ?
01:18 < bridge_> <Ewan> theoretically but that’d be stepping on toes
01:18 < bridge_> <zhn> and press /r on ground
01:18 < bridge_> <Ewan> he’s not gonna do it
01:18 < bridge_> <Solly> okay
01:18 < bridge_> <Solly> why tho
01:18 < bridge_> <syrinok> He's also the only one working on accounts basically :greenthing:
01:18 < bridge_> <louis> they added this too? xd
01:18 < bridge_> <syrinok> we're cooked, bros
01:18 < bridge_> <zhn> that's a lie :justatest:
01:18 < bridge_> <syrinok> Currently, not a lie, we're all waiting on him!
01:18 < bridge_> <zhn> i did, months ago
01:18 < bridge_> <_voxeldoesart> i thought juppey was the one working on accountw
01:18 < bridge_> <_voxeldoesart> i thought juppey was the one working on accounts
01:19 < bridge_> <Ewan> new info to me as well
01:19 < bridge_> <louis> oh alr then both ways would be sufficient 💀
01:19 < bridge_> <Ewan> he has his own thing
01:19 < bridge_> <Solly> <https://github.com/ddnet/ddnet/issues/9273>
01:19 < bridge_> <Solly> 
01:19 < bridge_> <Solly> if everyone thumbs up this maybeit will be added
01:19 < bridge_> <zhn> that was literally meant for testers bruh
01:19 < bridge_> <Ewan> he has a working implementation in dd-pg iirc but he needs to reimplement it in real ddnet
01:19 < bridge_> <zhn> we did even discuss it there didn't we
01:19 < bridge_> <louis> i still like the particle+freeze a little more though just because you have more control where your tee goes
01:19 < bridge_> <louis> @gerdoe i wasn't aware
01:19 < bridge_> <louis> but /telecursor is better i think since you can do it midair
01:19 < bridge_> <syrinok> Not what I meant, sorry
01:20 < bridge_> <zhn> afair you joined discussion as well xd
01:20 < bridge_> <_voxeldoesart> kind of a mouthful command tbh
01:20 < bridge_> <Solly> thats hwy we have autocomplete (see some other comment heinreich left)
01:20 < bridge_> <zhn> he will not port it back i think
01:20 < bridge_> <syrinok> I mean the current thing being worked on is entirely in hein's hands, and progress is limited by him currently until further notice
01:20 < bridge_> <Solly> thats hwy we have autocomplete (see some other comment heinreich left, long commandsa rent an issue)
01:20 < bridge_> <Solly> thats hwy we have autocomplete (see some other comment heinreich left, long commands arent an issue)
01:20 < bridge_> <_voxeldoesart> ah
01:20 < bridge_> <Ewan> i hate server commands
01:21 < bridge_> <_voxeldoesart> still id at least shorten it to /pracspikeaction so its less clutter
01:21 < bridge_> <Ewan> would rather properly establish a reliable user/server relationship with… wait…
01:21 < bridge_> <zhn> just /killmode, thats it
01:21 < bridge_> <Solly> i dont think prac is a good shortening
01:21 < bridge_> <Ewan> i hate per-session server commands
01:21 < bridge_> <Solly> i dont mind removing the practise prefix, i prefer it but others dont have it so doesnt matter
01:21 < bridge_> <Solly> 
01:22 < bridge_> <Solly> but it should be spikeaction and freezeaction or spikemode and spikeaction
01:22 < bridge_> <zhn> per session?
01:22 < bridge_> <syrinok> Wonder how long from now it'll take for accounts :pepedepressed:
01:22 < bridge_> <Ewan> yea like /somethingmode
01:22 < bridge_> <zhn> two or one month
01:22 < bridge_> <Solly> i think it should be action
01:22 < bridge_> <_voxeldoesart> its already been 2+ years
01:22 < bridge_> <zhn> we still have no accounts xd
01:22 < bridge_> <Ewan> yep
01:22 < bridge_> <Ewan> that’s the point of my sentence
01:22 < bridge_> <zhn> it would be good if ddnet servers could share context
01:22 < bridge_> <Ewan> how it all circles back to not having accounts
01:22 < bridge_> <zhn> it was even discussed afair
01:23 < bridge_> <Ewan> emphasizing the importance of accounts
01:23 < bridge_> <louis> @sollybunny i dont think anyone wants to read all those options when they're playing, better just have one good implementation that people can use easily
01:23 < bridge_> <Solly> well its "new features arent implemented 😠", so accounts obviously show up
01:23 < bridge_> <Solly> well thats what the defaults are for, you can change it if you want, and atleast some of the otpions are required for /invinsible
01:23 < bridge_> <Solly> also i want the options depending on what im doing
01:23 < bridge_> <_voxeldoesart> society if ddnet had accounts, tune lock, and breaks backwards compatability:
01:23 < bridge_> <_voxeldoesart> https://cdn.discordapp.com/attachments/293493549758939136/1309313387246915584/unknown.jpeg?ex=6741209d&is=673fcf1d&hm=e676ad1afa4a21522a4d83f9078e0ca996daa8f8391a3bb04ae6c181f697de56&
01:24 < bridge_> <syrinok> No options = best, it shouldn't kill you in practice period, pick a method
01:24 < bridge_> <syrinok> Agree to method, convince hein
01:24 < bridge_> <Solly> but why no options ;--;
01:24 < bridge_> <syrinok> that's the real process here
01:24 < bridge_> <zhn> because it would be the same actually
01:24 < bridge_> <Ewan> hein doesn’t respond
01:24 < bridge_> <syrinok> Hein, he's allergic
01:24 < bridge_> <Ewan> i actually have prodded him about it
01:24 < bridge_> <_voxeldoesart> the sitting down incident
01:24 < bridge_> <Ewan> he just doesn’t comment or engage (with me)
01:24 < bridge_> <Solly> but other than convincing hein theresno reason?
01:25 < bridge_> <zhn> eh, the animations tumbler moment
01:25 < bridge_> <_voxeldoesart> tumblr
01:25 < bridge_> <syrinok> Doesn't like clutter or confusion, less options = less clutter / confusion
01:25 < bridge_> <Solly> no one will run into this command and when they do, it will be evident what it does
01:25 < bridge_> <Solly> no one will run into this command and when they do, it will be evident what it does
01:25 < bridge_> <Solly> thats what /help is for
01:25 < bridge_> <_voxeldoesart> and yet we let someone support 0.7
01:25 < bridge_> <zhn> /cmdlist
01:25 < bridge_> <Ewan> fewer is better fore
01:26 < bridge_> <syrinok> Argue it to hein!
01:26 < bridge_> <Ewan> fewer is better for sure
01:26 < bridge_> <Solly> i will when he responds
01:26 < bridge_> <Ewan> this is the sentiment of most devs here iirc
01:26 < bridge_> <zhn> meh, ddnet supports backcompat so there's no difference anyway
01:26 < bridge_> <syrinok> Grats, you just delayed accounts :troll:
01:26 < bridge_> <zhn> we can even support 0.5, just for lulz
01:26 < bridge_> <Solly> accounts are never going to be a thing
01:26 < bridge_> <Solly> accounts are never going to be a thing, its been long enough that ive lost hope
01:26 < bridge_> <Ewan> he might hear it from mods tbh
01:26 < bridge_> <Ewan> that’s all i can think
01:27 < bridge_> <zhn> nah
01:27 < bridge_> <_voxeldoesart> it sucks because we always have to support some version of ddnet thats years old, which we literally can just, not, and improve our codebase significantly
01:27 < bridge_> <Solly> an initial implementation doesnt have to be good it just has to be an account system with ddnet, then force it on the kog people
01:27 < bridge_> <_voxeldoesart> it sucks because we always have to support some version of ddnet thats years old, which we literally can just... not, and improve our codebase significantly
01:27 < bridge_> <zhn> we discussed it and ddnet should be as small as possible in terms of options
01:27 < bridge_> <zhn> because we have plenty
01:27 < bridge_> <zhn> thats the real reason heinrich pointed me to
01:28 < bridge_> <Solly> thats a dumb reason
01:28 < bridge_> <zhn> argue one more time if you want to spend some free time xd
01:28 < bridge_> <Solly> unnecesary options are bad, options to do things everyone wants to do but in different ways is good no matter how many you have to add
01:28 < bridge_> <Solly> "argue it to heinrich" i will
01:29 < bridge_> <Ewan> well it’s the consensus
01:29 < bridge_> <syrinok> Also maintaining code for shit ig, I'm no dev so idk the whole process, I only yap here :greenthing:
01:29 < bridge_> <Ewan> ddnet has a lot of code for what it is
01:29 < bridge_> <zhn> end developer actually shouldn't see any difference but everything is just lays up there
01:29 < bridge_> <Solly> i always hear "maintaining" but all that is just fixing merge conflicts, this only steps on the feet of /invinsibile for which if it has any change is to remove it
01:29 < bridge_> <Ewan> completely independent engine, mostly independent OS abstraction, completely independent networking protocol
01:30 < bridge_> <Ewan> ddnet maintenance is probably very tolling
01:30 < bridge_> <_voxeldoesart> the thing about all my ideas is that they serve no purpose other than making the game look prettier
01:30 < bridge_> <_voxeldoesart> all fluff no functionality
01:30 < bridge_> <Solly> the ddnet codebase can be cleaned up, ddnet seperated from the game but its not b ecause making the game "moddable" isnt a goal
01:31 < bridge_> <zhn> robyt3 did a lot of clean up on client side but truth is that this codebase wasn't meant to be used as everything-in-one
01:31 < bridge_> <zhn> thats why we have to deal with it rn
01:31 < bridge_> <_voxeldoesart> so what you're saying is split the client and server into 2 different repos?
01:31 < bridge_> <zhn> and that's why heinrich doesn't let something into upstream
01:31 < bridge_> <zhn> huh? no
01:31 < bridge_> <Ewan> it’s not so bad with the current structure, just a little confusing & very convoluted because quality alternatives to what was originally implemented in teeworlds have been made
01:32 < bridge_> <zhn> wait its 4 am already
01:32 < bridge_> <zhn> gn guys
01:32 < bridge_> <Solly> nn
01:32 < bridge_> <Ewan> gn
01:34 < bridge_> <syrinok> gn
02:16 < bridge_> <teero777> gn
06:29 < bridge_> <headshotnoby> rs
07:51 < bridge_> <Solly> @chillerdragon 
07:51 < bridge_> <Solly> your comment on teeros tas video made my lmao irl
07:51 < bridge_> <Solly> https://cdn.discordapp.com/attachments/293493549758939136/1309410988860117053/image.png?ex=67417b83&is=67402a03&hm=989ae674d083e0aeb0584fcf25b3202dc5acca00c964bd4e49d35d112d51a29b&
07:51 < bridge_> <Solly> ive spent hours on part 24
08:02 < bridge_> <kollpotato> chiller comments on every tw video
08:29 < bridge_> <ryozuki> kernel 6.12 dropped on gentoo
08:37 < bridge_> <ryozuki> https://abhisaha.com/blog/interactive-post-oklch-color-space/
08:38 < bridge_> <ryozuki> https://cdn.discordapp.com/attachments/293493549758939136/1309422618989953134/image.png?ex=67418658&is=674034d8&hm=2f27631163e73c3b9227ea0613445a6ee249e7fd4db20dc5baccf55b810d4748&
08:48 < bridge_> <inv41idu53rn4m3> hmm I don't know, that gradient from green to blue makes me think the RGB gradient isn't taking into account gamma
08:48 < bridge_> <inv41idu53rn4m3> but yeah perceptual colour spaces are good
08:48 < bridge_> <inv41idu53rn4m3> I much prefer the example image on Wikipedia
08:48 < bridge_> <inv41idu53rn4m3> https://cdn.discordapp.com/attachments/293493549758939136/1309425300266025000/Colour_gradient_comparison_of_HSV_and_okLCH.png?ex=674188d7&is=67403757&hm=1479194dceba6f4fb9c252fa56cb203ce3228080e1b8eb349849e0e59235e807&
09:13 < bridge_> <Solly> can we get any non rgb interpolation algoirhtm on our quads
09:13 < bridge_> <Solly> the gray is ugly
09:14 < bridge_> <Solly> (pass color system of choice thru instead of rgb, then make shader convert back to rgb)
09:14 < bridge_> <Solly> (make it a setting idk)
09:14 < bridge_> <inv41idu53rn4m3> Yeah, I was about to say that RGB interpolation is sometimes desired
09:14 < bridge_> <Solly> it is?
09:14 < bridge_> <Solly> no i meant a setting in general, it costs alot to convert between the 2
09:14 < bridge_> <Solly> no i meant a global setting like hi-detail, it costs alot to convert between the 2
09:15 < bridge_> <Solly> whats an example of wanting rgb interpolation
09:15 < bridge_> <Solly> seeing as its mostly visual
09:15 < bridge_> <inv41idu53rn4m3> ok now that I'm thinking, if it's only used for gradients, there isn't much reason to use RGB interpolation
09:16 < bridge_> <Solly> thats what quads are really
09:16 < bridge_> <Solly> you can even see it on clouds
09:16 < bridge_> <Solly> and its really annoying
09:16 < bridge_> <Solly> once you ntoice
09:17 < bridge_> <inv41idu53rn4m3> But even if we don't do that, we should at least check that we're correctly taking into account gamma when it comes to RGB gradients
09:37 < bridge_> <Solly> its not about gamma
09:38 < bridge_> <Solly> its about *gray*
09:39 < bridge_> <Solly> https://cdn.discordapp.com/attachments/293493549758939136/1309438014363271188/image.png?ex=674194ae&is=6740432e&hm=8d4f37eccc8e9f2a147f62a6144581401940f4679382867aa936b672f03ea191&
09:39 < bridge_> <Solly> yummy
09:45 < bridge_> <kollpotato> i dont like gray gray
09:45 < bridge_> <kollpotato> blue gray is better than gray gray
10:39 < bridge_> <Assa> what would be a modern way for a captcha? I think they are all broken now
12:59 < bridge_> <learath2> There are the js puzzle ones, idk if they are verybroken yet
13:05 < bridge_> <kollpotato> connect to the camera and check if the person is real
13:05 < bridge_> <learath2> Make them submit a blood sample by mail
13:07 < bridge_> <jxsl13> this
13:11 < bridge_> <zhn> we had a teecaptcha didn't we
13:13 < bridge_> <jxsl13> I think a puzzle where you have to put nouis' eyes back into place would be pretty cool.
13:13 < bridge_> <jxsl13> :nouis:
13:14 < bridge_> <jxsl13> and the correct location and orientation is randomly generated
13:18 < bridge_> <aegisub> gamma RGB gradient with these stops vs linear RGB gradient with these stops
13:18 < bridge_> <aegisub> https://cdn.discordapp.com/attachments/293493549758939136/1309493144563351552/image.png?ex=6741c806&is=67407686&hm=29738c0f37a7e77bff72b484272395707130d912eea84d377c52bf4ee88d7155&
13:18 < bridge_> <aegisub> https://cdn.discordapp.com/attachments/293493549758939136/1309493144903221269/image.png?ex=6741c806&is=67407686&hm=247a4d2915170e11bdd78c93531233961063befbec1df5f56202d778c3492602&
13:19 < bridge_> <aegisub> that is, the left one is the one that directly interpolates sRGB values and the right one is the one that converts to linear RGB, interpolates, and converts back
13:23 < bridge_> <aegisub> speaking of, can we get dithering for the quad interpolation
13:24 < bridge_> <aegisub> I've been meaning to ask this for a while, quads can have very noticable banding
13:34 < bridge_> <teero777> Furo: idk if you can read this but if you can then add a stomping mode to the bomb mode that makes the bomb explode immediately if someone stomps on it xd
13:52 < bridge_> <ryozuki> rust tip: avoid inclusive ranges, use exclusive, they have better perf
13:53 < ws-client> <ChillerDragon> Is holding down hammer with antiping a known bug?
13:54 < bridge_> <learath2> That's curious, why?
13:54 < bridge_> <Assa> solving a puzzle might still work
13:55 < bridge_> <Assa> at least you don't find a bot right out of the box
13:55 < bridge_> <Assa> doesn't solve the issue of captcha formings tho, but there is none
13:55 < bridge_> <learath2> I see this kind quite often
13:55 < bridge_> <learath2> https://cdn.discordapp.com/attachments/293493549758939136/1309502572167696384/image0.jpg?ex=6741d0ce&is=67407f4e&hm=34713026ec23ca191d21a616393993f922d7f50c15afcaf24874504a8bdabdcb&
13:56 < bridge_> <learath2> There is also one which hides symbols in an image and tells you to click them in a specific order
13:56 < bridge_> <Assa> I would do that much more complicated, like solving at least 9 puzzle pieces
13:56 < bridge_> <ryozuki> https://users.rust-lang.org/t/performance-difference-among-range-rangeinclusive-and-reversed/20283/19
13:56 < bridge_> <ryozuki> https://users.rust-lang.org/t/performance-difference-among-range-rangeinclusive-and-reversed/20283
13:56 < bridge_> <ryozuki> https://users.rust-lang.org/t/performance-difference-among-range-rangeinclusive-and-reversed/20283
13:59 < bridge_> <Assa> would also be great to filter out small children 🤔 😆
14:02 < bridge_> <learath2> I read the entire thread, I didn't see the reason why
14:03 < bridge_> <learath2> Half open ranges excluding the upper limit are the most comfy to use, but I never heard of a performance thing
14:10 < bridge_> <ryozuki> it adds a branch iirc
14:30 < bridge_> <tsfreddie> https://cdn.discordapp.com/attachments/293493549758939136/1309511322790006885/e7590b5ddacd66bac6bef8ac8cab7f8e.png?ex=6741d8f4&is=67408774&hm=ab1258478dc5d1046a124b48c2bf65c02ebf81b94c6fa87bb3ee377c6b0b3251&
14:31 < bridge_> <tsfreddie> https://cdn.discordapp.com/attachments/293493549758939136/1309511468454248538/b4a3d139c432592d02352c9ca66ecc08.png?ex=6741d917&is=67408797&hm=98c17ec8eff85dc25021a68d4535e1e0b9772766e1cac234cf61f032af421dd4&
14:42 < bridge_> <zhn> theyll hire indians to solve it so xd
14:43 < bridge_> <tsfreddie> captcha solver is a lob
14:43 < bridge_> <tsfreddie> captcha solver is a job
14:43 < bridge_> <tsfreddie> :pepeW:
14:43 < bridge_> <zhn> yeah no jokes
14:43 < bridge_> <zhn> theres literally some service to solve em like nuts
14:58 < bridge_> <learath2> Yeah, this is the solution to every captcha and the price per captcha isn't too bad either
15:00 < bridge_> <tsfreddie> do you know any captcha farm <a:HUH:1178720004980605089> , asking for a friend
15:01 < bridge_> <learath2> Nope, I only talked about it with a friend who was paying for one to spam a website with fake comments
15:23 < bridge_> <ryozuki> omg
15:23 < bridge_> <ryozuki> no catalan tee skin
15:23 < bridge_> <ryozuki> *angry noises*
15:35 < bridge_> <tsfreddie> no scotland either
15:51 < bridge_> <inv41idu53rn4m3> Huh, so doing it correctly makes it look worse because blue is just so dark? Neat
15:53 < bridge_> <zhn> no tatarstan either
15:53 < bridge_> <aegisub> the question is what "correctly" means here
15:53 < bridge_> <zhn> imagine adding all us state flags xd
15:53 < bridge_> <aegisub> interpolating in linear light is pretty much the opposite of being perceptually uniform, that's why gamma exists
15:54 < bridge_> <aegisub> but if you interpolate two equally primary colors in gamma light, you get a brightness shift
15:54 < bridge_> <inv41idu53rn4m3> Actually the one on the right has a much better transition between blue and green, only the blue dark stripe looks worse on first glance
15:54 < bridge_> <aegisub> yeah, it's a tradeoff
15:54 < bridge_> <aegisub> gamma light is great for perceptually uniform interpolation of brightness for a constant chromaticity
15:55 < bridge_> <aegisub> linear light is better when interpolating between different chromaticities of the same brightness
15:55 < bridge_> <aegisub> but if you want a perceptually uniform gradient you shouldn't use either and just use oklab/oklch
15:56 < bridge_> <inv41idu53rn4m3> I'm often lazy and don't look up the matrices, just pulling something good enough out my ass lol
17:22 < bridge_> <zhn> :justatest:
17:29 < bridge_> <kebscs> 😭nooo
17:33 < bridge_> <louis> :poggers2:
17:33 < bridge_> <inv41idu53rn4m3> :poggers2:
17:34 < bridge_> <diariesvexar> :poggers2:
17:36 < bridge_> <kollpotato> :poggers2:
17:39 < bridge_> <ryozuki> :poggers2:
17:45 < bridge_> <meloƞ> :poggers2:
17:45 < bridge_> <diariesvexar> don't what's that for but ...
17:45 < bridge_> <diariesvexar> :poggers2:
17:46 < bridge_> <diariesvexar> don't know what's that for but ...
17:46 < bridge_> <meloƞ> wdym you dont know what thats for >:c - imagine multeasymap and linear.. but with 128p
17:47 < bridge_> <diariesvexar> no I mean last commit
17:47 < bridge_> <diariesvexar> I know that one
17:47 < bridge_> <meloƞ> oh the teehistorian one?
17:47 < bridge_> <inv41idu53rn4m3> It's for filthy Windows users, we don't care about them
17:48 < bridge_> <diariesvexar> yeah me too
17:48 < bridge_> <meloƞ> ```
17:48 < bridge_> <meloƞ> with MSVC the variable is not zero-initialized like with other compilers currently.
17:48 < bridge_> <meloƞ> ``` 
17:48 < bridge_> <meloƞ> yet another microsoft L
17:48 < bridge_> <diariesvexar> I'm windows user btw 😄
17:48 < bridge_> <inv41idu53rn4m3> MSVC = Microsoft Visual C++
17:48 < bridge_> <inv41idu53rn4m3> the stinkiest compiler
17:48 < bridge_> <inv41idu53rn4m3> LLVM is peak
17:49 < bridge_> <diariesvexar> windows is shit i know it but I have to use it for games 😐
17:49 < bridge_> <meloƞ> what games :(
17:49 < bridge_> <inv41idu53rn4m3> wdym, DDNet runs just fine on Linux
17:49 < bridge_> <inv41idu53rn4m3> and Minecraft
17:49 < bridge_> <inv41idu53rn4m3> and like, what else could you need?
17:50 < bridge_> <diariesvexar> I'm not playing them anymore
17:50 < bridge_> <inv41idu53rn4m3> Fake DDRacist?!?!
17:50 < bridge_> <diariesvexar> right now playing on throne and liberty
17:50 < bridge_> <soulyvevo> :poggers2:
17:50 < bridge_> <soulyvevo> chat is this real
17:50 < bridge_> <diariesvexar> no I'm more like veteran DDNet player
17:50 < bridge_> <inv41idu53rn4m3> Washed up?
17:50 < bridge_> <meloƞ> :c throne and liberty runs perfectly fine on linux
17:50 < bridge_> <diariesvexar> I spend 14-26 of my life on DDNet and I think that's enought
17:51 < bridge_> <meloƞ> dude came, developed, and dipped
17:51 < bridge_> <diariesvexar> and yeah all of that times just spend on developing on DDNet I even still noob at finishing ddrace maps 😄
17:55 < bridge_> <diariesvexar> yeah 😦
18:24 < bridge_> <triki> can i somehow sent cmd to change map to dedicated server if i dont have running game?
18:31 < bridge_> <triki> i mean can i change map from outside the game?
19:00 < bridge_> <woidless> @teero777
19:00 < bridge_> <woidless> https://github.com/Teero888/tune_calculator
19:00 < bridge_> <teero777> hwat
19:00 < bridge_> <teero777> what
19:01 < bridge_> <woidless> Can you tell me what algorithm of actions happens with each tune?
19:08 < bridge_> <triki> Ok i find solution. i will share it if some one need it. this readme generated by AI
19:08 < bridge_> <triki> https://cdn.discordapp.com/attachments/293493549758939136/1309581398767702016/README.md?ex=67421a38&is=6740c8b8&hm=45b86c30ea9305d189caca708352abd1005f3b72a60da40304f100899c41319f&
19:08 < bridge_> <triki> https://cdn.discordapp.com/attachments/293493549758939136/1309581399086596146/change_map_econ.py?ex=67421a38&is=6740c8b8&hm=79677293237afbdbd6ccb32519aebb0c312153b0b6a1a960afbd343ad2305e76&
19:09 < bridge_> <triki> Ok i find solution. i will share it if some one need it. this README generated by AI
19:09 < bridge_> <triki> https://cdn.discordapp.com/attachments/293493549758939136/1309581398767702016/README.md?ex=67421a38&is=6740c8b8&hm=45b86c30ea9305d189caca708352abd1005f3b72a60da40304f100899c41319f&
19:09 < bridge_> <triki> https://cdn.discordapp.com/attachments/293493549758939136/1309581399086596146/change_map_econ.py?ex=67421a38&is=6740c8b8&hm=79677293237afbdbd6ccb32519aebb0c312153b0b6a1a960afbd343ad2305e76&
19:28 < bridge_> <teero777> i have no idea what you are talking about sry
19:35 < bridge_> <triki> Ok i find solution. i will share it if some one need it. this README generated by AI
19:35 < bridge_> <triki> https://cdn.discordapp.com/attachments/293493549758939136/1309581398767702016/README.md?ex=67421a38&is=6740c8b8&hm=45b86c30ea9305d189caca708352abd1005f3b72a60da40304f100899c41319f&
19:35 < bridge_> <triki> https://cdn.discordapp.com/attachments/293493549758939136/1309581399086596146/change_map_econ.py?ex=67421a38&is=6740c8b8&hm=79677293237afbdbd6ccb32519aebb0c312153b0b6a1a960afbd343ad2305e76&
19:46 < bridge_> <zhn> not an L though
19:46 < bridge_> <zhn> standard doesn't specify this one point
19:46 < bridge_> <zhn> but msvc sucks in any other way :P
19:47 < bridge_> <zhn> yeah you can, use telnet to connect to econ port and do whatever you want
19:48 < bridge_> <triki> i dont see any other solutions.
19:48 < bridge_> <zhn> but afair its not encrypted so
19:49 < bridge_> <triki> maybe u tips more better way?
19:49 < bridge_> <zhn> better use it only on localhost and wrap with something that actually has encryption
19:50 < bridge_> <zhn> you can basically write anything on top of any econ wrapper (i.e tw-econ for rust) and send messages via discord for example
19:50 < bridge_> <zhn> or telegram kekw
19:51 < bridge_> <zhn> expand your question pls
19:52 < bridge_> <zhn> should have checked your script before answering, ig id you don't anything else than that, it's fine to use
19:52 < bridge_> <triki> u just said like i do smth bad. better i ask question.
19:52 < bridge_> <triki> if u u will do smth similar what metod u will choose?
19:53 < bridge_> <zhn> nah everything is fine, i thought you want to do something remotely
19:54 < bridge_> <triki> ah, so for remote this fine just need add encryption, i undestend u correcly?
19:55 < bridge_> <zhn> yeah, but only if you think that someone sniffs your traffic :p
19:57 < bridge_> <triki> nah nobody, but thanks i was just interesting ty for explanation.
20:00 < bridge_> <meloƞ> I'd sniff u
20:01 < bridge_> <zhn> bro you have a wife :justatest:
20:26 < bridge_> <meloƞ> Did I stutter?
21:19 < bridge_> <inv41idu53rn4m3> probably the laziest way to protect that traffic is just use ssh, no need to set up a separate vpn or anything
21:50 < bridge_> <reitw> that's the way to go