Private Discord bot · D&D 5e, 2024 rules
The dice are
the easy part.
Any bot can roll 1d20. BardicAI adjudicates the turn — attack rolls against real AC, saving throws, damage types checked against resistances, conditions that expire on their own, concentration that breaks when it should. Your server, your table.
BardicAI
Masked construct, chaotic good
- Rules SRD 5.2.1 — the 2024 rules, and only those
- Combat Attacks and spells, fully adjudicated
- Commands 59 slash commands, all documented below
- Table Private to your server, and the DM screen stays closed
Traits
What it actually does
Six things worth installing it for. Everything here runs on the bot's own rules engine, not on someone at the table remembering to apply the modifier.
A rules engine, not a macro. Attacks, spells, saves, conditions, auras and concentration all resolve mechanically. Resistances and immunities apply themselves, death saves follow RAW down to the automatic failures on a natural 1, and multiattack, grapples and legendary actions are adjudicated rather than narrated.
D&D Beyond, natively.
/ddb import pulls the whole sheet — ability scores, HP math, skills, spells,
weapons, inventory, portrait. It re-syncs on its own when a player joins initiative with a
sheet that changed, and magic item bonuses (a Wand of the War Mage's spell attack bonus)
are read from the sheet's own data.
A co-DM that reads the room.
/dm is a private assistant that already knows the live encounter: initiative
order, current HP, active effects, monster stat blocks. Hand it a monster's turn, ask it a
rules question, or let it run legendary actions — the players never see the conversation.
Speak as anyone.
/say and /write post in character under the right name and face:
any PC with their D&D Beyond portrait, any monster in the fight with its token art, or
the Dungeon Master persona. Full Markdown, and a drop-in replacement for Tupperbox.
Dice with a grammar.
/roll handles advantage, keep and drop, and exploding dice.
/check knows which proficiencies your character actually has. Every result
shows the individual dice, labeled by die size, so nobody has to take the bot's word for it.
Campaigns that keep secrets. A campaign binds to one or more channels. Creating one takes Discord's Manage Server permission — the admin who runs it becomes the DM and can deputize co-DMs. Players never see monster defenses, hidden notes, or anything else from behind the screen — the boundary is enforced by the bot everywhere, not remembered command by command.
Multiattack
One bot instead of three
A 5e server usually ends up running a sheets-and-dice bot, a second bot so people can post in character, and a third that just rolls dice. BardicAI covers what your table uses all three for, under one set of slash commands.
Usually Avrae
Sheets, dice and initiative
Import a character from D&D Beyond, roll checks that already know your
proficiencies, keep initiative in order. BardicAI does that much, then keeps going:
attacks and spells resolve their real effects — damage measured against resistances,
conditions that stick and expire, concentration, death saves — instead of leaving the
arithmetic to whoever is paying attention. /dm adds a co-DM that knows
the encounter.
Usually Tupperbox
Speaking in character
/say and /write post as any PC with their D&D Beyond
portrait, any monster in the fight with its token art, or the Dungeon Master. The bot
already knows who is in the scene, so there are no proxy tags to register — and
nothing has to read your channel to make it work.
Usually a dice bot
Rolling anything else
/roll takes a full grammar — advantage, keep and drop, exploding dice —
and shows every die it rolled, labelled by size. /check handles the ones
tied to a character. That is one fewer name in the member list.
Consolidation, not parity. This is about the jobs a table actually uses those bots for. If yours leans on Avrae's alias and workshop ecosystem, that is a deep thing of its own and BardicAI makes no attempt to reimplement it.
Actions
How a turn feels
Stick casts Chromatic Orb from a 3rd-level slot and picks acid.
One command: /cast spell:Chromatic Orb target:Grick Alpha level:3 damage-type:acid.
The bot rolls the spell attack with the character's real modifier, compares it to the target's AC, rolls the base 3d8 plus 1d8 per slot level above 1st, applies whatever the target resists or ignores, and writes the new hit points down.
Every die is shown. Nothing about the grick's defenses is — the players get the number, the DM gets the reasoning.
Getting started
Two ways in
Players need about a minute. Opening a table takes about as long.
For players
Join a table
-
Get into the server
Your DM adds BardicAI once. If you can see the play channel, you can use it.
-
Import your character
Set your D&D Beyond sheet to public, then run
/ddb importwith the character URL. Stats, HP, skills, spells, weapons, inventory and portrait come across. -
Roll initiative
/joinwhen the fight starts. If you levelled up or changed gear since last session, the sheet syncs on the way in. -
Stay in character
/sayposts as your character, portrait and all./rolland/checkhandle everything else.
For DMs
Run a table
-
Invite BardicAI
Add the bot to the server you play in. Invite link.
-
Open your campaign
/bardic campaign createin your play channel (needs Discord's Manage Server permission). You become the DM automatically, and can deputize co-DMs with/bardic dm add. -
Add your other channels
Play across several channels? Bind each one to the campaign with
/bardic. -
Start the fight
/encounteropens initiative and pins the tracker. Your players/join, and you are running combat.
Reference
Every command
Every slash command BardicAI answers to, exactly as it appears in Discord.
Getting Started
/bardic 🔗
Configure campaigns and who the DMs are (admins only).
/bardic dm add
Grant DM privileges to a user or role.
/bardic dm remove
Revoke DM privileges from a user or role.
/bardic dm list
List the DMs for this channel's campaign.
/bardic campaign create
Create a campaign and bind it to this channel.
/bardic campaign bind
Bind a channel to a campaign (several channels can share one campaign).
/bardic campaign list
List this server's campaigns.
/bardic campaign delete
Delete this channel's campaign (asks for confirmation).
/help 🔗
Show Bardic help and available commands
Characters & Sheets
/character 🔗
Manage your characters
/character list
List your characters in this server
/character set-active
Set your active character
/character show
Show a character's summary
/character set-ac
Override a character's armor class (e.g. after an import)
/character set-hp
Override a character's maximum HP (e.g. homebrew/custom items the import missed)
/character set-init
Override a character's initiative bonus (and advantage)
/character set-speed
Override a character's walking speed
/character delete
Delete one of your characters (with confirmation)
/character create
Quick-create a character (name, class, level, ability scores)
/coins 🔗
Show your coinpurse, or add/subtract coins (e.g. gp:-100)
/ddb 🔗
Import public D&D Beyond characters and link your DDB account
/ddb import
Import a PUBLIC D&D Beyond character into a new Bardic character
/ddb import-spell
Import a spell from a D&D Beyond sheet so the table can cast it
/ddb link
Link your D&D Beyond account reference (user id or profile URL)
/ddb unlink
Remove your linked D&D Beyond account reference
/ddb status
Show your linked D&D Beyond account reference
/ddb cleanup
DM only: delete all imported characters in this server (with confirmation)
/pc 🔗
Manage your characters — alias of /character
/pc list
List your characters in this server
/pc set-active
Set your active character
/pc show
Show a character's summary
/pc set-ac
Override a character's armor class (e.g. after an import)
/pc set-hp
Override a character's maximum HP (e.g. homebrew/custom items the import missed)
/pc set-init
Override a character's initiative bonus (and advantage)
/pc set-speed
Override a character's walking speed
/pc delete
Delete one of your characters (with confirmation)
/pc create
Quick-create a character (name, class, level, ability scores)
/rest 🔗
Take a short or long rest with your active character
/rest short
Take a short rest (spend hit dice)
/rest long
Take a long rest (restore HP, hit dice, and resources)
/sheet 🔗
Show your character's sheet, spells, or inventory
/slots 🔗
View or adjust spell slots (yours; the DM can adjust anyone's)
/slots show
Show current spell slots
/slots restore
Restore (add back) spell slots of a level, up to the maximum
/slots set
Set the exact number of remaining slots of a level
/toggle 🔗
View or set your on/off preferences
Dice & Checks
/check 🔗
Skill or ability check — pick the type, add adv/bardic/+2/dc:15 in with
/r 🔗
Quick dice roll — alias of /roll
/roll 🔗
Roll dice or a check — insight, arcana adv bardic, 2d6+3; house rules: 2d6!, r1, (2d6)*2
/save 🔗
Roll a saving throw with your active character (or a combatant, DM only)
Combat
/action 🔗
Show & use a combatant's actions (defaults to whoever's turn it is)
/arm 🔗
Arm a reaction spell to fire automatically while you're away (Silvery Barbs auto-adjudicates)
/attack 🔗
Make a weapon/attack roll with your active character
/bonus 🔗
Show a combatant's available bonus actions and use one
/condition 🔗
Manage conditions on a combatant in the active encounter
/condition add
Apply a condition (defaults to your active character)
/condition remove
Remove a condition (defaults to your active character)
/condition list
List a combatant's active conditions
/cover 🔗
Set a combatant's standing cover (applies to attacks and DEX saves until changed)
/deathsave 🔗
Roll a death saving throw for your active character
/dismiss 🔗
Dismiss a summoned creature you control (removes it from the fight)
/distance 🔗
Distance to one combatant or your whole view of the field — or set: to record where someone is
/hp 🔗
Adjust your active character's (or, as DM, any combatant's) hit points
/hp damage
Take damage
/hp heal
Regain hit points
/hp temp
Set temporary hit points
/hp set
Set current hit points directly
/initiative 🔗
Roll or set initiative in the active encounter
/inspire 🔗
Heroic Inspiration: the DM grants it; a player cashes it in to reroll
/inspire grant
DM: award Heroic Inspiration to a character
/inspire use
Cash in your Heroic Inspiration to reroll your most recent d20
/join 🔗
Join the active combat with your active character (alias for /initiative)
/map 🔗
Show the battlefield disposition: melee groups, distances, who is far
/move 🔗
Move, dash, disengage, teleport, or fly
/move toward
Move toward a combatant (default: your full Speed)
/move away
Move away — provokes opportunity attacks from melee you leave
/move disengage
Disengage action: leave melee with NO opportunity attacks, then move
/move dash
Dash action: move up to TWICE your Speed (provokes like normal movement)
/move teleport
Teleport (Misty Step, Dimension Door…): no opportunity attacks, ignores Speed
/move fly
Fly: climb, descend, or close on a target (needs the Fly spell or wings)
/move flyaway
Fly away from melee — provokes opportunity attacks like normal movement
/move altitude
Set how high above the ground someone IS (declares position, spends nothing)
/move land
Come down to the ground (controlled — no damage)
/move fall
Fall to the ground from your current height (damage + Prone)
/move swap
Trade places with a willing creature within 5 ft
/myturn 🔗
Show your character's class features available on your turn
/next 🔗
Advance to the next turn (shorthand for /turn)
/potion 🔗
Drink a potion from your inventory — or feed one to an ally — and apply its effects
/previous 🔗
Step back to the previous turn (shorthand for /turn previous:true)
/reaction 🔗
Show a combatant's reactions and use one
/ready 🔗
Ready an action (spends your Action): declare a trigger, release later with your Reaction
/request 🔗
DM: request a saving throw or skill check with a public card (trap, hazard, or just because)
/summon 🔗
Add a creature YOU control to the fight (familiar, steed, summon)
/turn 🔗
Advance to the next turn in the active encounter
/use 🔗
Use one of your character's class features (spends a use; runs it if automated)
/wildshape 🔗
Druid: Bonus Action to become a Beast (or revert), taking on its stat block
/wildshape into
Bonus Action: shape-shift into one of your known Beast forms
/wildshape revert
Bonus Action: return to your normal form
Spells & Effects
/aura 🔗
Apply an active aura to a combatant — damage (Spirit Guardians) or healing (Aura of Vitality)
/cast 🔗
Cast a spell and auto-resolve its effects with your active character
/contingency 🔗
Arm a self-target spell to auto-cast on a combat trigger (a light Contingency)
/effect 🔗
Manage timed combat effects on a combatant (DM only)
/effect add
Add a timed effect to a combatant
/effect remove
Remove an effect from a combatant
/effect list
List a combatant's effects (or every combatant's)
Roleplay & Table Talk
Delete Post context menu
Right-click a message → Apps → Delete Post.
Edit Post context menu
Right-click a message → Apps → Edit Post.
Ping Player context menu
Right-click a message → Apps → Ping Player.
Reply in Character context menu
Right-click a message → Apps → Reply in Character.
/campaign 🔗
Show which campaign is bound to this channel (and its DMs)
/note 🔗
Attach a freeform note to a combatant (DM only)
/note set
Set a combatant's note
/note clear
Clear a combatant's note
/say 🔗
Speak in-character: post a message as your character (DMs: any character or NPC).
/write 🔗
Speak in-character with a multi-line Markdown editor (headers, quotes, lists…).
DM Tools
/combat 🔗
Manage combat in this channel (DM only)
/combat start
Start combat in this channel
/combat show
Show the current combat tracker
/combat list
Re-post the tracker at the bottom of the channel (visible to everyone)
/combat post
Re-post the tracker at the bottom of the channel (alias of list)
/combat add-monster
Add a monster combatant (DM only)
/combat remove
Remove any combatant from combat (DM only)
/combat remove-monster
Remove a combatant from combat — alias of /combat remove (DM only)
/combat leave
Take your own character out of this combat
/combat goto
Jump the active turn directly to a combatant (DM only)
/combat set-initiative
Change a combatant's initiative in this combat (yours; DM: anyone)
/combat reset-turn
Give a combatant back its Action, Bonus Action, and Reaction for this turn (DM only)
/combat restore-legendary
Restore legendary actions to a combatant that has them (DM only)
/combat restart
Restart this combat from round 1 (asks to confirm)
/combat reactions
Whether a monster's protective Reaction fires or asks you first (DM only)
/combat end
End combat
/dm 🔗
Ask the AI DM assistant to narrate or adjudicate (DM only).
/homebrew 🔗
Create and manage campaign homebrew content (DM only).
/homebrew create-spell
Author a homebrew spell by pasting its JSON.
/homebrew create-item
Author a homebrew magic item by pasting its JSON.
/homebrew create-monster
Author a homebrew monster by pasting its JSON.
/homebrew list
List this campaign's homebrew content.
/homebrew delete
Delete a homebrew item by slug.
/rolls 🔗
Show the recent dice rolls in this channel (DM only)
/spelltest 🔗
DM: simulate a character casting a spell at an SRD monster — stateless, nothing is spent.
Content & Reference
/content 🔗
Import and manage uploaded content packs (DM only).
/content import
Import a JSON content pack from a file attachment or an https URL.
/content list
List installed content packs.
/content remove
Remove an installed content pack and all of its items.
/lookup 🔗
Look up an SRD spell, monster, rule, class, feat, and more
/lookup spell
Look up an SRD spell
/lookup monster
Look up an SRD monster stat block
/lookup rule
Look up a rules-glossary entry
/lookup race
Look up a playable race's traits
/lookup class
Look up a class's proficiencies and hit die
/lookup subclass
Look up a subclass
/lookup feat
Look up a feat
/lookup background
Look up a background
/lookup feature
Look up a class or racial feature
No command matches that filter.