A tool of generating and viewing dice roll success distributions.

Related tags

Utilities AZDice
Overview

AZDice

A GUI tool for generating and visualising dice roll probability distributions.

Aims

Intended to help people trying to get game balance just right in homebrewed tabletop games.

Current State

CLI

The refactored original cli version is now up.

GUI

Uses conrod for a simple GUI that which can be used to enter an input and display a graphical output.

Supported Rolls

Generates roll distributions over a full range of bonuses. Eg for an opposed 1d20 vs 1d20 roll, the full range of meaningful relative bonuses is -20 to +20. Supports symmetrical roll distributions. (eg 3d6 vs 3d6 can be generates with "3d6 vs" or "3d6 vs 3d6", 1d100 vs 1d100 can be generated with "1d100 vs 1d100" or "d100 vs d100") Supports additive roll distributions. (eg 3d6+1d20 vs 3d6+1d20 can be generated with "3d6+1d20" or "3d6+1d20 vs 3d6+1d20") Supports asymmetrical rolls. (eg 3d6 vs 1d20 can be generated by "3d6 vs 1d20")

Now can also generate probability distributions for "non versus" rolls. Thus "3d20dl1dh1" will generate a simple probability distribution for "roll 3d20 drop the highest, drop the lowest" types of rolls.

The rolls are powered by libazdice. Thus the README for libazdice should be consulted for more detailed description of the supported roll functions.

Output

Creates a full .csv output file, for each unique distribution. Displays the generated distribution as a graph. Displays distribution in terminal window.

Distribution generation algorithm

Currently rolls virtual dice (using rand crate) lots of times. Then compares the answer.

ToDo

-Make an algebraic calculator to supplement the brute force statistical calculator.

Compiling

Compiles on rust 1.28.0 with cargo build --release --features="winit glium libc"

Compiles on rust 1.43.0 with cargo build or cargo build --release. NB: Lastest version is not compatible with older versions of rust.

Update 2018-10-24: Now builds on travis without doing silly things to conrod.

Update 2020-06-22: Now builds on travis again (did not build after incorporation of libazdice, possibly due to update to toolchain.)

Feedback

Please let me know why this sucks might suck and how it should be made better.

You might also like...
Tool written in rust to read for file changes and accordingly run build commands.

Sniff A simple tool written in rust to read for file changes and accordingly run build commands. Note this tool is for linux and linux only. If it hap

"Philips Ambilight for desktops". A tool to generate color palettes from your desktop wallpaper and send them to Home Assistant.

Desktop Dye DesktopDye is an open source project written in Rust that allows users to have their lights paired with Home Assistant adjust to the most

Tudo is a fast and simple CLI tool for managing to-do lists.
Tudo is a fast and simple CLI tool for managing to-do lists.

Tudo is a fast and simple CLI tool for managing to-do lists. With Tudo, you can easily add, remove, clear, and mark tasks as done, all from the command line. Tudo is written in Rust, making it a BLAZINGLY high-performance and efficient tool for staying organized.

Simple tool for scaffolding

quick-skeleton tldr; Lightweight replacement for yeoman or slush. Powered by handlebars. This is a scaffolding tool to save you hours of writing boile

A nifty commandline tool to manage your workstation.

workstation It's a nifty commandline rust tool to make you sit slightly away from your screen by blacking out the screen if you come too close and loc

A command-line tool collection to assist development written in RUST

dtool dtool is a command-line tool collection to assist development Table of Contents Description Usage Tips Installation Description Now dtool suppor

A cross platform tool which instantly notifies about COVID vaccine availability.
A cross platform tool which instantly notifies about COVID vaccine availability.

💉 CoWIN Notifier 😷 A cross-platform tool written in rust, which instantly notifies users about COVID-19 vaccine availability at their regions. Curre

Rusty Armor Builds - Monster Hunter Rise Armor Set Creation Tool
Rusty Armor Builds - Monster Hunter Rise Armor Set Creation Tool

RAB Rusty Armor Builds - Monster Hunter Rise Armor Set Creation Tool Armor files used by RAB

BSP 19&20&21 Review tool

BSP review tool Limitations PAKFILE&ENTITIES lumps can't be bigger than the original ToDo WASM - needs file action interops Proper serialisation - rig

Owner
null
Generating Permutations with Rust

rust_permutations Generating Permutations with Rust Permutation Input: a string of unknown length that can contain only three characters: 0, 1, or . F

Flavio Rasseli 1 Oct 25, 2021
tiny_id is a Rust library for generating non-sequential, tightly-packed short IDs.

tiny_id tiny_id is a Rust library for generating non-sequential, tightly-packed short IDs. Most other short ID generators just string together random

Paul Butler 33 Aug 6, 2022
A library for generating TypeScript definitions from rust code.

Tsify is a library for generating TypeScript definitions from rust code. Using this with wasm-bindgen will automatically output the types to .d.

Madono Haru 60 Dec 30, 2022
Ever wanted to torture your CPU by generating every image possible?

dumpsterfire Ever wanted to torture your CPU by generating every image possible? Well, now you can! This thing is worse than mining Bitcoin, since the

null 2 Jun 14, 2022
A tool for investigating file system and folder contents and their changes.

Sniff A tool for investigating file systems and folder contents and their changes. Sniff can create snapshots of file systems and folders, storing has

Niclas Schwarzlose 6 Jan 14, 2023
A low-ish level tool for easily writing and hosting WASM based plugins.

A low-ish level tool for easily writing and hosting WASM based plugins. The goal of wasm_plugin is to make communicating across the host-plugin bounda

Alec Deason 62 Sep 20, 2022
A small tool to clone git repositories to a standard location, organised by domain name and path.

A small tool to clone git repositories to a standard location, organised by domain name and path. Runs on BSD, Linux, macOS, Windows, and more.

Wesley Moore 68 Dec 19, 2022
Keyscope is a key and secret workflow (validation, invalidation, etc.) tool built in Rust

✅ Automate your key and secret validation workflows ?? Over 30 different providers ?? Export to JSON, audit via CSV ?? Keyscope Keyscope is a key and

null 364 Dec 22, 2022
A tool to subscribe to Twitch channels and store them efficiently on disk

twitch-messages A tool to subscribe to Twitch channels and store them efficiently on disk Build the Tools You can start by building the binaries that

Clément Renault 1 Oct 31, 2021
Fast, compact and all-around subdomain enumeration tool written in Rust

Fast, compact and all-around subdomain enumeration tool written in Rust, which uses dns bruteforce, internet search and recursive http content search.

foreseon 16 Dec 10, 2022