00:09 <+bridge> [ddnet] is there any way to have saved ghosts for a map play while viewing a demo for that map? 00:13 <+bridge> [ddnet] don't think so 05:25 <+bridge> [ddnet] my game got the frozen glitch on the main menu 05:25 <+bridge> [ddnet] lol 05:32 <+bridge> [ddnet] guess u have to accept the 5 seconds delay or install some beta driver 06:25 <+bridge> [ddnet] @Learath2 it seems I either got lucky on day 2 and getting on the leaderboard is harder than I expected, or there's more competition this year 06:25 <+bridge> [ddnet] missed it again, by quite a margin 09:57 <+bridge> [ddnet] Well as rhe challanges get harder that's when the competitive programmers and golfers shine 09:57 <+bridge> [ddnet] Theirabilitt to solve problems O(1) is very useful 10:39 <+bridge> [ddnet] 10:39 <+bridge> [ddnet] :pepeH: 10:48 <+bridge> [ddnet] https://www.reddit.com/r/adventofcode/comments/k60ycf/day_1_part_1_solution_in_exapunks/ 10:48 <+bridge> [ddnet] omg 10:50 <+bridge> [ddnet] challenge 3 in blender lmao 10:50 <+bridge> [ddnet] https://cdn.discordapp.com/attachments/293493549758939136/784355933282500628/5aaed3uz41361.png 11:43 <+bridge> [ddnet] @Ryozuki try day 5 with tensorflow? πŸ˜„ 11:43 <+bridge> [ddnet] awk: https://github.com/def-/adventofcode-2020/blob/master/4a.awk 11:48 <+bridge> [ddnet] (but part 2 was much more annoying with awk) 12:17 <+bridge> [ddnet] :poggers: 12:57 <+bridge> [ddnet] @Jupstar βœͺ I can't reproduce the Intel GPU problem anymore on Windows laptop, no driver update happened. 12:57 <+bridge> [ddnet] @louis Could you try in Intel GPU settings -> System -> Energy -> And turn off all power saving stuff 12:57 <+bridge> [ddnet] Just wondering if that might help since I had Intel driver problems on Linux with power saving too 13:45 <+bridge> [ddnet] https://edgarluque.com/blog/chat-command-ddracenetwork 13:45 <+bridge> [ddnet] :poggers: 14:04 <+bridge> [ddnet] Did you know that the walrus operator in python can't have subscripts to the left? so you can't assign into a list with it... 14:05 <+bridge> [ddnet] After so much discussion and drama and needlessly introducing a new operator, they decided to cripple that too, god forbid someone makes a mistake 14:10 <+bridge> [ddnet] :monkalaugh: 14:18 <+bridge> [ddnet] https://github.com/Learath2/aoc/blob/master/2020/4/solve.py here is my solution for today, I think it's quite pretty for how awful I'm with python 14:22 <+bridge> [ddnet] Ah, there he is `xiaowuc1` I was wondering when he was going to show up. This guy is always at the top of the leaderboards on all competitive programming challanges 14:23 <+bridge> [ddnet] why this 14:23 <+bridge> [ddnet] if not (m := re.match(r"^\d{9}$", p['pid'])): 14:23 <+bridge> [ddnet] what don't you like about it? 14:23 <+bridge> [ddnet] > Hello, I am Manuel Franco, you have a donation of $3,100,000.00 USD 14:23 <+bridge> [ddnet] Guess we won't need any more funding for DDNet for a few years 14:23 <+bridge> [ddnet] if not re.match(r"^\d{9}$", p['pid']): 14:23 <+bridge> [ddnet] isnt this the same 14:23 <+bridge> [ddnet] Oh, I was printing the match for debugging at one point, I guess I forgot to clean up 14:26 <+bridge> [ddnet] :monkalaugh: 14:26 <+bridge> [ddnet] Lately I've had a newfound appreciation of regex, I used to always feel like they would perform badly for some reason but decent implementations of it that don't add silly features actually perform quite well 14:27 <+bridge> [ddnet] I wouldn't be surprised if a good regex implementation could come very close to the speed of just strcmp if not for vectorization 14:27 <+bridge> [ddnet] rust regex is good 14:28 <+bridge> [ddnet] > all searches execute in linear time with respect to the size of the regular expression and search text. 14:28 <+bridge> [ddnet] :giftee_red: 14:30 <+bridge> [ddnet] @Learath2 why didnt u use regex to parse each 14:30 <+bridge> [ddnet] e.g hgt 14:30 <+bridge> [ddnet] `if not 1920 <= int(p['byr']) <= 2002:` 14:30 <+bridge> [ddnet] I'm offended 14:30 <+bridge> [ddnet] > let re = Regex::new(r"(\w+):([#\w]+)").unwrap(); 14:30 <+bridge> [ddnet] no try-catch and it still worked? 14:30 <+bridge> [ddnet] lol 14:30 <+bridge> [ddnet] im offended too 14:30 <+bridge> [ddnet] i guess he got lucky 14:30 <+bridge> [ddnet] @heinrich5991 haha, I thought the same πŸ˜„ 14:31 <+bridge> [ddnet] @Ryozuki I did parse hgt with regex? 14:31 <+bridge> [ddnet] :monkalaugh: 14:31 <+bridge> [ddnet] https://cdn.discordapp.com/attachments/293493549758939136/784411664430661681/unknown.png 14:32 <+bridge> [ddnet] i mean parse each a:b value 14:32 <+bridge> [ddnet] with regex 14:32 <+bridge> [ddnet] [{s[0]:s[1] for s in [t.split(":") for t in p]} 14:32 <+bridge> [ddnet] u used this xd 14:33 <+bridge> [ddnet] @heinrich5991 why are you offended? I think pythons precedence rules allow that 14:33 <+bridge> [ddnet] @Learath2 byr can be a invalid integer 14:33 <+bridge> [ddnet] and crash 14:33 <+bridge> [ddnet] ur program 14:33 <+bridge> [ddnet] u got lucky with input 14:33 <+bridge> [ddnet] I'm offended because you didn't check for a valid integer. anywhere 14:33 <+bridge> [ddnet] Oh, I don't bother validating aoc inputs 14:33 <+bridge> [ddnet] but i got a non number on byr 14:33 <+bridge> [ddnet] Oh really? 14:33 <+bridge> [ddnet] y 14:34 <+bridge> [ddnet] people get different inputs 14:34 <+bridge> [ddnet] huh, guess I did get lucky with the input 14:34 <+bridge> [ddnet] πŸ˜„ 🎲 14:34 <+bridge> [ddnet] I usually just don't bother validating the input at all, only when I get a problem I check the input 14:34 <+bridge> [ddnet] well the program asked for validation 14:35 <+bridge> [ddnet] explicitly 14:35 <+bridge> [ddnet] xd 14:35 <+bridge> [ddnet] a friend of mine validated the colors by hcl[0] == '#' 14:35 <+bridge> [ddnet] :pepeH: 14:36 <+bridge> [ddnet] fixed 14:37 <+bridge> [ddnet] isnumeric :feelsbadman: 14:38 <+bridge> [ddnet] What did isnumeric do to you? 14:38 <+bridge> [ddnet] nothing, python has so many handy methods 14:39 <+bridge> [ddnet] it'd be nice to see that "split_list" as part of the standard library 14:39 <+bridge> [ddnet] it's just a more generic str.split 14:40 <+bridge> [ddnet] what would it be? 14:40 <+bridge> [ddnet] List.split 14:40 <+bridge> [ddnet] ah 14:40 <+bridge> [ddnet] @Learath2 make RFC 14:40 <+bridge> [ddnet] or pep 14:40 <+bridge> [ddnet] whathever they call it 14:40 <+bridge> [ddnet] another friend of mine actually found the trick: 14:41 <+bridge> [ddnet] `file.read().split("\n\n")` 14:41 <+bridge> [ddnet] πŸ˜„ 14:41 <+bridge> [ddnet] Yeah I considered that too for about a minute 14:41 <+bridge> [ddnet] (for this problem) 14:41 <+bridge> [ddnet] Then I thought that might be a bit of a hack πŸ˜„ 14:41 <+bridge> [ddnet] πŸ˜„ 14:41 <+bridge> [ddnet] i did that 14:41 <+bridge> [ddnet] https://cdn.discordapp.com/attachments/293493549758939136/784414157147078686/unknown.png 14:41 <+bridge> [ddnet] with this i get every in a single line 14:41 <+bridge> [ddnet] :monkalaugh: 14:42 <+bridge> [ddnet] nice 14:42 <+bridge> [ddnet] python has you covered 14:42 <+bridge> [ddnet] just do `.split()` it doesn't care about which whitespace is there 14:55 <+bridge> [ddnet] they're all already on for me 15:17 <+bridge> [ddnet] @Ryozuki my awk solution does that too 15:18 <+bridge> [ddnet] :poggers: 15:18 <+bridge> [ddnet] @louis try turnign them *off* 15:18 <+bridge> [ddnet] oh yeah i meant they're already off 15:18 <+bridge> [ddnet] i'll check 15:19 <+bridge> [ddnet] ok 16:04 <+bridge> [ddnet] Is there an β€œofficial” definition for mutex? I think you can use a semaphore as a mutex yet there are sources that claim the two are different things 16:04 <+bridge> [ddnet] I have a feeling a mutex is just a binary semaphore 16:05 <+bridge> [ddnet] i just read a bit about it some days ago 16:05 <+bridge> [ddnet] and there was a difference 16:06 <+bridge> [ddnet] what i remember, idk if exactly, is that semaphores are used to block parts of a buffer or smth like 16:06 <+bridge> [ddnet] https://www.cs.uni.edu/~diesburg/courses/cs3430_sp18/sessions/s07/s07_semaphores.pdf 16:06 <+bridge> [ddnet] :monkalaugh: 16:07 <+bridge> [ddnet] that powerpoint is horrible i think 16:07 <+bridge> [ddnet] https://www.geeksforgeeks.org/mutex-vs-semaphore/ 16:07 <+bridge> [ddnet] A semaphore is a generalized mutex. In lieu of single buffer, we can split the 4 KB buffer into four 1 KB buffers (identical resources). A semaphore can be associated with these four buffers. The consumer and producer can work on different buffers at the same time. 16:07 <+bridge> [ddnet] i read this yeah 16:07 <+bridge> [ddnet] The only two β€œdifferences” I can think of are: a) the usecase b) the fact that a semaphore doesn’t guarantee that only the owner of the β€œlock” can signal 16:07 <+bridge> [ddnet] > There is an ambiguity between binary semaphore and mutex. We might have come across that a mutex is binary semaphore. But they are not! The purpose of mutex and semaphore are different. May be, due to similarity in their implementation a mutex would be referred as binary semaphore. 16:08 <+bridge> [ddnet] Strictly speaking, a mutex is locking mechanism 16:08 <+bridge> [ddnet] Semaphore is signaling mechanism 16:08 <+bridge> [ddnet] :monkalaugh: 16:48 <+bridge> [ddnet] ez :monkalaugh: 16:48 <+bridge> [ddnet] https://cdn.discordapp.com/attachments/293493549758939136/784446148760698890/unknown.png 17:09 <+bridge> [ddnet] Hey, it's not Chile this time: 17:09 <+bridge> [ddnet] > Dear Customer, 17:09 <+bridge> [ddnet] > 17:09 <+bridge> [ddnet] > On a construction site located near the Frankfurt Data Center (FRA-10), a World 17:09 <+bridge> [ddnet] > War II bomb was discovered. The local government is closing the area and 17:09 <+bridge> [ddnet] > evacuating local residents, to defuse the unexploded munitions on Sunday, 17:09 <+bridge> [ddnet] > December 6th, 2020. This is expected to start around 06:00 CET (UTC+0100) and 17:09 <+bridge> [ddnet] > last the entire day. 17:09 <+bridge> [ddnet] > 17:09 <+bridge> [ddnet] > Following instructions from the government, we will not be allowed on-premise 17:09 <+bridge> [ddnet] > to service your onsite requests during this time and you may experience 17:09 <+bridge> [ddnet] > possible delays in on-site requests. That said, remote access remains 17:09 <+bridge> [ddnet] > unchanged, as we stay committed to keeping your infrastructure and services 17:09 <+bridge> [ddnet] > running without disruption. We will inform you as soon as we can physically 17:09 <+bridge> [ddnet] > access the data center again. You can be rest assured that the Customer Care 17:09 <+bridge> [ddnet] > team will continue to be available 24/7 to assist you as needed. 17:09 <+bridge> [ddnet] > 17:09 <+bridge> [ddnet] > Unexploded munitions are uncovered in Germany in great amounts every year. 17:10 <+bridge> [ddnet] > Before a construction project of any size begins, the ground must be certified 17:10 <+bridge> [ddnet] > as cleared, and possible unexploded munitions must be disposed, per standard 17:10 <+bridge> [ddnet] > protocol. We are following governmental instructions closely and trust in their 17:10 <+bridge> [ddnet] > expertise in clearing the area. 17:10 <+bridge> [ddnet] > 17:10 <+bridge> [ddnet] > We appreciate your continued trust in Leaseweb. 17:10 <+bridge> [ddnet] > 17:10 <+bridge> [ddnet] > 17:10 <+bridge> [ddnet] > Sincerely, 17:10 <+bridge> [ddnet] > 17:10 <+bridge> [ddnet] > Marcus Busch 17:10 <+bridge> [ddnet] > Managing Director Leaseweb Germany 17:10 <+bridge> [ddnet] huh 17:10 <+bridge> [ddnet] WW2 bomb 17:10 <+bridge> [ddnet] but not a downtime I think 17:10 <+bridge> [ddnet] :monkalaugh: 17:11 <+bridge> [ddnet] yes, they do get found sometimes 17:11 <+bridge> [ddnet] https://en.wikipedia.org/wiki/World_War_II_bomb_disposal_in_Europe 17:11 <+bridge> [ddnet] > Every year, an estimated 2,000 tons of World War II munitions are found in Germany, at times requiring the evacuation of tens of thousands of residents from their homes.[1] In Berlin alone, 1.8 million pieces of ordnance have been defused since 1947.[4] Buried bombs, as well as mortars, land mines and grenades, are often found during construction work or other excavations, or by farmers tilling the land.[5] 17:13 <+bridge> [ddnet] This one btw: https://www.fnp.de/frankfurt/frankfurt-hauptbahnhof-bombe-gallus-weltkriegsbombe-feuerwehr-entschaerfung-sonntag-zr-90120748.html 17:15 <+bridge> [ddnet] @deen well the blockdriver impl resettet your GL version, or did u change that back manually? 17:16 <+bridge> [ddnet] that cookie stuff was confusing 17:16 <+bridge> [ddnet] took me 30 secs to not accept all 17:16 <+bridge> [ddnet] click the lower button twice. probably harder if you don't speak german 17:16 <+bridge> [ddnet] yeah did that 17:16 <+bridge> [ddnet] xD 17:16 <+bridge> [ddnet] (and not conforming AFAIK, rejecting needs to be as simple as accepting) 17:17 <+bridge> [ddnet] yeah i thought so 17:19 <+bridge> [ddnet] @Jupstar βœͺ hm, somehow the driver seems not to be blocked 17:19 <+bridge> [ddnet] btw, if anyone wants some math puzzles, there's a math advent calendar as well: e.g. https://www.mathekalender.de/index.php?page=problem&problemID=132 17:19 <+bridge> [ddnet] weird 17:20 <+bridge> [ddnet] math too hard 17:20 <+bridge> [ddnet] I found yesterday's puzzle interesting, but it was also quite hard: https://www.mathekalender.de/index.php?page=problem&problemID=120 17:20 <+bridge> [ddnet] @deen is gfx_driver_is_blocked 0 ? 17:20 <+bridge> [ddnet] math calendar :poggers: 17:20 <+bridge> [ddnet] yes 17:21 <+bridge> [ddnet] The classic math/programming puzzles I used to do was https://projecteuler.net/ 17:22 <+bridge> [ddnet] ah ye 17:22 <+bridge> [ddnet] its more mathy oriented 17:22 <+bridge> [ddnet] imo 17:23 <+bridge> [ddnet] I think it's a mix. the problems always require a computer 17:23 <+bridge> [ddnet] I heard from a friend that you can skip the last optimization step by using your university's compute cluster 17:24 <+bridge> [ddnet] omg 17:24 <+bridge> [ddnet] https://cdn.discordapp.com/attachments/293493549758939136/784454975770066944/unknown.png 17:24 <+bridge> [ddnet] i remembered my account 17:24 <+bridge> [ddnet] use a pw manager if you don't already πŸ˜‰ 17:24 <+bridge> [ddnet] @heinrich5991 yeah i use firefox one 17:24 <+bridge> [ddnet] but when i did this stuff 17:24 <+bridge> [ddnet] it was rly long ago 17:25 <+bridge> [ddnet] I see ^^ change the pw ^^ 17:25 <+bridge> [ddnet] yea xd 17:25 <+bridge> [ddnet] @deen guess you have to check the impl then, i only used a string from gpuinfo.org to check if it works, since i dont have an intel 17:25 <+bridge> [ddnet] is good too 17:25 <+bridge> [ddnet] more for the cool kids i guess 17:26 <+bridge> [ddnet] :pepeH: 17:49 <+bridge> [ddnet] @Jupstar βœͺ For Windows 7 updates help: https://steamcommunity.com/app/412220/discussions/0/2972902433493341292/?tscn=1607096314 18:07 <+bridge> [ddnet] I had a flight cancelled because of a ww2 bomb last year 😦 18:14 <+bridge> [ddnet] This is not just hard, it's very hard πŸ˜› 18:14 <+bridge> [ddnet] Does map webgl renderer have a repo somewhere I can contribute? 18:14 <+bridge> [ddnet] spent the last hour trying to devise a method to no avail 18:15 <+bridge> [ddnet] @timakro is it not ddnet/tw-webgl? 18:15 <+bridge> [ddnet] Yep, thx 18:37 <+bridge> [ddnet] wow sounds really annoying that ppl dont update their systems 18:38 <+bridge> [ddnet] @deen Dow to get https://github.com/ddnet/tw-webgl running? Where does `twdatafile.js` come from? 18:39 <+bridge> [ddnet] @deen Do you know to get https://github.com/ddnet/tw-webgl running? Where does `twdatafile.js` come from? 18:39 <+bridge> [ddnet] @deen Do you know how to get https://github.com/ddnet/tw-webgl running? Where does `twdatafile.js` come from? 18:59 <+bridge> [ddnet] @timakro easts fork seems to have that 19:04 <+bridge> [ddnet] Yeah but it should be all in one repo 19:04 <+bridge> [ddnet] Which one is the up to date version 19:04 <+bridge> [ddnet] well who knows with this stuff πŸ˜„ 19:05 <+bridge> [ddnet] 9 commits ahead, 14 commits behind 19:05 <+bridge> [ddnet] yep 19:58 <+bridge> [ddnet] @timakro wanna become maintainer? πŸ˜„ 20:14 <+bridge> [ddnet] Seems like we use the east version, sorry forthe confusion 20:15 <+bridge> [ddnet] Could just reset ddnet/tw-webgl to east's I guess? 20:20 <+bridge> [ddnet] You could fix the clipping of the web version πŸ˜„ 20:20 <+bridge> [ddnet] that is buggy 20:21 <+bridge> [ddnet] what about using teewebs 20:21 <+bridge> [ddnet] to view maps 20:41 <+bridge> [ddnet] could be done, same with watching demos 21:01 <+bliblablub> is there any ddnet dev channel? 21:01 <+bridge> [ddnet] this one 21:01 <+bliblablub> ah 21:02 <+bridge> [ddnet] it's connect to our discord 21:02 <+bliblablub> ah 0: 21:02 <+bliblablub> is there any Tick event? I'm trying to create a command, which edits a boolean, and if this bool is true it should notify me whenever my tee gets moved 21:04 <+bliblablub> which i can directly access from gameclient.cpp 21:06 <+bliblablub> @here 21:20 <+bridge> [ddnet] There are no ticks on the client per se 22:20 <+bliblablub> k, is there any way to get the CGameClient Object from the Dummy? 22:24 <+bliblablub> Ah, in my case i don't even need CGameclient for dummy, i can just get the current pos using m_Snap and i'll just save both client id's