• 欢迎来到小可 · Wiki,人人可编辑的,多平台聊天机器人“小可”的官方文档资源。
  • 小可很可爱,请给我们打钱
  • 原 MkDocs 已迁入本站。若发现 404 属正常现象,请点击左上角搜索您想要的模块。

dice/骰子表达式:修订间差异

来自小可 · Wiki,人人可编辑的,QQ机器人“小可”的官方文档资源
 
(未显示同一用户的16个中间版本)
第1行: 第1行:
 骰子表达式是可以用于表示掷骰子类型、数量等的[[Help:数学 表达式|数学表达式]] ,可与常用骰系的骰子机器人兼容。
 骰子表达式是可以用于表示掷骰子类型、数量等的 特殊 表达式,可与常用骰系的骰子机器人兼容。


 骰子表达式对字母大小不敏感,且结果为整数,浮点数结果将自动转为整数。
 骰子表达式对字母大小 不敏感,且结果为整数,浮点数结果将自动转为整数。


==标准骰==
==标准骰==
===基础===
 最基础的标准骰格式为 <code>xDy</code>,即投掷 <code>x</code> 个 <code>y</code> 面骰子,再计算它们的点数总和。
 最基础的标准骰格式为 <code>xDy</code>,即投掷 <code>x</code> 个 <code>y</code> 面骰子,再计算它们的点数总和。


第15行: 第16行:
}}
}}


==百分骰==
===百分骰===
 百分骰 <code>D100</code> 作为常用表达式,有一个专门别名 <code>D%</code>。
 百分骰 <code>D100</code> 作为常用表达式,有一个专门别名 <code>D%</code>。
{{Mbox
{{Mbox
第24行: 第25行:
}}
}}


== 奖惩骰与惩罚 骰==
===优劣势 ===
 优劣势骰格式为 <code>(B|P)x</code>,即投掷 一个百分 骰后 ,额外投掷 <code>x</code> 个 <code>D10</code>,选择最 /大 的骰子点数 作为百分骰 点数 的十位部分
 优劣势骰格式为 <code>xDy(K|Q)z</code>,即投掷骰 选取 <code>z</code> 个 最大/小的骰子点数 后,计算它们的 点数 总和


 其中 P 为取大 ,B 为取小。<code>x</code> 是可选值,缺省则默认为 1。
 其中 K 为取大 ,Q 为取小。<code>z</code> 是可选值 ,且不能大于 <code>x</code> ,缺省则默认为 1。
{{Mbox
{{Mbox
|text=
|text=
 骰子表达式示例:
 骰子表达式示例:
* 投掷 1  次奖励骰 :<code>(D100=72, B=4)=42</code>
* 投掷 3 个 6 面骰,选 个最大的 :<code>3D6K=[6*, 4, 2]=6</code>
* 投掷 3  次奖励 骰:<code>(D100=96, B3=[4, 6, 3])=36</code>
* 投掷 3  个 6 面 ,选 1 个最小的 :<code>3D6Q=[6, 4, 2*]=2</code>
* 投掷 1 次惩罚 骰:<code>(D100=42, P=7)=72</code>
* 投掷 4 个 6 ,选 2 个最大的 :<code>4D6K2=[4*, 1, 3*, 2]=[4+3]=7</code>
* 投掷 3 次惩罚 骰:<code>(D100=36, P3=[4, 6, 9])=96</code>
* 投掷 4 个 6 ,选 2 个最小的 :<code>4D6Q2=[4, 1*, 3, 2*]=[1+2]=3</code>
|type=eg
|type=eg
}}
}}


