ouxsoft / luckbydice
A library for simulating dice rolls written in PHP.
Installs: 7 584
Dependents: 1
Suggesters: 0
Security: 0
Stars: 0
Watchers: 2
Forks: 1
Open Issues: 1
Requires
- php: ^7.3 || ^8.0
- ext-json: *
Requires (Dev)
- friendsofphp/php-cs-fixer: ^v3.1.0
- phpbench/phpbench: ^1.1
- phpstan/phpstan: ^0.12.99
- phpunit/phpunit: ^9
This package is auto-updated.
Last update: 2024-11-29 06:22:35 UTC
README
Got Dice?
Run your dice notation using Docker:
$ docker run ouxsoft/luckbydice:latest bin/luckbydice d3,4d6+1,5d+1*2
Installation
Install using Composer:
$ composer require ouxsoft/luckbydice
Basic Usage
<?php use Ouxsoft\LuckByDice\Factory\TurnFactory; $turn = TurnFactory::getInstance(); $turn->setNotation('10d10,1d6+3*7,d%'); echo $turn->roll(); // we should be luckier with this next roll $turn->setLuck(200); echo $turn->roll();
About
LuckByDice is a PHP library for simulating dice rolls written in PHP. In addition to emulating standard dice rolls from dice notation, it can also emulate luck.
Rolls made with luck enabled have a natural ebb and flow to roll outcomes. Rolls made with higher luck are more likely to roll higher values. Luck is well suited for use with character's luck stat, which may feature unnatural modification.
Chart Test
This graph illustrates 10,000 consecutive 10d10
rolls to aid in statistical analysis. Notice how outcome impacts luck and vice versa.
Documentation
Author
Matthew Heroux.
See also the list of contributors who participated in this project.
Contributing
LuckByDice is open source software project. If you find a problem or want to discuss new features or improvements create an issue, and/or if possible create a pull request. For details, see CONTRIBUTING.md.
Acknowledgement
Thanks to Zachary Whitcomb-Paulson for dice notation expertise.