Logo for Mafia bot

Upvote Mafia bot


Mafia in voice chat, now with roles you invent! Describe a role in plain words and the bot builds it. 12 built-in roles, private night channels, EN/BG.

Back to Mafia bot
🕶️ Mafia Bot: voice Mafia that runs itself

Slash commands (start with /help) or prefix ! · English & Bulgarian

Mafia (also known as Werewolf) where the bot is the moderator. At night everyone is moved into their role’s private voice channel (every Villager gets their own), and the mafia whisper together in theirs. At dawn a narrator wakes the village, the bot brings everyone back to the common channel to argue, accuse and vote, and timers keep the game moving. No human moderator needed, no one peeking.

🆕 What’s new
  • ⏱️ Automatic timers. Night 1:30 and day 5:00 by default; change them or turn them off with /timers. Once everyone has acted, the night ends early.
  • ⚡ Slash commands with player suggestions. /vote, /kill, /save and the rest suggest names as you type. Night actions work right in the server, and only you see the reply.
  • 🎭 Hidden roles option. Show a player’s role when they die, or keep every role secret until the end.
  • 💀 The dead stay in the game. They listen to the day discussion muted, talk among themselves at night, and get a dead-only chat the living can’t see.
  • 📜 A narrator sets the scene at nightfall, at dawn and at every hanging.
  • 🔄 Updates never end a game. Games are saved as they go and continue where they left off after a restart.
  • 🧩 New building blocks for your own roles: revive, bodyguard, lovers, and a cult that converts.
✨ Invent your own roles, just describe them

Type /addrole, name your role and describe what it does in plain words, in any language. The bot reads your description (powered by Google Gemini), asks a couple of clarifying questions with buttons, and shows you a card with exactly how the role will play. Press Create and it’s in your server’s role menu.

Example: 🕯️ Cult Leader
“Every night he converts one villager to his cult. The cult wins when it takes over the village.”
➜ Team: 🕯️ Cult · At night: converts · The Detective sees them as innocent · Knows the cult and spends the nights with it · Wins with their team

Build your roles from:

  • Teams: mafia, town, solo, or cult (it grows by converting town players and wins when it is at least half of the living and no mafia or solo killer is left)
  • Night actions: kill, protect, investigate, block, redirect, frame, maul (kills the target and everyone who visits them), revive a dead player, guard (die in the target’s place), link two lovers (if one dies, so does the other), convert to the cult
  • Timing: every night, even or odd nights, limited uses per game, optional skip
  • Deception: decide whether the Detective sees them as mafia
  • Solo wins: get hanged by majority (Jester-style) or survive to the final two (Werewolf-style)
  • Day power: reveal for a double vote

When the AI reads your description, anything the game can’t do is flagged on the card before you create it, and the card always shows exactly what will be built, so there are no surprises mid-game. Up to 10 custom roles per server, private to your server. No API key needed on your side, and if the AI is busy, the bot simply asks you with buttons instead.

🌙 How a game works
  1. /newgame creates a hidden game category and a role menu with buttons.
  2. Players type /join. The host picks roles, including your custom ones, or presses Balanced, then /start.
  3. Everyone gets their role by DM. Night actions go to the bot in DM or as a slash command in the server with a private reply. Night commands typed in public with ! are deleted so no role leaks.
  4. Night: each role is moved into its own voice channel, and every Villager gets a separate one. The mafia (except the Witch) share one, and so does the cult.
  5. Day: everyone is back in the common channel. A majority vote hangs someone immediately. Otherwise the leader is hanged when the day ends, and ties mean no hanging. /vote skip is allowed.
  6. The dead listen to the day muted, talk in the graveyard voice channel at night, and chat in a dead-only channel any time.
  7. At the end, all roles are revealed, the game channels are deleted and everyone returns to the voice channel they came from.
🎭 12 built-in roles
Team Roles
🕶️ Mafia Mafia, Godfather (looks innocent to the Detective), Framer (makes a target look guilty), Witch (redirects a player’s night action without knowing their role)
🏘️ Town Detective, Doctor, Vigilante (one shot per game), Mayor (reveals for a double vote), Escort (blocks a player’s ability for the night), Villager
🎲 Solo Jester (wins if hanged by majority), Werewolf (hunts on even nights and kills everyone who visits their target)
⚖️ Balanced for 6–15 players

Ready-made setups for every player count from 6 to 15, tuned over thousands of simulated games so neither side runs away with it. Prefer your own mix? Build it with the button menu. The menu flags a mix that can’t work (mafia or cult too big, no killer, more roles than players) and the bot won’t start it until it’s fixed.

🛠️ More features
  • 🔊 Automatic voice moves between night channels and the common channel
  • 📬 Roles by DM
  • 🌍 English and Bulgarian per server: /language en or /language bg
  • 🛠️ /setup checks the bot’s permissions and tells you exactly what to fix
  • 🧹 Cleans up its channels and puts everyone back where they were
  • 🔐 No Administrator permission needed
🚀 Getting started
  1. Add the bot and run /setup.
  2. The bot starts in Bulgarian. For English, run /language en.
  3. Players should allow DMs from server members (Server → Privacy Settings).
  4. Get at least 3 people in voice and type /newgame. The sweet spot is 6–15 players.
📜 Commands (all work with / and with !)

Lobby: newgame · setroles · join · leave · start · timers
Your roles: addrole · customroles · delrole
Day: vote · unvote · votes · reveal · day · night
Night: kill · save · check · frame · shoot · block · control · for custom roles: guard · revive · link · convert
Info: help · setup · language · players · status · role · endgame

Only the name and description of roles created with /addrole are sent to Google Gemini for analysis.

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