Dicenomiconでダブルクロスの判定ロール(クリティカルあり)を行うマクロ及び定型(修正版)

http://www.gandreas.com/iphone/dicenomicon/


ファンブル判定等を追加た完全版を公開しました。詳しくは「Dicenomiconでダブルクロスの判定ロール(クリティカルあり)を行うマクロ及び定型(完全版) - こげこげ堂はてな支舗」にて。


先日のに根本的なミスがあったので作り直しました。
今回はマクロではなく定型が主となっているので、Sharing内にあるWeb-based Editorを利用するのが便利だと思います。

マクロ

Settings > Customize > Roll Macros
Edit
Add Roll Macros...

項目 内容 説明
Name DX 数式で利用する名前
Desc DX Critical 説明なので適当で良い
Default Dice Sides 10 10面ダイスを利用
Color Black ダイスの色。上書きできるので適当で良い
Has Target Number ON クリティカル値をマクロ引数で取得
Default Target 10 デフォルトのクリティカル値。上書きできるので適当で良い
Action Based Opens OFF 振り直しを行わないのでOFF

Actions

項目 内容 説明
if face >= tn: 出目がtn(マクロ引数。クリティカル値)より高い場合
Re-Roll N/A 振り直しは行わない
Badge Plus ダイスにプラスマークを追加
Value face 出目が結果

Actions

項目 内容 説明
if true: 上記以外の時。つまりクリティカル以外の場合
Re-Roll N/A 振り直しは行わない
Badge (None) マークを追加しない
Value face 出目が結果

グローバル変数

Globals > Global Variables

CRITICAL 10 クリティカル値を一時的に保持

グローバル関数

Globals > Global Functions

TIMES if #1 = 1 then #1 else 1 ... #1 end ループ用

定型

Settings > Favorite Rolls
Edit
Add Roll

DX Skill
項目 内容 説明
タイトル DX Skill 名前
本文 下記 【引数1】個のダイスを、クリティカル値【引数2】で振る。クリティカルしたら"DX Skill CR"をロールする
#3 <- 0.
@CRITICAL <- #2.
.
@MAX <- 0.
@CRITICALCOUNT <- 0.
.
for @I in @TIMES(#1) do
@ROLL <- d DX#2.
@MAX <- @MAX \/ @ROLL.
@CRITICALCOUNT <- @CRITICALCOUNT + (@ROLL >= @CRITICAL)
end.
.
@TOTAL <- #3 + @MAX.
if @CRITICALCOUNT = 0 then @TOTAL else :next:("Critical", "DX Skill CR", @CRITICALCOUNT, @TOTAL) end

Parameter #1

項目 内容 説明
Prompt: COUNT 入力時の説明。個数。適当で良い
Default: 1 デフォルト個数
Style: >=0 0以上の整数
Choices: リストでないので空

Parameter #2

項目 内容 説明
Prompt: CRITICAL 入力時の説明。クリティカル値。適当で良い
Default: 10 デフォルトクリティカル値
Style: リスト 一番右
Choices: 10,9,8,7,6,5,4,3,2,1 10〜1のクリティカル値
DX Skill CR
項目 内容 説明
タイトル DX Skill CR 名前。名前は固定。振り直し用なので手動では使用しない
本文 下記 DX Skillの先頭を変更したもの
#3 <- #2.
#2 <- @CRITICAL.
.
@MAX <- 0.
@CRITICALCOUNT <- 0.
.
for @I in @TIMES(#1) do
@ROLL <- d DX#2.
@MAX <- @MAX \/ @ROLL.
@CRITICALCOUNT <- @CRITICALCOUNT + (@ROLL >= @CRITICAL)
end.
.
@TOTAL <- #3 + @MAX.
if @CRITICALCOUNT = 0 then @TOTAL else :next:("Critical", "DX Skill CR", @CRITICALCOUNT, @TOTAL) end