DnD Game Rolls
A D&D 5e dice roller with both CLI and 3D visualization in a single binary!
Powered by Bevy game engine with real physics simulation.
Screenshots
3D Dice Simulator
| Rolling Dice | Results Display |
|---|---|
![]() |
![]() |
| Command Input | Command History |
|---|---|
![]() |
![]() |
Installation
Windows Installer (Recommended for Windows)
Download the latest MSI installer from the Releases page:
dndgamerolls-installer.msi- Full Windows installer with Start Menu shortcut and PATH integration
Or download the portable ZIP:
dndgamerolls-x86_64-pc-windows-msvc.zip- Portable executable
Linux (DEB Package)
Download the .deb package from Releases and install:
From crates.io
Using cargo-binstall (Fast Binary Install)
From Source
The executable will be at: target/release/dndgamerolls.exe
Usage
3D Mode (Default)
Simply run without --cli to launch the 3D dice simulator:
# Launch 3D simulator with default d20
# Launch with specific dice
# Launch with skill modifier applied
CLI Mode
Use --cli for headless command-line rolling:
# Roll dice with skill modifier (no GUI)
# Roll with advantage
# Traditional subcommands also work
Quick Examples
# View character stats
# Skill check with expertise
# đ˛ Stealth Check (Expertise)
# Roll: 15 + 9 = 24
# Skill check with advantage
# Attack roll with damage
# CLI mode: Roll 2d10 + perception modifier
For more examples, see the screenshots directory.
3D Dice Simulator
A visual 3D dice rolling experience with physics simulation.
Controls
| Key | Action |
|---|---|
| SPACE | Roll a complete set of dice (D4, D6, D8, D10, D12, D20) |
| 1 | Spawn D4 (tetrahedron) |
| 2 | Spawn D6 (cube) |
| 3 | Spawn D8 (octahedron) |
| 4 | Spawn D10 (pentagonal trapezohedron) |
| 5 | Spawn D12 (dodecahedron) |
| 6 | Spawn D20 (icosahedron) |
| R | Clear all dice |
| W/A/S/D | Move camera |
| Q/E | Rotate camera |
Command Input Mode
Press / or Enter to open command input, then type commands like:
--dice 2d6 --checkon stealth- Roll 2d6 with stealth modifier1d20 --checkon perception- Roll d20 with perception modifier--dice 1d20 --dice 1d8 --modifier 3- Roll multiple dice with bonus
Press 1-9 to quickly reroll from command history shown on the right.
Features
- đ˛ All standard D&D dice types (D4, D6, D8, D10, D12, D20)
- ⥠Real-time physics simulation with Rapier3D
- âī¸ Size-based dice weight (D20 is heavier than D4, affects rolling)
- đ¨ Crystal-themed translucent dice with size variation
- đĻ Glass dice box with realistic bouncing
- đ¯ Automatic result detection when dice stop
- đĄ Dynamic lighting and shadows
- đ Command history for quick rerolls
- đŽ Mouse-controlled throw direction with 3D arrow indicator
- đ Quick roll panel for skills, saves, and ability checks
- âī¸ Settings panel with customizable background color
- đ Character sheet editor with full D&D 5e support
- âšī¸ DnD Info tab with rules reference
- đĨ Contributors tab with GitHub profile avatars (loaded at runtime)
- īŋŊ Auto-recovery for dice that fall out of bounds
CLI Mode
The CLI mode provides quick command-line dice rolling without the 3D GUI.
Traditional Subcommands
# Ability Checks
# Skill Checks
# Saving Throws
# Attack Rolls
# View Character Stats
Advanced CLI Mode
Use --cli with --dice and --checkon for flexible dice rolling:
# Roll 2d10 with perception modifier
# Roll 1d20 with stealth and advantage
# Roll multiple dice types
# Add custom modifier
Advantage/Disadvantage
Add --advantage or --disadvantage before the subcommand:
Custom Character File
By default, the tool looks for dnd_stats.json in the current directory. You can specify a different file:
Features
- đ˛ D&D 5e compliant rolls (d20 + modifier)
- ⨠Advantage/Disadvantage support
- đ¨ Colored output with critical success/failure highlighting
- đ Displays both dice roll and final total
- đ¯ Automatic modifier calculation from character stats
- đĄī¸ Attack rolls with weapon stats
- đž Loads character data from JSON file
- đ Shows expertise on relevant skills
D&D Rules Implemented
- Natural 20: Critical success (highlighted in green)
- Natural 1: Critical failure (highlighted in red)
- Advantage: Roll twice, take the higher result
- Disadvantage: Roll twice, take the lower result
- Proficiency Bonus: Automatically applied to proficient saves/skills
- Expertise: Double proficiency bonus (shown in character stats)
Character File Format
The tool expects a JSON file with your character stats. See dnd_stats.json for the full structure.
Building for Release
Copy the executable to a directory in your PATH for easy access:
# Windows
copy target\release\dndgamerolls.exe C:\Users\YourName\.cargo\bin\
# Or install directly from source
cargo install --path .
Now you can run dndgamerolls from anywhere!
License
See LICENSE for details.



