Project

nuffle

0.0
No commit activity in last 3 years
No release in over 3 years
Nuffle, The Ruby Library, is a dice calculator library that provides the functionality to perform complex dice rolls and calculate their result (ex: `5d6 + 1d20 / (1d6 - 2)`.
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
 Dependencies

Development

 Project Readme

MIT licensed Build Status codecovGitter

Nuffle, The Ruby Library

Nuffle, The Ruby Library, is a dice calculator library that provides the functionality to perform complex dice rolls and calculate their result (ex: 5d6 + 1d20 / (1d6 - 2).

Installation

First, install Nuffle using RubyGems:

gem install nuffle

Then, require the library at the top of your script:

require 'nuffle'

Usage

Nuffle is a dice calculator, allowing you to perform complex dice rolls and calculate their result. To do so, simply call the roll() method with your equation:

Nuffle.roll('5d6 + 1d20 / (1d6 - 2)')

That method will return a Nuffle::Calculator object that looks like the following:

{
   "rolls" : [
      {
         "notation" : "5d6",
         "rolls" : [
            2,
            1,
            2,
            4,
            5
         ]
      },
      {
         "notation" : "1d20",
         "rolls" : [
            11
         ]
      },
      {
         "rolls" : [
            4
         ],
         "notation" : "1d6"
      }
   ],
   "equation" : "(2 + 1 + 2 + 4 + 5) + (11) / ((4) - 2)",
   "result" : 19.5,
   "input" : "5d6 + 1d20 / (1d6 - 2)"
}

The object includes the value of each individual dice roll notation, the expanded equation, the equation result, and the original input.

Contributing

Please read through our contributing guidelines. Included are directions for opening issues, coding standards, and notes on development.

Versioning

For transparency into our release cycle and in striving to maintain backward compatibility, Nuffle is maintained under the Semantic Versioning guidelines. Sometimes we screw up, but we'll adhere to those rules whenever possible.

See the Releases section of our GitHub project for changelogs for each release version of Nuffle.

Support

The issue tracker is the preferred channel for bug reports, features requests and submitting pull requests.

For personal support requests, please use Gitter to get help.

Copyright and License

Code and documentation copyright 2016 nuffleapp. Code released under the MIT license.