MonaLott

MonaLott is the main channel protection bot. She uses a very comprehensive script called “BlackTools”.

Note: MonaLott will automatically recognize you by your host mask. If you can't get Ops or Voice, check your host and log into X, or reconnect to IRC as required. If it still doesn't work, please yell at mr_right and he will take a look for you. He loves being yelled at.

Note: ALL Ops MUST be registered with Undernet's Cservice and logged in when wanting Ops in the channel. 

Do not give Ops to anyone – if they have access and need ops, they can get it themselves, through MonaLott or X. 

Login with X to set your Undernet host mask (*!*@yourname.users.undernet.org):

/msg X@channels.undernet.org login username password
/mode nickname +x

MonaLott has a help system built in. As long as she recognizes you (from your host mask) you can type commands in the channel (preceded with a period “.”) or in a message widow, without the period “.”. This works with any command. It's normally best to do everything in a message window. Just drop the leading period.

To access the help system simply type “.h” (in channel – simply h in a msg window) and you will get a list of categories. If you want to check out the different commands you have available, type “.h cmds”. To see the different bans, type “.h ban”. The system will only show you what you have access to, based on your access level (voice or Op for most users). Typing .man <command> will show you the details and syntax for that command. Anything in grey has been disabled for that channel. 

All Bot users should type .h first thing, then type .man myset to see available commands and settings.

To see details about a ban or command, type “.man command”, like “.man b”.

The first thing you should do is look at the “myset” command: .man myset (Ops and Voice users)

For other channels, simply replace #sex with the correct channel name.

  1. Please set your channel to #sex: .myset mychan #sex
  2. Please set your preferred output method: .myset output msg
  3. Please set .myset mychar .
  4. Please set your “auto” status, for voice or Ops: .myset auto +v or .myset auto +o (voice users can not get Ops this way . Ops can choose either one).
  5. Note: you may need to leave the channel and return for the bot to fully recognize you.

(I prefer message for output, as it doesn't beep as much as notices do. It also opens a message window (if you don't have one open already), and you can continue to work in there without messing up the channel. You can simply message MonaLott with a simple request like “/msg MonaLott h” and she'll reply, showing you the menu in that window. Remember, in the window, you do not need to type the period in front of commands. So for help, just type “h” or “<man command>” by itself.

Most Used Bot Commands for Ops

For any of these, you can get detailed syntax help in a message to the bot with man command, as in man v, man b, man sb, etc.

If you set mychan as shown above, you can type all of these commands in the message window without adding the channel name. This is helpful as no one will know who set the ban in the channel, and it keeps the channel clean. Just don't use the period (.) in a message window. If you Op in two channels with this bot, only one channel can be set with mychan, and you will need to use the channel name for the other channel. It's much easier to do the commands in the channel, as you never need to add a channel name that way. For example, if you have an Ops channel, just run any commands in the Ops channel itself with the dot character. Use a message window for the primary channel (or do it in the channel when it makes sense). In general, if other users can benefit from the “reason” message, you can use the .k, .b, .whatever in the main channel as they will all see it.

.v nickname gives voice. It works as a toggle. A non-voiced user will get the +, a voiced user will have it removed. For a bot user, .v alone will give you voice, or devoice you.

.o <nickname> gives Ops. .o alone will toggle your Op status. .o <nickname> will give that person Ops – please be careful with this. Do not Op anyone if you aren't absolutely sure who they are. If they should have ops, they can get it themselves from the bot or X.

Note: if you op someone who is not registered in X, both that person and you will be de-opped by X. X's STRICTMODE is turned on. Should you do this by accident, you can get Ops back by doing .o again – it's not permanent. 

.k nickname reason – kick a person from the channel with a message (reason).

.b nickname reason – this will set a default ban on a channel user. The default time limit is 24 hours. Please always set the reason for the ban, as in:

.b nickname spamming the channel
.b nickname posting CP links in channel

You can also set a duration for the ban like this:

.b nickname 1h reason (valid values are minutes, hours, days, 10m, 10h 10d, etc). Please be sure to set the time and type, 1m, 1h, 2d, etc. This is handy for idle users, setting a 1 minute ban to prevent auto-rejoin.

You can use a host mask instead of the nickname. For a nick ban, use nickname!*@*, for an ident ban use *!*ident@*, and so on.

.n nickname bans the actual nickname – it does not ban the user's host (nickname!*@*) This is good for underage nicknames, or other “bad nicknames” where you don't want to ban the user, just the nick. You can NOT add your own reason with this. The reason is built-in.

.id nickname reason – performs an ident ban on the user (*!ident@*)

.sb nickname|host mask|BanID – ban status – this looks up the ban record for you. This also shows the ban's ID.

.ub nickname|hostmask|BanID – unban. We all make mistakes! The easiest way to remove a ban is .ub nickname in channel, or ub nickname in a message window. Very simple. Also .ub banID – you can see the banID in the kick message.

.i nickname – invite a user to the channel. Type .i nickname, and MonaLott will send an invite message to the user, asking them to join the channel. This is really helpful after unbanning someone.

.note inbox|list – check your Notes inbox for new or old messages. Note lets bot users send notes to one another. Important: Note uses the “handle” (the name the bot knows the user as). This should always be their Undernet username, not the person's current nickname. Usage is easy:

.note send handle <your text message goes here, etc> – e.g: note send talia good morning Talia, this bot is awesome!
.note list|inbox – lists your current notes. Use the note ID to read or delete.
.note read NoteID – e.g: note read 3
.note del NoteID – e.g: note del 3. Can also do: note del all

New! YouTube Title and Stats (Not in BlackTools)

Dropping a youtube.com URL into the channel will now return the video Title and stats, similar to:

<@MonaLott> [YouTube] Title: Cries for the lonely – Southern Empire | Uploaded by: Giovane Mendes | Length: 19m14s | Date: 24/05/2019 | Views: 10,274 | Like: 165 – [11774]

You can also do a YouTube search by typing: !yt search terms, e.g.

!yt southern empire forest fire

which will return the title and stats along with the link to the video:

[YouTube] Title: SOUTHERN EMPIRE – FOREST FIRE | Uploaded by: Southern Empire | Length: 7m39s | Date: 28/10/2015 | Views: 30,426 | Like: 338 | Link: https://www.youtube.com/watch?v=66qFLt_9QjI – [11778] –

!time <city or country> (not in BlackTools)

!time is nice to have – it will return the current time in the city or country you look up. If you look up an IP and get a location, you can use that with !time to see that user's time and time zone.

!sign <horoscope sign> (not in BlackTools)

This simply shows you your horoscope for the day. Anyone can use this. You can type the horoscope sign directly, as in:

!taurus

You can also set your sign by typing !sign set <horoscope sign>, and from then on, you only need to type !sign in channel.

You also have the following:

!love [sign|nick] ; !career [sign|nick] ; !health [sign|nick] ; !money [sign|nick]

!w <location for current weather> (not in BlackTools)

Get the current weather anywhere in the world. lol. It works! Type !w chicago, or !w germany. Using a county will report on the Capitol city.

There are many more commands and ban types in BlackTools – you will likely never need more than these.

wenchie – use these in a message/query window with Wenchie.

wenchie is a simple little bot. She also uses BlackTools, but you won't have any access on her. She never gets ops, so you don't need it. She handles a few simple functions, for now. wenchie can be quiet in channel, as she takes commands through messages as well as the usual in-channel commands.

!ip (not in BlackTools)

!ip <nickname> will do a lookup on the nickname and return a bunch of info about that nickname's IP address. This can be very helpful in determining if that user is switching nicks constantly, or is using someone else's nickname. It also resolves the IP address from the host, which can be used with the !seen command.

The ! is always required for !ip.

!seen (not in BlackTools) – note: this is for Ops only. 

seen <nickname> will tell you the last time that nick was seen in any of wenchie's channels. The results come back in a notice – this can't be changed, sorry.

seen <*ipaddress or *host> will do a lookup in the “seen” database, and return any matching nicknames that have used that IP or host. This is very helpful to determine if someone is faking who they are, or trying to evade bans, etc. Note: This will only show nicks that have entered the channels where wenchie sits and watches. Since a lot of those users frequent multiple channels, it's still useful even if wenchie is not in a particular channel. Please know these are not going to be 100% accurate, especially in the case of VPNs. Many users could have used the same VPN IP in the seen database time frame (about 3 months). It's still very useful information for Ops.

In a message window, do not use the ! – simply type seen <nickname> or seen <*ipaddress> or seen <*host>

<*host> should be everything after the @, except in the case of mibbit, irccloud or kiwiiirc. In those cases, include the ident@, or you will get a result like “564 nicks used – here are the top 5” – not every useful 🙂

seen *b45645338@helmsley.irccloud.com will work just fine.

!seennick <nickname> (not in BlackTools)

!seennick will give you the seen info for a specific nickname without doing the host/IP matching. This is helpful if a !seen results in multiple nicknames, and you want to see just one.

!rules (not in BlackTools)

!rules displays the channel rules to the requesting user in a /notice. The rules have to be manually updated on the server. Please yell at mr_right with your suggested changes. He likes that.

!ping (not in BlackTools)

!ping simply pings your client and returns the time taken to do the round trip. For those who don't know, this measures the time it takes to send a tiny message to your client and receive the response. This is great for determining if your client or connection is lagging (receiving data from the server later than most other people). Lagging can be caused by your connection, or the IRC server you are connected to. Changing servers usually clears it right up (/server irc.servername.here).

Here's a sample result from both MonaLott and wenchie (with no lag at the time):

[13:17] -MonaLott- Ping reply from MonaLott (currently on amsterdam.nl.eu.undernet.org) to mr_right: 0.671 seconds
[13:17] -wenchie- Ping reply from wenchie (currently on zorro.us.ix.undernet.org) to mr_right: 0.741 seconds