骰子记数滚轮
真正的桌面骰子符号解析器:输入 3d6+2、4d6kh3 或 adv 并获取每个单独的骰子掷骰、保留/掉落的骰子以及总数。
处理中...
0%
结果
骰子符号滚轮读取和滚动的速记与桌面 RPG 桌子和规则手册中使用的速记相同:“NdS”表示滚动 N 个具有 S 面的骰子,因此“3d6”滚动三个六面骰子。添加带有 +N 或 -N 的平面修饰符(“3d6+2”),将多个骰子组组合在一个表达式中(“2d8+1d6-1”),或使用 D&D 5e 优势/劣势简写(“adv”掷出两个 20 面骰子并保留较高的骰子,“dis”保留较低的骰子)。保持最高和保持最低符号(“4d6kh3”掷出四个六面骰子并保留最高的三个 - 掷出 D&D 能力分数的标准方式)也完全支持。
在底层,这是一个真正的分词器和解析器,而不是可识别表达式的列表:符号被逐个字符扫描为标记(骰子组、adv/dis 关键字、普通数字和 +/- 运算符),组装成一个小的表达式树,然后才进行评估。任何语法上有效的组合都可以,包括没有人为其编写示例的符号。每个骰子都使用拒绝采样的浏览器加密随机数生成器(crypto.getRandomValues,而不是 Math.random)进行滚动,因此每个面都有完全相同的机会,结果显示每个骰子、在 kh/kl 掷骰中保留或丢弃的骰子、应用的修改器以及最终总数。
为了保持该工具的可预测性和快速性,骰子组的上限为每组 100 个骰子和 1000 个面,并且保持最高/最低计数永远不能超过掷骰子的数量。格式错误的符号(未知字符、连续两个运算符、末尾有一个悬空的 +)会产生特定的、可读的错误消息,而不是无提示的故障或崩溃。一切都在浏览器本地运行:任何符号、滚动或结果都不会发送到任何地方。