treetrnk / rollem-telegram-bot

🎲 An RPG dice rolling bot for Telegram.

Home Page:https://telegram.me/rollembot

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Selective results notation is not incorporated

TomasMFranco opened this issue · comments

There is currently no way to do advantage or disadvantage automatically (AFAIK), so incorporating a notation of AdX(kY) -> keeps the top Y rolls and AdX(klY)-> keeps the bottom Y rolls or something like that would be a great addition, for simplicity using H and L rather than K and KL is also an option.

WIKI:
https://en.wikipedia.org/wiki/Dice_notation

Some games extend the standard notation to AdX(kY)+B where, in addition to the above, Y is the number of dice kept ("k") from the roll. Whether the dice omitted are the highest, lowest, or the player's choice depends on the game in question. 7th Sea and Legend of the Five Rings use only 10-sided dice, with notation of the form 8k6, meaning "Roll eight ten-sided dice, keep the highest six, and sum them." Although using a Roll and keep system, Cortex Plus games all use roll all the dice of different sizes and keep two (normally the two best) although a Plot Point may be spent to keep an additional dice, and some abilities let you keep a third automatically.

An alternative notation used by the OpenRoleplaying.org die roller allows the use of a plus or minus followed by "L" or "H" instead of the modifier B, to denote dropping or re-adding the lowest or highest roll on a single die, as in 4d6−L, which means roll 4 times a 6-sided dice and drop the lowest value,respectively.[11]

I just added this in with commit e60a497. I implemented it a little differently, opting for the L and H version, but there is no dash separating them from the dice notation since I already have the dash interpreted as a minus sign. So now, to roll with advantage, you would roll /r 2d20H and disadvantage would be /r 2d20L.

I realize this doesn't cover all of the games you mentioned, but I am doing this in my free time and I believe this change will be beneficial for the greatest number of users. Plus, you can do all of the things you mentioned manually since all of the rolls are listed in the output. I may choose to change how this works or improve the "keep" system in the future, but this is what I have for now. Anyone else is welcome to contribute as well. Hope that helps!

Hi, I recently joined gitHub while I found yout bot looking for Savage Words rolls,
and I find the L and H options very interesting, but cannot use it with simultaneously different type of dice rolls;
I mean, a typical SW roll is: d8! (Trait dice; it could be d4, d6, d8, 10 or d12) and d6! (Savage dice) -both can explode- but keep only higher.
is there a way I haven't see to roll different dice with H option, or isnt supported yet?
thank you for your time,

commented

I believe Savage World rolls with different dice are not implemented. I think the simplest syntax would be d8!+d6!-L -> I can look into implementing it