Notations des dés
Le bot utilise la bibliothèque de dice roller1 pour les jets de dés, et supporte la syntaxe de ce dernier. Il existe cependant quelques différences car Dicelette veut être plus flexible et indiquer les résultats des jets de dés de manière plus lisible.
Différence avec Dice Roller
Syntaxe étendue pour les commentaires
Dicelette étend la syntaxe de Dice Roller en s'inspirant de celle de Dice Parser :
- L'utilisation de
# commentaire
en plus de la syntaxe de base pour les commentaires. - La possibilité d'utiliser
[commentaire]
pour commenter un jet de dés partagé, ce qui permet de donner un contexte à chaque ligne de résultat.
Les comparateurs
Par défaut, en présence d'un signe de comparaison (>
, <
, =
, etc.), le bot considérera le total et la valeur comparée (tout en faisant un jet et/ou calcul si nécessaire) et indiquera si le jet est un échec ou un succès :
1d20
⟶ [20]
= [20] > 10
Cependant, certains systèmes nécessitent de compter le nombre de jet au dessus (ou en dessous) d'une valeur, plutôt que de comparer le résultat total.
Afin de pouvoir maintenir la compatibilité entre Dicelette et Dice Roller, le jet doit se trouver entre accolades {}
, tel que : {3d12>20}
.
{3d12>20} ⟶ {[11, 9, 7]} = [0]
Dans ces cas particuliers, le bot n'affichera pas le texte de succès, échec, ou critique, et en fait de même lors de l'utilisation des target failure.
{1d3}>20
donnera le même résultat que1d3>20
- Mais pas
{1d3,1d6}>20
, qui conserve la syntaxe par défaut de Dice Roller. Pour obtenir la comparaison entre le total et une valeur, il faut utiliser1d3+1d6>20
.
- Si vous souhaitez compter le nombre de dés qui passe une comparaison, il faut mettre le dé et le comparateur entre accolades
{}
. - Si vous souhaitez utiliser les targets failures, il faut conserver la syntaxe de Dice Roller.
Expressions Mathématiques avec MathJS
Le bot utilise la bibliothèque mathjs pour évaluer les expressions mathématiques. Vous pouvez utiliser des expressions mathématiques complexes lorsqu'elles sont entre {{
et }}
.
Il est possible d'utiliser, selon les commandes :
$
: Symbolise la valeur de la statistique utilisée.- Le nom d'une statistique (qui sera remplacée par sa valeur).
- Des combinaisons de dés (comme
1d6
). {exp}
: Cette syntaxe permet d'insérer directement une expression dans le dé, en reprenant la partie calculée de la commande. Il est possible d'indiquer une valeur par défaut en utilisant la syntaxe{exp||default}
(comme{exp||2}
). Dans le cas contraire, la valeur par défaut sera1
.
Les expressions sont généralement utilisées dans :
- seuil_reussite : Seuil de réussite pour les jets de dés pour la commande
/dbroll
. - expression : Pour les commandes
/calc
,/dbroll
et/dbd
.
Exemples d'Expressions Mathématiques
1d6 + {{ceil($ / 2)}}
1d6 > {{ceil($ / 2)}}
Jets Uniques Partagés (Réutilisation de Résultats)
Il est possible d'utiliser la syntaxe dé;&+x;µ*y
pour lancer un seul dé et appliquer différentes formules sur ce même dé, de façon à afficher le résultat de chaque formule. Le &
symbolise le résultat du dé.
Vous devez obligatoirement ne pas avoir d'espace avant et après la séparation entre les formules, sinon le bot considérera la suite comme des commentaires.
/roll 1d20;&+5;&*2
Affichera comme résultat :
※ `1d20` ⟶ `[10]` = ` 10 `
◈ `[1d20]+5` ⟶ `[10]+5` = ` 15 `
◈ `[1d20]×2` ⟶ `[10]×2` = ` 20 `
Il est possible d'utiliser des dés dans les formules, mais seul le premier dé sera sauvegardé et réutilisé.
1d20;&+1d4;&*2
※ `1d20` ⟶ `[7]` = ` 7 `
◈ `[1d20]+1d4` ⟶ `7+[1]` = ` 8 `
◈ `[1d20]×2` ⟶ `[7]×2` = ` 14 `
Pour commenter entre chaque jet, il faut utiliser la syntaxe [commentaire]
. Un commentaire global devra utiliser la syntaxe # commentaire
à la fin des dés.
1d20;&-2[perte pv]
※ 1d20
⟶ [2]
= 2
◈ perte pv — [1d20]-2
⟶ [2]-2
= 0
Enfin, il est possible de cacher le premier dé avec la syntaxe (dé)
:
(1d20);&>100;&+2
Échec — [1d20]>100
⟶ [12]>100
= 12<100
◈ [1d20]+2
⟶ [12]+2
= 14
Lancers en Masse (Bulk Rolls)
Le bot prend également en charge la notation x#(dés)
inspiré par rollem pour les lancers "en masse" (bulk roll).
4#2d10
2d10
⟶ [2, 7]
= [9]
2d10
⟶ [2, 8]
= [10]
2d10
⟶ [4, 3]
= [7]
2d10
⟶ [8, 9]
= [17]