Author | Message | Time |
---|---|---|
Yegg | I've come to the conclusion that battle.net is too slow to comprehend a floodbot spamming 4 messages at an extremely fast rate while someone else is trying to "do" something to that account (ban, ignore, etc.). If a floodbot (MiscFlood for example) isn't using proxies, it sent for messages in 300ms, I used my bot (which is written in Python) and it sent 4 messages in 180ms. I'm sure its fast enough to ban/ignore a floodbot, but it can't. It's only done so once and it was becuase I sent the ban message before the floodbot connected. Any thoughts on this? | January 20, 2005, 10:33 PM |
KkBlazekK | Are the messages received from bnet at 180ms or are they sent at that speed? | January 20, 2005, 10:48 PM |
Yegg | Within 180ms, my bot was able to send 4 messages to battle.net. | January 20, 2005, 10:56 PM |
UserLoser. | Battle.net isn't slow. This has been covered numerous times and if it's taking 180ms to execute all that code to send messages to Battle.net, fix your client. I guess I'll shorten it up since you and many others obviously did/do not search: You can't just do a = gettick, sendbanmsgcode, b = gettick, print "we took b - a ms". You obviously did not consider the time it takes to send a message from your computer through up to a dozens of different routers across the world (run trace route) and the time it takes for Battle.net to handle the message | January 20, 2005, 11:11 PM |
Kp | As Userloser hinted, there's a nice long technical discussion about this in one of the older threads. I recommend you read it before making further comments here. | January 20, 2005, 11:26 PM |
Ban | A QueryPerformanceFrequency + QueryPerformanceCounter is auctually *much* more accurate than a GetTickCount. I beleive GTC has a resolution of 4ms (correct me if im wrong), but QueryPerformanceCounter has a resolution that is equal to QueryPerformanceFrequency (often < 1/10000 of a second on my box) | January 21, 2005, 1:06 PM |
LoRd | [quote author=Ban link=topic=10254.msg95996#msg95996 date=1106312805] A QueryPerformanceFrequency + QueryPerformanceCounter is auctually *much* more accurate than a GetTickCount. I beleive GTC has a resolution of 4ms (correct me if im wrong), but QueryPerformanceCounter has a resolution that is equal to QueryPerformanceFrequency (often < 1/10000 of a second on my box) [/quote] It's not a question of inaccurate timing, it's a question of unaccounted for internet transfer speeds and since there's no way to determine when a stream reached it's destination, it would be impossible to accurately time. It takes x ms for you to receive user join event, y ms for you to process the packet and determine if the user is to be banned, x ms to send the ban to Battle.net, and z ms for it to be processed and attempt to ban the user. Generally, an approximate value of x can be determined by dividing your latency by 2. Once a floodbot is connected to the server, it can send it's final packets to Battle.net and immediately close the socket which is a process that can usally be acheived in much less time than above. To sum up the previously mentioned threads: there's not a whole lot you can do to keep a floodbot out of your channel, so consider using or creating a bot with a properly designed spam filter. | January 21, 2005, 1:35 PM |