14:59 < MuLTIII> @TeeSlayer need your help 20:45 < Teeworlds> [teeworlds] oy pushed 2 commits to branch master: https://github.com/teeworlds/teeworlds/compare/6cedf1fbd15d...142aefb9fd2c 20:45 < Teeworlds> • oy (d47bec9): use the reset focus for edit boxes in the editor too 20:45 < Teeworlds> • oy (e12de8f): Merge branch 'master' of https://github.com/teeworlds/teeworlds 20:45 < Oy> oh :) 20:45 <@Dune> :0 20:49 < Assa> Dune, are you there? 20:49 <@Dune> yes 20:51 < Teeworlds> [teeworlds] oy pushed 1 commit to branch master: https://github.com/teeworlds/teeworlds/compare/142aefb9fd2c...ca71df686727 20:51 < Teeworlds> • Fudgyking (1107783): Dont show chat when loading map 20:52 < Assa> Dune, do you know any way to predict movement in character cpp? I think my pullrequest would break it if you consider collision with other tees 20:53 <@Dune> I don't know about that, I would have to look into it 20:53 < Assa> I think I have too much freetime >.< 20:54 <@Dune> that's cool! :P 20:54 <@Dune> I alternate between way too much and way too little 20:56 < Assa> I think we have to simulate collisions with maptiles (solids), collision with deathtiles and collisions with other Tees at the same time 20:56 <@Dune> just find the first impact with a death tile and the first impact with a solid tile I guess? 20:57 < Assa> what if you hit another player before you hit the deathtile? 20:57 <@Dune> guess your course is deviated right? 21:00 < Assa> if you model collisions with other players first, you may hit a player after a deathtile first, thus bouncing off of him and not hitting the deathtile - I managed to pull this off in my testing 21:01 < Assa> If you don't handle collisions with other players first, a Deathtile would kill you even if another player would stop your movement 21:03 < Oy> this isn't done all together right now 21:05 < Assa> @Oy talking about issue #1936 and my pull request 21:05 < Oy> yeah 21:06 < Oy> here you do the player collision https://github.com/teeworlds/teeworlds/blob/master/src/game/server/entities/character.cpp#L529 21:06 < Oy> then you check for death tile https://github.com/teeworlds/teeworlds/blob/master/src/game/server/entities/character.cpp#L532 21:06 < Oy> and when all entities did their ticks u move and do ollision checks https://github.com/teeworlds/teeworlds/blob/master/src/game/server/entities/character.cpp#L561 21:08 < Assa> to resolve issue #1936, you have to check between the current position of the Tee and the future position of a Tee, if a deathtile hit occures 21:09 < Oy> yeah 21:09 < Oy> might be best to do it with the wall collision check 21:09 < Assa> Thats why i moved it to gamecore move() 21:10 < Oy> movebox in collision.cpp 21:10 < Oy> sounds logical 21:15 < Assa> I did it with DDA and as I see i reinvented the wheel :o 21:16 <@Dune> all this collision code looks a bit confusing to me, gj for working it out :p 21:17 < Assa> The wrong character placement of the settings icon annoys me more :p 21:18 <@Dune> that looks so unimportant to me :D 21:19 < Assa> Thats why my first pull request is on the Deathtile skip - its not so important and i can experiment a bit 21:20 <@Dune> imo the settings icon is less important than the game physics :D 21:21 < Assa> i wanted to do a pull request for the icon, too. But i simply couldn't find any errors 21:21 < Assa> I really think the character width is falsly calulated by the font 21:22 <@Dune> it's a difficult one yeah 21:23 <@Dune> TextEx has an issue 21:25 < Assa> i debuged it, glyphnumber was really 1 and charcount was 3, m_X of the cursor was just set 1 time (for the one glyph) and was calculated by Size*(AdvanceX+Kerning), ther Kerning was 0 btw 21:26 < Assa> To correct: Kerning*Scale 21:49 < Assa> are there any Teeworlds code conventions to default variables? 21:50 <@heinrich5991> what do you mean, default variables? 21:50 <@heinrich5991> default parameters? 21:50 < Assa> int doStuff(int a, int b, int c=1337); 21:50 < Assa> yes, default parameters 21:50 <@heinrich5991> I don't know of any conventions regarding that 21:52 < Oy> no 21:53 < Oy> only stuff that's listed here https://github.com/teeworlds/documentation/blob/master/nomenclature.md 21:53 <@heinrich5991> Dune: can you make your say something? — theoretically, the bridge should ignore it now 21:53 <@heinrich5991> *can you make your bot say something 21:55 < Assa> okay, thank you oy ^.^ 21:57 < Assa> I accidantly made quicksand in teeworlds xD 22:06 <@Dune> heinrich5991, that's cool, but no I don't really have fake packets to test 22:07 < Assa> @Oy @Dune, i finished a way better shorter readable solutions to the deathtile problem, how huge are deathtiles (how big should i set Size for TestBox?)? 22:07 <@Dune> strangely enough I can send text from out of the channel but he can't (he's refused somehow), so I guess there is a banlist or something? 22:07 <@Dune> also I think you (mistakenly?) selected issues 22:08 < Teeworlds> [teeworlds] oy pushed 1 commit to branch master: https://github.com/teeworlds/teeworlds/compare/ca71df686727...8abd41a65791 22:08 < Teeworlds> • oy (67e2f3f): adjusted the x offset for font chars a bit to fix a positive rendering displacement. closes #2103 22:08 < Teeworlds> [teeworlds] oy closed issue #2103: Settings icon is not centered https://github.com/teeworlds/teeworlds/issues/2103 22:08 < Assa> and thanks oy xD 22:09 < Oy> well, if sth looks fishy now. let me know :) 22:10 < Oy> Assa: deathtiles have the same size as normal tiles 22:10 <@Dune> heinrich5991, you can resend a webhook packet actually from the github/webhook page 22:10 <@Dune> if you want to test 22:11 <@Dune> Assa, I have no idea really, this isn't my area of expertise :P 22:11 <@Dune> sorry 22:12 <@heinrich5991> no, deathtiles are slightly smaller than normal tiles 22:12 < Assa> @heinrich is right 22:12 <@heinrich5991> you can sit on the edge next to a death tile 22:13 < Assa> character.cpp #L532 GetProximityRadius()/3.f 22:13 < Assa> for 'perfect' deathtiles it should be GetProximityRadius()/2.f 22:14 < Oy> ah you mean the distance to kill you 22:14 < Assa> exactly 22:15 < Assa> ofc all tiles have the same size in editor, since teeworlds uses a grid 22:17 < Oy> well, then the distance to kill you in your test case should be like the current one ;) 22:18 <@Dune> 67e2f3f is obscenely simple-looking 22:19 < Assa> It is just the regular size * 2/3 ^.^ 22:26 < Assa> @Oy @Dune I did a new pull request and closed the other one, because I begin from clean source and used the MoveBox now. The code is now much shorter and better ^.^ 22:27 <@Dune> better squeeze the commit and push -f so you don't lose the comment history 22:27 <@Dune> but yeah it looks better :2 22:27 <@Dune> :) 22:27 <@heinrich5991> Dune: do you know what the webhook on the discord server is? you created it. do you still use it? 22:27 <@Dune> huh 22:27 <@Dune> well it's for the github bot on discord, so yeah we still use that? 22:28 <@heinrich5991> okay :) 22:28 <@Dune> issues are enabled on the IRC bot but PRs aren't btw 22:28 < Assa> you have a discord? 22:28 < bridge> [teeworlds] see here 22:28 < bridge> [teeworlds] 😛 22:29 <@Dune> https://www.teeworlds.com/forum/viewtopic.php?id=12576 22:29 < Assa> Github is really missing a chat service 22:29 <@Dune> It had a chat service until January 22:30 < Assa> The "see here" link doesn't work for me :o 22:30 <@Dune> it's not a link 22:36 < Teeworlds> [teeworlds] oy pushed 1 commit to branch master: https://github.com/teeworlds/teeworlds/compare/8abd41a65791...912442347daa 22:36 < Teeworlds> • oy (d8ce682): corrected some possible parameter misuse (int -> float) 22:37 < Assa> I accidently added changes to system.c and system.h to my pull request ... how do i get rid of it? 22:37 <@Dune> "81 additions and 81 deletions" ouch :D 22:37 <@Dune> Assa, git reset system.* 22:38 <@heinrich5991> nice, Teeworlds didn't get forwarded this time :) 22:39 <@Dune> yeah :) 22:39 <@Dune> good job 22:40 < Assa> next time i will do a better job at keeping things konsistent ... 22:43 <@Dune> don't sweat it Assa, my first PR didn't even ever compile :D 22:45 < Assa> Now i added a changed version.h to make it even worse :) 22:46 <@heinrich5991> Assa: do you know git cherry-pick? you can create a branch with only the things you want in it 22:47 <@heinrich5991> git checkout -b deathtileskip3 upstream/master (or however your upstream remote is called) 22:48 <@heinrich5991> git cherry-pick 22:48 <@heinrich5991> git push origin +deathtileskip3:deathtileskip2 (to override the current commit) 22:53 < Assa> my upstream is called origin, and my origin is called upstream to make it more complicated 22:53 <@Dune> call it "teeworlds" and "assa" :) 22:54 < Assa> normally i do it right, but apperently not this time 22:54 <@Dune> you can git remote add/delete to rename remotes 22:55 <@heinrich5991> also git remote rename 22:55 <@Dune> oh that's a thing? 23:02 <@heinrich5991> yup 23:05 < Assa> i should definatly do that 23:08 < Assa> git push -f needed but this should do now 23:08 <@heinrich5991> don't do -f 23:08 <@heinrich5991> add a + in front of the branch you want to override 23:10 < Assa> why don't do -f? 23:11 <@Dune> it changes anything for github? 23:11 <@heinrich5991> because using -f creates bad habits :) + makes it clear which of the branches you're currently pushing needs to be overrideen 23:11 <@heinrich5991> *overridden 23:12 <@Dune> but in the end, for github, it's the same, right? 23:12 <@heinrich5991> yes 23:12 <@heinrich5991> (just for the user) 23:13 < Assa> git remote rename <-- nice 23:14 < bridge> [teeworlds] uff is any one working on the high dpi support? I thought only macOS is making trouble but also windows10 is very annoying. The textures are not crisp and all the open winsows get meesed up and resized. 23:14 < bridge> [teeworlds] in this state 0.7 is unsuable .-. i sadly have no idea how to fix it 23:15 < Assa> can you explain the problem in more detail to me? I just finished my pull request :) 23:16 <@Dune> @ChillerDragon: we wanted it done for 0.7.3 but found no one to test stuff or work on it 23:16 <@Dune> linux doesn't have the problem so... 23:19 < Assa> oh its mac specific, iam out :o 23:20 <@Dune> windows too but you need to have highdpi on your system to test 23:25 < bridge> [teeworlds] wait so nobody could reproduce the windows issue? 23:26 <@Dune> I don't have highdpi, oy doesn't either 23:26 < bridge> [teeworlds] On linux it works kinda fine for me as well. I mean linux has other bugs no matter if high dpi or not 23:26 < bridge> [teeworlds] oh 23:27 < bridge> [teeworlds] I feelt kinda early like 4 years ago with my 4k screen but i thou8ght nowerdays its pretty common. 23:27 < bridge> [teeworlds] Im here if you need somebody to repdroduce/test high dpi issues on windows macOs or linux but idk how to fix them. 23:28 <@Dune> meh you need a lot of other expensive things if you want to use its potential anyway and it's poorly handled by plenty of applications 23:28 <@Dune> I only have 4k where I had no options 23:28 < bridge> [teeworlds] i only use discord a browser and tw 23:28 < bridge> [teeworlds] and ddnet supproted it pretty well since years already 23:28 <@Dune> then PR the patch 23:28 < minus> ah, more reflection 23:28 < bridge> [teeworlds] idk what the patch is ._. 23:29 < bridge> [teeworlds] im not even sure who worked on that 23:29 < Assa> PR this issue, so sombody does fix the problem 23:29 <@Dune> huh? 23:29 < bridge> [teeworlds] ? 23:29 < minus> somehow master3 is using 10G of RAM 23:29 <@Dune> there is already an issue 23:29 < bridge> [teeworlds] one for macOS ye 23:29 <@Dune> welp is that different than last time, minus ? 23:29 < bridge> [teeworlds] but i guess it would be usless to creater one for windows as well 23:30 <@Dune> yes 23:30 < minus> yes, it was just 100% CPU before 23:30 < minus> which it is again 23:30 <@Dune> huh, so something changed 23:30 < minus> mr anderson must've not created the firewall rules right 23:30 < bridge> [teeworlds] hm 23:30 <@Dune> for hidpi there is https://github.com/teeworlds/teeworlds/pull/1773 but we didn't get feedback 23:30 < bridge> [teeworlds] i thought his frewall skills are 10/10 23:31 <@Dune> should I ping him minus? 23:31 < minus> i killed the server for now but it should be fixed properly 23:31 < bridge> [teeworlds] @Mr_Anderson 23:31 < bridge> [teeworlds] oh so you need feedback on that? Meh it has conflicsts 23:32 <@Dune> it's an old PR, those always have some 23:32 <@Dune> someone's gotta do the work if you want it fixed 23:32 < bridge> [teeworlds] I have been testing it a bit and gave feedback on this bridge i guess but it never solved my macOS issues 23:32 <@Dune> the conflicts is probably because a bunch of spaces got removed everywhere by the editor 23:33 < bridge> [teeworlds] i cant even see what the conflicts are do i need write access to see them? 23:33 <@Dune> you need to pull and to rebase master (or merge master) to resolve them 23:33 <@Dune> git checkout -b LordSk-feature/highdpi master 23:33 <@Dune> git pull https://github.com/LordSk/teeworlds.git feature/highdpi 23:34 < Assa> good luck :) 23:34 < bridge> [teeworlds] so this pr is waiting for some1 to tets it and give greenlight? 23:34 < bridge> [teeworlds] Then i will test it tomorrow probably 23:34 <@Dune> something like that yeah, need to ask Oy 23:37 < bridge> [teeworlds] @LordSk just to let you know. Always feel free to ping me when you need somebody to test anything 😃 23:41 < bridge> [teeworlds] does tw only use 1 thread for cpu? 23:41 < bridge> [teeworlds] the tw server only uses one thread, the client uses another one for graphics handling 23:41 < bridge> [teeworlds] (and sound loading during startup) 23:43 < bridge> [teeworlds] Is there an issue or plan somewhere to use more threads 23:44 < Assa> I think it doesn't really make sense 23:44 < bridge> [teeworlds] im still not sure about the whole multi core threading world i think i didnt get it. If i pay way more money to get lowr clock speed but more cores tw will loose fps because it doesnt spawn enought threads right? 23:45 < Assa> In case we get bot support, teeworlds should use another core for bot calculations, since they need a lot of cpu power 23:46 <@heinrich5991> test 23:46 < bridge> [teeworlds] spam! 23:47 <@heinrich5991> test2 23:47 < bridge> [teeworlds] does any1 know how hardare works and can proof my theory that more expensive cpus have worse tw performance 23:47 < bridge> [teeworlds] tw isn't cpu-bound 23:48 < bridge> [teeworlds] what ever that means xd 23:48 < bridge> [teeworlds] it means its gpu bound 23:48 < Assa> my client isn't cpu bound 23:48 < Assa> *gpu 23:48 < bridge> [teeworlds] it means that the client wouldn't benefit from faster cpu speeds 23:48 < bridge> [teeworlds] so gpu is the bottleneck not cpu? 23:48 < bridge> [teeworlds] neither is. the "wait for next tick" is the "bottleneck" 23:48 < Assa> i think the bottleneck is the update rate 23:49 < Assa> ^this 23:49 < bridge> [teeworlds] good to know 23:49 < Assa> Teeworlds only has 50Hz updates 23:49 < bridge> [teeworlds] well for server is 50 ticks per seconds ye 23:49 < bridge> [teeworlds] so i can buy hardare with low clock speed but more cores without lossing tw performance 23:49 < Assa> Feel free to set this to 128 for your server. This may make sense if you host a race server 23:49 <@heinrich5991> that won't fly with the client 23:50 < Assa> do they have to be in sync? 23:50 < bridge> [teeworlds] ye I dont think you can just change the tick speed with no problem 23:50 <@Dune> ooh, the bridge is grouping messages per user now, neat, heinrich5991 23:51 <@heinrich5991> :) just found this option in the bridge config 23:51 < bridge> [teeworlds] lookse more discordish now 23:51 < Assa> I can change the update rate fairly easily, i wonder if the client would work 23:51 <@heinrich5991> try it. probably not. also, the 50 for the update rate is hardcoded in some places as well 23:51 < Assa> hardcoded? lol 23:52 < bridge> [teeworlds] but servers defnetly run into cpu bottlenecks on attacks 23:52 < bridge> [teeworlds] just run the attacks on another thread kappa 23:52 < bridge> [teeworlds] i realized that one of my server cores was at 100% and others were idle but my tw server was taken down by ddos 23:52 < bridge> [teeworlds] even tho my vps had more power 23:53 < bridge> [teeworlds] I feel like the solution to that isn't "buy more threads" but "fix the code" 23:53 <@heinrich5991> Assa: yes? that's bound to happen if you don't test other update rates 23:53 < bridge> [teeworlds] fix the code = use more threads? 23:53 < Assa> The Solution to DDos is "call your provider" 23:53 <@heinrich5991> DDoS is thrown around a bitl iberally here. there's also application level DoS for teeworlds servers 23:54 <@heinrich5991> I don't know if teeworlds got the patch of ddnet yet that you don't try to decompress packets from non-connected IPs 23:54 < minus> the solution to DDoS is to delete Teeworlds 23:54 < bridge> [teeworlds] f4 23:55 < bridge> [teeworlds] Btw where is the "wait for next tick" on the client? if any 23:55 < minus> add Alt to that and we're onthe right way 23:55 < bridge> [teeworlds] lol minus 23:55 < bridge> [teeworlds] only thing close to it I know of is the thread_sleep(g_Config.m_ClCpuThrottle); 23:55 <@heinrich5991> Fudgy: that only happens if you have vsync on 23:55 <@heinrich5991> then it's `SwapBuffers()` or so 23:55 < bridge> [teeworlds] ah that too ok 23:56 < bridge> [teeworlds] related to my prev question : if I want to load, lets say demos, in the background, its fine if I do it bit by bit somewhere instead of using threads? 23:56 < bridge> [teeworlds] I need to do it for something I'm working on 23:57 < minus> in general, threads are the problem, not the solution 23:58 < bridge> [teeworlds] haha probably 23:58 < bridge> [teeworlds] I couldnt debug them anyway 23:59 <@heinrich5991> as long as you use message passing for synchronization, they're fine