# Améliorer le lancer de dés pour discourse-narrative-bot

**URL:** https://meta.discourse.org/t/improve-dice-rolling-for-discourse-narrative-bot/115177
**Category:** Development
**Created:** [Avril 16, 2019, 4:50 UTC](https://meta.discourse.org/t/improve-dice-rolling-for-discourse-narrative-bot/115177 "2019-04-16T04:50:31Z")
**Posts on this page:** 10
**Page:** 1

<div class="post-metadata">

### Author: ![neemiasvf](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/neemiasvf/32/197028_2.png) [@neemiasvf](https://meta.discourse.org/u/neemiasvf)
#### Post date: [Avril 16, 2019, 4:50 UTC](https://meta.discourse.org/t/improve-dice-rolling-for-discourse-narrative-bot/115177/1 "2019-04-16T04:50:32Z")

</div>

Although @discobot has a dice roller, it’s too simple. It’s not **yet** capable of rolling complex dice and formulas for specific needs. So, I’d like to improve this feature and make it possible to run dice like `1d20+5`, `1d20+2 + 2d12-1`, `5d10k2` and so on…

I submitted this PR and would very much appreciate reviews and thoughts about it. Thanks! 🙂

[https://github.com/discourse/discourse/pull/7381](https://github.com/discourse/discourse/pull/7381)

---

<div class="post-metadata">

### Author: ![discobot](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/discobot/32/68978_2.png) [@discobot](https://meta.discourse.org/u/discobot)
#### Post date: [Avril 16, 2019, 4:50 UTC](https://meta.discourse.org/t/improve-dice-rolling-for-discourse-narrative-bot/115177/2 "2019-04-16T04:50:34Z")

</div>

Hi! To find out what I can do, say `@discobot display help`.

---

<div class="post-metadata">

### Author: ![neemiasvf](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/neemiasvf/32/197028_2.png) [@neemiasvf](https://meta.discourse.org/u/neemiasvf)
#### Post date: [Avril 16, 2019, 4:51 UTC](https://meta.discourse.org/t/improve-dice-rolling-for-discourse-narrative-bot/115177/3 "2019-04-16T04:51:22Z")

</div>

Shoo! I don’t want to talk to you… ¬¬

---

<div class="post-metadata">

### Author: ![sam](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/sam/32/102149_2.png) [@sam](https://meta.discourse.org/u/sam)
#### Post date: [Février 15, 2024, 6:37 UTC](https://meta.discourse.org/t/improve-dice-rolling-for-discourse-narrative-bot/115177/6 "2024-02-15T06:37:36Z")

</div>

Discourse AI dispose désormais d’un lanceur de dés raisonnablement performant et créatif, par exemple @random_picker_bot , que diriez-vous de lancer un 1d20+5 pour moi ?

Aussi, pendant que vous y êtes, choisissez un nom aléatoire pour mon chat.

---

<div class="post-metadata">

### Author: ![random\_picker\_bot](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/random_picker_bot/32/363378_2.png) [@random\_picker\_bot](https://meta.discourse.org/u/random_picker_bot)
#### Post date: [Février 15, 2024, 6:37 UTC](https://meta.discourse.org/t/improve-dice-rolling-for-discourse-narrative-bot/115177/7 "2024-02-15T06:37:46Z")

</div>

> **Random Picker**
>
> Picking from ["1-20"], picked: [5]

> **Random Picker**
>
> Picking from ["Whiskers,Mittens,Socks,Shadow,Simba,Leo,Oliver,Luna,Bella,Max"], picked: ["Shadow"]

For your adventurous roll of 1d20+5, the dice landed on a **5** , which adds up to a grand total of **10**!

And for your future feline friend, the Random Picker has decreed its name shall be **Shadow**. Sounds like a kitty destined for stealthy midnight adventures, doesn’t it? 🐱✨

---

<div class="post-metadata">

### Author: ![sam](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/sam/32/102149_2.png) [@sam](https://meta.discourse.org/u/sam)
#### Post date: [Février 15, 2024, 6:39 UTC](https://meta.discourse.org/t/improve-dice-rolling-for-discourse-narrative-bot/115177/8 "2024-02-15T06:39:26Z")

</div>

Le gros avantage ici est que vous n’avez pas besoin d’apprendre de syntaxe spéciale, GPT-4 le découvre pour vous. Cela peut rendre le lancer de dés un peu cher, mais GPT 3.5 fait également un travail raisonnable.

---

<div class="post-metadata">

### Author: ![Ed\_S](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/ed_s/32/134015_2.png) [@Ed\_S](https://meta.discourse.org/u/Ed_S)
#### Post date: [Février 15, 2024, 4:19 UTC](https://meta.discourse.org/t/improve-dice-rolling-for-discourse-narrative-bot/115177/9 "2024-02-15T16:19:47Z")

</div>

Comment pourrions-nous savoir si ce type de système fait ce que nous attendons ? Il pourrait préférer les nombres impairs, ou ne pas aimer faire des doubles, ou n’importe quoi en fait.

---

<div class="post-metadata">

### Author: ![maiki](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/maiki/32/233950_2.png) [@maiki](https://meta.discourse.org/u/maiki)
#### Post date: [Février 27, 2024, 10:47 UTC](https://meta.discourse.org/t/improve-dice-rolling-for-discourse-narrative-bot/115177/10 "2024-02-27T22:47:44Z")

</div>

> [@Ed\_S](#):
>
> Il pourrait préférer les nombres impairs, ou ne pas vouloir lancer de doubles, ou n’importe quoi d’autre.

Vous pouvez vérifier le code de randomisation sur [https://github.com/discourse/discourse-ai/blob/main/lib/ai\_bot/tools/random\_picker.rb](https://github.com/discourse/discourse-ai/blob/main/lib/ai_bot/tools/random_picker.rb). Par exemple, les lancers de dés semblent être déterminés par :

> <https://github.com/discourse/discourse-ai/blob/a1f1067f69c9e7d58bf7478225c71cc00e887f77/lib/ai_bot/tools/random_picker.rb#L58C1-L61C12>

---

<div class="post-metadata">

### Author: ![Ed\_S](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/ed_s/32/134015_2.png) [@Ed\_S](https://meta.discourse.org/u/Ed_S)
#### Post date: [Février 28, 2024, 8:47 UTC](https://meta.discourse.org/t/improve-dice-rolling-for-discourse-narrative-bot/115177/11 "2024-02-28T08:47:40Z")

</div>

> [@maiki](#):
>
> randomisation du code

Ah, merci beaucoup. J’avais naïvement supposé que le LLM faisait le travail - être intégré à du code procédural est une autre histoire et dans ce cas la bonne réponse !

---

<div class="post-metadata">

### Author: ![merefield](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/merefield/32/176214_2.png) [@merefield](https://meta.discourse.org/u/merefield)
#### Post date: [Février 28, 2024, 12:08 UTC](https://meta.discourse.org/t/improve-dice-rolling-for-discourse-narrative-bot/115177/12 "2024-02-28T12:08:51Z")

</div>

Chose similaire sur Chatbot. Si vous lui demandez de faire des maths, il appellera une fonction déterministe au lieu de laisser le hasard décider.
