In order
to have your WIN32 Darkbot online you only need to download it, install
it in your Windows system, add yourself as an administrator on userlist.db
and eventually editing servers.ini, perform.ini and deop.ini.
After that most of the configuration settings can be changed
online with a few commands, all covered by this document and explained
in detail on Command List
Document.
However, you can also setup your Darkbot offline by editing the
configuration files within darkbot\dat directory as you can see on
this document.
Download
Installation
Basic Configuration: (userlist.db)
Offline
Additional Configuration Settings
(setup.ini perform.ini
deop.ini servers.ini random.ini)
Going Online: (darkbot.exe password login)
Online Additional
Configuration Settings
(setinfo setnick
setuser setchan setchar autotopic vhost)
Start
Adding Topics
You Must Read
Other Files: (info2.db randomstuff.ini permbans.db seen.db)
Something Wrong
Follow the order of events described
here and you'll have your Darkbot up and running!
DOWNLOAD
(1)
Download WIN32 self-extracting file from
http://darkbot.sourceforge.net/win32.html
INSTALLATION
(2)
Start the installation process into your Windows
system by double clicking on the file's icon and
extracting it's contents to [ c:\ ] or the directory you
specify.
Go to the directory where the extracted files are
located [ c:\darkbot ].
You'll see several files in there as well as some
sub-folders.
BASIC
CONFIGURATION
This tutorial will start with minimal configuration.
If you just want to check if it connects to IRC go
ahead and do it by clicking on darkbot.exe (opens a Ms-DOS
window so you can see connection progress and status)
or darkbot-nonconsole.exe (launches Darkbot on the background).
By default Darkbot is ready to connect to irc.superchat.org
with NICK=Darkbot, USERID=Darkbot, CHAN=#Darkbot REALNAME=Download
@ http://darkbot.sourceforge.net,
CMDCHAR=!, AUTOTOPIC=0 and VHOST=0. (point your IRC client
to same server and channel to see your Darkbot)
In order to personalize your Darkbot
you need to hand edit some files. All files on darkbot\dat\
are offline hand editable and all have basic syntax examples
in it. Do not leave empty lines and
disconnect your Darkbot from IRC before editing configuration
files.
To start controlling Darkbot add yourself
as an administrator (level 3) on your darkbot\dat\userlist.db
[Level 3 is the highest, allow you to control all Darkbot
functions; level 2 gives access to channel operation
commands plus level 1 commands; level 1 only permits
to manage Darkbot's database - it's the so called helper
level; all other commands are public, meaning everyone
can perform them].
(3) [userlist.db]
Adding yourself to Darkbot's user list.
Open darkbot\dat\userlist.db and substitute '#* *user@*.yourhostmask.com
3 0 mypass I need to use SETINFO' with your information.
You only need to overwrite *user@*.yourhostmask.com'.
Everything else can be done online. If you want to define
a password for yourself you can do it now in place of
'mypass'. 'I need to use SETINFO' is a message Darkbot
sends to newly registered users in order to remind them
to define or not it's greeting message. Leave it as is
or write, for example, "Hi Boss ;)". You can also replace
the setinfo message with a 0 (zero) to disable it. (You
can add more users from online with the !adduser command
or delete with the !deluser command)
Save and close userlist.db
(see on Something Wrong
help on
My Darkbot don't recognizes me when I /msg
Darkbot login mypassword for examples or
if you have doubts or problems)
If you are not in a rush, want to see your Darkbot in
action and finish configuring it online jump to (9) GOING ONLINE; if you want to
keep editing offline before you launch your Darkbot follow
next steps.
OFFLINE
ADDITIONAL CONFIGURATION SETTINGS
(follow the samples in the files and don't leave
any empty lines)
(4) [setup.ini] Open darkbot\dat\setup.ini.
This is the file you need to edit to setup your Darkbot's
nickname, username, realname, default channel to join,
virtual host, and command character prefix. Change
the contents of the file as you need overwriting
existing parameters. Do not remove anything before '='. Do not
leave extra spaces or lines. Do not use carriage
returns. Save and exit.
Obs.:
'VHOST= ' to set your virtual host
(must be a registered domain pointed to the same computer
as Darkbot and configured for IRC)
'CHAN=#ChannelHere' to set Darkbot's default channel.
If you want to add more channels use perform.ini.
'CMDCHAR= ' to set Darkbot's command prefix in order
to trigger most of it's commands.
(5) [perform.ini] Having Darkbot performing IRC commands
automatically.
You can make Darkbot perform a list of raw IRC
commands when connects to the server (as mIRC's perform
function). You can make your Darkbot join other channels,
perform mode changes, login to channel services with it.
Depends on each network, IRC acknowledgment and your imagination the commands
you can add.
Open and edit darkbot\dat\perform.ini. Write one command
per line. Examples:
- to join an additional channel besides
default one
JOIN #Channel_here
- to set modes
MODE #Channel +nt
- to set a topic as soon as enters a channel
TOPIC #Channel_here :this is a test topic
- to send a message to you as soon as it connects
PRIVMSG YourNick :hey... I'm here
- to send a notice to you
NOTICE YourNick :be ready to feed me :p
- to authenticate on Superchat.org
PRIVMSG serv@superchat.org :login #darkbot blahblah
- to authenticate on Undernet's CService
PRIVMSG x@channels.undernet.org :login username password
- to have bot X giving op to your Darkbot
PRIVMSG X :op #channel_here username
- to login and get Ops on a eggdrop
PRIVMSG Eggdrop_nick :op password #channel
General rule to send raw IRC messages is preceding the
message with ':'. However there are situations where you
might be able to perform commands without it.
- to identity your Darkbot on some servers
NICKSERV IDENTIFY darkbot_password
- for some channel services
CHANSERV OP #channel_here Darkbot
(6) [deop.ini] Changing Darkbot's behavior when is not Op.
You can have your Darkbot perform commands when loses
channel Op like messaging you, automatically asking Op to
the channel service or another bot or Ops. Open and edit
darkbot\dat\deop.ini. Check the examples bellow. Leave this
file blank if you want it to do nothing. (see also examples
used on perform.ini)
PRIVMSG #channel_here :Hmm, wish I had ops...
NOTICE Your_nick : I lost Ops :(
PRIVMSG x@channels.undernet.org :login username password
PRIVMSG X :op username
PRIVMSG serv@superchat.org :login #darkbot blahblah
chanserv op #channel_here Darkbot
PRIVMSG Eggdrop_nick :op password #channel
(7) [servers.ini] Changing or adding servers to Darkbot.
By default Darkbot connects to one of SuperChat
servers
irc.superlink.net 6664
irc.superchat.org 6667
Open and edit darkbot\dat\servers.ini.
You can list as many servers as you want, so if it's disconnected,
it'll switch to others. Do not leave empty lines.
Save and exit.
(8) [random.ini] Changing replies random prefix.
If you want to change the prefixes Darkbot uses
when answers a question that uses no variables, open
and edit darkbot\dat\random.ini following the syntax and
instructions shown. Instructions in the file are self-explanatory.
Darkbot uses randomly one of the prefixes listed on this
file.
GOING ONLINE
(9) [darkbot.exe | darkbot-noconsole.exe]
Connect to the Internet.
Double click on one of the two executable files within
Darkbot package that needs to be launched; darkbot.exe (a
MS-DOS box will open with Darkbot's initialization information)
or on darkbot-noconsole.exe (it will load Darkbot into the
background not opening a MS-DOS window). You can also run
Darkbot by opening yourself a MS-DOS window and writing
darkbot followed by 'return'. Wait a little bit and if you
didn't change servers.ini in order to use another network, Darkbot will
join channel #Darkbot at SuperChat network.
(To join this network type in your IRC client /server
irc.superchat.org and /join #darkbot as soon as you
are logged in)
If another nick
Darkbot is already there, your Darkbot will take
nick Darkbot0, Darkbot1 etc. (You can see witch one is
yours by doing /whois and looking at the output info. Will have
the same hostmask as yours or the machine where it is
running).
You can have Darkbot jump to another server by performing
!JUMP command.
(NOTE: Information about this Family Oriented Network
administrated by Darkbot's author can be found at
http://www.superchat.org/
)
(10) Setting
or changing the password to access Darkbot (25
characters maximum). If you didn't change 'mypass' on
userlist.db write
/msg Darkbot pass mypass my_new_pass.
After changing it you'll receive a notice like
this:
-- Password for youruserid@yourhostmask.com
has been updated.
(11) Login to Darkbot:
Now you have to authenticate yourself to Darkbot
to perform some commands. To do
so type
/msg Darkbot LOGIN YourPass
You'll receive a notice like this from Darkbot:
-- Verified: #darkbot[3]
Notes: if Darkbot is Op it'll give you Voice and
Op on all channels where both are; have in mind - for
security reasons - if you or Darkbot leaves the channel
you have to login again when returning.
Proceed with the remaining steps if you want to
change any settings or you didn't configure them offline.
ONLINE
ADDITIONAL CONFIGURATION SETTINGS
All the following commands are explained in detail
on the Command
List Document.
(12) Set greeting message
If you want Darkbot to greet you when you join
the channel and you didn't already edited on userlist.db
'I need to use SETINFO' type, for example,
!SETINFO I think I know you ;P
(!setinfo 0 disables the function; typing !setinfo
without any parameters gives you a some help about the
command)
Next time you join the channel Darkbot will greet
you with that message.
(13) Set Darkbot's nick name
In order to have Darkbot with a nick you like,
you only need to type,
!SETNICK MyDarkbot
(14) Set userid
If you want to change Darkbot's user id type,
!SETUSER newuserid
(15) Set default channel
To instruct Darkbot what channel must be the default
one, type,
!SETCHAN #YourChannel
(16) Set Command Character
If you want to change default's command prefix
[ ! ] issued to Darkbot to execute some commands
and, for instance, you want to use command character
'>' type,
!SETCHAR >
(17) Set auto topic
Auto-topic function makes Darkbot repeat channel's
topic you specify every 30 seconds (default). To
do so type, for example,
!AUTOTOPIC Visit
http://darkbot.sourceforge.net for complete
Darkbot information.
(18) Set virtual host
If you want to set a virtual host to Darkbot type
!VHOST your.vhost.com
--**--
YOU ARE DONE!
The remaining files within \dat folder can also
been edit offline. info2.db (stores
topics and corresponding replies), randomstuff.ini (stores
random replies), seen.db (stores the list of users seen
by Darkbot) and perbans.db (stores permanent bans)
START
ADDING TOPICS
As all commands in this document YOU MUST LOGIN (/msg
BotNick LOGIN yourpass) before execute any Darkbot's
command)! Also, you need to read the complete command
list document where you find a more detailed explanation
about each one.
This is only a superficial help to get you add,
modify and delete basic topic replies.
Login to your Darkbot
Type:
YourBotNick ADD hello hello N~
(now type 'hello' and Darkbot will reply 'Hello
YourNick')
Type:
YourBotNick MODIFY hello Hi N~, thanks for coming
to C~
(now type 'hello' and the Darkbot's reply was modified
to
'Hello YourNick, thanks for coming to #YourChannel'
Type:
YourBotNick DELETE hello
(Darkbot deletes the topic 'hello'. If you type
'hello' Darkbot don't answer)
YOU MUST
READ
Darkbot's Complete
Command List and all help document
Obs: If you want to have a shortcut to open Darkbot
from your
desktop, right click on darkbot.exe and choose Send
To | Desktop (create shortcut)
------------------ " -------------------
OTHER
FILES
info2.db - This is
the file where topics and replies are stored, the place
where Darkbot gets information to 'talk'. It's the main
database. Format is:
A topic can be more than one word, but will be separated with +'s instead
of spaces. If a data starts with a +, the reply will
be in the form of an action. If the data starts with
a -, the output can be stacked using PIPES and you can use raw data, to do
things such as NOTICE, PRIVMSG and even KICK. The symbol
"^" is the $nickname variable. The ^R (reverse control char) is the $chan
variable. While this may seem a bit confusing... don't
worry about it, It's very simple, just hard to explain
in words without SHOWING you the bot in action.
randomstuff.ini
- List of random things to say. You can add more online by saying:
RANDOMSTUFF where is the name of your bot, and
is the information to add.
permbans.db
- This is a text file, just a .db (database) file name extension. Use the
!PERMBAN and !DELBAN commands from on-line to add\delete.
seen.db - This is a
list of people your bot has seen. You can access it with !SEEN ,
seen's
over one week old are deleted.
SOMETHING
WRONG
All suggestions here are proved to work
on all Windows flavors and several machines. Although
we believe there are no side effects to your computer
or to yourself in following them, do it at your own
risk. Do not blame Darkbot in case it decides not answering
you.
Before proceed:
(A) - Shut down your Darkbot
by closing it's MS-DOS window. Press CTRL + ALT + DEL
to open task manager and make sure there is no entry
with name ' darkbot' (not C:\darkbot if exists). If not,
press ESC. If so, highlight it and click 'End
Task'. Open Task Manager again to make sure
there is no 'darkbot' process running. At this
time check also if there is an entry for ' Winoldap'
(it's a System Agent related file, not a Darkbot one.
Sometimes stays on even after closing a MS-DOS window).
If so, that could cause system problems
and/or Darkbot malfunction so ... 'End Task' it also.
Follow this procedure every time you turn your Darkbot
off.
(B) - Always make a backup of
the file you want to work with before any change or
make a copy of Darkbot's folder by highlighting it's
name, pressing CTRL + C followed by CTRL + V. Leave
the file or 'Copy of darkbot' as a safe backup in case
you need any eventual information you already have in
it.
(C) - In case
of persistent problems try using another text editor to edit your
Darkbot files. The one you are using might be adding hidden
codes or changing the format of the original files.
Check if file extension is the same. For instance, if
you are using Notepad and file userlist.db extension
after editing and saving is userlist.db.txt
rename it to userlist.db. You can check that by going
to your Windows Explorer and Tools | Folder Options | View | unmark
'Hide file extensions for known file types' | mark 'Show Hidden
files and folders'. Undo that
when you are done. It's always a good idea to delete those
files and having new ones in case of suspicion of being
corrupted. You can overwrite them with ones from the
original compressed Darkbot file. (Wonder how to edit
those files that Microsoft don't associate with any
program? Right click on the file, then 'Open with ...'
and choose 'notepad'.)
(D) - Do not leave
empty lines on the middle of others or on the end of
the text.
============================
(1) I
can't read and edit some files that have kind of strange
black squares. Is that Code Black virus?
(2) - My Darkbot don't connect
at all
(3) -
My Darkbot don't recognizes me when I /msg
Darkbot login mypassword.
(4) -
My Darkbot don't connect to the servers I want.
(5) - My
Darkbot is not giving me the greeting message (setinfo).
(6) - My
Darkbot is not accepting commands if I repeat them
in a short period of time.
(7) - My
Darkbot is not answering when someone asks the
same question.
(8) - My
Computer freezes and or WINOLDAP caused a general protection
fault in module USER.EXE at 0004:00001d43.
(9) - I
get an 'ERROR! Aborting program. (SIG_SEGV) Uptime: 0 hours, 0 mins'
and Windows error on MSWSOCK.DLL when launching my Darkbot.
(10) - I'm
stuck... I don't know how to turn off my Darkbot
===========================
(1) - I
can't read and edit some files that have kind of strange
black squares. Is that Code Black virus?
Darkbot is done in a way that is very safe in all
aspects not only on IRC but also on it's invulnerability
to virus or trojans. So no, it's not any virus or nothing
like that. Those are codes left by our editor when tabs
and carriage returns are used. Use Wordpad. You can
also use Notepad but in some files you need to reconstruct
the lines in a way of having each command on a separated
line. Never leave any empty lines.
(2) - My Darkbot don't connect
at all.
(2.1) - Click on darkbot.exe and run it with minimal
configuration (no hand editing at all) to see if connects
to irc.superchat.org and goes to channel #darkbot.
If you go there, Darkbot should react with a short answer
if you write it's nick.
(2.2) - if not, install Darkbot again from the
original compressed file. If problem persists your
original compressed Darkbot file or some of it's contents
might be corrupted so download it again from Darkbot's
official site. Go to (2.1).
(3) -
My Darkbot don't recognizes me when I /msg Darkbot login
mypassword.
(3.1) - After following procedures on (A) add yourself
to darkbot\dat\userlist.db - Save
and exit - Connect Darkbot again and try to /msg Darkbot
login yourpassword.
(3.2) - if Darkbot notices you as accepting your
login, write on the public window 'Darkbot add test
123'. Darkbot should answer 'Okay'. Write 'test'. Darkbot
should answer '123'.
(3.3) - if not, follow procedures on A, B, C and
D.
(3.4) - if Darkbot is still not accepting your
login
- Open
your darkbot\dat\userlist.db
On the sample line '*user@*.yourhostmask.com 3 0
mypass I need to use SETINFO'
You only need to overwrite *user@*.yourhostmask.com
and 'mypass' in order to get your Darkbot online and
access to it.
The mask *user@*.yourhostmask.com
should match the one you have when you connect to the
same network where your Darkbot is (do /whois to_ yournick
to compare it). You must use a wildcard * on all portions
of the mask that change every time you connect. General
concept is you should substitute all changing items
on your mask with an asterisk (*).
- While connected do /whois
YourNickHere and check the first line of the output.
On the userid/ident side (the
one on the left of @) you must use one * right before
of it on your userlist.db entry. Do not use the format
*!*myident@blah.blah.blah. If that ident has a leading
~ don't use it. ~myident@blah.blah.blah or myident@blah.blah.blah
should go to userlist as *myident@blah.blah.blah.
If your ident changes at times (some characters are
missing like this ~myid@blah.blah.blah)
on the right side, right before @, use the wildcard on
both ends, i.e., *myid*@blah.blah.blah.
On the IP address side, right
of @, compare what you have with the examples bellow.
Static IPs (never changes):
- if your IP looks like this: myident@myhost123.mydomain.com
you should add as *myident@myhost123.mydomain.com
- if your IP looks like this: myident@11.222.12.123
you should add as *myident@11.222.12.123
Dynamic IPs (changes
with each connection):
- if your IP looks like this: myident@myhost123.mydomain.com
and if the portion that changes for every connection
is '123'
you'll add *myident@myhost*.mydomain.com
- if your IP looks like this: myident@11.222.12.123
and if the portion that changes for every connection is 12.123
you'll add *myident@11.222.*
(4) - My Darkbot don't
connect to the servers I want.
- follow procedures on A, B, C and D.
- open servers.ini and remove the servers in there
adding those you would like Darkbot to connect to. Syntax
must be .irc.server.here 6667' and NOT irc.server.here:6667'
. Save and connect.
(5) - My
Darkbot is not giving me the greeting message (setinfo).
Darkbot ignores whoever rejoins a channel for a period
of time. The default length of time to not recount someone
when rejoins the channel is set to 60 seconds.
(6) - My
Darkbot is not accepting commands if I repeat them
in a short period of time.
Darkbot ignores for a certain period of time repeated
commands to avoid flooding. Use one command alias
or wait a couple minutes.
(7) - My
Darkbot is not answering when someone asks the
same question.
Darkbot will not reply to a topic already asked (with
same syntax) during a certain period. By default
that length of time is set to 5 seconds.
(8) - My
Computer freezes and or WINOLDAP caused a general protection
fault in module USER.EXE at 0004:00001d43.
When System Agent tries to shut down an MS-DOS session,
the message "Windows cannot shut down this program
automatically..." is normally displayed.
If this message is left open (either because it is
behind a currently running program or it is ignored)
and System Agent tries to shut down a second MS-DOS
session, the general protection (GP) fault occurs.
Close that dialog and press CTRL + ALT + DEL and
End Task 'darkbot' and 'Winodalp'.
(9)
- I get an 'ERROR! Aborting program. (SIG_SEGV)
Uptime: 0 hours, 0 mins' and Windows
error on MSWSOCK.DLL
Check VHOST on setup.ini. You
are not able to use a virtual host if it's not assigned
to that computer and/or not configured to work on IRC.
(10) - I'm stuck...
I don't know how to turn off my Darkbot
You can use command !die online or click
on the 'x' on the upper right corner of your MS-DOS window.
If
you started Darkbot from an open MS-DOS window you can
also press CTRL + C. See also procedures
mentioned in (A)