This repository has been archived on 2022-07-11. You can view files and clone it, but cannot push or open issues or pull requests.
dandhelper.ex/README.md
2016-03-31 15:49:23 +02:00

142 lines
2.2 KiB
Markdown

# danddhelper_exs
*Dungeons and Dragons Helper -- in Elixir lang*
# Usage
```sh
./run [opti]
```
## Commands for Roll mode (default)
You can use the following commands:
- ``ROLL``: roll the command
- ``NAME ROLL``: save the roll with a name
- ``delete NAME``: remove a saved named roll
- *empty line*: roll every saved rolls
### Example
> Input a roll: 1d6
>
> 1D6 ... 5 = 5
>
>
>
> Input a roll: 1d6 + 4
>
> 1D6 + 4 ... 4, 2 = 6
>
>
>
> Input a roll: toto 1d20 + 6
>
> 1D20 + 6 ... 6, 1 = 7
>
>
>
> Input a roll: lobo 1d20 + 1
>
> 1D20 + 1 ... 1, 14 = 15
>
>
>
> Input a roll:
>
>
>
> \*\*\*\*\* lobo \*\*\*\*\* 1D20 + 1 ... 1, 14 = 15
>
> \*\*\*\*\* toto \*\*\*\*\* 1D20 + 6 ... 6, 7 = 13
>
>
>
> Input a roll: delete lobo
>
> \*\*\*\*\* Deleted lobo \*\*\*\*\*
>
>
>
> Input a roll: robo 1d20 + 2
>
> 1D20 + 2 ... 2, 20 = 22
>
>
>
> Input a roll: robo 1d20 + 3
>
> 1D20 + 3 ... 3, 17 = 20
>
>
>
> Input a roll:
>
>
>
> \*\*\*\*\* robo \*\*\*\*\* 1D20 + 3 ... 3, 3 = 6
>
> \*\*\*\*\* toto \*\*\*\*\* 1D20 + 6 ... 6, 19 = 25
>
>
>
> Input a roll: exit
>
## Commands for Opti mode
*Computes the damages you can inflict based on the average accuracy of the attacks.*
You can use the following commands:
- average_attack: set or display the average roll of an attack (on a d20)
- max: maximum damages inflicted in one round
- min: minimum damages inflicted in one round
- mean: average damages inflicted in one round
### Todo
- handle critical damages and fumble cases
### Example
> Input a command: max 25 16/16/9 5d6+5+15
>
> [max] attacks: 0.6 / 0.6 / 0.25, with 5D6 + 5 + 15 damages => 30.0 + 30.0 + 12.5 => 72.5
>
>
>
> Input a command: mean 25 16/16/9 5d6+5+15
>
> [mean] attacks: 0.6 / 0.6 / 0.25, with 5D6 + 5 + 15 damages => 22.5 + 22.5 + 9.38 => 54.38
>
>
>
> Input a command: min 25 16/16/9 5d6+5+15
>
> [min] attacks: 0.6 / 0.6 / 0.25, with 5D6 + 5 + 15 damages => 15.0 + 15.0 + 6.25 => 36.25
>
>
>
> Input a command: average_attack = 12
>
> Set average_attack = 60.0 %
>
>
>
> Input a command: min 25 16/16/9 5d6+5+15
>
> [min] attacks: 0.75 / 0.75 / 0.4, with 5D6 + 5 + 15 damages => 18.75 + 18.75 + 10.0 => 47.5
>
>
>
> Input a command: average_attack
>
> Current average attack roll : 12.0 (60.0 %)
>
>
>
> Input a command: exit
>