Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <?xml version='1.0'?>
- <!-- Lycanobot's config file.
- Put all your bot's config here.
- True = true = Yes = yes = 1, and False = false = No = no = 0 -->
- <lycaconf>
- <!-- These settings control how and where the bot has to connect.
- | Most of them are self-explicit.
- | "use_random_night_channel" make the night channel more hidden (thus
- | more secure) appending a minus and 8 random charachters to its name,
- | changing it for each game. For instance to "#village_night-p4FaAm13".
- | "active" set the bot awake. May be changed by the (de)activate commands.
- | "timeout" is the ping timeout limit that makes the bot to reconnect.
- | The bot had to be OP on both day_channel and night_channel. -->
- <conn server="irc.ogamenet.net" port="6667" use_SSL="no"
- day_channel="#village" night_channel="#village_night"
- use_random_night_channel="yes"
- active="yes" timeout="300" />
- <!-- Who is the bot? Put here his nick, irc name and user name.
- You may also put here the "op_user" and "op_passwd" attributes if you
- want the bot to ask to be an IRC Operator when it connects. -->
- <identity nick="[Game]" irc_name="[Game]"
- user_name="Game"/>
- <admins>
- <!-- The admins' identifiers.
- | They can do everything, including sensitive commands like reloadconf
- | and talkserv. Only for people you fully trust into.
- | There is no need to put the bot itself here, it's just some god :)
- | Here you can use the <mask> or <regnick> tag to specify who is admin.
- | <regnick> means a registered nick (done the nick service, see <hacks>
- | below). Just /whois someone to see who is it and put it here. Ex:
- |
- <mask>*!some_ircname@some_address</mask>
- | <mask>*!*@*.kipof.net</mask>
- | <regnick>kipof</regnick> -->
- <!-- Some people you fully trust into... -->
- <mask>*!HeisSpiter@ipv6.heisspiter.net</mask>
- <regnick>HeisSpiter</regnick>
- <mask>*!kipof@srv.kipof.net</mask>
- <regnick>kipof</regnick>
- <regnick>Alef_Burzmali</regnick>
- <mask>*!Alef_Burzm@Alef_Burzmali.*</mask>
- </admins>
- <moderators>
- <!-- The moderators' identifiers.
- | Exaclty the same as <admins> above (use <mask> or <regnick>), but this
- | time for the moderators. Such people are only able to moderate games
- | (stop game, change settings, and (de)activate the bot). Especially,
- | they cannot run sensitive commands like reloadconf and talkserv -->
- <!-- Some people you normally trust into... -->
- </moderators>
- <!-- Ignored users.
- | Any users nicks which are in the day and/or night channel, but you want
- | to be ignored by the bot. He will not see they are in the channel with
- | him. Useful for ChanServ and others bots.
- | Separate multiple nicks with a comma, e.g. <ignore>foo,bar</ignore> -->
- <ignore>ChanServ,Oxys</ignore>
- <!-- The werewolves players proportion.
- | It's a number between 0 and 1. It can also be a fraction.
- | E.g. with <werewolves proportion="1/3" /> and 6 players
- | you'll get 2 werewolves and 4 villagers.
- | Note that 0.22 matches the official game advices. -->
- <werewolves proportion="0.22" />
- <!-- The identification mode.
- | This var configures the way the bot will identify real users from their
- | clones. Each user and his clones share the same personal information
- | and settings.
- |
- | The bot is able to use the following informations to identify a user:
- | nick, user, host, domain, server, realname, regnick
- | Which refers to :
- | the nick, the /whois result user@host.domain, the server name,
- | the real name, and the nick the user registered with.
- | When host is an IP, domain is unavailable.
- |
- | Some of these informations may not be available: domain and regnick.
- | That's why the bot is able to try some combinations before finding one
- | with all the informations requiered available. It will begin with try="1"
- | then try="2" and so on.
- |
- | If the bot is unable to identify a user because it can't collect
- | the informations you specify (in all the trys), the settings of that user
- | will remain only until he disconnects, and he will be considered as a new
- | user if he reconnects (the bot will welcome him etc.).
- |
- | Some examples:
- | <ident try="1" use="user host domain" /> // This is the default : use
- | <ident try="2" use="user host" /> // user@domain.tld or user@IP
- |
- | <ident try="1" use="regnick" // Use registration nick, or
- | <ident try="2" use="user host domain" // this, for unregistered users
- |
- | <ident try="1" use="user domain" /> // Work around dynamic IPs,
- | <ident try="2" use="user" /> // but it's unsecure
- |
- | <ident try="1" use="nick" /> // On a trustworthy IRC network
- -->
- <identification>
- <ident try="1" use="user host domain" />
- <ident try="2" use="user host" />
- </identification>
- <!-- Quit recovery system
- | When a player quits during a game, lycanobot can continue the game as he
- | were here, until he comes backs and is recognized. Here you may set
- | when you want this to happens, using <recover> tags, depending on :
- |
- | - the type of the quit, attribute "on", can be "part" or "quit".
- | - the exit message, attribute "msg" (simple string) or "regexp" (a Perl
- | regular expression). Put an '!' (exclamation mark) before the regexp to
- | inverse its matching.
- |
- | In the wait="" attribute, you can also specify the maximum amount of time
- | (in seconds) the bot may wait before kicking the player out of the game,
- | if he havn't came back. Put zero if you don't want the bot to do that.
- |
- | Some examples:
- | <recover on="quit" msg="EOF From client" /> // Simple EOF
- | <recover on="quit" regexp="/^Ping timeout/" /> // Beginning with that
- | <recover on="quit" regexp="!/^Quit: /" /> // Not starting with that
- | <recover on="part" msg="Leaving" /> // Standard leaving -->
- <quit_recovery wait="130">
- </quit_recovery>
- <!-- IRC Hacks
- | Here you tell the bot to use some specials IRC features.
- | Available hacks includes:
- | + Special commands, using the <command>name</command> tag.
- | Lycanobot can use the SAJOIN command to force the werewolves to join
- | their channel in the beginning of a game, instead of politely inviting
- | them. Beware that you don't make sure they are ready if you force them.
- | You may put <command>sajoin</command> for that.
- |
- | + Services, using the <service> tag as following:
- | <service name="the_foo_service" nick="FooServ">
- | <the_foo_service feature="bar!" do_that="yes" ...>
- |
- | Supported <service> "name" attribute values are "nick" and "chan".
- | "nick" provides:
- | - the "password" attribute (to make the bot identify itself)
- | - the optionnal "say" attribute to tell the bot the message it
- | must send in case it's not the regular "IDENTIFY <password>"
- | For instance: <service name="nick" nick="NickServ" />
- | <nick password="bad" say="AUTH lycanobot bad"/>
- | By the way, you can make the bot register with the "talkserv" command.
- |
- | "chan" privides:
- | - the boolean "ask_invite" attribute to tell the bot it must
- | asks this service to invites it in the night channel
- | - the optionnal "say" attribute, to tell the bot the message it
- | must send in case it's not the regular "INVITE <#channel>"
- | For instance: <service name="chan" nick="ChanServ" />
- | <chan ask_invite="yes" /> -->
- <hacks>
- </hacks>
- <!-- Modes
- | /!\ Warning: You should not change these settings unless you know
- [ ^|^ what you are doing! Defaults should be OK.
- | This specify which channel and user modes the bot have to set, and when.
- | "on" can be "connect", "chanop", "end_game" or "begin_game".
- | "to" can be "ourself" (results in a user mode, for the bot),
- | "day_channel" or "night_channel".
- | +N channel mode was needed before, but it's no longer true.
- | The bot automatically sets the +i mode in the night channel, when
- | everybody in it has been kicked out. It also avoid setting a mode that
- | is already set.
- |
- | Some channel modes reminders:
- | n = no external messages
- | m = moderated chan, only voiced users may talk
- | s = secret channel (hidden from /whois etc.)
- | i = can be joined on invite only
- | The unofficial +B user mode (for bots) is quite common.
- -->
- <modes>
- <mode on="chanop" to="day_channel">-m+n</mode>
- <mode on="end_game" to="day_channel">-m</mode>
- <mode on="begin_game" to="day_channel">+m</mode>
- <!-- mode +i is automatically set on begin_game in the night channel -->
- <mode on="begin_game" to="night_channel">+mns</mode>
- </modes>
- <!-- Talk settings.
- | Handles how the bot talks and how users have to talk to it.
- | For the language, see which ones are available in the messages/
- | directory.
- |
- | "cmd_prefix" is the commands prefix character.
- | E.g. with cmd_prefix="!" you'll call the command "start" saying "!start"
- |
- | "charset" is the charset you want the bot to both talk in and listen in.
- | Default and native one is utf-8, others charsets need the Encode module.
- | Additionaly, iso-* users should install the Search::Tools::Transliterate
- | module to convert fancy utf-8 characters into iso equivalents, otherwise
- | you would get some '?' instead (e.g. '…' gets transliterated into '...').
- | Some common charsets : iso-8859-1, iso-8859-15, us-ascii, utf-8
- |
- | "charset_fallback", if non-empty, is the charset the bot will try to
- | decode input messages in, if the above "charset" failed. Usefull on
- | channels with users mixing utf8 and another charset.
- |
- | "decode_errors" sets what to do when it can't decode a message using
- | the above "charset" and "charset_fallback". Possible values include :
- | - "ignore" : messages with invalid characters will be silently ignored.
- | - "keep" : invalid characters will be kept in a hex form (\xNN) and the
- | the message will be parsed.
- | - "warn" : the bot will say a warning showing the problematic characters
- | in a hex form and the message will be ignored.
- |
- | Note : control characters are always silently stripped after decoding.
- | Also, non-multibytes charsets decoding cannot fail.
- -->
- <talk language="fr" cmd_prefix="!"
- charset="utf8" charset_fallback="iso-8859-1"
- decode_errors="warn" />
- <!-- Messages settings.
- | Controls for each messages types how to say them:
- | - privmsg (classic irc message) or notice
- | - with an eventual prefix
- | By default all is sent in privmsg.
- |
- | Some special sequences can be used:
- | \B = start/stop blod
- | \U = start/stop underline
- | \I = start/stop italic
- | \Cxx = mIRC color number xx
- |
- | "to_user_char" is the completion char the bot will put after a nick
- | that prefixes a message said on a channel but for this specific nick.
- | E.g., with to_user_char=":" you'll get channel messages like :
- | "foobar: you cannot vote against your team."
- -->
- <messages to_user_char=",">
- <message type="error" send="privmsg" prefix="" />
- <message type="info" send="privmsg" prefix="" />
- <message type="query" send="privmsg" prefix="" />
- <message type="reply" send="privmsg" prefix="" />
- </messages>
- <!-- Rate control. These settings prevent the bot from flooding, and let it
- | readable.
- |
- | "talk_speed" is the talking speed in number of characters per seconds.
- | "max_mode_params" is the maximum number of players the bot can mode in
- | a single command. Check it in the irc server's config.
- | E.g. with "3" it will voice 3 players at the same time
- | using /mode +vvv player1 player2 player3
- |
- | "max_whois_params" is the same as "max_mode_params" but for /whois.
- | /whois are currently used by the bot only if you use the regnick flag
- | in the identification variables above. Otherwise /who is enougth.
- | E.g. with "4" it will whois 4 players at the same time
- | using /whois player1,player2,player3,player4
- |
- | "mode_speed" The number of modes the bot can do per seconds
- | Count 4 modes for doing something like +mnsi
- |
- | "global_limit". Is the previous limitations are global or for each user.
- | Set it if you want the bot to send a message to one user or channel
- | at a time. This would not makes the bot to heavily lag if he talks
- | to several users simultaneously (there is a round-robin between each
- | message destination), but must be used if the irc server have
- | per-user rate limitations. You should set it to "no" if you can.
- -->
- <rate talk_speed="20" mode_speed="1"
- max_mode_params="3" max_whois_params="4"
- global_limit="no" />
- <!-- Send queue control (has a superior priority than the rate contol).
- | These settings prevents flooding from a lower level. You may
- | exactly match the server receive queue restrictions, giving how much
- | bytes in can hold, and how long it takes to be entierly emptied.
- | For instance, using 1024 bytes and 6 seconds, the bot may send 1024
- | bytes instantly, but then would wait 6 seconds before sending anything
- | else. Also, if the bot continusly send some messages, its average rate
- | will never excess 1024/6 = 170 bytes per seconds.
- |
- | These settings can only work with the lycanobot patched version of
- | Net::IRC. To disable this feature, put a zero for one of the attributes.
- -->
- <sendq max_bytes_sent="160000"
- max_bytes_time="80000" /> <!-- Disabled by default. -->
- <!-- Persistent data is stored in some XML files, so that if lycanobot stops,
- | this stuff can be restored on restart.
- |
- | Note: Lycanobot can use a cache system not to write his data on disk
- | if it do not have changed. This feature is automatically enabled
- | if you have the Digest::MD5 module.
- |
- | "sync" You may want to save lycanobot's status on disk only after
- | a given time. Thus, the bigger this time is, the less your disk will
- | be used, but the more probably you can loose data if a crash happens.
- | Data is always saved on proper shutdown or reboot.
- | Use: -1 for full sync,
- | 0 for no sync (only on shutdown/reboot),
- | or any time in seconds.
- -->
- <storing sync="3600" />
- </lycaconf>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement