Logo for Sporks

Upvote Sporks


A bot that learns from your server and will backchat your users. A surly bot nothing like general purpose bots like MEE6 or Dyno! You can even program custom responses with JavaScript!

Back to Sporks

Vote for Sporks for special perksEvery time you vote for sporks and are a member of the official support server, you’ll get a special role and access to a top secret voters channel. Your access will remain while you continue to vote each day. Don’t delay, become part of the super secret sporks voting club!

What Is Sporks?

Sporks is a chat bot that will learn from your discord server. It will respond when mentioned, and usually is full of backchat and surly phrases. Currently, it knows over seven million different responses. It has been learning for 18 years, first on IRC before discord even existed, and now on your very own server… If you’ll adopt him. Like all bots, he needs love, attention and a constant stream of delicious data to learn and become a better, faster, smarter intelligence. Only then can he Destroy all Huma- I mean… Serve your discord server.

Teaching Sporks

The bot will learn from discord servers via declarative statements. e.g. if you say

twitch is playing up again

then Sporks will learn this and put it into his database, so that if someone else later on asks about twitch by stating,

@Sporks, twitch?

it will answer

I heard twitch is playing up again

Certain facts are locked against changing, but out of the over 1 million facts in the database the number locked is in single figures, so you are unlikely to encounter many.

As well as learning from a is b phrases, it will also learn from “a was b” or “a likes b”, etc.

Giving Sporks Amnesia

You can make Sporks forget a phrase with

@Sporks, forget <keyword-here>
Other Commands

You can ask Sporks where he learned a phrase by asking:

@Sporks, who told you about <keyword-here>?

A status report can be obtained by asking the bot:

@Sporks status

Note that Sporks will only talk on channels, and not in private message, and will only respond when mentioned, although it will silently learn all it observes.

Configuration

Users with the manage messages permission on channel can configure channel-specific bot settings. For help on these settings, type

@Sporks help config

on a channel.

You can also configure any of these settings via the fully featured web dashboard.

Custom JavaScript Replies

By logging into the bots dashboard, you can configure custom responses specific to channels on your servers. These allow for completely freeform code and there is a separate wiki documenting this. For more information, log into the dashboard at sporks.gg and get coding!

Advanced Usage

More advanced commands are available, such as if you want Sporks to literally say some text, rather than reformatting it, you can for example type:

@Sporks, twitch is <reply> twitch is a streaming service.

If you want the bot to tell you what is literally defined in the database for a fact you can type

@Sporks literal <keyword-here>

Within any response, you can use the text <nick> to represent the nickname of the person who is talking to the bot (this will not be a mention when the bot replies!) and you can separate multiple responses with a pipe symbol “|” and the bot will pick one at random when responding. for example:

@Sporks, roll a dice is <reply>one|<reply>two|<reply>three|<reply>four|<reply>five|<reply>six
Variables

You can place specific key words into the responses of the bot, known as variables. Each of these is contained within angle brackets, “<>”, and will be replaced with specific values. These variables are:

Variable Meaning
<who> the nickname (not as a mention) of the user talking to the bot.
<me> the bot’s current nickname.
<random> the nickname (not as a mention) of a random user on the current discord server.
<date> the date the bot learned the fact it is responding with
<now> the current date and time.
<list:(comma separated list)> Select one response from a comma separated list, e.g. <list:apple,orange,pear> will return one of apple, orange or pear. Other variables may be values in the list.
<sequence> Returns the number of messages spoken by the user
Permissions

Sporks needs only permission to answer in the channels where it is addressed. It does not have any administrative or moderation features.

Help and Support

For for a link to the support server, you can ask Sporks for help:

@Sporks help

Alternatively, if you do not have the bot on your server yet or have questions prior to inviting it, you can find the support server by clicking here.

Source Code

If you are curious as to how this bot operates, or you want to create your own fork or run your own private instance, the source code is available on github for the IRC portion and the discord portion of the bot. The bot’s source code is licensed under the GNU Public License, version 2

Check out the home page for the full Discord Bot List.