02:19 < BotoX> minus: remote calling of teamspeak3 API functions with libffi 02:20 < BotoX> banclient "18" "1" "top kek" 02:20 < BotoX> already working 02:20 < BotoX> and now while I was looking around for some functions which expect pointers I stumbled upon this here: https://github.com/WesleyLuk90/ts3-python-plugin 02:21 < BotoX> I would've just used that instead of writing something by myself but now I am not sure if I should finish my program or just use that haha 02:25 < BotoX> client API that is and with remote calling I mean over something like a TCP socket 02:29 < BotoX> Now I am wondering what's the best way to parse stuff in a string "{1, 2, 3}" as an array lol 02:29 < BotoX> right now I'm using a union array for storing different datatypes 02:30 < BotoX> but for this I'd need a new union for every array 02:30 < BotoX> or make the current one bigger add a void * and point to the next unions D: 11:13 < heinrich5991> I just updated my system and now gcc colorizes its output 11:13 < heinrich5991> pretty cool :) 11:14 < LittleWhite> GCC 5 ? 11:16 <@minus> arch ships 5.1 since a few days 11:18 < LittleWhite> I did not remember that colorization was one of the feature :D 11:18 < LittleWhite> A long time ago, I tried some plugin to do the same :D 11:18 < LittleWhite> it was so awful 11:19 < heinrich5991> A long time ago, you should've used clang :) 11:19 < LittleWhite> I still have to try it, that's true 11:19 < LittleWhite> But, I am not that bothered with GCC 11:20 < heinrich5991> try it :) 11:20 < heinrich5991> it has really great error messages 11:20 < LittleWhite> I heard about that. I have to try for sure :D 11:21 < LittleWhite> But that's because I am not making errors :p (just joking, I am far from that point) 15:27 < LittleWhite> I got a question about games programming. 15:27 < LittleWhite> Is it a real thing, to avoid malloc/new (memory allocations), during the gameloop ? 15:28 < LittleWhite> or is it useless and I can go ahead with my malloc/new to manage new entities like bullets 15:33 < heinrich5991> I think bullets are indeed dynamically allocated in Teeworlds 15:33 <@minus> for anything you have massive amounts/appears with high frequency it's a bad idea 15:33 < heinrich5991> you have to consider that spawning bullets is relatively uncommon, and that's the only thing where TW uses dynamic allocation IIRC 15:34 <@minus> s/uncommon/infrequent/ 15:34 < LittleWhite> I thought it could have performance impact 15:34 < LittleWhite> since malloc could cause kernel call 15:35 < LittleWhite> for bullets, I would use a memory pool ... but you say that it is not the case in teeworld 15:35 <@minus> if you can allocate bullets statically, do it 15:35 <@minus> but i don't think it's necessary 15:36 < LittleWhite> statically, that's not the case neither. I am doing a big malloc, before game loop, and then, I use it 15:36 <@minus> it's a bit difficult i guess, cause you have to deal with fragmentation. bullet lifetimes are not constant 15:37 <@minus> that's pretty much static imho ;) 15:37 < LittleWhite> My implementation is : have a big array with a counter of the number of active entities 15:37 < LittleWhite> when you need a new one, increase the counter 15:37 < LittleWhite> and return ref on the "new one" 15:38 < LittleWhite> and when you need to remove one, do a swap with the last, then decrease counter 15:38 <@minus> that'll invalidate references though 15:38 < LittleWhite> well, it was the idea :D 15:39 < LittleWhite> I am using C++, and doing a bit different (never get the entity alone) 15:46 < heinrich5991> LittleWhite: my estimate would be that a malloc that hits the kernel still gets its work done in <1ms (of the 20ms time that you have for each tick) 15:47 < LittleWhite> ok :) 15:49 < BotoX> same heinrich5991 15:57 < LittleWhite> Thanks.