Skip to main content
Join the official 2019 Python Developers SurveyStart the survey!

The swiss knife for Dice roll : Command line, API (documented!), advanced dice notation parser, compilable patterns...etc.

Project description

Build Status Coverage Status Documentation Status

xdice

xdice is a lightweight python library for managing dice, scores, and dice-notation patterns.

  • Parse almost any Dice Notation pattern: ‘1d6+1’, ‘d20’, ‘3d%’, ‘1d20//2 - 2*(6d6+2)’, ‘max(1d4+1,1d6)’, ‘3D6L2’, ‘R3(1d6+1)’…etc.
  • API help you to easily manipulate dices, patterns, and scores as objects
  • A command line tool for convenience

Python Versions

DiceRollParser has been tested with python 3.3+

Documentation

For more, see the Documentation

Examples:

import dice

# Roll simple dices with **rolldice()**

score = rolldice(6, amount=2)

# manipulates score as an integer

print(score)
>> 11
print(score * 2)
>> 22
print(score == 11)
>> True

# Or iterates over the results

for result in score:
    print(result)
>> 5
>> 6

# Parse patterns with **roll()**

ps = roll("2d6+18")

print(ps)
>> 28
print(ps.format())
>> '[5,6]+18'

ps = roll("6D%L2")

print(ps)
>> 315
print(ps.format(verbose=True))
>> '6D%L2(scores:[80, 70, 76, 89], dropped:[2, 49])'

CLI

Run python roll.py [options] <expr>

Usage:
    roll [options] <expr>

Options:
    -s               Numeric score only

    -h --help        Displays help message
    --version        Displays current xdice version

CONTRIBUTION

Any opinion / contribution is welcome, please contact us.

TO INSTALL

pip install xdice

License

xdice is under GNU License

Author

Olivier Massot, 2017, with Cro-ki Lab

Tags

dice roll d20 game random parser dices role board

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Files for xdice, version 1.1.4
Filename, size File type Python version Upload date Hashes
Filename, size xdice-1.1.4.tar.gz (10.8 kB) File type Source Python version None Upload date Hashes View hashes

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN SignalFx SignalFx Supporter DigiCert DigiCert EV certificate StatusPage StatusPage Status page