Predator Botnet Script

Current Version: 5.0 (fix listed below under 5.03)
Developers: wolf@fangz.net and matt@fangz.net
Download: predator-5.03.tar.gz

Installation instructions

To install this new version, perform the following.

  • move the predator-5.5.tar.gz to your eggdrop/scripts directory
  • gunzip predator-5.5.tar.gz
  • tar xvf predator-5.5.tar
  • ./install - this will copy/move necessary files. It will also start the install pico editor (if installed) to edit your predator.conf file
  • Read the last instructions it tells you =)

Release notes / version information
Predator Botnet 5.5
________________________________________________

BadChan 3.3 updated
We no longer display "scanning (host)" and "(host) is fine" messages. This is a normal bot routine and shouldn't need to be logged or displayed. If a user is E|E in their record, it will display that they were exempt from the scan. Any other errors/messages are also displayed.

Predator Botnet 5.03
________________________________________________

Bot protection fix
If a netsplit occured and the server did a deop on a bot for some reason or valid user,a ban would be placed in the bot *!irc.server@*. Script tests for a . in the nick to see if it's a server. Efnet doesn't allow the . in nicknames.

Predator Botnet 5.02
________________________________________________

Badchan fix
If a user joined a channel, that was on a bad channel and left to quick it would put a ban of *!*@ in the bot (hrm not good ! ). This checks to see if the host is *!*@ or if the user left before a check.

Predator Botnet 5.01
________________________________________________

badword fix
If you were a op or owner/master you would get kicked and banned out of your own channel. ooops =) Exempts are global omntE and channel omnE.

Predator Botnet 5.0
________________________________________________

