0.1.5 • Published 10 years ago
bitkompagniet-dice v0.1.5
Creates dice pools using dice annotation known from RPG's and the like (3d6, 10d100, 8d12). Pools can be merged, and there are convenience methods for easily creating typical dice.
Install
npm install bitkompagniet-diceAPI
Create a new pool:
var dice = require('bitkompagniet-dice');
var pool = dice.create('4d6'); // the pool will start rolledRolling and retrieving the value
The value of the pool is an array of the individual dice values.
var result = pool.roll(); // will return the new value
var value = pool.value(); // will be the same as above until we re-rollAggregates
var sum = pool.sum() // a single sum of all dice values
var avg = pool.average() // the average of all values
var med = pool.median() // the median value
var min = pool.min() // the lowest die value
var max = pool.max() // the highest die value
var sixes = pool.count(6) // number of 6's
var highs = pool.count([5, 6]) // number of 5's and 6'sMerging pools
var p1 = dice.create('10d6');
var p2 = dice.create('2d100');
var merged = p1.merge(p2); // 10d6 + 2d100Special dice
If we want to create one or more dice that are not continuous in values starting from 1, we can create a pool of special dice:
// Create 10 dice with 6 sides, values 2, 4, 6, 2 sides with 8, and 10.
var pool = dice.specialDice([2, 4, 6, 8, 8, 10], 10);Only numbered dice are allowed right now.
Future plans
- Accept pool definitions of numbers instead of annotations.
- Accept a compound of pools in
dice.create(). - Allow non-numerical dice.