00:00 < bridge> yea it seems good to me 00:00 < bridge> just pushing the pr so it gets merged :) 00:01 < bridge> ik but I think it's important to convince yourself as well, not just trust me blindly 00:01 < bridge> this also unblocks my pr with tele weapons prediction 00:01 < bridge> with how simple it is it works well from what i can tell 00:01 < bridge> eh 00:01 < bridge> it works really well (except for maybe the interpolation, which is _fine enough_) 00:02 < bridge> it's not so simple, there's a lot of shitty mixers, as can be seen by the first article 00:02 < bridge> the murmur3 one is very good however, all the bits are equally avalanched and low bias 00:02 < bridge> even with just 1 iteration, we do 2 minimum. 00:03 < bridge> well like 4 minimum in practice, but the utility doees 2 00:03 < bridge> well like 4 minimum in practice, but the utility does 2 minimum 00:11 < bridge> i read a bit and seems good 00:12 < bridge> you cant predict tele ahead of time, is this right? @totar 00:12 < bridge> what? 00:12 < bridge> what does this mean 00:12 < bridge> you can @kebscs 00:12 < bridge> like you wont know which tele out it will take you 00:12 < bridge> like you need to know the tick you hit the teleport at and then predict it 00:13 < bridge> the point of the server controlled seed is so you can't know 00:13 < bridge> but the client being able to know is the whole point 00:13 < bridge> you can still cheat and know 00:13 < bridge> ah yea xd 00:14 < bridge> so why even hash if its all known 00:14 < bridge> ? 00:14 < bridge> the hash is what makes it "random" 00:14 < bridge> kebs it's a static seed 00:14 < bridge> like 1 seed 00:14 < bridge> just a string, "bla" 00:15 < bridge> yea the prng wasnt 00:15 < bridge> and from this, we create a random value with the hash function, wich takes seed + clientid + tick 00:15 < bridge> I find this really smart tbh 00:16 < bridge> the hash is just a different type of prng, the prng is designed for pulling sequentail random values, but it provides no functionality for getting a random value from a seed. We need something that gives us the property that if any of the input bits change we want a new uniformly distributed random value 00:16 < bridge> it's not a cryptographic hash, that's different 00:16 < bridge> so why the seed cant be sent once, but its in ddnet char? 00:16 < bridge> because the client doesn't know about all the teleports happening 00:17 < bridge> asking differently, when do you change the seed? 00:17 < bridge> do you change it after each teleport? 00:17 < bridge> does it now? when the seed is only changed on respawn 00:18 < bridge> the point is that the client only need the things in the seed to calculate the teleport result, if you used the prng it would need to know exactly how many teleports have ever happened on the server at the gametick it's calculating, which is infeasible 00:18 < bridge> the point is that the client only needs the things in the seed to calculate the teleport result, if you used the prng it would need to know exactly how many teleports have ever happened on the server at the gametick it's calculating, which is infeasible 00:19 < bridge> well it could, but then you weed need to sync the prng on both sides 00:19 < bridge> and win nothing 00:19 < bridge> it makes each tick an idependent event not based on the past 00:19 < bridge> it makes each tick an independent event not based on the past 00:19 < bridge> and you could only sync it by tick 00:19 < bridge> no it's literally impossible, because you don't know how many teleports happened in your prediction window 00:19 < bridge> like this is speed of light issue 00:20 < bridge> yes so why cant it sent the seed once? 00:21 < bridge> if its based on static seed, clientid and gametick 00:21 < bridge> client knows about clientid and gametick, and just receives seed 00:21 < bridge> why is seed received all the time when only changed on respawn 00:21 < bridge> that's just how it is 00:22 < bridge> cant it be net msg then and send it when needed? 00:22 < bridge> instead of all the time in ddnet char 00:22 < bridge> the netcode is designed to be used this way 00:23 < bridge> the bits that don't change become zero and the compression is supposed to make it negligable, we use the same pattern for other data that rarely changes 00:23 < bridge> alright 00:23 < bridge> i guess it makes sense since u need to know other players seeds too 00:23 < bridge> so you would need to receive it almost all the time they go in and out of your view 00:23 < bridge> didn't you put tuenzone override on the character too? 00:24 < bridge> wasnt me 00:24 < bridge> didn't you put tunezone override on the character too? 00:24 < bridge> ah 00:24 < bridge> I thought that was you 00:24 < bridge> was that assa 00:24 < bridge> matador if i remmeber correctly 00:24 < bridge> matodor if i remmeber correctly 00:25 < bridge> makes sense to me now 00:25 < bridge> then all good 00:26 < bridge> i guess cheat clients can still cheat if they precalculate route to hit teles at good ticks 00:26 < bridge> but its at least not so braindead easyh to bypass 00:26 < bridge> he did, I am jsut making a map out of it 00:26 < bridge> ?? 00:26 < bridge> he just said he didnt 00:26 < bridge> he lied 00:26 < bridge> what 00:26 < bridge> no? 00:27 < bridge> https://github.com/ddnet/ddnet/pull/8959 00:27 < bridge> the tune lock PR? 00:27 < bridge> override is already in game 00:27 < bridge> maybe we mean different things πŸ€” 00:27 < bridge> i just make use of it with tune lock 00:27 < bridge> rn override is unused on pure ddnet 00:52 < bridge> Can u plz describe ur question in more details? I don't understand what you don't understand. 00:52 < bridge> i also dont understand what you meant there 00:56 < bridge> so what u dont understand? 00:56 < bridge> u dont understand what mean not empty test server? 00:56 < bridge> u dont understand what mean on top of all servers? 00:56 < bridge> idk its look agressive from me, but im chill. just curios, where is my misstake. 00:57 < bridge> idk if its look aggressive from me, but im chill. just curios, where is my misstake. 00:57 < bridge> and i know my English not good. 01:00 < bridge> i dont see context of that message, but not empty on server browser? 01:01 < bridge> there's filters to hide full/empty servers 01:06 < bridge> I don't talk about filtering at all. I talk about sorting, which is different. 01:06 < bridge> idk why u out of context did u check main page of issue? 01:08 < bridge> ty 01:09 < bridge> i didnt see issue 01:09 < bridge> idk if there should be special cases for sorting 01:09 < bridge> filtering is good enough 01:09 < bridge> filter+sort can do anything 01:10 < bridge> if u looked only previe not u undestend why u no have context) 01:12 < bridge> > filter+sort can do anything 01:12 < bridge> for me its not enough, so anyway i understand my mistake. thanks u. 01:12 < bridge> also ty melon for [this](https://discord.com/channels/252358080522747904/293493549758939136/1444098344606630022) u give me idea. 01:42 < bridge> aww man and I thought PCG was good 01:42 < bridge> it almost passes the test except for like one obvious streak 01:43 < bridge> ? 01:43 < bridge> looking at the shadertoy 01:43 < bridge> oh 01:44 < bridge> PCG does well but not that well 01:44 < bridge> which shadertoy 01:44 < bridge> this one 01:44 < bridge> https://www.shadertoy.com/view/NtVczW 02:10 < bridge> https://tenor.com/view/evil-superman-gif-632723218522114279 02:11 < bridge> hi 02:11 < bridge> how can I help you 02:14 < bridge> I think it only tests a single iteration of the mixer/finalizer so it's possible the entire prng algorithm is still good 02:15 < bridge> yeah probs 04:13 < bridge> 🎰 04:13 < bridge> https://cdn.discordapp.com/attachments/293493549758939136/1444164367225454762/image.png?ex=692bb660&is=692a64e0&hm=ce5c237a413517f12697af09042d9abf406eb9c7f4003e5eec5d342c8c55323a& 06:19 < bridge> @pioooooo Have you tried teeworlds 0.7? 06:23 < bridge> no 06:27 < bridge> oh 07:37 < bridge> @learath2: can we at least give kebso reporter role so he shows up in GitHub dropdowns? Xd 07:42 < bridge> @blazulite we have that new cool ui element in the Scoreboard and I am thinking about inviting into teams by color 07:42 < bridge> gumo ^.^ 07:48 < bridge> time to destroy that triki issue 07:50 < bridge> gumo assa 08:22 < bridge> ;; 08:22 < bridge> https://cdn.discordapp.com/attachments/293493549758939136/1444227034409865226/48dfc4f71f84ff86.png?ex=692bf0bd&is=692a9f3d&hm=a8533477439b0bf89d9157cf9019efa3fe911918efebae256719bd721fb91f73& 08:24 < bridge> I hope that's a phishing mail 08:28 < bridge> what... can you even pay github *for* 08:28 < bridge> i dont think ive ever used github and gone "ah crap i cant do that" 08:36 < bridge> purely in theory, how do you like the idea? https://discord.com/channels/252358080522747904/1439714815714005143 08:40 < ws-client> **** discord linker 08:58 < bridge> well github student pack 10:37 < ws-client> **** `-bash: typso: command not found` 10:37 < ws-client> **** gg 11:00 < bridge> Whatever I benchmark, Abyss is always bad πŸ€” 11:01 < bridge> new optimization - everthings better - except Abyss 11:01 < bridge> like 10 times in a row now 11:02 < bridge> Alr 11:02 < bridge> I will be on it in abit 11:20 < bridge> Can I get a screenshot without the pop-up? 11:20 < bridge> so I can use as the base 11:22 < bridge> you mean a screenshot of the scoreboard? 11:22 < bridge> or you mean a screenshot without the button? 11:22 < bridge> yeah 11:22 < bridge> xD sure 11:34 < bridge> More stuff in private repos, workspaces, co pilot, organization stuff 11:39 < bridge> I didn't notice any of these, the pro badge just looks cool on profile 11:42 < bridge> @essigautomat This would be "Block user" right? 11:42 < bridge> https://cdn.discordapp.com/attachments/293493549758939136/1444277363373379624/image.png?ex=692c1f9c&is=692ace1c&hm=83a0b1f5e8586f5a4862ef2662aaf5d16d2006ba08fdec6cecd75652468d8bf6& 11:42 < bridge> And the chat bubble is whisper I assume 11:42 < bridge> yes 11:42 < bridge> Alright 11:42 < bridge> no 11:43 < bridge> the chat bubble is muting the player 11:43 < bridge> Huh 11:43 < bridge> How would the 'Block user' work? 11:43 < bridge> How would the 'Block user' work like? 11:43 < bridge> If it's not just muting the player 11:43 < bridge> uhm :justatest: 11:43 < bridge> :justatest: 11:43 < bridge> I mean 11:44 < bridge> I personally think it should be like I listed 11:44 < bridge> Add friend 11:44 < bridge> Mute player 11:44 < bridge> Send whisper 11:44 < bridge> sorry I mean muting emoticons 11:44 < bridge> like the same stuff that currently the player tab is doing 11:44 < bridge> befriend, block, emote-mute 11:45 < bridge> Now I forever see a chatbubble :justatest: 11:46 < bridge> @blazulite you can check this out in the current nightly version or in steam beta 11:46 < bridge> Ohh, okay 11:51 < bridge> This was the problem.. 11:51 < bridge> Emotes are kind of chat bubbles 11:51 < bridge> can't we put a real emoticon there? 11:51 < bridge> WHY IS THIS ICON ON THE PRO PLAN???? 😭 11:51 < bridge> https://cdn.discordapp.com/attachments/293493549758939136/1444279677131821128/image.png?ex=692c21c4&is=692ad044&hm=1cb8615f9026579b923390052bc54a9b85b37d5cee57d2963dbe077efb86b1e8& 11:51 < bridge> like the actual asset? 11:52 < bridge> Idk 11:53 < bridge> I am sure at some point we need custom icons 11:53 < bridge> yes. 11:53 < bridge> like how I did on -rs (sorry I think I mention ddnet-rs way too much) 11:53 < bridge> https://cdn.discordapp.com/attachments/293493549758939136/1444280174362234910/image.png?ex=692c223a&is=692ad0ba&hm=c61c41008c1cd0eb5e9b99ed0f300ef9cca509fdf736ce1882d8df0a64afd843& 11:55 < bridge> Ofc our own teeish emotes would be better 11:55 < bridge> the problem is the client uses Font Awesome 11:55 < bridge> wait wtf 11:55 < bridge> I just realized 11:56 < bridge> But I'm no graphic designer so I used what I have 11:56 < bridge> why are there two stretched icons 11:56 < bridge> the heart is stretched 11:56 < bridge> the chat bubble too 11:56 < bridge> Is this the team color? 11:56 < bridge> https://cdn.discordapp.com/attachments/293493549758939136/1444280842448015573/image.png?ex=692c22da&is=692ad15a&hm=7a3e19ec1532f4412e80668c624dfca5a91e8ed260c6faa8076fb32d2c492253& 11:56 < bridge> this button does not exist, you are looking at a mock from me, the bottom row is fictional 11:56 < bridge> 😭whar 11:57 < bridge> yes this is supposed to be your favorite team color 11:57 < bridge> ohh okay 11:57 < bridge> this is how it **currently** looks like 11:57 < bridge> https://cdn.discordapp.com/attachments/293493549758939136/1444281130965667870/screenshot_2025-11-29_11-57-18.png?ex=692c231f&is=692ad19f&hm=abf8f810c593910c9bec0b29cb6fa5c01ffc6b715e4265e4fe8a0f0089b55bf7& 11:58 < bridge> it's very barebones and I'd like more features in it 11:58 < bridge> I told kebs to do the minimal product first, so we could iterate on it later 11:58 < bridge> https://cdn.discordapp.com/attachments/293493549758939136/1444281336339894332/519431669-37d19377-c181-4c49-a9fb-f380c7e3feff.png?ex=692c2350&is=692ad1d0&hm=3ce22d3ec7df4e2f22519b814b772a5aeeed1050100976efdc04a570b0967d72& 11:58 < bridge> now we have the minimal one, now we can iterate 11:59 < bridge> k this is what I got so far 11:59 < bridge> https://cdn.discordapp.com/attachments/293493549758939136/1444281651017547828/image.png?ex=692c239b&is=692ad21b&hm=e333ba871e82f65f18aa6723327320439343574b8d9e21d73de70d2fdfa39dcc& 11:59 < bridge> I would like to be more umm 11:59 < bridge> why do you corners look so scuffed 12:00 < bridge> well, go for a different approach 12:00 < bridge> in terms of design by itself 12:00 < bridge> but I'm trying to adpat to the ddnet menu design 12:00 < bridge> the last button still is an emote-mute button, not a whisper one 12:00 < bridge> but I'm trying to adapt to the ddnet menu design 12:00 < bridge> well 12:00 < bridge> I mean 12:00 < bridge> Mute player 12:00 < bridge> 12:00 < bridge> Mute player's emotes 12:00 < bridge> https://cdn.discordapp.com/attachments/293493549758939136/1444281963811967059/image.png?ex=692c23e5&is=692ad265&hm=4487847e36b1845cddabde5571801357a3045e05f66b3a29c343ddc2b6d8db80& 12:00 < bridge> yes we could add that 12:00 < bridge> this is just my proposal 12:03 < bridge> Why your heart looks crooked 12:03 < bridge> that's just the black abyss inside of it trying to escape 12:05 < bridge> and an invite button where you could choose a team or one is selected for you? Like not by ID but by color 12:06 < bridge> hm 12:06 < bridge> not sure if that should be on the scoreboard 12:06 < bridge> most likely not 12:06 < bridge> it could be on the players menu 12:07 < bridge> I already told you we are probably removing/reworking it 12:07 < bridge> a little "Manage team button that lets you change its color and maybe name? 12:07 < bridge> a little "Manage team" button that lets you change its color and maybe name? 12:07 < bridge> but then we'd stack popups 12:07 < bridge> uh no not really 12:07 < bridge> I will make a concept for it after this 12:07 < bridge> πŸ‘ 12:10 < bridge> idk if i like selecting color here 12:10 < bridge> but invite, etc yes 12:11 < bridge> I agree, it's a completely unnecesary feature tbh 12:11 < bridge> Teams are supposed to be functional, not fancy 12:18 < bridge> I don't think I should add anything else so yeah 12:18 < bridge> 12:18 < bridge> the Invite to wouldn't appear if you're on T0 (obviously) 12:18 < bridge> https://cdn.discordapp.com/attachments/293493549758939136/1444286324793147423/image.png?ex=692c27f5&is=692ad675&hm=ed607fc22ba4335a12c8305d85f9353b60b8005fe882e1dfb37508f92222f04e& 12:18 < bridge> o wait 12:18 < bridge> ima make a little concept for something rq 12:20 < bridge> looks a bit big imo 12:20 < bridge> now yeah 12:20 < bridge> https://cdn.discordapp.com/attachments/293493549758939136/1444286792311246999/image.png?ex=692c2864&is=692ad6e4&hm=2d68d88026f960ff594b309fae7b74e030aae4ed3cd5fc00e16f22539baab0e5& 12:20 < bridge> might take most of the screen when we add more buttons 12:20 < bridge> this would be if the player invited 12:20 < bridge> Huh 12:20 < bridge> this would only be a "pop-up" after all 12:20 < bridge> I think that's what it's called like 12:21 < bridge> and if the team's not locked then it would appear with the rest of rows 12:21 < bridge> like another button 12:21 < bridge> is there any issue I should post all this on? 12:21 < bridge> is there any issue / pull request I should post all this on? 12:22 < bridge> theres no one 12:23 < bridge> ohok 12:24 < bridge> you can create 12:24 < bridge> so we discuss there what to add to popup 12:26 < bridge> i think design is nice 12:26 < bridge> but do buttons need 2 icons? 12:26 < bridge> and idk about flag or clan there 12:26 < bridge> and its kind of big 12:31 < bridge> wtf fully disagree, I'd fully hide the team Id from the players 12:32 < bridge> like what does a team id mean? 12:32 < bridge> Nothing, it maps to a color 12:32 < bridge> what does color mean if there are so many similar colors 12:32 < bridge> just invite to team, no color no id 12:34 < bridge> the color is at least shown in the scoreboard - thinking of that, we could reduce team colors to 2, your team, other teams 12:39 < bridge> would be too hard to differentiate between diff teams 12:48 < ws-client> **** watf is that shit now 12:48 < ws-client> **** https://zillyhuhn.com/cs/.9d91607f-8504-4331-8695-e68df7ca4e5e.png 12:50 < ws-client> **** deleting build/ dir worked who would have guessed xd 12:52 < bridge> hi 12:52 < bridge> any mod will like to help me 12:55 < bridge> https://discord.com/channels/252358080522747904/1124657351442579486 12:55 < bridge> brother i want help with ping 12:55 < bridge> i did create it 12:56 < bridge> and they canncled 12:56 < bridge> We can't help you with network issues 12:57 < bridge> no i did not even change a thing and in other ger server its normal 13:04 < bridge> use certbot :kek: /s 13:07 < bridge> I like the idea of the +person button πŸ˜„ but I'll remove the id 13:20 < bridge> time to break team colors 13:21 < bridge> when will the channel icon be changed?? 13:21 < bridge> what ID? 13:21 < bridge> the '15' 13:22 < bridge> it'll make more sense when I finished my current PR 13:23 < bridge> Oh 13:23 < bridge> I don't know if you are aware, but we have a big issue around colors in the town hall 13:24 < bridge> I don't know if you are aware, but we have a big issue around colors in the town hall https://discord.com/channels/252358080522747904/1405628711385956443 13:27 < bridge> why can I join in team 65 oO 13:29 < bridge> @grok is that true? 13:29 < bridge> this isn't, you join in team 2 13:29 < bridge> i was wondering why the command was working 13:30 < bridge> If you enter invalid teams you are put in lowest empty team 13:30 < bridge> I think it modulo-put me into 2 13:30 < bridge> 1 was not occupied 13:30 < bridge> well maybe it was by myself 13:31 < bridge> well maybe it was by myself, yes I can't put myself into my own team 13:36 < bridge> look I am always in my favorite team color, no matter what team I choose D: 13:36 < bridge> https://cdn.discordapp.com/attachments/293493549758939136/1444305915011661954/screenshot_2025-11-29_13-35-25.png?ex=692c3a34&is=692ae8b4&hm=f26b3858bc8f9bf7ef00dc20ba3b23bd32bad9094e2531ac5403243ecde44cd2& 13:36 < bridge> https://cdn.discordapp.com/attachments/293493549758939136/1444305915581829130/screenshot_2025-11-29_13-35-34.png?ex=692c3a34&is=692ae8b4&hm=748d7ce734ee8078bbfdb34b04e8d5b4c27f9b793c034066b2b0e6469691176a& 13:36 < bridge> https://cdn.discordapp.com/attachments/293493549758939136/1444305916148056075/screenshot_2025-11-29_13-35-40.png?ex=692c3a34&is=692ae8b4&hm=bc6a1789e09d00def0fa2708a762f9b04d4d28b1af841ec54ed7f2f0c2c66ba3& 13:50 < bridge> maybe there was a tablespoon of spite involved in this one 13:56 < bridge> @essigautomat being able to do team stuff only from chat is pog 13:58 < bridge> yes, the well known mechanics in games of doing stuff by chat 13:58 < bridge> uhh 13:58 < bridge> yeah 14:55 < bridge> Chiller are you here? 14:55 < bridge> i was afk yesterday 15:35 < bridge> chillller 15:46 < bridge> @kebscs 15:46 < bridge> > Won't this make 2 teams have exactly the same color? 15:46 < bridge> 15:46 < bridge> ``` 15:46 < bridge> ColorTeam = DDTeam + (g_Config.m_ClFavoriteTeam - LocalTeam) + TEAM_SUPER; 15:46 < bridge> ColorTeam = ((ColorTeam - 1) % TEAM_SUPER) + 1; 15:46 < bridge> ``` 15:47 < bridge> 15:47 < bridge> Your local team is fixed, the only variable that can change here is DDTeam, which can have value 1 - 64 15:47 < bridge> Yes so you take color of team 1 and someone else is team 1 15:47 < bridge> yes, but the color of that someone is not the color of team 1 15:48 < bridge> like this is done for all teams 15:48 < bridge> chilller 15:48 < bridge> @chillerdragon 15:48 < bridge> dummy @chillerdragon.9502 15:48 < bridge> come fight 15:52 < bridge> Ah so it recalculates color for every other team? 15:52 < bridge> https://github.com/ddnet/ddnet/pull/11349#discussion_r2573048539 15:53 < bridge> yes 15:53 < bridge> it just shifts them, or rotates them, like modulo operator 15:53 < bridge> πŸ‘ 15:54 < bridge> and since Team 0 is special, I allow to set your favorite to 0 to just turn this feature off 15:55 < bridge> ChillerDragon:::: 16:02 < bridge> @teero777: home in 5 min 16:04 < bridge> ok 16:15 < ws-client> **** her 16:15 < ws-client> **** @teero777 88.198.96.203:8303 16:15 < bridge> cmoing 16:18 < ws-client> **** u ded? 16:53 < bridge> chiller 16:53 < bridge> change maps 16:53 < bridge> im lain 16:53 < bridge> the real one 16:56 < ws-client> **** hm? 16:56 < ws-client> **** i thought i saw it all looked good 17:01 < bridge> <15> someone should make map gen but for drag parts 17:01 < bridge> <15> like edgehooks and shi 17:01 < ws-client> **** oke gonna build tool called ChillerDraggen 17:02 < bridge> <15> i hope ur serious 17:02 < ws-client> **** ofc user called 15 i am serious 19:16 < ChillerDragon> hmm my ddnet-insta servers seem to keep using more and more ram the longer they run. valgrind says there is no memory leak any idea on how to debug what is using all the ram? 19:16 < bridge> sigterm should still generate a valgrind report 19:16 < bridge> where you can then sort by memory for "leaked" stuff 19:16 < bridge> its probably circular reference 19:17 < bridge> or dangling shared ptr who doesnt own the resource 19:17 < ChillerDragon> sigterm if i run it with valgrind? 19:17 < bridge> yeah 19:17 < bridge> idk if ctrl-c just works 19:17 < ChillerDragon> yea i did that 19:17 < ChillerDragon> oh also 19:17 < bridge> it should say everything leaked as no cleanup happened 19:17 < ChillerDragon> there is no memleak when running with valgrind xd 19:18 < ChillerDragon> valgrind says nothing leaked 19:18 < ChillerDragon> and also the memory usage doesnt increase if i remember correctly 19:18 < ChillerDragon> ok 19:18 < ChillerDragon> oh i see 19:18 < bridge> `keep using more and more ram the longer they ru` 19:18 < bridge> ` memory usage doesnt increase if i remember correctly` 19:18 < ChillerDragon> sigterm not sigint 19:18 < bridge> i have had valgrind dump stuff on me 19:18 < bridge> you can also just exit(0) 19:19 < ChillerDragon> well i used to only have that on GER3 then i started servers with valgrind then it stopped 19:19 < ChillerDragon> now i have it on GER1 too 19:19 < bridge> or _exit 19:19 < ChillerDragon> yea good idea 19:19 < bridge> idk how valgrind hooks to the end of the program actually 19:19 < ChillerDragon> if i can get it to even collect memory again while running with valgrind 19:19 < ChillerDragon> but i will try thanks thats a good idea 19:19 < bridge> im sure theres something that will let u inspect memory when its running 19:20 < bridge> yeah thats called a debugger you nonse 19:20 < ChillerDragon> how do i debug it xd 19:20 < bridge> idk if gdb can sort by symbol size 19:20 < ChillerDragon> i have gdb attached 19:20 < bridge> gdb pid 19:20 < ChillerDragon> and then? 19:20 < bridge> no clue 19:20 < ChillerDragon> xd 19:21 < ChillerDragon> i run servers with gdb at all times 19:21 < ChillerDragon> when i run them with valgrind i stop gdb 19:21 < ChillerDragon> maybe gdb leaks memory xd 19:21 < bridge> i thought gdb was stateless 19:21 < ChillerDragon> ok lemme try sigterm with gdb 19:21 < bridge> that wont do anything 19:22 < bridge> yeah gdb isnt meant to do this sorta thing, i havent a clue 19:22 < ChillerDragon> can i attach two gdbs? xd 19:22 < bridge> no 19:23 < bridge> cuz only one ptrace can be on a program at once 19:24 < bridge> oh wait it could just be some random vector filling up somewhere 19:24 < bridge> doesnt have to be a leak 19:24 < ChillerDragon> ye 19:25 < bridge> trace malloc? 19:25 < bridge> trace malloc and free? 19:25 < ChillerDragon> how? 19:25 < bridge> gee idk 19:25 < ChillerDragon> ltrace? 19:25 < bridge> i dont like these questions 19:25 < ChillerDragon> that sounds spammy 19:25 < ChillerDragon> there is lots of malloc and free 19:25 < bridge> well yeah you would have to analyse something like this with a jank python script 19:25 < bridge> to look for things not freed 19:25 < ChillerDragon> maybe this https://github.com/WuBingzheng/libleak 19:25 < bridge> well its not a leak 19:26 < ChillerDragon> well maybe 19:26 < ChillerDragon> possibly 19:26 < bridge> `The threshold is 60 second by default, but you should set it according to your scenarios` 19:26 < bridge> o 19:26 < ChillerDragon> probably? 19:26 < bridge> thats nifty 19:26 < bridge> pretty much exactly wht u want xd 19:26 < bridge> Try `--tool=massif` with valgrind 19:26 < ChillerDragon> MASSIVE 19:26 < ChillerDragon> oke 19:26 < bridge> It's a heap profiler 19:29 < ChillerDragon> oh right i think valgrind cant do asan 19:29 < bridge> Yeah, I can imagine the valgrind vm having a lot of issues with the 20TB ASan tries to lazily allocate 19:30 < ChillerDragon> 20tb wtf 19:31 < bridge> needs to cache oob 19:31 < bridge> `ASan consumes 20 terabytes of virtual memory (plus a bit).` 19:31 < bridge> no reason given x-x 19:32 < bridge> asan puts lots of bytes between stuff but they are fake 19:33 < bridge> 19:33 < bridge> It's the shadow memory 19:34 < bridge> 1/8th of the actual entire address space, because 1 byte of shadow memory corresponds to 8 bytes of real memory 19:34 < bridge> o 19:34 < bridge> ~~asan puts lots of bytes between stuff but they are fake~~ 19:35 < bridge> reading hard 19:35 < bridge> It does put redzones, but at the end of the day it needs to track the entire address space 19:36 < ChillerDragon> there is only one tool at a time right? 19:36 < ChillerDragon> so i swap out memcheck with massif 19:38 < bridge> Yes 19:38 < ChillerDragon> thanks 19:56 < bridge> is infinity a valid value for intra tick? 😬 19:57 < bridge> https://github.com/ddnet/ddnet/blob/d83316fa72928eaa53e3fb60a4c365b7e04aad53/src/engine/client.h#L151 dis one 19:58 < bridge> https://tenor.com/view/gohine-hohino-no-hohineee-gohineee-gif-17792172174678204487 19:59 < bridge> Neither for speedtiles 😬 20:01 < bridge> I guess envelopes are then _really fast_ 20:02 < bridge> is it worth opening an issue? 20:02 < bridge> https://cdn.discordapp.com/attachments/293493549758939136/1444403146708357371/SAN.87321?ex=692c94c1&is=692b4341&hm=9f996c42379687296f256dead3363338effff280f8f372abd51c0b684c94cd8f& 20:02 < bridge> ``` 20:02 < bridge> /home/alex/personal/milkeey_ddnet/src/base/math.h:29:23: runtime error: inf is outside the range of representable values of type 'int' 20:02 < bridge> #0 0x55ee806237b1 in vector2_base mix, float>(vector2_base, vector2_base, float) /home/alex/personal/milkeey_ddnet/src/base/math.h:29:23 20:02 < bridge> #1 0x55ee80613591 in CHud::OnNewSnapshot() /home/alex/personal/milkeey_ddnet/src/game/client/components/hud.cpp:1634:14 20:02 < bridge> #2 0x55ee80d09988 in CGameClient::OnNewSnapshot() /home/alex/personal/milkeey_ddnet/src/game/client/gameclient.cpp:2291:15 20:02 < bridge> #3 0x55ee8005ac75 in CClient::OnDemoPlayerSnapshot(void*, int) /home/alex/personal/milkeey_ddnet/src/engine/client/client.cpp:2663:16 20:02 < bridge> ``` 20:02 < bridge> ``` 20:02 < bridge> /home/alex/personal/milkeey_ddnet/src/base/math.h:29:23: runtime error: inf is outside the range of representable values of type 'int' 20:02 < bridge> #0 0x55ee806237b1 in vector2_base mix, float>(vector2_base, vector2_base, float) /home/alex/personal/milkeey_ddnet/src/base/math.h:29:23 20:02 < bridge> #1 0x55ee80613591 in CHud::OnNewSnapshot() /home/alex/personal/milkeey_ddnet/src/game/client/components/hud.cpp:1634:14 20:02 < bridge> #2 0x55ee80d09988 in CGameClient::OnNewSnapshot() /home/alex/personal/milkeey_ddnet/src/game/client/gameclient.cpp:2291:15 20:03 < bridge> #3 0x55ee8005ac75 in CClient::OnDemoPlayerSnapshot(void*, int) /home/alex/personal/milkeey_ddnet/src/engine/client/client.cpp:2663:16 20:03 < bridge> ... 20:03 < bridge> ``` 20:04 < bridge> yes, idk when this should be ever infinite 20:04 < bridge> like there seems to be a bigger problem 20:05 < bridge> i have a demo with which you can reproduce the error 20:05 < bridge> is it a fuzzed demo or a regular one? 20:05 < bridge> just a regular one 20:05 < bridge> then open an issue 20:05 < bridge> pack it into a zip and attach πŸ™‚ please 20:05 < bridge> yes mr. maintainer 20:06 < bridge> :heartw: 20:08 < bridge> Yes 20:09 < bridge> It has no defined range other than >0 20:09 < bridge> But this is still a bug 20:34 < bridge> Am I not up to date with features or is it a bug that it's not possible to open the menu(by pressing ecs) after a game has ended on fng :\ 20:34 < bridge> Am I not up to date with features or is it a bug that it's not possible to open the menu(by pressing esc) after a game has ended on fng :\ 20:43 < bridge> Yes, it's a bug (#11332) that needs to be fixed for next release 20:43 < bridge> https://github.com/ddnet/ddnet/issues/11332 21:02 < bridge> Isn't it just removing the if 21:03 < bridge> Since there's checks for ui start, finish now 21:04 < bridge> * until 21:04 < bridge> can you make a quick patch for me? ❀️ 21:04 < bridge> I'll get home in a bit 21:05 < bridge> lovely 21:06 < bridge> Scoreboard takes all inputs when the mouse is unlocked. I guess it should also consume the escape key to lock the mouse again. 21:06 < bridge> I think that's good 21:07 < bridge> yes, you can't unlock the mouse in the end screen (without binding it to F1-F24) 21:07 < bridge> yes, you can't relock the mouse in the end screen (without binding it to F1-F24) 21:08 < bridge> what about putting it on the same button as unlocking it? 21:09 < bridge> I'm not sure whether the scoreboard even needs to consume all inputs when the mouse is unlocked. Otherwise this should just be handled by the binds. Except escape which should always be hardcoded to get out of menus. 21:13 < bridge> if we put mod tools there it probably should consume all 21:13 < bridge> to type ban reason etc 21:14 < bridge> click ban button>text field shows 21:15 < bridge> in theory we don't have mod tools right now, and this is besides the point of a minimal product. So the full-keyboard should only be feteched with the mod-tool PR, which also needs to get discussed and accepted 21:16 < bridge> Yeah, but you could still only consume inputs while a text input is active though. You might want to handle other hotkeys too eventually, but I'm not sure whether `OnInput` should consume all inputs 21:18 < bridge> maybe 21:18 < bridge> but wouldnt it be weird if you can move in game, but you cant shoot or hook 21:28 < bridge> Fix esc when scoreboard is open* 21:29 < bridge> although if you unlock muse, esc menu wont open 21:29 < bridge> should that be fixed too? 21:30 < bridge> Yeah, I think the first escape should be consumed and unlock the mouse 21:30 < bridge> Yeah, I think the first escape should be consumed and lock the mouse 21:36 < bridge> done 21:42 < bridge> that title :kek: 21:42 < bridge> didnt notice i checked out from the other branch.. 21:43 < bridge> this doesn't close my issue tho 21:43 < bridge> this doesn't close my issue tho (it also doesn't claim it) 21:43 < bridge> added 21:54 < bridge> so it fixes or no 21:55 < bridge> give me time to test everything, it fixes everything, even the forced end screen 21:55 < bridge> I guess robyt should take a look as well 21:55 < bridge> Works from my testing, you can merge if it looks good to you 21:56 < bridge> already in the merge queue πŸ˜„ 21:56 < bridge> already ready to be in the merge queue πŸ˜„