badword 3.2b
Bass's badword is okay but to much extras. Made the predator.conf simple to handle badword channels and scanning. Scanning of channel is 30 minutes. Shouldn't need to be set higher then 30. Each user that joins the channel that you check, is scanned. Only time you would need lower then 30 minutes would be on a network with LOTS of splits.
getops
Latest version (delayed op'ing)
clonecheck
Updated some variables and checking
badword
New option.. If a user is kicked we can ban them for using that word and for how long.
idle-kick
Do we ban users who are kicked for idle?
bot protection
When a bot is kicked by non-owners, or another bot, the user can be kicked and/or banned. Also a 'user' can be noted about the incident.
netban/netunban
Removed all of it and migrating this to a botnet service instead. It's very useless to have the bans propagated across bots instead of having a central/backup bot to do the checks. Believe it would help in stabiling eggdrop itself.

Predator Botnet 4.6
________________________________________________

variable problems with kick/deop report.
I noticed some problems and was emailed some notes/logs of instances of mis-reporting. I think I was programming that in my sleep cause I did the opposite of what should have been done on the variable section. IE: meant handle and used nick variables. Also, the bot will always display if it was kicked or deoped.

Predator Botnet 4.5
________________________________________________

fixed a variable on maid.
The variable in .netconfig was cl_enable to show if script was enabled. That was incorrect as it was suppose to be share_enable.
badword using "" to enable all.
I realized when put in production that I said "" is to enable checking on all channels. I forgot to change "*" to "" in the script. Sorry
removed .disable-cf and .disable-maid
Also realized that if i made this script to disable most of the functions we would have a large ass script. For now I took these out until I fiqure out to how make it tinier and dynamic.
enabled bot deoping support.
If a user that didn't have defined flags deoped a bot, it could now strip their flags, delete them or do nothing and do/don't note a user if it was triggered
enabled bad channel support.
If a user was on a channel that was 'defined' as no-good, the bot would ban them.
deleted .mchattr
Way to dangerous, plus limited support with 1.3 as I found out. If you tried to change a channel flags, your user file got a little wacked cause of it not being supported.
anti-idle doing multiple timers
added a section to check if the timer existed. If it did to delete it and re-add.
wallop removed
bots don't need to be walloping unless they became people. =)
ctcp options
cleaned that up. /ctcp botnick chat & /msg botnick help options and added to the netconfig section. Log files show when a user does any ctcp chat.
ident
cleaned it up. made it more visible and config section also
badword banning
allows a user to be banned for so many minutes if they use a badword.
netbans/unbans
allowed for you to -netban # or -netban mask. Also allowed for you to use your own ban message. Also more logging on this to show if a ban existed and who was doing the bans or unbans across botnet.
Getops update.
By default, the bot is now checking to see if the bot requesting ops is already oped. If it is oped, it will _NOT_ op. You can disable this by setting in the getops section of the script set go_check 0. Alot of people requested this because of flooding and to many mode changes which would sometimes desync a server. ban protection I changed the mode so that you could not only do +i you could do +im or whatever preference you have. By default its +im now.
Exempt (hybrid 6.x)
I added a report that if a mode change of +e was done, it reported it in the bot and a -e to be done because of ban control. Eventuall in future releases I will be supporting this and checking against bans and exempts. Only 1/4 of efnet has this mode. Notes from changelog on hybrid 6

Predator Botnet 4.4
________________________________________________

updated .netinfo to show script version
Thought would be helpful in determing other bot versions. Note this will work only after 4.4 releases. So if your bot has 3.1 it will still report the eggdrop version just not the script version
botshare files.
Due to eggdrop's lack of removing share files if a userfile was aborted, I added a function that after so many hours/minutes (random) that it would delete .share files if they were not mofified for a random amount of time.
flood control ban
Since internet is getting more and more powerful, that means were getting more and more idiots on. I put a protection in that, if a bot reached so many bans, it could set the channel to +i for so many minutes and send a channel notice or note if you wanted it to. Default is on the 19th ban to +i the channel for 120 seconds.
seen 1.4.1
update this to the latest release. Should be faster and less cpu consuming.
Predator Botnet 4.3
________________________________________________
fixed badword problems
when user sets badwords such as "op", it would ban users saying op and any words that contained "op" in them such as "hope". Installed better functionality for badword.

Predator Botnet 4.2
________________________________________________

variable problem in config ${idle.v} etc.
Can't use periods when doing $idle.test or whatever. Needs enclosing in {}
fixed a clonenick problem
[18:20] Tcl error [clone_detect]: can't read "clonenicks": no such variable fixed with adding the variable to global list
release information
next release is expected something in a few months, unless bugs exist. Wore myself out doing to much and this is stable.
Demons Botnet 4.1 / NKA Predator Botnet 4.1
________________________________________________
added a set bantime
"1[rand 9][rand 9]" This was done because if you were on bigger botnets, all bots would remove the same ban simotaneously causing channel flood. The rand function sets a random time from 100 - 199 for the ban time in minutes.
change of botnet name to Predator
Another script exists now with this name. I this this to be unique and predator sounds more unique and also describes better what this botscript does.
clone script problem
The script was not working correctly with flags of a user. If you set the flags to "b m n" it would not work. Was missing a global flag definition.
added a help file
Got tired of trying to modify the script to support help so now for help commands do .help predator for a list of commands available and help on those too.
redesigned the .netconfig
The other way looked gross.
took out .join and .leave
no longer needed/supported (use .+chan and .-chan)
deleted the function mpass
very dangerous command and didn't see it fit to be here.
added channel limit function
prevents other botnets from trying to do .mjoin your channels and flood them

Demons Botnet 3.65
________________________________________________

added ctcp
Users were not setting the set ctcp-finger "" set ctcp-userinfo "" fields I now modified the script for the version to equal the version of the script and all other queries to display a "Disable by user." message

Demons Botnet 3.5
________________________________________________

added the Badword tcl into the script. (modified)
A few people requested this because they did not want to kick ops/masters/owners who used a badword but others not defined in the bot or with a special flag. The badword script can listen on all chanenls or specific channels.

Demons Botnet 3.1
________________________________________________

added Bass's seen script to this
Bot owners didn't want to have to keep track and add users to the bot to do a seen on them. With bass's seen, it keeps track of all nicks and does not have to allow the user to be defined in the bot as with the loadmodule seen does.
added the DCC autoaway command
Users who were on the bot would do extended idles and not mark themself away. This was a pain because when you did a flag note or anything the user would say, "I didn't get the note!!!", owner: "Where you marked away?" user: "Uh no? heh."
Demons Botnet 2.5
________________________________________________
added .+netban and .-netban
This sets bans or unbans accross multiple botnets for a user. Their are two ways that a netban or netunban can be set/removed.
(a.) same bot id
(b.) or the option not to use botid's for networkbans/unbans
  (i.) This option is insecure and should be used with caution with a botnet that is very large. This option maybe deleted in the future and require a "merging" of botnets for netbans/unbans to take effect on other channels.

Demons Botnet
________________________________________________

I don't remember much more and was fooling around with the script at the time. Demons Botnet 2.5 came about and I started getting serious more with the script because of channels getting hacked more and more and splits that were causing problems. So I and others wanted a stable script that could be trusted.