02:40 < ddnet-commits> [ddnet] heinrich5991 opened pull request #886: Fix teehistorian crash on startup (master...pr_ddnet_fix_teehistorian) https://git.io/vdaaY 03:51 < ddnet-commits> [ddnet] heinrich5991 opened pull request #887: Add asynchronous output system and use it for teehistorian and `dbg_msg()`s (master...pr_ddnet_async) https://git.io/vdarA 03:55 < ddnet-commits> [ddnet] heinrich5991 opened pull request #888: Add a sanity-check of running the server on Travis (master...pr_ddnet_travis_run_server) https://git.io/vdaoJ 07:19 <+ddnet-discord> happy github birthday 08:58 < ddnet-commits> [ddnet] Learath2 closed pull request #886: Fix teehistorian crash on startup (master...pr_ddnet_fix_teehistorian) https://git.io/vdaaY 18:44 <+c0d3d3v> Can someone link me to the issue, that is about spam (cheat) vote kick. I saw a player today using a bot to vote kick players. In a way, that a mass of bots (dummys) join the game and instant vote (for an open vote). And their votes were counted. Why is this posible, is there not a vote protection for 1 or 2 min.? 18:45 <+c0d3d3v> The player said "dnsbl" should be a keyword. 18:51 <+Learath2> c0d3d3v: No issue, the player is vali, dnsbl is not accurate enough to use on all servers 18:53 <+Learath2> already working on a fix 19:02 <+c0d3d3v> Yes, he is vali. Thank you. But why is it even possible? Can you give a short explanation. I thought you need to be a few seconds on the server to be able to vote. Why are his dummys instant able to vote? 19:05 <+Learath2> c0d3d3v: you don't need to be on the server any amount of time to vote, that's the issue :D 19:08 <+c0d3d3v> Ah ok, thank you! 21:12 <+Learath2> c0d3d3v: actually I wouldn't mind if you wanted to code that :P 21:15 <@heinrich5991> hm 21:17 <@heinrich5991> not sure if that fixes something 21:18 <@heinrich5991> one could disallow participating in votes that started before you joined 21:18 <+Henningstone> one could also join the dummies before starting the vote 21:18 <@heinrich5991> one could also join the dummies 2min before the vote 21:21 <+eeeee> what if you could only vote if the race timer has started for you (you've passed the noob filter)? 21:21 <@heinrich5991> heh 21:21 <@heinrich5991> I know the perfect blocking spot 21:22 <@heinrich5991> but yea, that might work as a captcha ^^ 21:22 <+eeeee> hotfix it to add a solo? 21:23 <+eeeee> otoh captcha has to be dynamic to really be effective 21:23 <+eeeee> dynamic noob filters anyone? 21:23 <@heinrich5991> well, we could wait until they code such a replay feature :) 21:23 <@heinrich5991> would be nice to look at, a horde of zombies doign a noob filter 21:24 <+ddnet-discord> make google recaptcha 21:24 <+ddnet-discord> "im not a robot" 21:24 <@heinrich5991> more annoying for normal people than for bots 21:24 <+eeeee> that's been hacked: https://www.youtube.com/watch?v=fsF7enQY8uI 21:24 <+ddnet-discord> ๐Ÿ˜„ 21:25 <+ddnet-discord> I see! Vali would have similar thing 21:25 <+ddnet-discord> for his bots, like 10 robots 21:25 <+ddnet-discord> on the table ๐Ÿ˜„ 21:49 <+Learath2> send a random math question to everyone who connects, cant vote until you answer it 21:50 <+ddnet-discord> calculate the integral 21:51 <+Learath2> prove that all non trivial zeroes of the riemann zeta function lay on the line Re(z) = 1/2 21:51 <+ddnet-discord> 1=0 21:54 <+eeeee> considering the teeworlds demographic, i'd say it's safe to ban anyone who answers a math question correctly since it's a bot more likely than not 21:55 <+Learath2> ouch 21:55 <+ddnet-discord> disbale vote at all! 21:55 <+eeeee> most people i see can't even figure out how voting works (at least on ctf5 servers i play) 22:02 <+ddnet-discord> does anyone know why the delay between a player being able to fire (equivalent of yellow hookcoll-line) and actually firing tends to cluster around increments of 20000 ยตs 22:02 <+ddnet-discord> https://cdn.discordapp.com/attachments/293493549758939136/367401411748691968/Untitled.png 22:02 <+ddnet-discord> and why it only shows this pattern for most players 22:02 <+ddnet-discord> not all 22:02 <+ddnet-discord> 20'000ยตs = 20ms = 1 tick in a 50hz environment 22:02 <+ddnet-discord> I guess 22:02 <+ddnet-discord> ahh that makes sense 22:03 <+ddnet-discord> any idea why this doesnt show for everyone? i had assumed ticks were hardcoded the same way into every client 22:04 <+ddnet-discord> ticks are serverside, you can only shoot in 20ms increments 22:04 <+ddnet-discord> actually, the world only changes every 20ms ^^ 22:05 <+ddnet-discord> cool thanks so that definitely explains why most peoples lines look like this 22:05 <+ddnet-discord> https://cdn.discordapp.com/attachments/293493549758939136/367402274139668480/Screen_Shot_2017-10-10_at_3.04.49_PM.png 22:05 <+ddnet-discord> but what could cause this? 22:05 <+ddnet-discord> https://cdn.discordapp.com/attachments/293493549758939136/367402314383753227/Screen_Shot_2017-10-10_at_3.04.55_PM.png 22:05 <+ddnet-discord> where do you measure this? 22:06 <+ddnet-discord> https://github.com/nobody-mb/teeworlds-fng2-mod/blob/master/src/game/server/entities/character.cpp#L610 22:06 <+ddnet-discord> serverside? 22:06 <+ddnet-discord> its written to a file on line 396 and yes 22:06 <+ddnet-discord> that code was running on my openfng server for a few days to collect the data 22:07 <+ddnet-discord> this code should only run in 20ms intervals 22:07 <+ddnet-discord> ah wait 22:07 <+ddnet-discord> OnDirectInput runs when the client input is received 22:07 <+ddnet-discord> it just keeps track of the start and end times and then records the difference when the player shoots at an enemy 22:07 <+ddnet-discord> ye 22:08 <+ddnet-discord> meaning that maybe the difference is in peoples clients? i use ddnet client and so do most other fng players 22:08 <+ddnet-discord> currently investigating 22:08 <+ddnet-discord> thx 22:10 <+ddnet-discord> ok, the normal client only sends a player input every 40ms 22:10 <+ddnet-discord> ๐Ÿ˜ฎ 22:11 <+ddnet-discord> (or if something relevant changed) 22:11 <+ddnet-discord> @nobody-mb this suggests a modded client 22:12 <+ddnet-discord> vanilla only sends input every 40ms, and ddnet every 20? :O 22:12 <+ddnet-discord> this makes sense because redx uses hclient and his line looks different 22:12 <+ddnet-discord> https://cdn.discordapp.com/attachments/293493549758939136/367404146338299914/Screen_Shot_2017-10-10_at_3.12.36_PM.png 22:13 <+ddnet-discord> no, both vanilla and ddnet send every 40ms, unless something changed 22:14 <+ddnet-discord> (then they send it up to every 20ms **I guess**, don't really understand the code) 22:14 <+ddnet-discord> hm thats interesting 22:15 <+ddnet-discord> where would i find info about how other clients send input 22:16 <+ddnet-discord> in their source code, I guess 22:16 <+ddnet-discord> src/engine/client/client.cpp, `SendInput` 22:16 <+ddnet-discord> Savander - heute um 21:55 Uhr 22:16 <+ddnet-discord> disbale vote at all! 22:16 <+ddnet-discord> 22:16 <+ddnet-discord> +1 22:16 <+ddnet-discord> src/game/client/components/controls.cpp, `SnapInput` 22:16 <+ddnet-discord> these are interesting files in ddnet/vanilla 22:17 <+ddnet-discord> I am curious, what does Snap mean? 22:17 <+ddnet-discord> snapshot 22:17 <+ddnet-discord> like a saved version ? 22:17 <+ddnet-discord> like take a photo of a situation 22:17 <+ddnet-discord> the server sends world snapshots to the client 22:17 <+ddnet-discord> so, the snapshot is always outdated? ๐Ÿ˜ฎ 22:18 <+ddnet-discord> by tick or something ? 22:18 <+ddnet-discord> in a sense 22:18 <+ddnet-discord> yeah i saw that yesterday too when i was trying to make draw distance lower, the code makes it seem like some clients allow snapping and some dont? 22:18 <+ddnet-discord> and the client sends snapshots of the player input to the server, hence `SnapInput` 22:18 <+ddnet-discord> lowering the draw distance? 22:19 <+ddnet-discord> trying to break zoomhack 22:19 <+ddnet-discord> well 22:19 <+ddnet-discord> can't really do anything about that 22:19 <+ddnet-discord> why not? 22:19 <+ddnet-discord> decreasing the draw distance seemed to work 22:19 <+ddnet-discord> i had someone test 22:20 <+ddnet-discord> yes, but then you're interfering with dyncam, or with players moving fast into your direction 22:20 <+ddnet-discord> even if u only decrease it by a small amt? 22:20 <+ddnet-discord> well, matricks definitely knew about the problem, so he optimized it accordingly 22:21 <+ddnet-discord> eh fair enough, was just a test i was doing 22:21 <+ddnet-discord> you could ask him about that ๐Ÿ˜ƒ 22:22 <+ddnet-discord> you could ask him about that ๐Ÿ™‚ 22:22 <+ddnet-discord> #teeworlds on irc.quakenet.org (IRC server) 22:23 <+eeeee> decreasing that distance doesn't sound like a good idea 22:23 <+eeeee> why would you want that? to save traffic? 22:23 <+ddnet-discord> to reduce the impact of clients that allow you to see beyond the normal radius 22:24 <+ddnet-discord> because people have been modifying ddnet to allow it to zoom in fng and i have no way to detect this so ^ i can only try to make it less effective 22:24 <+eeeee> i see, that's fair. but would require more heuristics to e.g. accomodate fast moving players (snap them if they're predicted to be in view in the next few ticks) 22:25 <+ddnet-discord> fast moving players and people with higher ping maybe? ill probably have to do something like this lol 22:26 <+ddnet-discord> does anyone know of a more reliable way to detect triggerbots than the thing i was trying to make? (measuring how consistent someones fire delay is) 22:27 <+ddnet-discord> I like your research ๐Ÿ˜ƒ 22:27 <+ddnet-discord> I like your research ๐Ÿ™‚ 22:27 <+ddnet-discord> thx:D