08:04 <+bridge> [ddnet] can u pls make an account system 08:04 <+bridge> [ddnet] i dont like that people can just steal my name and finish maps for me that i wanted to finish myself 08:04 <+bridge> [ddnet] its so dumb 08:05 <+bridge> [ddnet] i really like ddnet and all 08:05 <+bridge> [ddnet] but man 08:05 <+bridge> [ddnet] make a god damn account system xd 08:05 <+bridge> [ddnet] -1 08:06 <+bridge> [ddnet] @WAV not as easy as you might think 08:06 <+bridge> [ddnet] uh oh 08:06 <+bridge> [ddnet] got discussed many times already 08:06 <+bridge> [ddnet] time for debate #53 08:06 <+bridge> [ddnet] https://github.com/ddnet/ddnet/pull/53 08:07 <+bridge> [ddnet] make a ddnet login system 08:07 <+bridge> [ddnet] everyone has their own userid 08:07 <+bridge> [ddnet] solved 08:07 <+bridge> [ddnet] nice 08:07 <+bridge> [ddnet] sounds easy, why dont u go make a pr 08:08 <+bridge> [ddnet] @WAV what if I just register my acc before Aoe does, then steal his name? 08:08 <+bridge> [ddnet] as an example 08:08 <+bridge> [ddnet] no 08:08 <+bridge> [ddnet] because i will do it before u 08:08 <+bridge> [ddnet] ip, mac adress 08:08 <+bridge> [ddnet] can change 08:08 <+bridge> [ddnet] and people can proof themselves 08:09 <+bridge> [ddnet] i dont think ur mac adress changes weekly 08:09 <+bridge> [ddnet] so many players, we cant check it for everyone 08:10 <+bridge> [ddnet] its just stupid that people can finish maps for me 08:10 <+bridge> [ddnet] idk what u people think about it 08:11 <+bridge> [ddnet] I think nobody wants to finish maps for you, you should have just chosen a more uncommon name 08:11 <+bridge> [ddnet] DDNet warns you about that in the beginning 08:12 <+bridge> [ddnet] i could choose the most uncommon name in the world, but that doesnt change the fact that people still can pretend to be me xd 08:12 <+bridge> [ddnet] i didnt saw that warning tbh 08:12 <+bridge> [ddnet] finishing for others is good in 90% of cases, faking isnt tho 08:12 <+bridge> [ddnet] i think accounts is good but its not so simple to implement, it would need a lot of planning. also this discussion happens like every week here 08:13 <+bridge> [ddnet] well these discussions dont happen without reason 08:14 <+bridge> [ddnet] It doesnt help if we discuss the same things withe different people every time, because people dont understand that its a big act 08:14 <+bridge> [ddnet] #43411 08:14 <+bridge> [ddnet] #3411 * 08:14 <+bridge> [ddnet] https://github.com/ddnet/ddnet/issues/3411 08:15 <+bridge> [ddnet] If there is no clear goal, no one will code this. If we don't decide on the scope before someone codes it it will stay as a pr being discussed forever 08:15 <+bridge> [ddnet] you gotta plan something 08:15 <+bridge> [ddnet] ik its harder than said 08:16 <+bridge> [ddnet] but as you can see alot of people bring up discussions about it weekly 08:16 <+bridge> [ddnet] I can't plan anything myself. This is a huge feature and we don't get to change much about it after we roll it out 08:16 <+bridge> [ddnet] It has to be perfect on the first try 08:16 <+bridge> [ddnet] So people need to contribute to the discussion on github, where we intend to come up with a plan 08:16 <+bridge> [ddnet] At least the core 08:17 <+bridge> [ddnet] At this point I mostly need devs talking but even that is hard to get 08:17 <+bridge> [ddnet] :D 08:17 <+bridge> [ddnet] Learath are you here for a second? 08:18 <+bridge> [ddnet] i'd suggest to take inspiration from other game devs 08:18 <+bridge> [ddnet] how they solved problems like these 08:18 <+bridge> [ddnet] @WAV thats not too easy, because we still have the problem with old players and a lot of ranks 08:18 <+bridge> [ddnet] We cant just randomly give the old points to anybody who claims to be that guys 08:19 <+bridge> [ddnet] There are players with the same names, who just both play and get points 08:20 <+bridge> [ddnet] its just a random idea and idk how well it works out, but how about taking ip & mac adress "captures" from players like daily or weekly and then with that data finding out which ip adress or mac adress uses the account most frequently 08:20 <+bridge> [ddnet] @WAV feel free to join the discussion on github and present us your plan, maybe you can bring it into a new direction :) 08:21 <+bridge> [ddnet] im not a github person xd 08:48 <+ChillerDragon> time to become one 08:48 <+ChillerDragon> its fun easy to use place 08:48 <+ChillerDragon> its run by evilcorp tho 09:34 <+bridge> [ddnet] ChillerDragon: you are really cool you know that? 09:54 <+ChillerDragon> i feel offended 10:07 <+bridge> [ddnet] ChillerDragon: troll 10:11 <+bridge> [ddnet] ChillerDragon: cuz you chill 10:11 <+bridge> [ddnet] i'm sorry 11:49 <+bridge> [ddnet] https://github.com/ecriminal/Exploit-Discord-Cache-System-PoC did you see this yet? πŸ˜› 11:49 <+bridge> [ddnet] Not very interesting, abuses the fact that discord doesn't sanitize pngs 11:50 <+bridge> [ddnet] ehm what? 11:50 <+bridge> [ddnet] is that just saying that discord doesn't re-encode PNGs? 11:50 <+bridge> [ddnet] doesn't seem like a vulnerability to me 11:51 <+bridge> [ddnet] I guess it would be defense in depth to re-encode them 11:51 <+bridge> [ddnet] injects a payload to the end of a png, which you add to a server as emoji, then you send said emoji and the cache downloads it, triggering the AV 11:51 <+bridge> [ddnet] ah, it's AV being stupid 11:51 <+bridge> [ddnet] hm 11:51 <+bridge> [ddnet] it's not an actual RCE but did make me worried for about a second why there is a threat detected in my discord cache πŸ˜› 11:52 <+bridge> [ddnet] I would truncate any PNG I host at IEND tbf 11:52 <+bridge> [ddnet] you can surely embed stuff that AV detects in the image part of a PNG 11:53 <+bridge> [ddnet] doesn't sound like a fix to me 11:53 <+bridge> [ddnet] have you tried disabling your AV? it lowers performance and increases your attack surface πŸ˜‰ 11:53 <+bridge> [ddnet] πŸ˜„ 11:54 <+bridge> [ddnet] I guess re-encoding is the only proper solution 11:54 <+bridge> [ddnet] I got a fairly trivial payload in mine, dunno which discord server I got it from 11:54 <+bridge> [ddnet] what's the 'payload'? 11:54 <+bridge> [ddnet] a zip file? 11:55 <+bridge> [ddnet] with a malicious executable? 11:55 <+bridge> [ddnet] http://codepad.org/IWiDTA7i 11:55 <+bridge> [ddnet] VBScript 11:55 <+bridge> [ddnet] It's kinda hopeless though, I don't see how he could ever get someone to run this 11:56 <+bridge> [ddnet] I guess you could send a python file along with it, saying "xDe check out this free discord nitro hack abusing the cache " 11:57 <+bridge> [ddnet] just execute my payload directly already 11:57 <+bridge> [ddnet] and someone who thinks they know a lot about computers but don't coooullld be fooled 11:57 <+bridge> [ddnet] yeah, overall meh attack 11:58 <+bridge> [ddnet] the only impact I can see is the AV detecting this and the user getting scared 11:59 <+bridge> [ddnet] yeah, I can't see node js or discord being stupid enough to execute their cache 12:06 <+bridge> [ddnet] I wonder why web browser caches never trigger such false positives 12:07 <+bridge> [ddnet] they probably do something like encrypt it or encode it in a way that AV can't access it? 12:08 <+bridge> [ddnet] I can see the AV then trying to crack the encryption 12:08 <+bridge> [ddnet] AV means anti virus? 12:08 <+bridge> [ddnet] yes 12:08 <+bridge> [ddnet] That stuff windows ppl use 12:09 <+bridge> [ddnet] :think_bot: 12:09 <+bridge> [ddnet] Another discussion about accounts :monkalaugh: 12:11 <+bridge> [ddnet] https://wiki.archlinux.org/index.php/MAC_address_spoofing 12:11 <+bridge> [ddnet] not really relevant, we could only see the MAC address from the same computer and then also see the real one 12:11 <+bridge> [ddnet] @Learath2 do you have any idea about this one? or @heinrich5991 maybe 12:13 <+bridge> [ddnet] debug print it on the way and find out what kind of corruption occurs and where 12:13 <+bridge> [ddnet] when returning its all fine, but when using the m_pMessage in the main function it returns invalid utf8 12:14 <+bridge> [ddnet] the rest of the packet works (target, mode..) 12:14 <+bridge> [ddnet] i dont know what i should debug else, otherwise i wouldnt ask 12:14 <+bridge> [ddnet] i checked it right before the return and directly inside of the CL_SAY part of OnMessage 12:14 <+bridge> [ddnet] what kind of corruption occurs? where in the string? 12:14 <+bridge> [ddnet] it couldnt have been modified 12:14 <+bridge> [ddnet] ? 12:14 <+bridge> [ddnet] you say it's invalid 12:15 <+bridge> [ddnet] what do you mean by invalid? what kind of corruption? 12:15 <+bridge> [ddnet] yeah, i return it as a string and it returns (invalid utf8) 12:15 <+bridge> [ddnet] and when sent to the client it just doesnt display anything 12:15 <+bridge> [ddnet] print* 12:15 <+bridge> [ddnet] not return 12:18 <+bridge> [ddnet] i dont get it, without the change it all worked, also the m_pMessage did not fail 12:18 <+bridge> [ddnet] i really dont get it xD 12:18 <+bridge> [ddnet] if you say '(invalid utf8)', then that string needs to come from somewhere 12:18 <+bridge> [ddnet] try grepping the source for it 12:19 <+bridge> [ddnet] (invalid utf8) comes from the formatting 12:19 <+bridge> [ddnet] not from the tw source 12:20 <+bridge> [ddnet] so from src/base you mean? 12:20 <+bridge> [ddnet] i will check it 12:21 <+bridge> [ddnet] https://github.com/fokkonaut/F-DDrace/blob/F-DDrace/src/base/system.c#L129 12:22 <+bridge> [ddnet] only appearance 12:22 <+bridge> [ddnet] I guess that's where it comes from then 12:23 <+bridge> [ddnet] yeah, doesnt help me any further i think, how can it break on the way from returning to the main function 12:26 <+bridge> [ddnet] helping you is annoying for me 12:27 <+bridge> [ddnet] πŸ‘€ 12:27 <+bridge> [ddnet] you seem to assume that you know everything already, when the fact that something does not work as you think it should, suggests that you need to rethink an assumption 12:27 <+bridge> [ddnet] debugging means "I don't understand why the code is doing what it does, so I can't be sure about my assumptions" 12:27 <+bridge> [ddnet] "I try to find the point where my understanding is wrong" 12:29 <+bridge> [ddnet] You know where the print that causes (invalid utf8) happens, I'd suggest breaking there 12:29 <+bridge> [ddnet] looking at what exactly is broken about the string if anything obvious 12:30 <+bridge> [ddnet] Then if it's not obvious, I'd disable threaded logging and step into the actual logger code where the string occurs, to see why it's thinking that 12:30 <+bridge> [ddnet] (invalid utf8) seems to only exist on windows, no threaded logging there 12:30 <+bridge> [ddnet] even easier 12:31 <+bridge> [ddnet] @heinrich5991 we should try to reenable aio on windows 12:31 <+bridge> [ddnet] yes 12:31 <+bridge> [ddnet] maybe we should add a config option to disable threaded loggin 12:31 <+bridge> [ddnet] g 12:31 <+bridge> [ddnet] We don't have one? 12:31 <+bridge> [ddnet] look at me suggesting a config option 12:31 <+bridge> [ddnet] no, can be annoying for debugging 12:32 <+bridge> [ddnet] ah actually it's not really easy to add a config option for that πŸ˜› 12:32 <+bridge> [ddnet] system.c has no idea what a config is 12:32 <+bridge> [ddnet] engine can do that on setup 12:32 <+bridge> [ddnet] but I guess we get a bootstrapping problem 12:32 <+bridge> [ddnet] I guess we could have the client call sth like dbg_enable_treaded_log 12:32 <+bridge> [ddnet] yea 12:38 <+bridge> [ddnet] well @heinrich5991 i am sorry but my knowledge is far away from analyzing a character or a string like this to see what breaks 12:39 <+bridge> [ddnet] what i know is that it shouldnt break from just returning, and nothing more, thats why i have no idea about it 12:40 <+bridge> [ddnet] So your assumption that you are "just returning" it is wrong 12:41 <+bridge> [ddnet] maybe you are returning a misaligned pointer, maybe you are accidentally returning a pointer to a pointer, maybe the memory you are returning is now out of scope 12:41 <+bridge> [ddnet] oh, yeah, that might be it 12:42 <+bridge> [ddnet] thanks 12:42 <+bridge> [ddnet] You are doing the very last one... 12:42 <+bridge> [ddnet] yes 12:42 <+bridge> [ddnet] the whispermsg 12:43 <+bridge> [ddnet] It would be so obvious if you'd just put a breakpoint on where you return from preprocessmsg 12:43 <+bridge> [ddnet] why? 12:43 <+bridge> [ddnet] because then you could probably observe the string changing 12:43 <+bridge> [ddnet] as i said, i put a dbg msg right before the return 12:43 <+bridge> [ddnet] and it was all okay 12:43 <+bridge> [ddnet] print aWhisperMsg before the return would show you the correct string 12:44 <+bridge> [ddnet] print aWhisperMsg after would show you garbage 12:44 <+bridge> [ddnet] yea, thats what it does; invalid utf8 12:44 <+bridge> [ddnet] At that point I would print &aWhisperMsg 12:46 <+bridge> [ddnet] Anyway, you are just being lazy with your debugging imo. You made the correct observation but didn't look into it's consequences 12:46 <+bridge> [ddnet] trust me i did everything i can, i just didnt know more 12:46 <+bridge> [ddnet] A return indeed shouldn't be changing a string. So what does a return change? The only thing it changes is the stack frame 12:47 <+bridge> [ddnet] and i dont even know what that is 12:47 <+bridge> [ddnet] Well, now you know \o/ 12:47 <+bridge> [ddnet] thanks 13:29 <+bridge> [ddnet] How would you order this: 13:29 <+bridge> [ddnet] Linker - executable programm - Library - Objectcode - compiler - sourcecode 13:30 <+ChillerDragon> sourcecode - compiler - objectcode - linker - library - executable programm 13:31 <+ChillerDragon> not sure about lib and linker tho 13:31 <+bridge> [ddnet] yeah idk what a linker is 13:32 <+ChillerDragon> is it static or dynamic lib? 13:32 <+ChillerDragon> it might also be lib last if its dynamic lib i guess 13:32 <+ChillerDragon> the linker links your obj files and libarary together to a executable 13:32 <+ChillerDragon> the compiler turns the code into obj files 13:33 <+ChillerDragon> is this ur homework or something? Am i supporting you to cheat a exam? please dont get me in jail 13:34 <+bridge> [ddnet] Nah some homeschooling 13:34 <+bridge> [ddnet] https://cdn.discordapp.com/attachments/293493549758939136/802154148866293791/unknown.png 13:34 <+bridge> [ddnet] source code - compiler - object code 13:35 <+ChillerDragon> ye thats what i said heinrich 13:35 <+ChillerDragon> also nice ip grabber link @NeXus 13:35 <+bridge> [ddnet] then object code + libraries using the linker transforms to executable 13:35 <+bridge> [ddnet] I think 13:35 <+bridge> [ddnet] @ChillerDragon what where 13:35 <+ChillerDragon> yea is it linker or libs first 13:35 <+ChillerDragon> https://cdn.discordapp.com/attachments/293493549758939136/802154148866293791/unknown.png 13:35 <+ChillerDragon> this 13:35 <+bridge> [ddnet] that's a discord link 13:35 <+ChillerDragon> thats what i said 13:35 <+ChillerDragon> :D 13:36 <+bridge> [ddnet] I think they want to see that the linker *combines* libraries and object code to an executable 13:36 <+ChillerDragon> yes 13:36 <+ChillerDragon> get creative NeXus 13:36 <+ChillerDragon> you need more than - to seperate them :D 13:36 <+bridge> [ddnet] thanks 13:37 <+bridge> [ddnet] the image shows that this is possible ChillerDragon 13:43 <+bridge> [ddnet] little bug, you can type x_ skins in here (in game you're just default) 13:43 <+bridge> [ddnet] https://cdn.discordapp.com/attachments/293493549758939136/802156487245824020/unknown.png 13:47 <+bridge> [ddnet] not really a bug 13:47 <+bridge> [ddnet] client says to server i want to be x_spec, but server disallows it 13:48 <+bridge> [ddnet] some servers might allow that 13:56 <+bridge> [ddnet] it's the client that forbids that btw πŸ˜‰ 13:56 <+bridge> [ddnet] but it probs shows other tees faking x_spec as default 13:57 <+bridge> [ddnet] right? 13:57 <+bridge> [ddnet] yes, it's the client that does this replacement 13:58 <+bridge> [ddnet] but only if the server tells the client to do that 13:58 <+bridge> [ddnet] yes, we have a server flag that disables it 14:02 <+bridge> [ddnet] https://cdn.discordapp.com/attachments/293493549758939136/802161200133046272/unknown.png 14:49 <+ChillerDragon> any chance we can get a command to set view pos in ddnet? To bind camera positions in maps? Might as well ask upstream before i slap it in my fork 14:51 <+bridge> [ddnet] That seems a bit problematic, not everyone has the zoom level. What do you want to use it for? 14:52 <+ChillerDragon> write a bind that teleports me in a specific position in the map 14:52 <+ChillerDragon> also as spectator you can quickly toggel between hotspots of a map 14:53 <+ChillerDragon> i do not see how it relates to zoom 14:53 <+bridge> [ddnet] I assumed you want to change the view position during playing, not spectating 14:54 <+bridge> [ddnet] clientside^ 14:54 <+bridge> [ddnet] For freeview spec sounds fine to me, even though I'm not sure it's that useful 14:54 <+bridge> [ddnet] clientside in spec sounds okay for me 14:54 <+bridge> [ddnet] He wants it for a custom client xd 14:56 <+ChillerDragon> i dont want it in my custom client id prefer it in ddnet 14:56 <+ChillerDragon> yea i thought about spec 14:56 <+ChillerDragon> inagme it sounds like infinite dyn bind 14:57 <+ChillerDragon> oka lets see if i can code it xd 14:57 <+ChillerDragon> then ill pr against ddnet 14:59 <+bridge> [ddnet] a couple of years ago i think ddnet had the feature that when you watch a player in spec you rather follow his client and not only the tee. so when he watches something in spec your camera automaticaly follows his nd if he switches dummy so does your cam... is it just a false memory or why was it removed? 15:00 <+bridge> [ddnet] TIL spec char is a skin 15:11 <+bridge> [ddnet] Didn't even know this was a possibility 15:11 <+bridge> [ddnet] https://cdn.discordapp.com/attachments/293493549758939136/802178536273870858/20210122_151041.jpg 15:11 <+bridge> [ddnet] for me it was 10min 15:11 <+bridge> [ddnet] I was quicker googling 15:11 <+bridge> [ddnet] than to wait for it 15:11 <+bridge> [ddnet] There is a way to get past it? 15:11 <+bridge> [ddnet] I had ssh access 15:12 <+bridge> [ddnet] plus you can get past with a live medium 15:12 <+bridge> [ddnet] Funnier thing is I actually logged in, then I tried to sudo and made a typo 3 times 15:12 <+bridge> [ddnet] So now I have a logged in tty that I can't escalate to root 15:12 <+bridge> [ddnet] And another I can't log in on at all 15:13 <+bridge> [ddnet] do you know the root pw? su might work 15:13 <+bridge> [ddnet] There is no root pw 15:14 <+bridge> [ddnet] fair 15:14 <+bridge> [ddnet] Atleast iirc, that's how I usually set up my linux systems 15:14 <+bridge> [ddnet] Anyway only need to wait an hour to update my system 15:14 <+bridge> [ddnet] 66min might be enough to try the live medium 15:14 <+bridge> [ddnet] ah, you have a logged in session and can work as usual? 15:14 <+bridge> [ddnet] then all is fine 15:15 <+ChillerDragon> wait so if i fail sudo 3 times i get timeout on ddnet? 15:15 <+ChillerDragon> scary shit 15:15 <+bridge> [ddnet] why do you have access to ddnet servers? ^^ 15:15 <+ChillerDragon> oops 15:15 <+ChillerDragon> i mean 15:15 <+ChillerDragon> yikes 15:16 <+ChillerDragon> no u troll i mean if i am connected with my tw client to a server and then on a terminal type ``sudo test`` and fail 15:16 <+ChillerDragon> will it close my session and kill my client to server connection 15:16 <+bridge> [ddnet] no 15:27 <+bridge> [ddnet] is this a bug 15:27 <+bridge> [ddnet] https://cdn.discordapp.com/attachments/293493549758939136/802182569646358558/unknown.png 15:27 <+bridge> [ddnet] https://cdn.discordapp.com/attachments/293493549758939136/802182614148186133/unknown.png 15:27 <+bridge> [ddnet] oh 15:27 <+bridge> [ddnet] feature 15:28 <+bridge> [ddnet] can assets break ninja skins too 15:28 <+bridge> [ddnet] the katana skin could break it but i think it only uses the x_ninja skin 15:29 <+bridge> [ddnet] aren't katanas behind tees? 15:29 <+bridge> [ddnet] yes 15:29 <+bridge> [ddnet] weird 15:29 <+bridge> [ddnet] idk just make sure ur x_ninja skin is good first but it might be smth else 15:29 <+bridge> [ddnet] couldn't get more info out of the guy having the problem tbh 15:31 <+bridge> [ddnet] actually katanas are drawn just fine lol 15:31 <+bridge> [ddnet] https://cdn.discordapp.com/attachments/293493549758939136/802183700108148766/unknown.png 15:32 <+bridge> [ddnet] and it is kinda weird that the eyes are fine if ninja skin is broken 15:33 <+bridge> [ddnet] m true 15:48 <+bridge> [ddnet] @deen CHN1 have no vote options 15:48 <+bridge> [ddnet] myb perma server? 15:48 <+bridge> [ddnet] no, the vote options are empty, perma server have some vote options at least i think. and it wasn't perma i'm pretty sure 15:58 <+Ryozuki> ChillerDragon https://github.com/edg-l/shorust 15:58 <+bridge> [ddnet] ok the votes appear after manually switching to a map using /map 16:04 <+bridge> [ddnet] i /map'ed every empty chn1 servers, now most of them are kobra now. 16:04 <+bridge> [ddnet] vote works now tho 16:06 <+bridge> [ddnet] @Learath2 I even added sha256 support to teehistorian2demo now πŸ™‚ 16:07 <+bridge> [ddnet] https://github.com/heinrich5991/libtw2/commit/be7ff357b1567f923f9d168c59b94c872106d4d1 16:10 <+ChillerDragon> cool Ryozuki 16:10 <+ChillerDragon> i never really felt the need for a urlshortner tho 16:10 <+ChillerDragon> do you have a running instance i can use Ryozuki ? 16:10 <+Ryozuki> i can set it up fast 16:10 <+bridge> [ddnet] don't use URL shortener please, they contribute to link rot 16:11 <+ChillerDragon> put one in readme that people can test its nice 16:11 <+ChillerDragon> link rot? 16:11 <+Ryozuki> i made it mainly to practise 16:11 <+bridge> [ddnet] link rot = links 404ing after some time 16:11 <+ChillerDragon> oh 16:11 <+bridge> [ddnet] without a link shortener, the original site can go down 16:11 <+bridge> [ddnet] with a link shortener, the original site *or* the link shortener can go down 16:11 <+ChillerDragon> ye 16:11 <+Ryozuki> i mean 16:12 <+Ryozuki> ppl use link shortener services to track info 16:12 <+Ryozuki> xd 16:12 <+bridge> [ddnet] yes, people do plenty of nasty stuff πŸ˜‰ 16:12 <+Ryozuki> but i wanted to make some quick app to learn stuff 16:12 <+Ryozuki> and i indeed learning, the error wrapping stuff 16:12 <+Ryozuki> learned* 16:12 <+bridge> [ddnet] sorry, I didn't want to complain about your project 16:13 <+bridge> [ddnet] just about ChillerDragon wanting to use a link shortener 16:13 <+bridge> [ddnet] @Jupstar βœͺ are CUIElements supposed to be self contained? 16:13 <+ChillerDragon> heinrich hater 16:15 <+bridge> [ddnet] @heinrich5991 oh, I forgot to deploy a newer version of teehistorian2demo :/ 16:15 <+bridge> [ddnet] now the newer version isn't even a downgrade in some respect πŸ™‚ 16:15 <+bridge> [ddnet] now the newer version isn't even a downgrade in any respect πŸ™‚ 16:17 <+bridge> [ddnet] Ryozuki: not sure if intended, the db included in the git repo has some link to some youtube video πŸ˜„ 16:17 <+Ryozuki> oh 16:17 <+Ryozuki> it included the db 16:18 <+Ryozuki> didnt meant to lmao 16:18 <+bridge> [ddnet] .gitignore! 16:18 <+Ryozuki> yea, forgot 16:19 <+Ryozuki> ah it has a link to some 80's japanese music i found cool 16:19 <+Ryozuki> nothing to worry about xd 16:19 <+ChillerDragon> Ryozuki: i made a url linking to ur url shortener using my url longener https://paste.zillyhuhn.com/zu 16:19 <+ChillerDragon> just to trigger heinrichs dead link concern 16:20 <+Ryozuki> ChillerDragon i think ur paste can be predicted 16:20 <+Ryozuki> does it follow the abc? 16:20 <+ChillerDragon> no its random 16:20 <+Ryozuki> random with 2 chars? 16:20 <+ChillerDragon> yes 16:20 <+Ryozuki> not very securi iirc 16:20 <+ChillerDragon> but fast to type 16:21 <+ChillerDragon> dont hate on pstd 16:21 <+ChillerDragon> its best paste service 16:21 <+Ryozuki> (&mut rng) 16:21 <+Ryozuki> .sample_iter(Alphanumeric) 16:21 <+Ryozuki> .take(6) 16:21 <+Ryozuki> .map(char::from) 16:21 <+Ryozuki> .collect() 16:21 <+Ryozuki> rust best 16:21 <+Ryozuki> ez to make a random readable toen 16:21 <+Ryozuki> token 16:21 <+ChillerDragon> echo $RANDOM 16:21 <+ChillerDragon> shell better 16:22 <+bridge> [ddnet] Can I pay one of you to port CScrollRegion over to ddnet? 16:22 <+ChillerDragon> how much 16:22 <+Ryozuki> how much 16:22 <+Ryozuki> u can pay in gpus btw 16:22 <+Ryozuki> a 3070 is enough for me 16:22 <+ChillerDragon> xd 16:23 <+ChillerDragon> id take a 3090 16:23 <+Ryozuki> thats 2k€ sir 16:23 <+bridge> [ddnet] Are you insane? I would pay at most 1/10th of a gpu for a feature already coded 16:23 <+Ryozuki> xd 16:23 <+ChillerDragon> gΓΆnn doch 16:23 <+bridge> [ddnet] Let's start the bidding at 20 euros 16:23 <+Ryozuki> not worth 16:23 <+ChillerDragon> if you pay in btc 16:23 <+ChillerDragon> i take 20 16:24 <+ChillerDragon> will be 2k when i finished coding 16:24 <+Ryozuki> kappa 16:24 <+Ryozuki> i hear its going down rn 16:24 <+Ryozuki> from 30k to 26k € 16:24 <+Ryozuki> yep 16:24 <+ChillerDragon> buy the DIP! 16:24 <+bridge> [ddnet] I'll pay you the 20e and you can get bitcoin with it? πŸ˜„ 16:25 <+Ryozuki> ChillerDragon buy TRX 16:25 <+Ryozuki> i made a gamble that day u said 16:25 <+bridge> [ddnet] Trx scam coin haha 16:25 <+Ryozuki> and bought 10€ worth of TRX 16:25 <+Ryozuki> https://coinmarketcap.com/currencies/tron/ 16:25 <+Ryozuki> @Ama why is it a scam xd 16:25 <+bridge> [ddnet] Its not scam but it has too many coins 16:26 <+bridge> [ddnet] And produces more every month 16:26 <+Ryozuki> https://coinmarketcap.com/headlines/news/tether-usdt-routed-tron-ethereum/ 16:26 <+Ryozuki> i wonder what this means 16:26 <+bridge> [ddnet] So it will never be Worth much i think i cashed out 15k 3 years ago when it went to 2000 satoshi 16:27 <+bridge> [ddnet] I'll up my offer to 30e, you can get a reaaally nice bottle of gin for that 16:27 <+Ryozuki> doesnt it have a cap? 16:27 <+bridge> [ddnet] I bought at 300 satoshi 16:27 <+bridge> [ddnet] And sold at 1800 16:28 <+bridge> [ddnet] At 1 point i had 1 btc with an 2k usd investment 16:28 <+bridge> [ddnet] Too bad i didnt hold on to the btc haha 16:29 <+Ryozuki> hehe 16:29 <+bridge> [ddnet] Yes, we all have cryptoregrets, can we get back to the topic on hand? 16:29 <+bridge> [ddnet] I require CScrollRegion ported 16:30 <+Ryozuki> i would consider at 100€, im just in a rly lazy mod for c++ rn 16:30 <+Ryozuki> rust is too great 16:30 <+Ryozuki> ChillerDragon go code it 16:30 <+Ryozuki> u dont contribute since long 16:30 <+Ryozuki> nobo 16:30 <+bridge> [ddnet] 100 is a little too rich for my blood, two entire bottles of very decent whiskey 16:33 <+bridge> [ddnet] dunno what u mean 16:34 <+bridge> [ddnet] Do they render themselves? 16:34 <+bridge> [ddnet] no, they basically only a state object 16:34 <+bridge> [ddnet] So they are more tracking of elements than actual elements? 16:34 <+bridge> [ddnet] yeah 16:35 <+bridge> [ddnet] What is `m_OwnUIElements` for and what is `m_UIElements` for? 16:36 <+bridge> [ddnet] (obv `CUI::`) 16:36 <+bridge> [ddnet] ui elements maintained by CUI class 16:37 <+bridge> [ddnet] like, deleted 16:37 <+Ryozuki> ChillerDragon here the url shortener https://noby.world/ 16:37 <+Ryozuki> and yes, its a domain i own xd 16:37 <+Ryozuki> https://noby.world/Wvl9MA 16:38 <+bridge> [ddnet] What does it mean for an ui element to be maintained by the CUI class? 16:39 <+Ryozuki> that it is managed by the cui? 16:39 <+Ryozuki> e.g cui says when its rendered 16:39 <+ChillerDragon> ah nice noby.world url shortner i love it 16:39 <+Ryozuki> and passes events to it 16:39 <+Ryozuki> idk 16:39 <+Ryozuki> xdd 16:40 <+ChillerDragon> https://noby.world/rAyPg7 16:40 <+ChillerDragon> love it 16:40 <+Ryozuki> nice 16:40 <+ChillerDragon> maybe i should host a instance 16:40 <+bridge> [ddnet] It seems to me if you create a CUIElement it self inserts into m_UIElements, if you get one thru GetNewUIElement it's also inserted into m_OwnUIElements 16:40 <+bridge> [ddnet] @Learath2 nothing special, it just means u dont need to deallocate it 16:40 <+ChillerDragon> and then buy facebook ads to promote it 16:40 <+Ryozuki> ChillerDragon see, this one is hardly predictable 16:40 <+Ryozuki> ur 2 letter id is 16:40 <+ChillerDragon> then sell out the url shortner and redirect everything to some ads and get rich 16:41 <+Ryozuki> ChillerDragon shh 16:41 <+Ryozuki> actually smart 16:41 <+ChillerDragon> the 2 letter is awesome 16:41 <+ChillerDragon> i can remember them and use it to share pastes across devices 16:42 <+bridge> [ddnet] @Jupstar βœͺ what are some elements using this new api? 16:43 <+bridge> [ddnet] server browser 16:48 <+bridge> [ddnet] So this is a class that keeps track of a vector of quads(?) and uses quad containers to make sure they aren't re rendered all the time? 16:49 <+bridge> [ddnet] (I know I should have asked these before merging) 16:50 <+bridge> [ddnet] it keeps track of specific attributes the streamed functions use, e.g. color of text, the text itself 16:50 <+bridge> [ddnet] and checks if any of them changed 16:50 <+bridge> [ddnet] its still streamed, just cached 16:51 <+bridge> [ddnet] So it can handle only text? 16:54 <+bridge> [ddnet] and ui rects 16:55 <+bridge> [ddnet] How does it decide if a ui rect changed? 16:55 <+bridge> [ddnet] how can i record all gameplay but only save when i want to 16:55 <+bridge> [ddnet] with common attributes 16:55 <+bridge> [ddnet] color 16:55 <+bridge> [ddnet] size 17:14 <+bridge> [ddnet] if u mean demo record, there is cl_replays 17:23 <+bridge> [ddnet] If you mean actual video your gpu is much better at that then we could ever hope to be, take a look at ReLive for AMD and ShadowPlay for Nvidia 17:23 <+ChillerDragon> gpus are fast and all but i feel like recording tw demos is less overhead than an actual screen record 17:24 <+ChillerDragon> and demos can always be tunred into video aftwards 17:24 <+ChillerDragon> but i think classic corneum is here for replay bots and wants to hax some ranks xd 17:24 <+bridge> [ddnet] no i just dont want gigabytes of demos piling up 17:24 <+ChillerDragon> oh nice 17:24 <+ChillerDragon> so legit 17:25 <+bridge> [ddnet] but still keep cool moments 17:25 <+ChillerDragon> ye cl_replays is ur friend 17:25 <+bridge> [ddnet] cl_replaybot 17:25 <+bridge> [ddnet] and turn auto demo record off? 17:25 <+ChillerDragon> :robot: 17:25 <+ChillerDragon> @noby i actually had conflicts when i tried to merge with upstread because some replay functions already existed 17:25 <+ChillerDragon> :justatest: 17:26 <+bridge> [ddnet] :ban: 17:26 <+ChillerDragon> idk probably auto demo off give it a try or ask the math brain 17:26 <+ChillerDragon> or wait how did i use to call him 17:26 <+ChillerDragon> forgot his nickname 17:26 <+bridge> [ddnet] ChillerDragon: Problem is recording videos or tw demos on ourside has "some" overhead while recording a video for gpus have very negligible overhead as they have hardware for this specifically 17:27 <+ChillerDragon> did u ever run fraps on windows 17:27 <+ChillerDragon> xd 17:27 <+ChillerDragon> rip framerate 17:27 <+bridge> [ddnet] fraps is not the same as gpu accelerated recording 17:27 <+ChillerDragon> yea fair i guess 17:27 <+bridge> [ddnet] obs can utilize some of the hardware capabilities now, so that's a more fair comparison 17:28 <+ChillerDragon> yea obs performs quite well 17:28 <+ChillerDragon> still feels like more overhead than tw demos 17:28 <+bridge> [ddnet] @Learath2 i read always everywhere that cpu encoding/recording has more quality always 17:28 <+ChillerDragon> i never noticed a difference when recording tw demos 17:29 <+bridge> [ddnet] well ofc πŸ˜„ how do you think they "accelerate" the process? 17:29 <+bridge> [ddnet] silicon real estate is premium, can't waste too much 17:30 <+bridge> [ddnet] https://en.wikipedia.org/wiki/Jiuzhang_(quantum_computer) 17:30 <+bridge> [ddnet] i wonder about quantum computers 17:30 <+bridge> [ddnet] china supposedly made this 17:30 <+bridge> [ddnet] nvenc is quiiite good though, still not perfect but at that speed it's much better quality than I ever expected 17:30 <+bridge> [ddnet] thats 2.5 billion years faster than their own supercomputer 17:31 <+bridge> [ddnet] thats 2.5 billion times faster than their own supercomputer 17:31 <+bridge> [ddnet] The Chinese team claims it to be 10 billion times faster than Google's superconductor-based Sycamore processor, and as such, becomes the second computer to attain quantum supremacy 17:31 <+bridge> [ddnet] they also claim its 10 billions time faster than google quantum computer 17:31 <+bridge> [ddnet] xdd 17:32 <+bridge> [ddnet] america should drop a bomb on that thing before they start to decrypt all our communications 17:32 <+bridge> [ddnet] i mean 17:32 <+bridge> [ddnet] if quantum computers exist 17:32 <+bridge> [ddnet] they already decrypted all 17:32 <+bridge> [ddnet] i would only assume that murica army is already using them 17:32 <+bridge> [ddnet] there is quantum proof cryptography tho 17:32 <+bridge> [ddnet] quantum computers exist, they just weren't strong enough yet 17:33 <+bridge> [ddnet] cana quantukm computer run tw with 20x zoomout tho 17:33 <+bridge> [ddnet] "post quantum cryptography" is a really interesting field 17:33 <+bridge> [ddnet] cant they uise the quantum computer to find a super good covid vaccine thanks bye 17:33 <+bridge> [ddnet] imagine using science for human needs and not info warfare or wars 17:33 <+bridge> [ddnet] we would be in another place rn 17:33 <+bridge> [ddnet] https://en.wikipedia.org/wiki/Quantum_supremacy 17:33 <+bridge> [ddnet] :monkalaugh: 17:34 <+bridge> [ddnet] thats kumbaya 17:36 <+bridge> [ddnet] I think google with their quantum computer already demonstrated solving some insane problems 17:36 <+bridge> [ddnet] I wonder if they have enough qubits to break rsa with any meaningful key size 17:40 <+bridge> [ddnet] Apparently around 6k qubits are needed to break AES-256, not even close πŸ˜› 17:41 <+bridge> [ddnet] oh and that's logical qubits not physical ones, so multiply that by 12 or so 17:46 <+bridge> [ddnet] ah 17:46 <+bridge> [ddnet] then makes sense 17:53 <+bridge> [ddnet] @Learath2 source? I didn't know you could break stuff like AES with quantum computers 17:55 <+bridge> [ddnet] https://arxiv.org/pdf/1512.04965v1.pdf I found it in some guys comment in stackexchange but I closed the tab πŸ˜› 17:56 <+bridge> [ddnet] I guess it doesn't give significant advantage for AES? 17:56 <+bridge> [ddnet] Oh, it should actually, you can browse the search space more efficiently 17:58 <+bridge> [ddnet] https://crypto.stackexchange.com/questions/6712/is-aes-256-a-post-quantum-secure-cipher-or-not 17:58 <+bridge> [ddnet] this stuff says you can "only" reduce the search space by sqrt() 17:58 <+bridge> [ddnet] means that 256bit AES is still secure, 128bit is not 18:02 <+bridge> [ddnet] https://cdn.discordapp.com/attachments/293493549758939136/802221608675966976/unknown.png 18:02 <+bridge> [ddnet] funny comment 18:08 <+bridge> [ddnet] famous last words before the ASIO builds a quantum computer the size of jupiter to spy on australian citizens 18:40 <+bridge> [ddnet] @Learath2 would you mind taking al ook at https://github.com/ddnet/ddnet/pull/3492 ? πŸ™‚ 19:59 <+bridge> [ddnet] Does the client or server get weird if you run it for a long time without restarting? 19:59 <+bridge> [ddnet] shouldn't 20:00 <+bridge> [ddnet] if it does, it's a bug 20:01 <+bridge> [ddnet] Well maybe you can recreate it. I used cheat engine to speed hack and after 14 hours some bullets stopped moving and my grenades don't rotate. Even after reload 20:01 <+bridge> [ddnet] (sounds plausible, these kinds of bugs) 20:02 <+bridge> [ddnet] Do the official servers restart when empty? 20:09 <+ChillerDragon> @Ryozuki investing in warefare is important when space invaders come and attaxx us 20:10 <+ChillerDragon> and like zombies 20:10 <+bridge> [ddnet] ChillerDragon we can find any signs of life by ourselves, we wont be able to protect if they come anyway 20:10 <+bridge> [ddnet] cant* 20:13 <+bridge> [ddnet] @Im 'corneum yes, daily 20:14 <+ChillerDragon> well only zombies then 20:15 <+bridge> [ddnet] Maybe we can try out https://github.com/wolfcw/libfaketime or something similar to see if we can reproduce these physics problems 20:17 <+bridge> [ddnet] What does this do compared to speedhack? 20:21 <+bridge> [ddnet] Also, can u host servers that run on 50% speed so I can play Gores better:troll: 20:21 <+bridge> [ddnet] it's for linux instead of windows 20:27 <+bridge> [ddnet] You mean the hack itself caused it? 20:27 <+bridge> [ddnet] i remember long ago having a bug because trigonometry function didn't work out when input was too big 20:28 <+bridge> [ddnet] that's just an idea because you said you used speedhacks