BCDice
BCDice copied to clipboard
The most popular TRPG dice command engine in Japan
### 概要 ヴィジョンコネクト( https://www.fear.co.jp/visionconnect/index.htm )のダイスボットの追加。 ### 機能 #### 判定 「VC+x@c#f>=y」の形式とした。 xは修正値、yは目標値、cはクリティカル値、fはファンブル値である。 このシステムにおいては判定ダイスは常に2D6であるため、ダイス数と面数は省略した。 また、コマンドの最初に「!」をつけると致命的失敗がすべてアクシデントとなるようにした(通常時は2がアクシデント、それ以外はトラブルである)。 #### 表 アクシデント表とトラブル表を作成した。
### バグ修正 「xAB±y>=z」において、z以上のときに成功であるべきところをzより大きいときに成功と表示していたバグを修正 ### サプリメント対応 - 「xAB±y@c$d>=z」のd部分に数値を入力することで、出目を2として数える数の最小値を指定できるように変更 - 追加された表「帝都東京エリア選択」「浅草シーン表」「上野シーン表」「日本橋シーン表」「銀座シーン表」「霞ヶ関シーン表」「新宿シーン表」を追加
Command::Parserについて3つ提案です。影響が大きいので、今後の拡張性含め慎重に議論したいです。 ## 1. prefix_numberを演算可能にする prefix_numberで計算を受け付けることで、余分なカッコを減らすことができる。 アサルトエンジン 現状では `(1+2+3*3)AE45`としなければならないが、`1+2+3*3AE45`が`12AE45`と解釈されるようになる。 ```diff - notation: term NOTATION term + notation: add NOTATION term { raise ParseError unless @prefix_number && @suffix_number result = { command:...
https://wikiwiki.jp/sengensyou/ ダイスコマンドとしてクリティカル・ファンブルのある3D6の命中・回避判定のみ実装しました https://discord.com/channels/597133335243784192/597133335243784194/978981650362937365
# ゲームについて * 表題:『オバケ空間探索配信RPG「実況ゴーストライヴ」』 * 提供場所:[BOOTH](https://booth.pm/ja/items/3810620) * 「ゲームマーケット2022春」(2022/04/24)にて紙版も頒布されているとのことです。(わたしは入手していませんが) * 著者:首塚首子 * 発行サークル:テトラドサルーン 当 pull request の内容は、いずれも上記BOOTHにて提供されている「DL版」にもとづきます。 # 機能 ## 追加目標表 『実況ゴーストライヴ』p11に掲載されている表です。 挙動としては、ごく一般的な、 1D6 ロールの出目に対応する結果を得るものです。 ## 霊障リスト,霊障効果リスト(2022/05/16追加) 『実況ゴーストライヴ』p26, 27, 28に掲載されている表です。 これも、一般的な、...
# ゲームについて 『キズナバレット1 猟犬たちのネガイ』(2021/12/28,著:からすば晴,刊:新紀元社) * [公式ウェブサイト](https://www.kizunabullet.newgame-plus.jp/) * [Amazon](https://www.amazon.co.jp/%E3%82%AD%E3%82%BA%E3%83%8A%E3%83%90%E3%83%AC%E3%83%83%E3%83%88-1-%E7%8C%9F%E7%8A%AC%E3%81%9F%E3%81%A1%E3%81%AE%E3%83%8D%E3%82%AC%E3%82%A4-Role-Roll-Books-%E3%81%8B%E3%82%89%E3%81%99%E3%81%B0%E6%99%B4-ebook/dp/B09NQ3H2QZ/) ## 参照先 ダイスボットの開発にあたっては、 Kindle 版にもとづいています。 ## ゲーム名のアルファベット表記 表紙にある「 KIZUNA BULLET 」という表記にもとづいています。 # コマンドの補足 ## 最大値をもとめるダイスロール ルールブックでの表記は「最大値:nD」です。これに合わせて、 `max:nD` という書式にしました。 ただし、数学や表計算ソフトやプログラミング言語などから、関数の適用を括弧 `()` で表現する習慣がそれなりに一般的であることを考慮し、 `max(nD)`...
# ゲームについて * 書名:『魔女×見習いRPG フレッジウィッチ』 * 著:はいふん / 発行: Symbol-House * 初版発行日: 2021/11/21 (「ゲームマーケット2021秋」の2日目) * 電子版: [BOOTH](https://booth.pm/ja/items/3410692) なお、本件の実装にあたって参照した文献、ならびに参照ページとして記載しているページ番号は、すべて上記の電子書籍版にもとづきます。 # 実装したコマンド * 判定ルール(ルールブック p28~30 ほか) * プレイ中に利用する表類 * 日常表(ルールブック p24 )...
ソード・ワールド2.0、2.5のレーティング表部分の解析結果(rating_parsed.rb)の冗長な部分を簡潔にする。 ### 現状 rating_parsed.rbでは、各インスタンス変数を `nil` で初期化しており、またそれらを正規化するメソッド(`nil` ならば `0` 等の既定値に変換したり、範囲内に収めたりするメソッド)を用意している。 https://github.com/bcdice/BCDice/blob/c833464bf4e9db8d35b4adc170a9f662a762842b/lib/bcdice/game_system/sword_world/rating_parsed.rb#L34-L41 正規化メソッドの例: https://github.com/bcdice/BCDice/blob/c833464bf4e9db8d35b4adc170a9f662a762842b/lib/bcdice/game_system/sword_world/rating_parsed.rb#L55-L58 以下に示すように、これらはうまく使われていない。 rating_parsed.rbの `#to_s` には、必要なパーツを文字列に追加する処理が書かれているが、必要性の判断は `nil` との比較ではなく、`0` 等の既定値との比較で行われている。また、条件判定と式展開で正規化メソッドが2回呼び出されているため、インスタンス変数と既定値の比較が最大で3回行われている。 https://github.com/bcdice/BCDice/blob/c833464bf4e9db8d35b4adc170a9f662a762842b/lib/bcdice/game_system/sword_world/rating_parsed.rb#L81-L95 レーティング表の処理はSwordWorld.rbに書かれているが、ここでも必要性の判断は `nil` との比較ではなく、`0` 等の既定値との比較で行われている。 例1: https://github.com/bcdice/BCDice/blob/c833464bf4e9db8d35b4adc170a9f662a762842b/lib/bcdice/game_system/SwordWorld.rb#L82-L95 例2: https://github.com/bcdice/BCDice/blob/c833464bf4e9db8d35b4adc170a9f662a762842b/lib/bcdice/game_system/SwordWorld.rb#L325-L341 以上の例のように、各インスタンス変数の `nil`...