== 优劣势 骰==
== 奖励骰与惩罚 骰==
  优劣势 骰格式为 <code>xDy(K|Q)z</code>,即投掷骰 选取 <code>z</code> 个最大/小 的骰子点数 后,计算它们的 点数 总和
  奖励骰与惩罚 骰格式为 <code>(B|P)x</code>,即投掷 一个百分 骰后 ,额外投掷 <code>x</code> 个 <code>D10</code>,选择 小/ 大的骰子点数 作为百分骰 点数 的十位部分


 其中 K 为取大 ,Q 为取小。<code>z</code> 是可选值 ,且不能大于 <code>x</code> ,缺省则默认为 1。
 其中 P 为取大 ,B 为取小。<code>x</code> 是可选值,缺省则默认为 1。
{{Mbox
{{Mbox
|text=
|text=
 骰子表达式示例:
 骰子表达式示例:
* 投掷 3 6 面 ,选 1 个最大的 :<code>3D6K=[''6'', 4, 2]=6</code>
* 投掷 1 奖励 骰:<code>B=(D100=72, B=4)=42</code>
* 投掷 3 个 6 面 ,选 1 个最小的 :<code>3D6Q=[6, 4, ''2'']=2</code>
* 投掷 3 个 奖励 骰:<code>B3=(D100=96, B3=[4, 6, 3])=36</code>
* 投掷 4 6 面 ,选 2 个最大的 :<code>4D6K2=[''4'', 1, ''3'', 2]=[4+3]=7</code>
* 投掷 1 惩罚 骰:<code>P=(D100=42, P=7)=72</code>
* 投掷 4 6 面 ,选 2 个最小的 :<code>4D6Q2=[4, ''1'', 3, ''2'']=[1+2]=3</code>
* 投掷 3 惩罚 骰:<code>P3=(D100=36, P3=[4, 6, 9])=96</code>
|type=eg
|type=eg
}}
}}
第58行: 第59行:


 其中 <code>x</code> 是可选值,缺省则默认为 4。
 其中 <code>x</code> 是可选值,缺省则默认为 4。
{{Mbox
{{Mbox
|text=
|text=
第64行: 第64行:
* 投掷 4 个 FATE 骰子:<code>F=[+, -, 0, +]=1</code>
* 投掷 4 个 FATE 骰子:<code>F=[+, -, 0, +]=1</code>
* 投掷 6 个 FATE 骰子:<code>6F=[+, 0, -, +, 0, +]=2</code>
* 投掷 6 个 FATE 骰子:<code>6F=[+, 0, -, +, 0, +]=2</code>
|type=eg
}}
==无限骰点==
无限骰点是一种多轮的骰点规则,格式为<code>xAv[Kz][Qw][My]</code>,即投掷 <code>x</code> 个 <code>y</code> 面骰子,计算点数不低于 <code>v</code> 的骰子个数,以此为新的骰子个数进行下一轮投掷,直到骰子个数为 0,然后求出所有累计结果中点数不低于 <code>z</code>(若有)以及不高于 <code>w</code>(若有)的骰子个数,即为最终结果。
其中 <code>z</code>、<code>w</code>、<code>y</code> 是可选值,<code>y</code> 缺省则默认为 10,<code>w</code> 缺省则默认为 8。如果 <code>v</code> 为 0,则代表不进行加骰。
{{Mbox
|text=
骰子表达式示例:
* 投掷 4 个 9 面骰,加骰线为 6,选择不低于 8 以及不高于 4 的值:<br><code>4A6K8Q4M9=[{<9*>, <7>, 5, <9*>}, {3*, <9*>, 3*}, {<7>}, {3*}]=6</code>
|type=eg
}}
==双重十字骰点==
双重十字骰点是一种多轮的骰点规则,格式为<code>xCv[My]</code>,即投掷 <code>x</code> 个 <code>y</code> 面骰子,计算点数不低于 <code>v</code> 的骰子个数,以此为新的骰子个数进行下一轮投掷,直到骰子个数为 0。
其中 <code>y</code> 是可选值,缺省则默认为 10。
最终结果计算为:(投掷回合 - 1) * <code>y</code> + 最后回合最大点数
{{Mbox
|text=
骰子表达式示例:
* 投掷 4 个 10 面骰,加骰线为 6:<code>4C6=[{4, <9>, 2, 1}, {<8>}, {<8>}, {<9>}, {4}]=44</code>
* 投掷 4 个 7 面骰,加骰线为 3:<code>4C3M7=[{<5>, <4>, <7>, <3>}, {1, 2, <4>, 2}, {2}]=16</code>
|type=eg
|type=eg
}}
}}
第69行: 第94行:
==其他==
==其他==
===骰子运算===
===骰子运算===
 骰子表达式支持数学运算,包括但不限于加减乘除(<code>+-*/</code>)、乘方(<code>**</code>)与括号等
 骰子表达式支持数学运算,包括但不限于加减乘除(<code>+-*/</code>)、乘方(<code>**</code>)与括号等, 也支持一部分[[Help:数学表达式|数学函数]]
 
骰子项与括号之间 以及括号与括号之间会自动添加乘号


