| Crates.io | dndgamerolls |
| lib.rs | dndgamerolls |
| version | 0.1.10 |
| created_at | 2025-12-04 15:57:36.017017+00 |
| updated_at | 2025-12-07 17:07:36.784168+00 |
| description | DnD Game Rolls - D&D dice roller with CLI and 3D visualization using Bevy |
| homepage | https://github.com/edgarhsanchez/dndgamerolls |
| repository | https://github.com/edgarhsanchez/dndgamerolls |
| max_upload_size | |
| id | 1966660 |
| size | 3,920,300 |
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.
| Rolling Dice | Results Display |
|---|---|
![]() |
![]() |
| Command Input | Command History |
|---|---|
![]() |
![]() |
Download the latest MSI installer from the Releases page:
dndgamerolls-installer.msi - Full Windows installer with Start Menu shortcut and PATH integrationOr download the portable ZIP:
dndgamerolls-x86_64-pc-windows-msvc.zip - Portable executableDownload the .deb package from Releases and install:
sudo dpkg -i dndgamerolls_*.deb
sudo apt-get install -f # Install dependencies if needed
cargo install dndgamerolls
cargo binstall dndgamerolls
git clone https://github.com/edgarhsanchez/dndgamerolls.git
cd dndgamerolls
cargo build --release
The executable will be at: target/release/dndgamerolls.exe
Simply run without --cli to launch the 3D dice simulator:
# Launch 3D simulator with default d20
dndgamerolls
# Launch with specific dice
dndgamerolls --dice 2d6 --dice 1d20
# Launch with skill modifier applied
dndgamerolls --dice 1d20 --checkon stealth
Use --cli for headless command-line rolling:
# Roll dice with skill modifier (no GUI)
dndgamerolls --cli --dice 2d10 --checkon perception
# Roll with advantage
dndgamerolls --cli --dice 1d20 --checkon stealth --advantage
# Traditional subcommands also work
dndgamerolls skill stealth
dndgamerolls --advantage skill perception
dndgamerolls attack dagger
dndgamerolls stats
# View character stats
dndgamerolls stats
# Skill check with expertise
dndgamerolls skill stealth
# đ˛ Stealth Check (Expertise)
# Roll: 15 + 9 = 24
# Skill check with advantage
dndgamerolls --advantage skill perception
# Attack roll with damage
dndgamerolls attack dagger
# CLI mode: Roll 2d10 + perception modifier
dndgamerolls --cli --dice 2d10 --checkon perception
For more examples, see the screenshots directory.
A visual 3D dice rolling experience with physics simulation.
| 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 |
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 bonusPress 1-9 to quickly reroll from command history shown on the right.
The CLI mode provides quick command-line dice rolling without the 3D GUI.
# Ability Checks
dndgamerolls strength # or str
dndgamerolls dexterity # or dex
# Skill Checks
dndgamerolls skill stealth
dndgamerolls skill perception
# Saving Throws
dndgamerolls save dex
dndgamerolls save wisdom
# Attack Rolls
dndgamerolls attack shortsword
dndgamerolls attack dagger
# View Character Stats
dndgamerolls stats
Use --cli with --dice and --checkon for flexible dice rolling:
# Roll 2d10 with perception modifier
dndgamerolls --cli --dice 2d10 --checkon perception
# Roll 1d20 with stealth and advantage
dndgamerolls --cli --dice 1d20 --checkon stealth --advantage
# Roll multiple dice types
dndgamerolls --cli --dice 1d20 --dice 2d6 --modifier 5
# Add custom modifier
dndgamerolls --cli --dice 3d8 --modifier 10
Add --advantage or --disadvantage before the subcommand:
dndgamerolls --advantage skill stealth
dndgamerolls --disadvantage attack shortsword
dndgamerolls --cli --dice 1d20 --checkon perception --advantage
By default, the tool looks for dnd_stats.json in the current directory. You can specify a different file:
dndgamerolls -f path/to/character.json intelligence
The tool expects a JSON file with your character stats. See dnd_stats.json for the full structure.
cargo build --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!
See LICENSE for details.