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 a 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.
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,
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>
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:
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.
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.
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!
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
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:
||the nickname (not as a mention) of the user talking to the bot.|
||the bot’s current nickname.|
||the nickname (not as a mention) of a random user on the current discord server.|
||the date the bot learned the fact it is responding with|
||the current date and time.|
||Select one response from a comma separated list, e.g.
||Returns the number of messages spoken by the user|
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:
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.
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. The bot’s source code is licensed under the Apache 2.0 License.
Sporks is proudly powered by D++ - The Lightweight C++ Discord Library.