骰子项与括号之间会自动添加乘号。
{{Mbox
{{Mbox
|text=
|text=

2024年3月28日 (四) 17:14的最新版本

骰子表达式是可以用于表示掷骰子类型、数量等的特殊表达式,可与常用骰系的骰子机器人兼容。

骰子表达式对字母大小写不敏感,且结果为整数,浮点数结果将自动转为整数。

标准骰

基础

最基础的标准骰格式为 xDy,即投掷 xy 面骰子,再计算它们的点数总和。

其中 x 是可选值,缺省则默认为 1。

例子
骰子表达式示例:
  • 投掷 1 个 6 面骰子:D6=4
  • 投掷 2 个 8 面骰子:2D8=[3+4]=7

百分骰

百分骰 D100 作为常用表达式,有一个专门别名 D%

例子
骰子表达式示例:
  • 投掷 1 个百分骰:D%=42

优劣势骰

优劣势骰格式为 xDy(K|Q)z,即投掷骰子后选取 z 个最大/小的骰子点数后,计算它们的点数总和。

其中 K 为取大,Q 为取小。z 是可选值,且不能大于 x,缺省则默认为 1。

例子
骰子表达式示例:
  • 投掷 3 个 6 面骰,选 1 个最大的:3D6K=[6*, 4, 2]=6
  • 投掷 3 个 6 面骰,选 1 个最小的:3D6Q=[6, 4, 2*]=2
  • 投掷 4 个 6 面骰,选 2 个最大的:4D6K2=[4*, 1, 3*, 2]=[4+3]=7
  • 投掷 4 个 6 面骰,选 2 个最小的:4D6Q2=[4, 1*, 3, 2*]=[1+2]=3

奖励骰与惩罚骰

奖励骰与惩罚骰格式为 (B|P)x,即投掷一个百分骰后,额外投掷 xD10,选择最小/大的骰子点数作为百分骰点数的十位部分。

其中 P 为取大,B 为取小。x 是可选值,缺省则默认为 1。

例子
骰子表达式示例:
  • 投掷 1 个奖励骰:B=(D100=72, B=4)=42
  • 投掷 3 个奖励骰:B3=(D100=96, B3=[4, 6, 3])=36
  • 投掷 1 个惩罚骰:P=(D100=42, P=7)=72
  • 投掷 3 个惩罚骰:P3=(D100=36, P3=[4, 6, 9])=96

FATE 骰

FATE 骰(或 Fudge 骰)是一种特殊的 6 面骰子,六个面分别为 -、-、0、0、+、+,分别代表 -1、0、1。

FATE 骰格式为 xFxDF,即投掷 x 个 FATE 骰子,再计算它们的点数总和。

其中 x 是可选值,缺省则默认为 4。

例子
骰子表达式示例:
  • 投掷 4 个 FATE 骰子:F=[+, -, 0, +]=1
  • 投掷 6 个 FATE 骰子:6F=[+, 0, -, +, 0, +]=2

无限骰点

无限骰点是一种多轮的骰点规则,格式为xAv[Kz][Qw][My],即投掷 xy 面骰子,计算点数不低于 v 的骰子个数,以此为新的骰子个数进行下一轮投掷,直到骰子个数为 0,然后求出所有累计结果中点数不低于 z(若有)以及不高于 w(若有)的骰子个数,即为最终结果。

其中 zwy 是可选值,y 缺省则默认为 10,w 缺省则默认为 8。如果 v 为 0,则代表不进行加骰。

例子
骰子表达式示例:
  • 投掷 4 个 9 面骰,加骰线为 6,选择不低于 8 以及不高于 4 的值:
    4A6K8Q4M9=[{<9*>, <7>, 5, <9*>}, {3*, <9*>, 3*}, {<7>}, {3*}]=6

双重十字骰点

双重十字骰点是一种多轮的骰点规则,格式为xCv[My],即投掷 xy 面骰子,计算点数不低于 v 的骰子个数,以此为新的骰子个数进行下一轮投掷,直到骰子个数为 0。

其中 y 是可选值,缺省则默认为 10。

最终结果计算为:(投掷回合 - 1) * y + 最后回合最大点数

例子
骰子表达式示例:
  • 投掷 4 个 10 面骰,加骰线为 6:4C6=[{4, <9>, 2, 1}, {<8>}, {<8>}, {<9>}, {4}]=44
  • 投掷 4 个 7 面骰,加骰线为 3:4C3M7=[{<5>, <4>, <7>, <3>}, {1, 2, <4>, 2}, {2}]=16

其他

骰子运算

骰子表达式支持数学运算,包括但不限于加减乘除(+-*/)、乘方(**)与括号等,也支持一部分数学函数

骰子项与括号之间会自动添加乘号。

例子
骰子表达式示例:
  • 2*2D6**(2+1)=2*(2D6=[5+3]=8)**(2+1)=1024
  • 3*5F=3*(5F=[0, 0, 0, -, -]=-2)=-6
  • D6D6D6=(D6=6)*(D6=6)*(D6=1)=36
  • (2+5)D6=(2+5)*(D6=4)=28
  • 10/D6=10/(D6=3)=3

多轮骰点

多轮骰点的格式为 N#<表达式>,用于更方便的重复投掷骰子。

N 必须放在表达式最前面,缺省则默认为 1。

Cookie帮助我们提供我们的服务。通过使用我们的服务,您同意我们使用cookie。