#dice #RPG #game #gaming #roller


A container-like system for generating dice rolls

6 releases

0.2.1 Jan 10, 2020
0.2.0 Jan 10, 2020
0.1.3 Dec 15, 2016

#30 in Games

24 downloads per month

MPL-2.0 license

169 lines


Crates.io docs.rs Build Status

A container-like system for generating dice rolls


rouler is a Rust library for generating die rolls from convenient little state containers. A die roll can be created and stored and called repeatedly to generate new values.

This allows easy use and re-use of specific die rolls, and even comparison.

extern crate rouler;

use rouler::Roller;

let mut stat = Roller::new("3d6");

println!("STR: {}", stat.total());
println!("DEX: {}", stat.reroll());

println!("Last stat roll: {}", stat);

let att = Roller::new("1d20 + 5");
let def = Roller::new("1d20 + 2");

if att > def {
    println!("You struck the monster!");        
} else {
    println!("You missed!");


This Source Code Form is subject to the terms of the Mozilla Public License, v. 2.0. If a copy of the MPL was not distributed with this file, You can obtain one at http://mozilla.org/MPL/2.0/.


~44K SLoC