Valhalla Legends Forums Archive | Battle.net Bot Development | [VB6] Queue / Antiflood

AuthorMessageTime
Networks
I know about the Required Delay function but It really isn't cutting it for me. It's really not as customizable at what I want. It's really not the queue that I need help with it's the processing of the queue that I need help with. Required doesn't know how many messages are in the queue nor does it reliaze when its last message was sent in order to send for example 4 messages consecutively in like 1ms because it knows a message hasn't been sent in over 10 minutes. These are factors I would like the queue processing to take in. I need some help or examples of how I can make a very custom queue. I am currently making a moderation type bot. RequiredDelay no longer seems to work either, I drop due to flooding. Any help is really appreciated. I hope you understand what I am getting at. RequiredDelay seems to be more directed towards chatting which I can understand because it does work but it seems to have trouble with alot more messages in the queue.
August 27, 2004, 10:40 PM
BaDDBLooD
Would you post the required delay function? I Don't know what your talking about.
August 27, 2004, 11:35 PM
Networks
[quote author=BaDDBLooD link=board=17;threadid=8418;start=0#msg77693 date=1093649758]
Would you post the required delay function? I Don't know what your talking about.
[/quote]

No it's irrelavent and I you can search for it.
August 27, 2004, 11:38 PM
KkBlazekK
[quote author=BaDDBLooD link=board=17;threadid=8418;start=0#msg77693 date=1093649758]
Would you post the required delay function? I Don't know what your talking about.
[/quote]

He wants to make a smart queue system. Something that works better then Adrons AntiFlood.
August 27, 2004, 11:45 PM
Networks
[quote author=Kk)Blaze(kK link=board=17;threadid=8418;start=0#msg77697 date=1093650307]
[quote author=BaDDBLooD link=board=17;threadid=8418;start=0#msg77693 date=1093649758]
Would you post the required delay function? I Don't know what your talking about.
[/quote]

He wants to make a smart queue system. Something that works better then Adrons AntiFlood.
[/quote]

Definetly. :) Something that can handle and process a mutliple or even a single amount of message(s) inteligently not 1 message at each interval. Like 3-4 messages and delay for example.
August 27, 2004, 11:48 PM
The-FooL
I used a modified version of the required delay function. I changed the constants for the sending, and adding checking not for que size(which to me is irrelevant, because que size can increase at any time), but for how many messages have been sent in the past 10-20 seconds. If too many messages have been sent, I increase the delay. This works extremely well, providing fast que response for short responses, and keeps the bot from dropping when it has a full que, or is busy with bans.
August 28, 2004, 2:33 AM
Networks
Wow..No one has Ideas =\
August 28, 2004, 6:52 PM
LordNevar
My queue controls consist of 2 timers, one that activates upon loading/flooding, the other just handles actual message controls so it don't flood itsself out. Upon activating Flood/Load protection Timer #2 takes control of the bots message queues. Upon turning them off, #1 resumes to it's actual purpose of controling how messages are sent. It's actualy quite simple, but seems to get the job done. I just have a certain delay set for each timer, I don't go by message count or how long it's been since the last msg. My queue add function is the most complicated though, and took along time to put together. No matter what timer is activated, the bot will bump whatever cmd you give it in the channel to the front of the queue, so if your doing say sweepban, but you want to change mp3's, it will execute the mp3 command than go back to what it was doing. In doing this I thought it easier to still have full functionality of your bot will it's busy accomplishing a given task. My timers auto activate and swap back and forth from what you want the bot to do, regardless of what the bots doing. Say your sweeping, and you use Mp3 cmd, it will reset the timer to #1, than reset it back to #2.

Edit: Some grammar, and a bit more detail.
August 28, 2004, 7:19 PM
The-FooL
[quote author=Networks link=board=17;threadid=8418;start=0#msg77794 date=1093719138]
Wow..No one has Ideas =\
[/quote]

You don't like ours, go get your own, and stop complaining.
August 29, 2004, 9:55 PM
Networks
[quote author=The-FooL link=board=17;threadid=8418;start=0#msg78034 date=1093816502]
[quote author=Networks link=board=17;threadid=8418;start=0#msg77794 date=1093719138]
Wow..No one has Ideas =\
[/quote]

You don't like ours, go get your own, and stop complaining.
[/quote]

1: I don't yours spefically because it uses requireddelay.
2: Your the only one who gave input that's why I asked. I didn't want my post to die
3: I will.
August 30, 2004, 2:27 AM
KkBlazekK
Lord, that is a great idea... How'd you come up with the idea?
August 30, 2004, 2:39 AM
BaDDBLooD
[quote author=Kk)Blaze(kK link=board=17;threadid=8418;start=0#msg78077 date=1093833592]
Lord, that is a great idea... How'd you come up with the idea?
[/quote]

He thinks?
August 30, 2004, 9:23 AM
LordNevar
Don't know just came to me as I was doing it lol.
August 30, 2004, 1:06 PM
Networks
I thought about and have come up with somthing.

I'll have 2 queue types. 1 that sends consecutive messages ( 3-4 ) which will pause 1500ms between each consecutive msg. After these messages have been sent I'll calculate the amount of delay for all 3-4 messages using required delay ( with some leway) and then delay and keep doing this.

My other way is just a simple lame queue.

This can allow the 1st queue type to intiate during loads etc.

Any suggestions are appreciated.
August 31, 2004, 10:18 PM
Gangz
[quote author=Networks link=board=17;threadid=8418;start=0#msg78454 date=1093990728]
I thought about and have come up with somthing.

I'll have 2 queue types. 1 that sends consecutive messages ( 3-4 ) which will pause 1500ms between each consecutive msg. After these messages have been sent I'll calculate the amount of delay for all 3-4 messages using required delay ( with some leway) and then delay and keep doing this.

My other way is just a simple lame queue.

This can allow the 1st queue type to intiate during loads etc.

Any suggestions are appreciated.
[/quote]

Sounds okay, but make sure you give the delay after 4 consecutive messages a pretty random delay time. Before i quit bnet i was working on how to stop flood bots and i found out that bnet has its own system of timing peoples messages and the delay given between them. if the delay is to same for so many sends it will kick you as a "flood" resulting in a muted key and possible banned key.

EX: Everyone knows about flawed bot and its own command. If it bans to many bots and has the same delay it will drop.(Some have seen this before some have never seen a load that big)
September 1, 2004, 12:10 AM
Networks
[quote author=Gangz link=board=17;threadid=8418;start=0#msg78481 date=1093997453]
[quote author=Networks link=board=17;threadid=8418;start=0#msg78454 date=1093990728]
I thought about and have come up with somthing.

I'll have 2 queue types. 1 that sends consecutive messages ( 3-4 ) which will pause 1500ms between each consecutive msg. After these messages have been sent I'll calculate the amount of delay for all 3-4 messages using required delay ( with some leway) and then delay and keep doing this.

My other way is just a simple lame queue.

This can allow the 1st queue type to intiate during loads etc.

Any suggestions are appreciated.
[/quote]

Sounds okay, but make sure you give the delay after 4 consecutive messages a pretty random delay time. Before i quit bnet i was working on how to stop flood bots and i found out that bnet has its own system of timing peoples messages and the delay given between them. if the delay is to same for so many sends it will kick you as a "flood" resulting in a muted key and possible banned key.

EX: Everyone knows about flawed bot and its own command. If it bans to many bots and has the same delay it will drop.(Some have seen this before some have never seen a load that big)
[/quote]

Good suggestion thanks, I'll keep that in mind.
September 1, 2004, 9:55 PM
shout
I have an idea... but im noob so...

Have two battle.net connections in a bot, and each one has Networks 2 queue system. When one of the bots queue "type 1" is initiated, the other one does too, but the 3-4 messages are sent one after another, so Bot1 would ban 4, Bot2 would ban 4, Bot1 would ban 4, ect.

This could also be done with more, lets say 4 bots. Bot1 would ban 4 AND Bot3 would ban 4, then Bot2 would ban 4 AND Bot4 would ban 4...
September 2, 2004, 1:12 AM
Networks
[quote author=shout link=board=17;threadid=8418;start=15#msg78618 date=1094087568]
I have an idea... but im noob so...

Have two battle.net connections in a bot, and each one has Networks 2 queue system. When one of the bots queue "type 1" is initiated, the other one does too, but the 3-4 messages are sent one after another, so Bot1 would ban 4, Bot2 would ban 4, Bot1 would ban 4, ect.

This could also be done with more, lets say 4 bots. Bot1 would ban 4 AND Bot3 would ban 4, then Bot2 would ban 4 AND Bot4 would ban 4...
[/quote]

That may good for a bots that cooperate together but I am talking about a queue for a single bot.
September 2, 2004, 1:42 AM
shout
Eh. Just an idea, and not only for you, but for other people who are seeking help and might read this thread.
September 2, 2004, 2:09 AM
Gangz
Just randomise the delay times when numeruos messages are sent. To an extent of course. Figure the packet size of a full length message and use that a figure instead of requird delay. You will never be able to sent to much to fast. I dont know if this made sence to you, its harder to explain then is to think about.

Shorter Ver: Figure out how many consecutive messages can be sent through bnet using the max amount of chars(i think its 255 if i remember right)

Us that as a guid to how many you can send withought flood. Set the delays to randomize to a certain extent
September 3, 2004, 6:35 AM

Search