A taste of the shame
Real lines from the bot's repertoire. Roughly three in four replies are pure 3D-printing snark; the rest are IT Crowd.
By the numbers
How it works
Small, honest and dependency-light. One command, one job.
One command
Send !printquote in any channel where the bot can read and send messages. That is the whole interface.
Weighted randomness
Each call rolls the dice: about 75% of the time you get a 3D-printing snark line, otherwise an IT Crowd quote.
Quotes live in JSON
All lines sit in quotes.json under snark and it_crowd keys, so extending the bot is editing a text file, not the code.
Built on discord.py
A single small Python script using the message-content intent. No database, no web server, nothing to babysit.
Run it yourself
PrinterShameBot is code you host, not a hosted service. You will need a Discord application and bot token from the Discord Developer Portal.
- Create an application and a bot in the Discord Developer Portal, and enable the Message Content Intent.
- Clone the repo, create a Python environment and
pip install discord.py python-dotenv. - Put your bot token in a
.envfile asDISCORD_TOKEN, next tobotmain.pyandquotes.json. - Invite the bot to your server with read and send message permissions, run
python botmain.py, then try!printquote.
Why it exists
Every 3D-printing Discord has that channel full of failed prints, spaghetti, warped corners and heroic first layers that gave up halfway. Those failures deserve commentary.
So PrinterShameBot is a small pressure valve for the group chat: one command that produces a fresh put-down on demand, no moderation required. It pairs nicely with the wider 3D-printing knowledge base, one repo tells you how to fix the print, this one mocks it first.
Frequently asked questions
Can I just click a link to add it to my server?
No. PrinterShameBot is self-hosted open-source code rather than a public hosted bot, so you run your own instance with your own token. The setup takes a few minutes and is described above and in the repo.
How do I trigger it?
Send !printquote in any channel the bot can read and post in. It replies with a random snark or IT Crowd line.
Can I add my own quotes?
Yes. Edit quotes.json and add lines to the snark or it_crowd arrays. Restart the bot and they are in the pool.
Is it free?
Yes. It is free and open source under the GNU GPL-3.0 licence.
Is it mean?
Affectionately. It is aimed at friends who print together; keep it to channels where everyone is in on the joke.