Page MenuHomeDevCentral

SETUP
No OneTemporary

You can control how Darkbot works using setup parameters. You can
change these by directly editing setup.ini (when Darkbot is not running)
or by using the !set command (when logged in). In setup.ini it will
look like this -
PARAMETER=value
Using the !set command will look like this -
!set PARAMETER=value
Using the !set command will save your changes to setup.ini. Some of the
parameters will require a restart before they will be recognised.
Parameters are one of three different types, number, text, or boolean
(true or false). For boolean values you can use any one of these to
specify "true" - true, 1, yes, ack, ok, one, positive, absolutely,
affirmative, ah ha, shit yeah, why not. You can use any one of these to
specify "false" - false, 0, no, nack, nope, zero, negative, nah, no way,
get real, uh uh, fuck off, bugger off. Only the first letter is
important, so there are many variations.
NOTE: Some of these parameters can only be set at compile time. Exactly
which ones is currently subject to change, but they will all be
documented here in order to keep them in one place. This can look like
this -
sh build.sh --enable-parameter1 --disable-parameter2 --with-parameter3=value
================ LANGUAGE ================
PARAMETER LANG
DEFAULT 1
TYPE Number, Compile time
EXAMPLE --with-lang=1
Pick a number from the list below for the language you want your darkbot
to speak. Default is 1, English. The email address is the person
responsible for the translation.
------------------------------------------------------------------
1 = ENGLISH
2 = FRENCH - Inajira <inajira@videotron.ca>
- EfX <michel.efx@globetrotter.net>
- eCHaLoTTe <echalotte@cablevision.qc.ca>
3 = SPANISH - speed1 <speed@eduredes.edu.do>
4 = DUTCH - Asmodai <asmodai@wxs.nl>
5 = LATIN - Otaku <otaku@unixgeek.ml.org>
6 = GREEK - Chris_CY <chriscy@cylink.net>
7 = EBONICS - rapsux <bitter@ici.net>
8 = PIG LATIN - Cloud <burtner@usa.net>
9 = RUSSIAN - KOI8 encoding
10 = RUSSIAN - CP1251 encoding
- Oleg Drokin <green@ccssu.crimea.ua>
11 = PORTUGUESE - Pincel <Pincel@darkbot.info>
12 = GERMAN - C.Hoegl@gmx.net & marc@reymann.net
13 = ITALIAN - daniele nicolucci <jollino@icemail.it>
14 = CHINESE - James <jamespower@263.net>
15 = SWEDISH - Ybznek <sunmo@seaside.se>
16 = NORWEGIAN - [SoHo] <soho@int19h.com>
17 = ROMANIAN - Radu <radu.negoescu@sante.univ-nantes.fr>
18 = ARABIC - MrSiMo <mrsimo7@yahoo.fr>
19 = TAIWANISH - ?
------------------------------------------------------------------
? = Email juice@darkbot.org if you want to help add other langs!
------------------------------------------------------------------
================ STARTUP, CONNECTION, IRC ================
==== ON START ====
PARAMATER ENABLE_VERSION_CHECK
DEFAULT false
TYPE Boolean, Compile time
EXAMPLE
Your darkbot tell you (at startup) what the latest version of darkbot
is. We recommend keeping this disabled.
==== ON CONNECTION ====
PARAMATER VERB
DEFAULT true
TYPE Boolean, Compile time
EXAMPLE
Print out extra details while starting up?
PARAMATER CHECK_STONED
DEFAULT true
TYPE Boolean, Compile time
EXAMPLE
Check if servers are not responding, is so connect to next server in
list. (recommended) Some linux systems have problems with this. You'll
know if you're one of them if your bot disconnects every 5 minutes.
ALSO NOTE: If your bot seems to disconnect every 5 minutes, try turning
off CHECK_STONED.
PARAMATER CONNECT_WAIT_TIMEOUT
DEFAULT 10
TYPE Number
This is the time that darkbot will wait for a connection to the server,
before trying the next server. You may need to increase this if you are
on a slow connection.
==== ON CONNECTED - IRC ====
PARAMATER PERFORM_TIMER
DEFAULT true
TYPE Boolean
Send everything that's in PERFORM.INI to the IRC server every 60
seconds? Useful if the bot is banned, or X was split at the time darkbot
signed on.
PARAMATER DEFAULT_UMODE
DEFAULT "+i-ds"
TYPE Text
What user modes do you want for darkbot?
==== ON IRC ====
PARAMATER CTCP
DEFAULT true
TYPE Boolean, Compile time
EXAMPLE
Reply to CTCP's? (PING/VERSION).
PARAMETER ANTI_IDLE
DEFAULT false
TYPE Boolean
Want your darkbot to always have less than 10 min idle? This isn't
usually needed since darkbots tend to talk a lot.
==== ONJOIN ====
PARAMATER DISPLAY_SYNC
DEFAULT false
TYPE Boolean
When bot joins a channel, sometimes it's hard to tell when it's "synced"
and is no longer processing stuff -- this tells the channel the bot has
finished syncing. For example, if you try to login while it's still
syncing, it may just ignore your login request until it sees you in the
channel.
================ DATABASE MANAGEMENT ================
==== ON START ====
PARAMETER SORT
DEFAULT false
TYPE Boolean
Sort your info2.db on startup? Will take forever if u have a large db.
If you have dividers or any sort of markers on your database and you
want to preserve their position leave this directive undefined. Sorting
the database will put all items listed in alphabetic order.
PARAMETER FIND_DUPS
DEFAULT false
TYPE Boolean
When user's do the INFO command, and at startup, do you want to find and
remove duplicates database entries?
PARAMATER SAVE_DUPS
DEFAULT true
TYPE Boolean
When duplicate topics are found, do you want to save them? (in case some
topics are accidently deleted).
==== PERMISSIONS ====
PARAMATER GENERAL_QUESTIONS
DEFAULT true
TYPE Boolean
Do you want Darkbot to answer questions that match a topic without
addressing the bot?
PARAMATER ALLOW_ADD_IN_MSG
DEFAULT false
TYPE Boolean
Turn this on if you want to be able to use the ADD function in private
message to the bot.
PARAMATER ALLOW_DEL_IN_MSG
DEFAULT false
TYPE Boolean
Turn this on if you want to be able to use the DEL function in private
message to the bot.
PARAMATER MSG_RESPONSES
DEFAULT false
TYPE Boolean
If you want your bot to be able to respond to things asked in private
messages, turn this option on. Use the above two defines to allow /
disallow adding or deleting entries in private.
PARAMATER ENCRYPT_PASSWORDS
DEFAULT false
TYPE Boolean, Compile time
EXAMPLE
Toggles the use of encrypted passwords in the userlist.db file. Turn
this off if you don't want your passwords encrypted. Also note that if
you're using encrypted passwords and you decide to turn this option
off, you'll need to redo your userlist.db file. Note: If you're new to
Darkbot, you may want to turn this option off.
PARAMATER REQ_ACCESS_ADD
DEFAULT true
TYPE Boolean
Minimal access level required to add topics?
PARAMATER REQ_ACCESS_DEL
DEFAULT true
TYPE Boolean
Minimal access level required to to delete topics?
==== LOGS ====
PARAMATER LOG_ADD_DELETES
DEFAULT true
TYPE Boolean
Do you want to log who adds/deletes topics? Log saved to
dat/logs/add_delete.log.
PARAMATER LOG_PRIVMSG
DEFAULT true
TYPE Boolean
Do you want to log all privmsg's to your darkbot? (will be saved to
dat/logs/ dir).
==== SLEEP DIRECTIVES ====
PARAMATER SLEEP_LEVEL
DEFAULT 3
TYPE Number, Compile time
EXAMPLE
Level at which user's can make darkbot shut up (aka hush). This is
useful for help channels when they want darkbot to quit talking while
they address something important in the chan.
PARAMATER SLEEP_TIME
DEFAULT 300
TYPE Number
How many seconds to sleep for?
PARAMATER GOSLEEP_ACTION
DEFAULT "\1ACTION falls asleep... ZzzZZzzZZzz\1"
TYPE Text
PARAMATER WAKEUP_ACTION
DEFAULT "\1ACTION wakes up from a snooze..\1"
TYPE Text
What you would want your Darkbot to say when sleep and wake up commands
are issued? (If you want you can change what is between 'ACTION' and
'\1')
==== DATA SIZE ====
PARAMATER MAX_DATA_SIZE
DEFAULT 400
TYPE Number, Compile time
EXAMPLE
The max length your database replies will be. This will be useful to
people loading their database into ram - if your data is all less than
400 chars, then you can save some ram.... Longer replies allows you to
do more, for example, with bitwise operator PIPE.
PARAMATER MAX_TOPIC_SIZE
DEFAULT 50
TYPE Number, Compile time
EXAMPLE
The max length your database topics will be.
==== OUTPUTS - TIMERS ====
PARAMATER LASTCOMM_TIME
DEFAULT 5
TYPE Number
LASTCOMM_TIME is the length of time (in seconds) that your bot will not
reply to a topic already asked. Thus if someone asked your bot about
"mirc" that question could not be asked again in the same format for N
seconds (or till the question is out of buffer). This prevents the bot
from falling prey to users who like to repeat.
PARAMATER OUTPUT1_COUNT
DEFAULT 4
TYPE Number
PARAMATER OUTPUT1_DELAY
DEFAULT 1
TYPE Number
PARAMATER OUTPUT2_COUNT
DEFAULT 6
TYPE Number
PARAMATER OUTPUT2_DELAY
DEFAULT 2
TYPE Number
The output timers. Darkbot does not output text without first putting it
into a queue list. If the bot has several lines of text waiting to be
sent, it starts to delay longer and longer between output, so it can't
flood itself off of IRC. Explanation:
If text in queue is < OUTPUT1_COUNT, output it. If text in queue is >
OUTPUT1_COUNT, delay OUTPUT1_DELAY seconds. If queue is > OUTPUT2_COUNT,
delay OUTPUT2_DELAY seconds. If number of text in queue is higher than
OUTPUT_PURGE_COUNT, then just delete all unneeded output (ie; any text
and notices, but leaving in stuff like kicks and modes) The defaults
below are recommended, as the bot isn't going to flood off. If you are
having the bot delete output messages and you'd like to increase the
queue, update the OUTPUT_PURGE_COUNT to a larger number. Just keep in
mind if someone floods your bot with a lot of VERSION requests, the bot
will sit there outputting a lot of version replies instead of deleting
them, causing it to act as if it's just sitting there not doing anything
when you ask it something in your channel.
PARAMATER OUTPUT3_DELAY
DEFAULT 3
TYPE Number
If still < OUTPUT_PURGE_COUNT and > OUTPUT2_COUNT then delay
OUTPUT3_DELAY secs.
PARAMATER OUTPUT_PURGE_COUNT
DEFAULT 7
TYPE Number
When all else fails... if more than OUTPUT_PURGE_COUNT delete them all!
No use in making the bot output slowly over a long period of time...
imagine if you set this to 50, and had an OUTPUT3_DELAY of 3 secs..
thats 50*3 secs till the bot is ready to output any new data to you!
======== OUTPUT MESSAGES ========
==== OUTPUT MESSAGES - ON TOPICS ====
PARAMATER EXISTING_ENTRY
DEFAULT "Sorry, there is an existing entry under keyword"
TYPE Text
Message to give when adding an existent topic.
PARAMATER NO_ENTRY
DEFAULT "I was unable to find entry:"
TYPE Text
Message to give when there is no mentioned topic.
==== OUTPUT MESSAGES - ON SEARCH ====
PARAMATER CANT_FIND
DEFAULT "Was unable to find"
TYPE Text
PARAMATER NO_TOPIC
DEFAULT "Sorry, I don't have any entry for"
TYPE Text
PARAMATER TRY_FIND
DEFAULT "What am I trying to find"
TYPE Text
These are the messages Darkbot will give on unaccomplished search
queries.
==== OUTPUT MESSAGES - ON NONEXISTENT TEXT ====
PARAMATER WHUT
DEFAULT "hmmm?"
TYPE Text
Answer to give in case Darkbot's nick is mentioned without any further
text.
PARAMATER RANDOM_WHUT
DEFAULT true
TYPE Boolean
Gives a random response from dat/whut.rdb instead what is specified on
'!set WHUT'.
PARAMATER DUNNO_Q
DEFAULT "*shrug*"
TYPE Text
Answer to give in case there is no reply on Darkbot's database.
PARAMATER RANDOM_DUNNO
DEFAULT true
TYPE Boolean
For those wanting the DUNNO_Q response to be random, turn this option
ON, and darkbot will ignore the default definition and use a random line
from dat/dunno.db
======== RANDOM STUFF =========
PARAMATER RANDOM_STUFF
DEFAULT true
TYPE Boolean, Compile time
EXAMPLE
Will read from a random line in dat/randomstuff.ini and say something
random in the home channel. ALSO if nothing is said in darkbot's home
channel it will say a randomstuff every RAND_IDLE as long as no one
says anything. (default = define) UNDEFining this directive will not
allow you to add RDBs or randomstuff entries. If you really want your
bot not to say anything from randomstuff.ini and keed adding random
replies, increase the time _TIME and _IDLE defines to, for example,
54750, which corresponds to 365 days :)
PARAMATER RAND_STUFF_TIME
DEFAULT 3600
TYPE Number
Time in seconds to randomly say something from randomstuff.ini.
PARAMATER RAND_IDLE
DEFAULT 1800
TYPE Number
Time in secs to say something in home chan when no one says anything.
This overrides the RAND_STUFF_TIME counter.
PARAMATER RAND_LEVEL
DEFAULT 2
TYPE Number, Compile time
EXAMPLE
Level at which user's can on-line add new randomstuff topics, this also
is the level at which users will be able to add RDB topics.
PARAMATER RANDQ
DEFAULT true
TYPE Boolean, Compile time
EXAMPLE
This is a new feature which enables the RANDQ channel command, which
will output a random quote from your randomstuff.ini containing the
specified search string.
PARAMATER BACKUP_RANDOMSTUFF
DEFAULT false
TYPE Boolean
This define backs up your randomstuff file every time you add a random
quote, in case you would like to do so.
================ IRC - CHANNEL RELATED ================
==== REGISTERED USERS ON JOIN ACTIONS ====
PARAMATER JOIN_GREET
DEFAULT true
TYPE Boolean
Have the bot do auto-greet (setinfo) to registered users?
PARAMATER SLASTCOMM_TIME
DEFAULT 60
TYPE Number
This is the length of time to NOT allow someone to be recounted when
they rejoin your channels, which tends to clutter up everyone's screen
with the setinfo. This basically keeps track of who joined in the last
___ seconds, and does not do their setinfo during that amount of time.
PARAMATER VOICE_USERS_ON_JOIN
DEFAULT false
TYPE Boolean
Have the bot VOICE users when they join?
PARAMATER OP_USERS_ON_LOGIN
DEFAULT false
TYPE Boolean
Have the bot OP users when they login?
==== USERS LOOKOUT ====
PARAMATER DO_WHOIS
DEFAULT false
TYPE Boolean
Want to be alerted when a user who joins is in "questionable" other
channels? This option only works on networks which their IRCD's allows
NOTICE to be sent using /notice @#chan.
PARAMATER MAX_LASTSEEN
DEFAULT 604800
TYPE Number
Max length in seconds to keep a lastseen (default = 604800 (7 days)).
PARAMATER SEEN_REPLY
DEFAULT "in the last 7 days."
TYPE Text
If you change the above time (MAX_LASTSEEN), be sure to update the
SEEN_REPLY to the respective time length.
==== COMPLAINT MESSAGES ====
PARAMATER COMPLAIN_REASON
DEFAULT "grrr, kick me again and I'm going to..."
TYPE Text
Message Darkbot will send to the channel where it was kicked from.
PARAMATER BITCH_ABOUT_DEOP
DEFAULT false
TYPE Boolean
will complain in the chan that the Darkbot is deoped in.
PARAMATER BITCH_DEOP_REASON
DEFAULT "grr, someone op me!"
TYPE Text
What do you want your Darkbot to say when is not oped?
==== CHAN OP DIRECTIVES ====
PARAMATER DO_CHANBOT_CRAP
DEFAULT true
TYPE Boolean, Compile time
EXAMPLE
Enable this if you want to make your darkbot bloated with stuff like
!KICK, !UP, !WACK, etc. Basically anything dealing with channel modes
and kicking commands. This includes PERMBANS. On linux, without this,
your darkbot bin will shrink considerably.
PARAMATER AUTOTOPIC_TIME
DEFAULT 1800
TYPE Number
Autotopic time interval in seconds.
==== KICKS AND BANS ====
PARAMATER DEFAULT_KICK
DEFAULT "Requested!"
TYPE Text
What do you want your Darkbot to say when kicks someone? Note when you
apply a kick with reason this setting will not overwrite it.
PARAMATER KICK_ON_BAN
DEFAULT false
TYPE Boolean
Kick people out when they are banned?
==== KICKS AND BANS - FLOODS ====
PARAMATER KICK_ON_CHANNEL_NOTICE
DEFAULT true
TYPE Boolean
Sometimes morons like to /notice flood channels. This define will make
the bot kick those people when they do a channel notice.
PARAMATER BAN_ON_CHANNEL_NOTICE
DEFAULT false
TYPE Boolean
If you want to take it a step further, you can also have the bot ban the
user@host too.
PARAMATER BAN_BY_HOST
DEFAULT false
TYPE Boolean
Finally, we can ban by *@host. This requires the above two to be turned
on.
==== KICKS AND BANS - DARKBOT'S OWN FLOOD PROTECTION ====
PARAMATER FLOOD_KICK
DEFAULT true
TYPE Boolean
Define this if you want your Darkbot to KICK out the people who flood
it. NOTE: This means flooding your BOT, not your CHANNEL. If you don't
define this, it will just ignore the user.
PARAMATER FLOOD_REASON
DEFAULT "Don't flood!"
TYPE Text
What do you want your Darkbot to say when someone is flooding it?
================ MISCELLANEOUS ================
PARAMATER GOOGLE
DEFAULT true
TYPE Boolean, Compile time
EXAMPLE
Google search feature.
PARAMATER METAR
DEFAULT true
TYPE Boolean, Compile time
EXAMPLE
METAR search feature.
PARAMATER WEATHER
DEFAULT true
TYPE Boolean, Compile time
EXAMPLE
WEATHER search feature.
PARAMATER TAF
DEFAULT true
TYPE Boolean, Compile time
EXAMPLE
TAF search feature.
PARAMATER QUIZ
DEFAULT false
TYPE Boolean, Compile time
EXAMPLE
Bot's online QUIZ.
PARAMATER QUIZ_TIMER
DEFAULT 25
TYPE Number
How long to wait before giving the answer?
PARAMATER QUIZ_REPEAT_TIMER
DEFAULT 20
TYPE Number
Don't allow another quiz until this time has expired (since the last
answer).
PARAMATER DO_MATH_STUFF
DEFAULT true
TYPE Boolean, Compile time
EXAMPLE
Do you want your bot to do math commands?
PARAMATER STATUS
DEFAULT false
TYPE Boolean, Compile time
EXAMPLE
Parse luser data? May cause SIG_SEGV on some ircd's (ie; non ircu)
Basically all this does is display network info like opers, servers, avg
# of users on the servers, etc.
================ AID DIRECTIVES ================
PARAMATER HELP_GREET
DEFAULT false
TYPE Boolean
Give user's who join a NOTICE with info on how to use the darkbot? I
don't bother with this anymore since my bot knows how to respond to most
general questions users ask. If your bot is new and doesn't know much,
then you may want to have it tell people how to use it.
PARAMATER AUTOHELP_GUESTS
DEFAULT false
TYPE Boolean
This define just sends a message to the channel, whenever a "Guest" user
joins, asking the user if they need any help. This is useful for help
channels.
If you change anything on the next 5 directives be careful not to remove
or change the position of '%s'.
PARAMATER L100(s,a,b,c,d,e,f)
DEFAULT S("NOTICE %s :I can be triggered by various \
forms of speech, all which must be addressed to me, in one of the \
following formats: %s %s %s or even %s .... In my database, you can \
find a topic by saying my nick, <topic> . eg; \37%s nuke\37 ..... \
to do a search on a word, or partial text, just type: <mynick>, search \
<text> ... eg; \37%s search nuke\37\n",s,a,b,c,d,e,f)
TYPE Text
EXAMPLE
PARAMATER L101(a,b,c,d)
DEFAULT S("NOTICE %s :I can also be triggered with even more \
human formats: \37%s who is bill gates?\37 .. You can also phrase it \
in a question: \37%s where is msie?\37 ...For more info \
about me, visit http:www.darkbot.org\n",a,b,c,d)
TYPE Text
EXAMPLE
PARAMATER L102(a,b,c,d)
DEFAULT S("NOTICE %s :Welcome to %s, %s. Before \
asking your question, type %cHELP for a list of help topics.\n", a,b,c,d)
TYPE Text
EXAMPLE
PARAMATER mySetinfo
DEFAULT "My !setinfo variables are: ^ nick, % Number of joins, & \
Channel, $ user@host. Example: !setinfo ^ has joined & % times!! (also, if \
you make the first char of your SETINFO a \"+\" the setinfo will be shown \
as an ACTION)"
TYPE Text
EXAMPLE
PARAMATER myVariables
DEFAULT "data variables are: N~ (Nick), C~ (Chan), T~ \
(Time/date) B~ (Botnick), Q~ (Question asked), R~ (random nick), !~ \
(command char), S~ (current Server), P~ (current port) V~ (botVer), W~ \
(db WWW site), H~ (u@h), t~ (unixtime), BAN (sets a ban), TEMPBAN (bans \
for 60 sec)"
TYPE Text
EXAMPLE
Variables for the data replies.

File Metadata

Mime Type
text/plain
Expires
Sun, Nov 16, 13:28 (1 d, 8 h)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
3163057
Default Alt Text
SETUP (19 KB)

Event Timeline