00:36 < laxa> Nighty night ! 00:41 <@deen> bye laxa who doesn't know lexy 12:56 <@deen> heinrich redirected http://ddrace.info/ 13:39 < laxa_work> nice ! 14:04 <@deen> hi Soreu 14:25 < EastByte> hello 14:28 < EastByte> deen: so ddnet actually represents ddrace :) 14:39 < Soreu> hi deen 14:41 <@deen> cool, 40 people who searched on google for "ip spoofing teeworlds" went to ddnet.tw... 14:41 < EastByte> where do you get that info from? 14:42 < EastByte> referer? 14:42 <@deen> yes 14:42 < EastByte> ah 14:42 <@deen> http://ddnet.tw/report.html 14:42 < EastByte> oh I might be one of them 14:42 < EastByte> 12345 14:42 <@deen> no idea why that comes^^ 14:42 < EastByte> xd 14:43 <@deen> but the searches are always funny 14:43 <@deen> "my ddrace map in teeworlds is buggy" 14:43 < EastByte> Googlebot/2.1 14:43 <@deen> ah nice 14:43 <@deen> xss 14:43 < EastByte> ah lol 14:43 <@deen> with logs 14:46 <@deen> tournament video is up 14:47 <@deen> Nice website: http://teeworlds.xzn.ir/ 14:47 < EastByte> it advertises for ddnet? 14:49 <@deen> seems to 15:24 < EastByte> already at 256min on rocketfly2 15:24 < EastByte> and it only got a little bit easier 15:25 < EastByte> (256min and not finished yet) 15:25 < EastByte> but the first rank (4min) will be mine of course :) 15:32 < Soreu> last 500 mins too probably ;p 15:33 < EastByte> the last one has 100min 15:35 < EastByte> the fact that the map only has 13 finished speaks for itself :P 15:35 < EastByte> oh wow I failed 15:35 < EastByte> accidently pressed spectator 15:37 <@deen> shit 15:37 <@deen> there is no kill protection for going to spec? 15:38 < EastByte> nope :) 15:38 <@deen> might want to add that =/ 15:38 < EastByte> who did /kill again? 15:38 < EastByte> laxa or Savander 15:38 <@deen> Savander I think 15:38 < EastByte> Savander: do it :D 15:38 < Savander> what 15:38 < Savander> ?? 15:38 < Savander> ;D 15:38 < Savander> ah 15:38 < EastByte> Savander: I just failed because of spec 15:38 < Savander> LOl 15:38 < Savander> ah ok 15:39 < Savander> i know what lol 15:39 < Savander> I didn't thought about "join to spec" in kill protection :P :D 15:39 < Savander> :D:D 15:43 <@deen> but you should really add it, Savander 15:43 <@deen> I used to accidentally kill myself like that all the time 15:43 < EastByte> just disable spec on kill protection 15:44 < EastByte> (with notification of course) 15:45 < Savander> i'll add this, because now i need to think where is "JoinToSpectator" event :PP 15:46 < EastByte> gamecontext 15:50 < EastByte> deen: do you think garbage collecting in gamedev makes sense? 15:50 <@deen> depends on the game 15:50 <@deen> for something like teeworlds it would be fine 15:51 < EastByte> I mean, if the game is well planed, manual resource alloc/dealloc shouldn't be a problem at all 15:51 <@deen> for the next game that barely runs at 30fps on 400W GPUs rather not 15:51 <@deen> hm 15:51 < EastByte> well I'm not thinking about the speed right now 15:51 <@deen> i had some trouble in teeworlds with that 15:51 <@deen> maybe that's my fault or it's not well planned in teeworlds 15:52 <@deen> generally you try not to allocate anything in games, right? 15:52 <@deen> at least while the game is running 15:52 < EastByte> I think so 15:52 < EastByte> but that means you have bounds everywhere 15:52 < EastByte> boundaries* 15:53 <@deen> why? 15:53 <@deen> ah yeah, but you can have dynamic bounds at least 15:53 <@deen> set at the map start or something 15:53 < EastByte> for example, you don't know how manye game objects the gameworld will have 15:53 < EastByte> but it's no problem at all to do alloc/dealloc there 15:53 < EastByte> I think gc is more because of lazyness 15:54 < EastByte> I don't have much experience in this topic though 15:55 < EastByte> when I started to use C I loved the feeling of allocation and freeing data 15:55 < EastByte> it feels so clean :D 15:56 <@deen> i'd say it's just one thing less to think about in a GC language 15:57 <@deen> you can still manually allocate and dealloc memory if it turns out that you need it in some place 15:57 < EastByte> depends on whether the language allows alloc/free 15:58 <@deen> I'm mainly thinking about nimrod, c, c++, rust 15:58 <@deen> languages i consider interesting for game development 15:59 < EastByte> hm yes 15:59 < EastByte> so would you use nimrod gc for hookrace? 15:59 <@deen> yes, with the GC running after the frame is rendered and we still have time 16:00 < EastByte> also serverside? 16:00 < EastByte> might be critical while handling >200 players 16:00 <@deen> will have to see how that works 16:00 <@deen> if it ever comes to that :P 16:01 < EastByte> ^^ 16:01 < laxa_work> gogogo deen, I stoped to annoy :p 16:01 < EastByte> you did? 16:01 < laxa_work> I think so 16:01 <@deen> and I'm still busy 16:01 <@deen> also nimrod is unusable right now... 16:01 < laxa_work> Boah 16:02 < EastByte> I hope nimrod is not going to rot 16:02 < EastByte> ^ 16:02 < EastByte> wow I'm funny 16:02 < laxa_work> !en-fr rot 16:02 < Nimda> Translation: pourriture 16:03 < EastByte> but I already am in a situation in which I can't decide between python,nodejs and nim 16:03 < Savander> ok 16:03 <@deen> for what kind of projects? 16:03 < EastByte> everything 16:04 < Savander> added, i needed re-download ddnet source.. 16:04 < Savander> but, ye 16:04 < Savander> i add spectator protection 16:04 < EastByte> let's say mostly serverside daemons 16:04 <@deen> i still use python for everything ddnet-related 16:04 < EastByte> like ajax 16:04 <@deen> and it's painful because i'm missing nim features 16:04 < EastByte> oh cool 16:04 < Savander> (i hope, i added it correctly :c) 16:04 <@deen> Savander: test it! 16:04 < Savander> i test it.. 16:04 < Savander> and it works 16:04 < Savander> xd 16:04 < EastByte> I hate js, I don't wanna use it because it sucks 16:04 < EastByte> but I still do and it's like a standard already 16:05 <@deen> for me python has all the libraries i need and i already have python codebases 16:05 < EastByte> deen: did you see the talk about how asm.js might kill js in the future? 16:05 <@deen> no 16:05 < EastByte> okay nvm 16:05 <@deen> but i heard that we should make nim target asm.js 16:05 < EastByte> yes that might be cool 16:06 <@deen> would also be pretty easy 16:06 < EastByte> via C? 16:06 <@deen> nono 16:06 <@deen> the javascript backend just creates javascript text 16:06 <@deen> it's pretty easy to hack on 16:07 <@deen> but there also was some c -> asm.js conversion using llvm 16:07 < EastByte> yes 16:13 < Savander> wtf 16:13 < Savander> https://github.com/savander/ddnet/commit/0ecbf36de4373fe44018e03acecc75760293eddf 16:13 < Savander> - str_format(aBuf, sizeof(aBuf), "[← %s] %s", Server()->ClientName(ClientID), pMessage); + str_format(aBuf, sizeof(aBuf), "[â†� %s] %s", Server()->ClientName(ClientID), pMessage); 16:13 < Savander> why 16:13 < Savander> it change 16:13 < Savander> from [← %s] 16:13 < Savander> to [â†� %s] 16:13 <@deen> your encoding is wrong 16:13 < Savander> what the hell 16:13 < EastByte> your editor sucks 16:13 < Savander> Eclipse 16:13 < Savander> on windows 16:13 <@deen> can you set file encoding to utf8? 16:13 <@deen> that should fix it 16:14 < Savander> i set it 16:14 < Savander> and, then it make it 16:14 < Savander> like that 16:14 <@deen> then that's weird =/ 16:14 < Savander> sec 16:14 <@deen> because the file was utf8 before too 16:15 <@deen> Hm yeah, the result is utf8 16:15 <@deen> maybe eclipse interpreted the file as something else 16:16 <@deen> http://ddnet.tw/gamecontext.cpp 16:16 <@deen> this should be fine 16:17 < Savander> https://github.com/savander/ddnet/commit/1278538a84a0ca775a98c45433247262d49d5751 16:17 <@deen> ok 16:17 <@deen> so, pull request coming? 16:18 < Savander> don't know 16:18 < Savander> how to make pull request 16:18 < Savander> xD 16:18 <@deen> https://help.github.com/articles/creating-a-pull-request 16:21 < Savander> works?? 16:21 < ddnet-commits> [ddnet] savander opened pull request #44: Kill protection: Prevent joining to spectators (DDRace64...DDRace64) http://git.io/A03w5w 16:22 < ddnet-commits> [ddnet] def- closed pull request #44: Kill protection: Prevent joining to spectators (DDRace64...DDRace64) http://git.io/A03w5w 16:23 < Savander> okay, so 16:23 < Savander> now i know how 16:23 <@deen> thanks 16:23 < Savander> to make pull request.. 17:01 < laxa_work> deen: I can't help myself, but I just had a new idea :D 17:01 < laxa_work> That's called : The weekly challenge. 17:01 < laxa_work> Every week we choose / make a poll for a map 17:02 < laxa_work> and then people have to get the best time during the week to be featured on hall of fame 17:02 <@deen> sounds boring 17:02 < laxa_work> the only thing you would need to do is to host a specific server with that map only 17:02 <@deen> like the old tournaments 17:02 < laxa_work> yeah kind of 17:02 < laxa_work> that would make people run maps instead of just finishing like the majority actually do 17:02 < EastByte> but shouldn't be much work 17:20 < laxa_work> and that would help making the hall of fame grow 17:47 < Savander> https://www.youtube.com/watch?v=6DcfXVL0mh0 17:47 < Nimda> [YouTube] Title: Gigi D' Agostino: The Riddle | Rating: 4.92/5.00 | Views: 22,761,478 18:30 <@deen> Server is crashing again 18:30 <@deen> last message is always 18:30 <@deen> [14-09-22 17:03:02][game]: kill killer='3:Crayonic' victim='3:Crayonic' weapon=-1 special=0 18:31 <@deen> weapon=-1 means falling into kill tile our out of map 18:31 <@deen> but i don't see a bug in Savander's changes and can't reproduce it 18:33 <@deen> but that change is the only one i added since then 18:34 <@deen> other servers, without it, don't crash 18:39 < EastByte> hn 18:40 <@deen> is there another way to get weapon=-1? 18:40 <@deen> because i can't find one and on that map are no kill tiles or falling down 18:42 <@deen> my bad, there are death tiles 18:42 < EastByte> but that wouldn't cause a crash 18:43 <@deen> got the crash! 18:43 < EastByte> WAHAH 18:44 <@deen> has to do with the map i guess 18:44 < EastByte> okay 18:44 <@deen> it synchronously kills 2 people at the exact same time 18:44 <@deen> still, server shouldn't crash^^ 18:45 <@deen> so stupid 18:46 < Tobii> can you now also reproduce it before savanders change? 18:46 <@deen> yeah 18:46 <@deen> had nothing to do with that 18:46 <@deen> it's an old bug i did myself, but it only occurs on this one map 18:46 < EastByte> ^^ 18:47 <@deen> when you have 2 people dying in the same tick while being pulled by the same dragger 18:51 < EastByte> hm I have a cool idea for a 1st april event 18:53 <@deen> yes? 18:54 < EastByte> haha, I will implement it and you will see then :P 18:57 < ddnet-commits> [ddnet] def- pushed 1 new commit to DDRace64: http://git.io/sJ1X0w 18:57 < ddnet-commits> ddnet/DDRace64 fbd87e7 def: Fix potential server crashes 18:58 < ddnet-commits> [ddnet] def- pushed 1 new commit to DDRace64: http://git.io/pI3QdA 18:58 < ddnet-commits> ddnet/DDRace64 2aedf8e def: Grammar 19:12 < laxa> deen: I wanna do my second change to ddnet client ! 19:13 < laxa> Where the player list tab rendered in game ? :p 19:13 < EastByte> scoreboard.cpp in components maybe 19:15 < laxa> nop ! menus_ingame.cpp :) 19:26 < laxa> love deen's comment on the code xD 19:26 < laxa> or maybe they aren't from deen 19:27 < laxa> well it is xD 19:27 < laxa> for(int k = 0; k < MAX_CLIENTS-1; k++) // ffs, bubblesort 19:27 <@deen> no it's not 19:27 <@deen> i don't comment :P 19:27 < laxa> git blame tells me you are the last to have changed the line 19:27 <@deen> i changed the MAX_CLIENTS-1 19:27 <@deen> or the space between for and (int 19:28 < laxa> there is no space :) 19:30 < EastByte> this is how it works: https://eastbit.net/public/videos/rocketfly8.webm 19:31 < laxa> beh too bad EastByte 19:31 < EastByte> :( 19:32 < laxa> deen: could you tell me what's exactly needed to compile windows "release" ? I am bored of downloading 35 MB from github :) 19:39 <@deen> i don't know 19:43 < Savander> :/ 19:51 < laxa> deen: any idea what file I am missing if it tries to compile with gcc on windows ? 19:54 < EastByte> are u using the dev console 19:54 <@deen> no idea 19:54 < EastByte> if yes, try to remove config.lua and run "bam config" 20:17 < Savander> What the hell 20:17 < Savander> "strong and weak hook" 20:17 < Savander> ;/ 20:17 < EastByte> you just realized? 20:18 < Savander> no 20:18 < Savander> but 20:18 < Savander> why ? 20:18 < Savander> xD 20:18 < Savander> server problem? 20:18 < Savander> or what 20:18 < Savander> i know, it's everywhere ( i guess ) 20:18 < EastByte> physics engine problem 20:19 < EastByte> I think it depends on the order the character cores are handled 20:19 < EastByte> deen knows more 20:27 <@deen> yeah, it's the order in which characters are handled because of how they're put into a linked list of entities 20:27 < EastByte> it fixing it will make everything weired 20:27 <@deen> unfortunately, yes 20:27 <@deen> hammerfly physics change etc 20:30 <@deen> pros hated it 20:37 < EastByte> a correctly working physics engine would need many hacks to make it ddrace like I guess 20:50 < Savander> i hate 20:50 < Savander> my mouse 20:50 < Savander> :? 20:51 < o_be_one> hi :) 21:14 < laxa> I guess I am too noob in C++ right now 21:14 < laxa> can someone tells me what's wrong with that ? : 21:14 < laxa> if (m_pClient->m_aClients[i + 1] && str_comp_nocase(m_pClient->m_aClients[i].m_aName, m_pClient->m_aClients[i + 1].m_aName) > 0) 21:14 <@deen> == 0 at the end 21:14 <@deen> also check if i+1 is not too big 21:15 < laxa> it's in a "for" 21:16 < laxa> well, == 0 isn't exactly > 0 xD 21:38 < laxa> I am so fucking bad xD 21:43 < laxa> deen: http://pastebin.com/LUeTDTzc 21:44 < laxa> this code breaks everything, but it compiles. 21:44 < laxa> Need to know what's wrong :( 21:57 <@deen> http://forum.ddnet.tw/viewtopic.php?f=3&t=446 21:58 < laxa> deen: xD 21:59 <@deen> laxa: that's not bubblesort 21:59 <@deen> i don't know what you're trying to do 21:59 < laxa> it's my own bubblesort 21:59 <@deen> no, that is definitely not bubble sort 21:59 < laxa> well, it's a sort right ? 21:59 <@deen> no 22:00 <@deen> it just breaks everything and probably segfaults 22:00 <@deen> why do you set i to -1? 22:00 < laxa> to reset the loop 22:04 < laxa> deen: can we use std::sort in teeworlds code ? 22:04 <@deen> as i said, it's c with classes 22:04 < laxa> hum ok 22:06 < mr_pause> Hello 22:06 < laxa> ... 22:06 < mr_pause> What does it mean, "it's c with classes" ? 22:07 < mr_pause> laxa: Ca compile avec quoi ? 22:07 <@deen> doesn't use modern c++ features, like the STL or templates 22:07 < laxa> g++ sur linux, VS sur windows 22:07 <@deen> mostly standard c functions 22:08 < mr_pause> Well but you could use them right ? 22:08 < mr_pause> std::sort seems better than hand coding some shitty bubble sort inline 22:09 < mr_pause> Especially if coded by laxa =) 22:09 < mr_pause> (trust me) 22:09 < laxa> xD 22:09 <@deen> I'd prefer to keep the source in the same style 22:10 < mr_pause> Well at least use stdlib sorting functions i don't know 22:10 < mr_pause> What's the point using half of C++ ? =/ 22:11 <@deen> ask the TW devs 22:11 < laxa> mr_pause: c'est pour ça que je proposais à redpist de tout recoder en C++ ! 22:12 < mr_pause> laxa: ARGENT 22:12 < laxa> xD 22:12 < mr_pause> laxa: man qsort, utilise ca 22:13 < laxa> Mon sort fonctionne 22:13 < laxa> C'est pas ça qui merde 22:13 <@deen> qsort is NOT standard c 22:13 < mr_pause> deen: Well, still better than nothing =D 22:13 <@deen> also the language here is supposed to be english, not everyone understands french 22:13 < laxa> sorry deen 22:13 < laxa> !trace 37.161.45.139 22:13 < Nimda> 37.161.45.139's location: Colombes, Ile-de-France, France 22:13 < mr_pause> C was a long time ago =D 22:14 < laxa> wtf 22:14 <@deen> I'm pretty sure C is one of the most popular languages even today 22:15 < mr_pause> I mean, a long time ago for me 22:15 < mr_pause> So i don't really remember what's standard C or not =) 22:16 <@deen> it says so in the manpage 22:16 < mr_pause> Mine says: The qsort() function conforms to ISO/IEC 9899:1990 (``ISO C90''). 22:16 <@deen> oh 22:17 <@deen> my bad 22:17 < mr_pause> I'm on OSX though 22:17 < mr_pause> xD 22:17 <@deen> yeah ,it's C89 and C99 as well 22:17 <@deen> might even work with VS 22:25 < ddnet-commits> [ddnet] def- pushed 1 new commit to DDRace64: http://git.io/ZRb_uw 22:25 < ddnet-commits> ddnet/DDRace64 2c61005 def: Fix: Selecting quads works after having rotated one 22:40 <@deen> no idea how noone noticed that bug before 22:57 < Savander> http://www.twitch.tv/vsavander/ looks like 22:57 < Savander> perfect stream 22:57 < Savander> 22:57 < Savander> wow 22:57 < Savander> those pings 22:58 <@deen> huh, nice pings 23:00 < Savander> ye 23:00 < Savander> :D 23:17 < laxa> deen: what if I make something for ddnet client, but code is really ugly ? 23:17 <@deen> then i don't accept it 23:17 < laxa> hum :( 23:18 < laxa> I'll ask for help to my friend mr_pause then :p 23:18 < laxa> or maybe you can help me if it works, to make the code better :) 23:35 < mr_pause> deen: Do you know this bam build thingy ? 23:35 <@deen> not really 23:35 <@deen> i just use it 23:35 < mr_pause> How does i change the arch, this is driving me mad =D 23:35 <@deen> not at all iirc 23:35 < mr_pause> It does not want to compile in 64 bit arch 23:36 <@deen> no idea, always worked automatically for me 23:36 < laxa> ask matricks in #teeworlds 23:45 < mr_pause> ok, i found out there is python scripts used for build too 23:45 < mr_pause> rube goldberg build system 23:46 < mr_pause> maybe some brainfuck is hidden in there 23:50 < mr_pause> ok, managed to compile it 23:51 < mr_pause> laxa: What the hell were you trying to sort ? 23:51 < laxa> speak on skype mofo 23:52 < laxa> go ingame -> esc -> player list 23:52 < laxa> ingame on a server 23:53 < Savander> deen: 23:53 < Savander> its a bug ye? 23:53 < Savander> 0 ping in DDNet Tab 23:53 < Savander> on ger servers 23:53 < Savander> but only on ger :P