01:11 < eeeee> Learath2: so why do you have to do a separate request just to check if map exists? 01:14 < eeeee> somehow programming in prolog and haskell doesn't sound like a very practical paradigm ;\) 01:16 < eeeee> and is it easier to learn about compilers using java bytecode compared to using llvm bytecode? 01:25 <@deen> ehm, no 01:25 <@deen> but java seems to be the "cool thing" at universities 02:15 <@heinrich5991> deen: https://www.teeworlds.com/forum/viewtopic.php?id=11259 02:55 <@deen> heinrich5991: yes? 02:55 <@heinrich5991> maybe you could add your experience there? :) 02:56 <@deen> it depends a lot on the mod 02:56 <@deen> and no idea^^ 02:57 <@deen> GER has 51 GB/day 03:10 <@deen> hope this is fine: https://www.teeworlds.com/forum/viewtopic.php?pid=112846#p112846 03:11 <@heinrich5991> thanks :) 03:16 <@deen> RUS always loses players randomly and I don't understand it 03:16 <@deen> zoom into today, players around ~40, then sudden drop and 2 hours later back 03:16 <@deen> I ask the players if there are any lags or problems but haven't heard of any 04:32 <@deen> there are people who play with the name "/kill" 04:32 <@heinrich5991> mh 04:32 <@heinrich5991> why? 04:33 <@deen> we have "kill protection" 04:33 <@deen> so after 20 minutes of gametime killbind doesn't work anymore and instead you have to explicitly type /kill 04:33 <@deen> not sure how to solve this 04:33 <@deen> I've always been annoyed by people's names starting with a slash 04:35 <@heinrich5991> deen: fix the problem with accidently killing oneself or with the people's names? 04:35 <@deen> well, we fixed the problem with accidentally killing oneself 04:36 <@deen> but now we have the new problem of people making others accidentally kill themselves using exactly this kill prevention^^ 06:13 <@heinrich5991> deen: what is patafix secret sauce to faster server browser reload? 06:13 <@heinrich5991> patafix's 06:14 <@deen> retrying servers that don't answer 06:15 <@heinrich5991> :) 06:15 <@heinrich5991> that might not work for 64p servers 06:15 <@deen> indeed 07:14 < Teetime> deen: you could check if something is written after /kill and then ignore it 08:32 < GoJEGrEEN> hi 08:38 < GoJEGrEEN> deen: i found 2 bug ( i think maybe not ) in ddnet , one in client another in server 12:52 < KinG_> hi all 12:52 < KinG_> deen: u here> 12:52 < KinG_> ? 12:54 < KinG_> EastByte: hi u know where deen is? 14:12 <@deen> KinG_: hi 14:12 < KinG_> deen: hey 14:13 < KinG_> deen: some problems came in 14:21 * GoJEGrEEN slaps KinG_ around a bit with a large fishbot 14:24 <@deen> ^^ 14:24 <@deen> afk 14:24 < GoJEGrEEN> well deen here finaly :) 14:24 < GoJEGrEEN> hi 14:24 < GoJEGrEEN> ops : 14:36 < KinG_> hey Savander :D 14:37 < Savander> Hey ! : ) 14:41 < Nimda> DDNet Brazil went down! 14:42 < Nimda> DDNet Brazil went back online! 14:57 < Nimda> DDNet Brazil went down! 14:58 < Nimda> DDNet Brazil went back online! 15:00 < KinG_> anyone knows what does this mean 15:00 < KinG_> : /lib/ld-linux.so.2: bad ELF interpre ter: No such file or directory 15:47 < KinG_> laxa: u here? 15:52 < laxadedi> KinG_: hu; M 15:53 < KinG_> laxadedi: to run a -pl file in linux i should do chmod +x first then ./ ? 15:54 < laxadedi> I guess so 15:54 < laxadedi> maybe there is another way for perl to do that too 15:54 < laxadedi> but if you have your shebang and you give +x to your file, you should be able to do ./ 15:57 < KinG_> hmm 15:58 < KinG_> so to run ts3server_linux_amd64-pl what ways can i try? 16:00 < KinG_> laxadedi: ?what is shebang?:D just tell me how can i run that file 16:00 < KinG_> it's so important 16:01 < laxadedi> google 16:01 < laxadedi> I am working, no time 16:03 < KinG_> someone help meeee 16:05 * GoJEGrEEN_ slaps GoJEGrEEN around a bit with a large fishbot 17:20 < GoJEGrEEN> deen: 17:20 < GoJEGrEEN> still afk :? 17:25 < GoJEGrEEN> i must go tell him i found 2 bug in client and server ( i think ) 17:25 < GoJEGrEEN> bb 17:58 < Maple> nobody will test my map 18:17 < GoJEGrEEN> zZZ 18:27 < Learath2> eeeee: i could probably stop on the header check then continue but that would require me to do some really ugly stuff 18:53 < GoJEGrEEN> deen: are u there ? 18:56 <@EastByte> GoJEGrEEN: what kind of bug did you find? 18:59 < GoJEGrEEN> hi EastByte 18:59 <@EastByte> hi 19:00 < GoJEGrEEN> in client and server 19:00 <@EastByte> what is it about? 19:00 < GoJEGrEEN> in server 19:00 < GoJEGrEEN> when you hook player and go pause 19:00 < GoJEGrEEN> when you do resume 19:00 < GoJEGrEEN> your hook still release 19:01 < GoJEGrEEN> do you understand me ? 19:01 < GoJEGrEEN> :D im very bad in english :P 19:02 <@EastByte> when you press hook and /pause the hookstate will stay the same 19:02 < GoJEGrEEN> go in one server with sv_pausable 1 19:02 < GoJEGrEEN> and test it 19:02 <@EastByte> after that you'll need to press hook twice 19:03 < GoJEGrEEN> i know but 19:03 < GoJEGrEEN> some ppl 19:03 < GoJEGrEEN> for fun do this :/ 19:03 <@EastByte> what do they do? 19:03 < GoJEGrEEN> they hook me and they go to pause 19:04 <@EastByte> do you mean /pause or /spec ? 19:04 < GoJEGrEEN> i mean /pause 19:05 < GoJEGrEEN> give me ip of server with sv_pauseable 1 19:05 <@EastByte> 84.200.43.133:8303 19:05 < GoJEGrEEN> i show u what happen exactly 19:05 < GoJEGrEEN> k 19:12 < GoJEGrEEN> EastByte: bb and dont forgot tell it to deen im bad in english and thanks for your time 19:12 <@EastByte> no problem 19:13 <@EastByte> cya 19:24 <@EastByte> deen: the jetpack prediction isn't non-ddnet compatible 19:25 <@EastByte> the strength is 400 by default and there is no gametype check 19:46 <@EastByte> deen: and the bug GoJEGrEEN talked about already was fixed fe86eef7d8d524bc86044907fcbe170ebae4e1b5 21:06 <@deen> EastByte: other servers have jetpack? 21:07 <@deen> or what do you mean? 21:15 <@deen> and yes, gojegreen's bug should indeed be fixed. was it an old server version? 21:15 <@deen> i think I even released a new version just because of that 21:16 <@EastByte> deen: the jetpack prediction is triggered on vanilla servers for example 21:16 <@deen> wow, it is? 21:16 <@EastByte> jetpack strength is 400 except ddnetsrv tells the client otherwise 21:16 <@EastByte> if I understand correctly 21:16 <@deen> oh god... 21:16 <@deen> why did no one say anything?! 21:16 <@EastByte> hmmm 21:16 <@deen> I'm sure I tested this at some time 21:16 <@EastByte> they use stupid bots for vanilla? :D 21:16 <@deen> must have gone wrong in between 21:17 <@deen> ah, with low ping it's not thaaat noticable 21:17 <@deen> still, needs to be fixed quickly 21:17 <@EastByte> haha 21:17 <@EastByte> you should higher your ping for testing^^ 21:17 <@deen> actually with low ping it looks cool 21:17 <@deen> it looks like recoil 21:18 <@EastByte> I know^^ 21:18 <@EastByte> I thought it was a feature 21:18 <@EastByte> but it's horible 21:18 <@deen> yeah, with 200 it's terrible 21:18 <@EastByte> the screen is always shaking when you shoot the gun no matter of speed 21:18 <@deen> yeah 21:18 <@deen> so, how to fix it? 21:19 <@EastByte> it looks like the prediction is always enabled but depends on the strength 21:19 <@EastByte> so a strength of 0 like disabled 21:19 <@EastByte> so we could set the strength to 0 by default 21:19 <@EastByte> or we check for the gametype in gamecore 21:20 <@deen> Not sure where to set it to 0 best 21:21 <@EastByte> in some init function when checking for gametype? 21:49 <@deen> we should do it for every game type 21:49 <@deen> i think ddnet server sends a tune packet anyway 21:55 < eeeee> Learath2: i didn't really have time to look at your code but you're most likely doing it wrong if you need two requests 21:57 <@deen> yes, should really only be 1 request 21:57 <@deen> and if the request returns 404 in the header, return immediately and start regular map download instead 21:58 <@deen> otherwise download the map 21:59 < Learath2> deen: it somehow needs to be a blocking but not blocking request 21:59 <@deen> ^^ 21:59 <@deen> it needs to be blocking but with a callback 21:59 <@deen> and the callback can stop the block 21:59 <@deen> (I've never used curl) 22:05 < Learath2> deen: there is only one thing you should know about libcurl and that is curl_easy_perform blocks 22:05 < Learath2> and thats it 22:06 < Learath2> i really couldnt devise a plan to do it in one go 22:07 <@heinrich5991> maybe the `easy` in `curl_easy_perform` is the problem, it sounds like it's a shortcut for many other functions 22:11 < Learath2> heinrich5991: i checked it isnt there is easy or multi 22:12 <@heinrich5991> Learath2: there aren't other functions, there's just easy and multi? 22:12 < Learath2> there is curl_easy and curl_multi group of functions 22:18 < ddnet-commits> [ddnet] def- pushed 1 new commit to DDRace64: http://git.io/5f09sg 22:18 < ddnet-commits> ddnet/DDRace64 66d3e5e def: Fix: Not jetpack prediction on DDNet incompatible servers 23:15 < eeeee> Learath2: so can you explain again what's the problem with http codes >=400 ? 23:16 < eeeee> what happens if you try to download the file in one request and it's not there? 23:21 < Learath2> eeeee: should fail with an error pTask->State == STATE_ERROR 23:24 < eeeee> so can't you just catch that error and figure that update is probably not there 23:28 < eeeee> Learath2: also y u no use CJob 23:32 < eeeee> like take a look at https://github.com/def-/ddnet/blob/251af2fd49fd0325033cd2875c67f3359a9a0ee1/src/engine/shared/jobs.cpp it does pretty much the same thing as your code 23:40 < Learath2> eeeee: iguess the only different thing about CJob is that it doesn't kill off the thread if the queue is empty 23:42 < Learath2> I'll be busy for the next 4 or 5 days feel free to improve on it and comment on it and ill fix it all when im back 23:50 < eeeee> Learath2: yeah and you probably shouldn't kill the thread 23:50 < Learath2> eeeee: y ? 23:50 < eeeee> because why would you do that 23:51 < eeeee> also spinning up a new thread requires allocations and stuff - might take a bit of time 23:51 < Learath2> its just going to sit there until something else comes by 23:51 < eeeee> yeah but it will only consume a few kb of mem 23:55 < Learath2> eeeee: really dont feel like making it all into CJob ill just not kill the thread and make it sleep instead 23:58 < eeeee> but why 23:58 < eeeee> it shouldn't be too much work 23:59 < eeeee> sleeping would increase the latency further i.e. make it even slower compared to native download 23:59 < Learath2> thats what CJob does tho 23:59 < Learath2> i dont see how it could be better then what i did if im doing the exact same thing 23:59 < eeeee> yeah if you use signals like cjob does then it wouldnt have latency