13:35 <+bridge_> [ddnet] What about to make fucking moving freeze? 14:31 <+bridge_> [ddnet] What about to implement moving tiles instead just like gores did 15:23 <+bridge_> [ddnet] @uwu kog already has moving freeze 15:24 <+bridge_> [ddnet] There is a lot more that I want to get out of the way before we start adding new gameplay features 16:09 <+bridge_> [ddnet] ерфе лщп 16:09 <+bridge_> [ddnet] thats kog 16:09 <+bridge_> [ddnet] what about ddnet 16:09 <+bridge_> [ddnet] servers 18:36 <+bridge_> [ddnet] @uwu there is a lot more that should be to get out od the way before we start adding new features 18:37 <+bridge_> [ddnet] Hmmm 18:37 <+bridge_> [ddnet] For example? 18:38 <+bridge_> [ddnet] @uwu there is a lot more that should done before we start adding new features 18:43 <+bridge_> [ddnet] @n000b i saw u was typing... 18:47 <+bridge_> [ddnet] Well look at the pull requests and issues on github. Besides 18:47 <+bridge_> [ddnet] Well look at the pull requests and issues on github. Besides there are some other projects which are not shown there 18:49 <+bridge_> [ddnet] Learath wanted to change something with the ddnetnmasterserver to prevent ddos for example and he was trying to get a good solution for implementing accounts if i am right. 19:05 <+bridge_> [ddnet] not to forget the update to 0.7 🙂 19:07 <+bridge_> [ddnet] True 19:21 <+bridge_> [ddnet] I want to give an stupid idea 19:21 <+bridge_> [ddnet] Change masterservers ips 19:26 <+bridge_> [ddnet] :monkaS: **he's too dangerious to be kept alive** 19:27 <+bridge_> [ddnet] btw no matter if you change the ip's, ddosers will ddos that specific ip too 19:29 <+bridge_> [ddnet] 😮 19:29 <+bridge_> [ddnet] ban ips that will sent too muck packages 21:09 <+bridge_> [ddnet] @uwu attacker forges the udp packets so that the source ip is fake or from another legit player who did nothing wrong 21:10 <+bridge_> [ddnet] Hmmm 21:11 <+bridge_> [ddnet] What about sell this servers and buys servers with ddos protection? 21:11 <+bridge_> [ddnet] What about sell this servers and buy servers with ddos protection? 21:12 <+bridge_> [ddnet] it doesnt work like that 21:12 <+bridge_> [ddnet] theres nothing u can pay for that would possibly protect tw 21:13 <+bridge_> [ddnet] https://aws.amazon.com/ru/shield/ddos-attack-protection/ eeeeeh 21:14 <+bridge_> [ddnet] Cant find us site :oop: 21:14 <+bridge_> [ddnet] cyka 21:14 <+bridge_> [ddnet] and no 21:14 <+bridge_> [ddnet] u dont get it 21:14 <+bridge_> [ddnet] because of the way teeworlds netcode is written, and the way its fundamentally structured 21:14 <+bridge_> [ddnet] there is no possible way to just buy a server that allows an unmodified tw server to handle such large ddoseses without lag 21:14 <+bridge_> [ddnet] it requires code fixes 21:15 <+bridge_> [ddnet] Fix the code? 21:15 <+bridge_> [ddnet] :DD 21:15 <+bridge_> [ddnet] its a better idea than throwing money at things u dont understand.. 21:15 <+bridge_> [ddnet] :c 21:16 <+bridge_> [ddnet] Ehh 21:17 <+bridge_> [ddnet] In which file net code? :V 21:17 <+bridge_> [ddnet] network_server.cpp, network.cpp, server.cpp 21:17 <+bridge_> [ddnet] and system.c 21:17 <+bridge_> [ddnet] Oh yes 21:17 <+bridge_> [ddnet] Its cpp 21:18 <+bridge_> [ddnet] i dont claim to have the solutions for ddos, im slowly fixing my own server by editing mostly these files, but im sure a smarter person could do a better job with it 21:18 <+bridge_> [ddnet] i just know that paying more isnt really the solution 21:18 <+bridge_> [ddnet] these servers can easily receive all the ddos data without any lag 21:18 <+bridge_> [ddnet] it only lags when trying to reply to everything 21:20 <+bridge_> [ddnet] Umm :sorry: but where are that files, in what folder (im looking on github) 21:20 <+bridge_> [ddnet] src/engine/shared/ for the first three and src/base/ for system.c 21:21 <+bridge_> [ddnet] Thx 21:21 <+bridge_> [ddnet] er 21:21 <+bridge_> [ddnet] src/engine/server for server.cpp 21:21 <+bridge_> [ddnet] src/engine/shared for the first two*** 21:21 <+bridge_> [ddnet] Ok 21:21 <+bridge_> [ddnet] gl 😄 21:22 <+bridge_> [ddnet] Thx :D 21:25 <+bridge_> [ddnet] Well, technically you could throw the money at a developer to fix it up 😛 21:25 <+bridge_> [ddnet] learath pls fix my server 21:25 <+bridge_> [ddnet] $$$$$$$$$$$$$$$$$$$ 21:25 <+bridge_> [ddnet] If only I had the time and motivation for it 21:25 <+bridge_> [ddnet] onby pls host server 20$ / month 21:25 <+bridge_> [ddnet] im already hosting 21:26 <+bridge_> [ddnet] and wow that could buy us a 4x more expensive server 21:26 <+bridge_> [ddnet] :v 21:27 <+bridge_> [ddnet] not that 20$ would be expensive, but this is how much i would cash out with some irl support 21:27 <+bridge_> [ddnet] i mean 21:27 <+bridge_> [ddnet] my sv costs $5/mon 21:27 <+bridge_> [ddnet] We could get a more expensive server, but is that really the solution? 21:27 <+bridge_> [ddnet] i really dont think it is 21:27 <+bridge_> [ddnet] no, but dont deny money 21:27 <+bridge_> [ddnet] because if the server can receieve all that data without lag 21:27 <+bridge_> [ddnet] It'd just require one of us to get a living wage and sacrifice like 2-3 meals outside 😄 21:28 <+bridge_> [ddnet] then it *should* be able to reply smoothly too 21:28 <+bridge_> [ddnet] ye more money = more smoothness :feelsamazingman: 21:28 <+bridge_> [ddnet] Well there are fundamental limitations 21:28 <+bridge_> [ddnet] if there was too much incoming data to overwhelm the link then it wouldnt even be able to receive it all without lagging 21:29 <+bridge_> [ddnet] the issue is not only server performance but also limitations on packets per second 21:29 <+bridge_> [ddnet] e.g. the linux network stack itself can't really do much more then 50kpps per core without some extra work 21:29 <+bridge_> [ddnet] i mean when i run a server and let it receive all 200000 packets/sec of incoming junk, and use f2 to disable the replies to connect packets and inforeq packets, the server instantly stops lagging and anyone whos already connected can play smoothly like always 21:29 <+bridge_> [ddnet] turning on the replies makes it lag when theres more than idk 100000pps 21:30 <+bridge_> [ddnet] 200kpps on a 5$/mon server? 21:30 <+bridge_> [ddnet] mhm 21:30 <+bridge_> [ddnet] How many vcores you get? 21:30 <+bridge_> [ddnet] but only recv 21:30 <+bridge_> [ddnet] 1 lololol 21:30 <+bridge_> [ddnet] i wish more 21:30 <+bridge_> [ddnet] my threading code may be kinda useless otherwise 21:31 <+bridge_> [ddnet] That's either some next level tuning on the kernel or the hypervisor 21:31 <+bridge_> [ddnet] 21:31 <+bridge_> [ddnet] https://cdn.discordapp.com/attachments/293493549758939136/646447436105121821/Screen_Shot_2019-11-19_at_2.31.06_PM.png 21:31 <+bridge_> [ddnet] it can receive all this without lag if i make it stop sending out SendControl for tken and replies to fstd/gie3 21:32 <+bridge_> [ddnet] but since those things make the server hidden and stop people from connecting its not really a fix 21:32 <+bridge_> [ddnet] just a possible lead towards a solution maybe 21:33 <+bridge_> [ddnet] Oh I missed that you don't reply at all 21:33 <+bridge_> [ddnet] yeah 21:33 <+bridge_> [ddnet] Sorry, just woke up 21:33 <+bridge_> [ddnet] the replies is the problem 21:33 <+bridge_> [ddnet] lol 21:33 <+bridge_> [ddnet] Yeah, you can drop traffic a bit better then handling it 21:33 <+bridge_> [ddnet] replying ofc means the you just double the pps count 21:33 <+bridge_> [ddnet] replying ofc means that you just double the pps count 21:33 <+bridge_> [ddnet] Also recvmmsg is supposed to be helpful with this kinda thing 21:33 <+bridge_> [ddnet] ddnet changed recv to recvmms 21:33 <+bridge_> [ddnet] yeah 21:33 <+bridge_> [ddnet] could we use the equivalent for sending 21:34 <+bridge_> [ddnet] I don't think it'd be very useful anyway 21:34 <+bridge_> [ddnet] It doesn't show up in profiling 21:34 <+bridge_> [ddnet] thats a good sign isnt it 21:34 <+bridge_> [ddnet] or u mean, the sending 21:34 <+bridge_> [ddnet] 21:34 <+bridge_> [ddnet] https://cdn.discordapp.com/attachments/293493549758939136/646448337276633138/Screen_Shot_2019-11-19_at_2.34.46_PM.png 21:35 <+bridge_> [ddnet] The sending 21:35 <+bridge_> [ddnet] some profiling output from when the server was receiving and trying to reply to all 21:35 <+bridge_> [ddnet] threadrun is trying to reply to tkens 21:35 <+bridge_> [ddnet] eh 21:35 <+bridge_> [ddnet] i should do a profiling session without the experimental threading shit 21:35 <+bridge_> [ddnet] You should also profile with callgrind 21:35 <+bridge_> [ddnet] whats that 21:35 <+bridge_> [ddnet] Stack sampling while nice is not that accurate 21:36 <+bridge_> [ddnet] ooooo 21:36 <+bridge_> [ddnet] Callgrind accurately profiles by dynamically rewriting the code 21:36 <+bridge_> [ddnet] that looks cool 21:36 <+bridge_> [ddnet] wtf xd 21:36 <+bridge_> [ddnet] Not very performant 21:36 <+bridge_> [ddnet] But it is very accurate 21:37 <+bridge_> [ddnet] And overhead per function is same so all the costs are inflated equally 21:37 <+bridge_> [ddnet] (Except for very small costs that end up getting amplified) 21:38 <+bridge_> [ddnet] thx ill try this 22:23 <+bridge_> [ddnet] woooow this is cool 22:23 <+bridge_> [ddnet] 22:23 <+bridge_> [ddnet] https://cdn.discordapp.com/attachments/293493549758939136/646460570626686985/Screen_Shot_2019-11-19_at_3.19.37_PM.png 22:23 <+bridge_> [ddnet] 😁