00:17 <+bridge> [ddnet] I always have the feeling you guys talk about different things. For me it sounds like @fokkonaut wants to implement his own custom account system with custom rows and data. And @heinrich5991 talks more about a regular ddnet case. 00:18 <+bridge> [ddnet] yes 00:19 <+bridge> [ddnet] but more tables aren't a problem in mysql(?) 00:19 <+bridge> [ddnet] Sure it is easier to setup ddnet with MySQL and just configure that than rewrite it to use SQLite. Just wanted to make sure @fokkonaut wants to rebuild a new account system from scratch anyways so it will involve work. 00:20 <+bridge> [ddnet] I also have no idea about MySQL just wanted to make sure everybody knows who is talking about what πŸ˜ƒ 00:20 <+bridge> [ddnet] oh, doesn't fokkonaut want to base the work on ddnet? 00:20 <+bridge> [ddnet] He does 00:20 <+bridge> [ddnet] So scratch might be the wrong word 00:21 <+bridge> [ddnet] But it is like not ddnet points/maps related 00:23 <+bridge> [ddnet] mhh 00:23 <+bridge> [ddnet] yes, but if he's got to set up mysql anyway, adding sqlite doesn't sound all too useful 00:23 <+bridge> [ddnet] is it a bug with databases or why do ranks not work 00:23 <+bridge> [ddnet] i mean, they should be stored in records folder? 00:23 <+bridge> [ddnet] for me they never worked :( 12:26 <+bridge> [ddnet] Can I check, how often a specific string (`\n`) is inside of another string? 15:44 <+bridge> [ddnet] @fokkonaut in C++? 15:48 <+bridge> [ddnet] hey 15:48 <+bridge> [ddnet] does any1 know the command to get this freeze prefix? 15:48 <+bridge> [ddnet] 15:48 <+bridge> [ddnet] https://cdn.discordapp.com/attachments/293493549758939136/559388117413396510/unknown.png 15:50 <+bridge> [ddnet] @Learath2 most likley yes 15:50 <+bridge> [ddnet] i would create my own func 15:51 <+bridge> [ddnet] using some str search 15:51 <+bridge> [ddnet] `std::count` is a thing if you are only looking for a character 15:51 <+bridge> [ddnet] and give it the offset of the last found 15:51 <+bridge> [ddnet] yuk std xd 15:51 <+bridge> [ddnet] more tw style pls 15:52 <+bridge> [ddnet] Well do you want to count a char or do you want to count a substring? 15:52 <+bridge> [ddnet] i think newline is a char 15:52 <+bridge> [ddnet] you can also loop over it 15:52 <+bridge> [ddnet] and do a char comparision true 15:54 <+bridge> [ddnet] yeah 15:54 <+bridge> [ddnet] do a loop 15:54 <+bridge> [ddnet] ```c 15:54 <+bridge> [ddnet] int count(const char *s, char c) 15:54 <+bridge> [ddnet] { 15:54 <+bridge> [ddnet] int count = 0; 15:54 <+bridge> [ddnet] for(;*s; s++) if(*s == c) count++; 15:54 <+bridge> [ddnet] return count; 15:54 <+bridge> [ddnet] }``` 15:55 <+bridge> [ddnet] oh, this channel was connected to irc :/ 15:55 <+bridge> [ddnet] pro golfer learath 15:55 <+bridge> [ddnet] rip irc 15:55 <+bridge> [ddnet] ```c++ 15:55 <+bridge> [ddnet] int count(const char * pStr, char char, size_t len) 15:55 <+bridge> [ddnet] { 15:55 <+bridge> [ddnet] int c = 0; 15:55 <+bridge> [ddnet] for (int i = 0; i < len; i++) 15:55 <+bridge> [ddnet] { 15:55 <+bridge> [ddnet] if (pStr[i] == char) 15:55 <+bridge> [ddnet] { 15:55 <+bridge> [ddnet] c++; 15:55 <+bridge> [ddnet] } 15:55 <+bridge> [ddnet] } 15:55 <+bridge> [ddnet] returnc; 15:55 <+bridge> [ddnet] } 15:55 <+bridge> [ddnet] ``` 15:55 <+bridge> [ddnet] @Learath2 u had to name count as c 15:55 <+bridge> [ddnet] for the joke 15:55 <+bridge> [ddnet] hwod did u do the epci synta x higlightß 15:55 <+bridge> [ddnet] :( 15:55 <+bridge> [ddnet] well guess urs is better xd 15:55 <+bridge> [ddnet] for(;*s; s++) 15:55 <+bridge> [ddnet] dfq 15:56 <+bridge> [ddnet] does this even work 15:56 <+bridge> [ddnet] dont u need the length? 15:56 <+bridge> [ddnet] Well for a c string, you don't need to know the length 15:56 <+bridge> [ddnet] because its null terminated? 15:56 <+bridge> [ddnet] if its not? 15:56 <+bridge> [ddnet] the string ends when you hit a '\0' 15:56 <+bridge> [ddnet] It's the users responsibility imho, if you pass something that isn't a valid string to a function that expects one it's your fault 15:57 <+bridge> [ddnet] k 15:57 <+bridge> [ddnet] :monkaS: 15:57 <+bridge> [ddnet] always expect the worse 15:57 <+bridge> [ddnet] :feelsbadman: 15:57 <+bridge> [ddnet] any1 know the command for this freeze prefix 15:57 <+bridge> [ddnet] https://cdn.discordapp.com/attachments/293493549758939136/559390457365397505/unknown.png 15:58 <+bridge> [ddnet] freeze prefix? 15:58 <+bridge> [ddnet] idk how to fuckign call it 15:58 <+bridge> [ddnet] he means no ninja 15:58 <+bridge> [ddnet] yea 15:58 <+bridge> [ddnet] on freeze 15:58 <+bridge> [ddnet] any1 know the command for no ninja in freeze 15:58 <+bridge> [ddnet] https://cdn.discordapp.com/attachments/293493549758939136/559390457365397505/unknown.png 15:58 <+bridge> [ddnet] @Jim Lahey rename 15:58 <+bridge> [ddnet] default 15:58 <+bridge> [ddnet] to 15:58 <+bridge> [ddnet] ninja 15:58 <+bridge> [ddnet] well copy it 15:58 <+bridge> [ddnet] and there u have 15:58 <+bridge> [ddnet] default to ninja= 15:59 <+bridge> [ddnet] cl_show_ninja maybe? 15:59 <+bridge> [ddnet] ah yeah 15:59 <+bridge> [ddnet] thanks! 15:59 <+bridge> [ddnet] ryozuki giving wrong advice.. 16:00 <+bridge> [ddnet] xdd 16:00 <+bridge> [ddnet] i didnt know about show ninja 16:00 <+bridge> [ddnet] i just remembered aoe had his skin as ninja skin 16:02 <+bridge> [ddnet] Does the youtuber player stutter for you aswell? 16:04 <+bridge> [ddnet] no it was a command in f1 but i cant find it 18:17 <+bridge> [ddnet] @Learath2 yea, in teeworlds 18:17 <+bridge> [ddnet] If you are looking for a character I posted the answer above 18:18 <+bridge> [ddnet] If you want a substring you want strstr 18:19 <+bridge> [ddnet] e.g. `while((str = strstr(str. "Substring")) count++;` 18:19 <+bridge> [ddnet] Hmm that doesnt really work but you get the point :P 18:21 <+bridge> [ddnet] `for(;(str = strstr(str, "subst")); str++)` 18:25 <+bridge> [ddnet] heinrich5991 here? 18:50 <+bridge> [ddnet] please stop abusing the poor for loop @Learath2 18:56 <+bridge> [ddnet] :D 18:57 <+bridge> [ddnet] @Learath2 i cant get it to work 18:58 <+bridge> [ddnet] it wont compile for some reason 18:58 <+bridge> [ddnet] it says unresolved external symbol 19:01 <+bridge> [ddnet] strstr belongs to the standard library, we dont use the stamdard library functions in teeworlds except in system.c 19:02 <+bridge> [ddnet] okay, how do i count it from GameContext then? 19:02 <+bridge> [ddnet] i need this function to check how many \n 's are in a string in gamecontext^^ 19:29 <+bridge> [ddnet] okay, somehow the loop doesnt work 19:56 <+bridge> [ddnet] ``` 19:56 <+bridge> [ddnet] int CGameContext::CountSubstring(const char *pStr, const char *pSub) 19:56 <+bridge> [ddnet] { 19:56 <+bridge> [ddnet] int count = 0; 19:56 <+bridge> [ddnet] for (; (pStr = strstr(pStr, pSub)); pStr++) 19:56 <+bridge> [ddnet] { 19:56 <+bridge> [ddnet] if (!str_comp_nocase(pStr, pSub)) 19:56 <+bridge> [ddnet] count++; 19:56 <+bridge> [ddnet] } 19:56 <+bridge> [ddnet] return count; 19:56 <+bridge> [ddnet] } 19:56 <+bridge> [ddnet] ``` 19:56 <+bridge> [ddnet] not working :x 19:56 <+bridge> [ddnet] @Learath2 do u know whats the useragent used by the ddnet client when requesting info.ddnet.tw, for research purposes 20:32 <+bridge> [ddnet] @Ryozuki `"DDNet " GAME_RELEASE_VERSION " (" CONF_PLATFORM_STRING "; " CONF_ARCH_STRING ")"` 20:32 <+bridge> [ddnet] ok thanks 21:41 <+bridge> [ddnet] @Ryozuki what kind of research? πŸ˜„ 21:44 <+bridge> [ddnet] :toptri: 21:45 <+bridge> [ddnet] a teestalker, basically i gather stats of people playtime maps player count map dificult name etc 21:45 <+bridge> [ddnet] :brownbear: 21:46 <+bridge> [ddnet] that reminds me that I could use the log to check what version of DDNet client people are using 21:46 <+bridge> [ddnet] show it :D 21:48 <+bridge> [ddnet] That's for today: 21:48 <+bridge> [ddnet] $ grep "GET /info" access.log | grep "DDNet" | sed -e "s/.*DDNet \([0-9\.]*\) .*/\1/g" |sort|uniq -c 21:48 <+bridge> [ddnet] 7 10.8.4 21:48 <+bridge> [ddnet] 3 10.8.5 21:48 <+bridge> [ddnet] 536 10.8.6 21:48 <+bridge> [ddnet] 7 11.0.1 21:48 <+bridge> [ddnet] 6 11.0.2 21:48 <+bridge> [ddnet] 87 11.0.3 21:48 <+bridge> [ddnet] 2 11.1.1 21:48 <+bridge> [ddnet] 21 11.1.2 21:48 <+bridge> [ddnet] 2 11.1.3 21:48 <+bridge> [ddnet] 12 11.1.4 21:48 <+bridge> [ddnet] 7 11.1.7 21:48 <+bridge> [ddnet] 15 11.1.8 21:48 <+bridge> [ddnet] 41 11.1.9 21:48 <+bridge> [ddnet] 1 11.2 21:48 <+bridge> [ddnet] 125 11.2.1 21:48 <+bridge> [ddnet] 45 11.3 21:48 <+bridge> [ddnet] 68 11.3.1 21:48 <+bridge> [ddnet] 8 11.4 21:48 <+bridge> [ddnet] 7 11.4.1 21:48 <+bridge> [ddnet] 81 11.4.2 21:48 <+bridge> [ddnet] 38 11.4.3 21:48 <+bridge> [ddnet] 387 11.4.4 21:48 <+bridge> [ddnet] 15 11.4.5 21:48 <+bridge> [ddnet] 53 11.4.6 21:49 <+bridge> [ddnet] 211 11.5 21:49 <+bridge> [ddnet] 121 11.5.1 21:49 <+bridge> [ddnet] 109 11.6 21:49 <+bridge> [ddnet] 209 11.6.1 21:49 <+bridge> [ddnet] 24 11.7 21:49 <+bridge> [ddnet] Oops, that was longer than it looked. And older versions didn't request the info file obviously 21:49 <+bridge> [ddnet] 10.8.6 has lots 21:49 <+bridge> [ddnet] i wonder if its a bot or ppl dont like 11 21:49 <+bridge> [ddnet] 11 is laggy for me 21:49 <+bridge> [ddnet] 10 isn't 21:49 <+bridge> [ddnet] with opengl ? 21:49 <+bridge> [ddnet] i heard that ath is based on 10 21:49 <+bridge> [ddnet] and that's why ppl say it's better 21:49 <+bridge> [ddnet] idk @Ryozuki 21:49 <+bridge> [ddnet] xd 21:49 <+bridge> [ddnet] xd 21:50 <+bridge> [ddnet] 664 linux 21:50 <+bridge> [ddnet] 20 macosx 21:50 <+bridge> [ddnet] 746 win32 21:50 <+bridge> [ddnet] 8250 win64 21:50 <+bridge> [ddnet] rip 21:51 <+bridge> [ddnet] 14.5% is linux 21:52 <+bridge> [ddnet] i think 21:52 <+bridge> [ddnet] wait 21:52 <+bridge> [ddnet] this is only for today 21:52 <+bridge> [ddnet] ?_? 21:52 <+bridge> [ddnet] yes 21:52 <+bridge> [ddnet] 9k players ? 21:52 <+bridge> [ddnet] owo 21:52 <+bridge> [ddnet] unique ip? 21:52 <+bridge> [ddnet] more like 10 actually 21:52 <+bridge> [ddnet] 9k times client was started or refresh was pressed 21:52 <+bridge> [ddnet] πŸ˜„ 21:52 <+bridge> [ddnet] wooow 21:52 <+bridge> [ddnet] :troll: 21:53 <+bridge> [ddnet] not much 21:53 <+bridge> [ddnet] i should filter for unique ip at least 21:53 <+bridge> [ddnet] wait refresh pressed 21:53 <+bridge> [ddnet] i do that 10 times a hour 21:53 <+bridge> [ddnet] 1972 unique ips 21:54 <+bridge> [ddnet] since 06:25 am 21:54 <+bridge> [ddnet] is sunday still the day with more ppl? 21:54 <+bridge> [ddnet] yes 21:55 <+bridge> [ddnet] 444 simul players today 21:55 <+bridge> [ddnet] 20:00 21:55 <+bridge> [ddnet] xD 21:55 <+bridge> [ddnet] that's saturday 21:55 <+bridge> [ddnet] 19:30* 21:55 <+bridge> [ddnet] stats only refresh around midnight 21:55 <+bridge> [ddnet] oh 21:55 <+bridge> [ddnet] true 21:56 <+bridge> [ddnet] this saturday beats the past sunday 21:56 <+bridge> [ddnet] tho 21:56 <+bridge> [ddnet] and that number is not actually "at the same time", since we take the max number of players of each server during that hour 21:56 <+bridge> [ddnet] and then sum them up 21:56 <+bridge> [ddnet] so if GER has 200 players, then gets lags and they all move over to RUS, it would show 400 players, even though only 200 were online at any time 21:57 <+bridge> [ddnet] i see 21:57 <+bridge> [ddnet] >serverhop 21:58 <+bridge> [ddnet] timakro found this https://goaccess.io/ which uses nginx logs to show stuff 21:58 <+bridge> [ddnet] its cool 21:58 <+bridge> [ddnet] yeah, we use that for DDNet too 21:58 <+bridge> [ddnet] my shit traffic :feelsbadman: 21:58 <+bridge> [ddnet] https://cdn.discordapp.com/attachments/293493549758939136/559481241825705988/unknown.png 22:01 <+bridge> [ddnet] 2k unique ip is nice 22:51 <+bridge> [ddnet] @Ryozuki :toptri: 22:51 <+bridge> [ddnet] https://cdn.discordapp.com/attachments/293493549758939136/559494464620593162/unknown.png 22:51 <+bridge> [ddnet] :twintri: 23:26 <+bridge> [ddnet] Wtf why would you add KoG tab to the ddnet client? 23:31 <+bridge> [ddnet] yeah 23:31 <+bridge> [ddnet] pls no 23:39 <+bridge> [ddnet] Why not? What client would KoG players use otherwise? 23:39 <+bridge> [ddnet] is KoG by DDnet? 23:39 <+bridge> [ddnet] No 23:39 <+bridge> [ddnet] why would you advertise for them? 23:39 <+bridge> [ddnet] Why not? πŸ˜„ 23:39 <+bridge> [ddnet] They are nice servers 23:40 <+bridge> [ddnet] we're not really in competition to them, more like complementing 23:40 <+bridge> [ddnet] and even if they get more players and we get fewer by that, who cares? 23:41 <+bridge> [ddnet] i dont like gores :ninja: 23:41 <+bridge> [ddnet] me neither, so I just won't click on the tab and play there 23:41 <+bridge> [ddnet] but no cost in having it there 23:41 <+bridge> [ddnet] @deen 23:41 <+bridge> [ddnet] hi 23:41 <+bridge> [ddnet] i love u 23:41 <+bridge> [ddnet] @deen Just merge it 23:42 <+bridge> [ddnet] nooo 23:42 <+bridge> [ddnet] lol just accept changes, its not even a bad change 23:42 <+bridge> [ddnet] its like gores players dont play ddnet servers, they also have the ddnet tab 23:42 <+bridge> [ddnet] there is just no gores client 23:43 <+bridge> [ddnet] not merging this would be very mean 23:43 <+bridge> [ddnet] why 23:43 <+bridge> [ddnet] and if they made a Gores client just to get their own tab then that sounds like a waste of resources 23:43 <+bridge> [ddnet] its the ddnet client 23:43 <+bridge> [ddnet] exactly deen 23:43 <+bridge> [ddnet] its just weird to me to add other servers have nothing to do with ddnet in a ddnet client. Do you add unique tab too, ddracepro or what? 23:43 <+bridge> [ddnet] well, then let's rename it from ddnet client to ddrace client πŸ˜„ 23:43 <+bridge> [ddnet] lol they dont even contribute to the client dev 23:43 <+bridge> [ddnet] qshar commits are rare rare 23:44 <+bridge> [ddnet] add bombay tab too 23:44 <+bridge> [ddnet] yea, rename the client 23:44 <+bridge> [ddnet] no bombay 23:44 <+bridge> [ddnet] thatsblock 23:44 <+bridge> [ddnet] we are ddrace 23:44 <+bridge> [ddnet] add unique tab too 23:44 <+bridge> [ddnet] thats race 23:44 <+bridge> [ddnet] :p 23:44 <+bridge> [ddnet] lol it uses ddrace as base mod 23:44 <+bridge> [ddnet] ah, that's the issue πŸ˜„ 23:44 <+bridge> [ddnet] deen 23:44 <+bridge> [ddnet] @deen can i replace jao if he leaves 23:45 <+bridge> [ddnet] @deen now they want an unique tab πŸ™„ xd 23:45 <+bridge> [ddnet] we got the coolest website among all :P 23:45 <+bridge> [ddnet] nice advertise 23:45 <+bridge> [ddnet] xd 23:45 <+bridge> [ddnet] im so proud of you @Ryozuki 23:45 <+bridge> [ddnet] unique members contributed lot more 23:45 <+bridge> [ddnet] to ddnet 23:45 <+bridge> [ddnet] timakro 23:45 <+bridge> [ddnet] me 23:45 <+bridge> [ddnet] hehe 23:46 <+bridge> [ddnet] it's not about rewarding server owners or anything 23:46 <+bridge> [ddnet] ik but if u add kog 23:46 <+bridge> [ddnet] KoG is just the second biggest network 23:46 <+bridge> [ddnet] others will want to be added 23:46 <+bridge> [ddnet] just that KoG is also popular and they also have servers around to world so they are also in danger of fake servers with similar name 23:46 <+bridge> [ddnet] add my minecraft server :GWqlabsFeelsGoodMan: 23:46 <+bridge> [ddnet] fa🀦 23:47 <+bridge> [ddnet] @jao 23:47 <+bridge> [ddnet] hi 23:47 <+bridge> [ddnet] Don't just merge it because fokkonaut said so πŸ˜› Let us give it a review first at least 23:47 <+bridge> [ddnet] πŸ˜„ 23:47 <+bridge> [ddnet] He wouldnt do it just because I said it 23:48 <+bridge> [ddnet] :(((( 23:48 <+bridge> [ddnet] i know deen waits for reviews, thats why he makes prs i guess. For simple stuff he just directly commits 23:48 <+bridge> [ddnet] well thats something new from him tho 23:48 <+bridge> [ddnet] (mostly, afaik) 23:48 <+bridge> [ddnet] he didnt do prs 23:48 <+bridge> [ddnet] Since some weeks 23:49 <+bridge> [ddnet] learath writing a bible 23:50 <+bridge> [ddnet] Anyways, kog tab, idk, the only issue i'd have with it is that it's not scalable (e.g. might want to add unique aswell e.g.) 23:50 <+bridge> [ddnet] add onyx too 23:50 <+bridge> [ddnet] wats onyx 23:50 <+bridge> [ddnet] onyx servers for ctf 23:50 <+bridge> [ddnet] lol 23:50 <+bridge> [ddnet] vanilla lol 23:50 <+bridge> [ddnet] yeah, but I don't expect many more networks to show up ever 23:50 <+bridge> [ddnet] thats dead 23:50 <+bridge> [ddnet] ? 23:50 <+bridge> [ddnet] its not dead 23:50 <+bridge> [ddnet] are you blind 23:51 <+bridge> [ddnet] it has more players than unique 23:51 <+bridge> [ddnet] lol 23:51 <+bridge> [ddnet] lol 23:51 <+bridge> [ddnet] @heinrich5991 btw thanks for the mac build on teesmash 23:51 <+bridge> [ddnet] np. if you need more mac builds, ask me 23:51 <+bridge> [ddnet] my vm runs again 23:54 <+bridge> [ddnet] I had a prototype of something akin to a pki to mark official servers 23:54 <+bridge> [ddnet] I kinda stopped working on it after heinrich kept assuring me that he'd kill me if I rolled my own crypto though πŸ˜› 23:55 <+bridge> [ddnet] whats pki 23:55 <+bridge> [ddnet] ah 23:55 <+bridge> [ddnet] HI TURK 23:55 <+bridge> [ddnet] :ww: 23:56 <+bridge> [ddnet] public key infrastructure 23:56 <+bridge> [ddnet] the idea was that ddnet would hold a CA, which could be used to sign leaf certificates