Skip to content

Conversation

@Faceless192x
Copy link
Contributor

Kutulu リバイズド ( https://www.dlsite.com/home/work/=/product_id/RJ01426410.html )用のダイスを作成しました。
基本的にはKutuluと同様で「ギリギリの成功」の処理だけ異なります。

お手すきの際にご確認くださいませ。

Copy link
Member

@ysakasin ysakasin left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

以下2点の修正をお願いします。

クラス名およびファイル名

KutuluReviced に変更してください。Rubyのお作法ではクラス名はCamelCaseにすることになっています。BCDiceではアンダーバーを含むクラス名もありますが、多言語化などの例外のみ許可しています。

ダイス数

ダイス数の指定が二桁以上の場合も許容するようにしてください。ゲームルール上、そのようなケースが発生するのかはわかりませんが、コマンドとしては10以上が指定されても動作するべきです。

@Faceless192x
Copy link
Contributor Author

ご指摘ありがとうございます。
クラス名およびファイル名は変更しましたが、ダイス数に関しては問題があります。

ダイス数の指定が二桁以上の場合も許容するようにしてください。
ゲームルール上、そのようなケースが発生するのかはわかりませんが、コマンドとしては10以上が指定されても動作するべきです。

ゲームルール上発生する可能性がない上に、対抗判定のロジックが壊れる(現状のコマンドでは、成功度が2桁以上の場合、処理できない)のでコマンドの設計しなおしになりますが強行した方が良いですか?

@ysakasin
Copy link
Member

「ゲームルール上発生する可能性がない」というのはどの程度でしょうか? 禁止されているのか、裁定上起きえないのか、シナリオによってはその状況が発生することもあるのか、どの程度なのか気になります。

プログラム上の計算ロジックだけをみた範囲では10以上の実行があってもおかしくない動作をしているので、禁止されていない限りは許容した方が良いと思います。仰っている「2桁以上だと処理できない」は成功数の表示フォーマットの都合上の話だと思いますが、これがルール上規定された表記でない限りは2桁以上でも表示できるようにするべきです。

@Faceless192x
Copy link
Contributor Author

  1. Kutuluでは、能力値or技能値の数だけダイスを振りますが、最大値は能力値が4であり、技能値は3である。
  2. リヴァイスド版ルールブックには判定時にダイスの数を増減するルールがあるが「一般的に-2~+2の範囲を超えることはあまりない」という記述がある。(逆に言えば、+256も「禁止されてはいない」ことにもなります)
  3. ロジックが破壊されるのは、対抗判定の「対抗判定用の3桁の数字(マジックナンバー)」である。確かにこれはルールブックで規定された表現ではないが、ルールブックで表現された対抗判定の勝者決定を簡便化する方策である。(対抗判定には、最大で3つの数値の比較が必要になるので、優先度順にマジックナンバーの各桁に割り振って3桁の数字同士の比較で簡単に判別がつくように工夫しています)成功度の桁数が処理前に不定である場合には、このロジックは使用できないため、代替えのロジックを新規に開発するか、対抗判定のコマンド自体を削除する必要がある。

という訳で、2桁以上を許容するように変更を加えるなら、現状、対抗判定のコマンドを削除するしかないと思います。

@ysakasin
Copy link
Member

詳細な説明ありがとうございます。事情を把握できました。その内容であれば、ダイス数を1桁のみ受け付ける現状の動作が妥当だと思います。

念の為にヘルプメッセージの n: ダイス数 に補足をいれて欲しいです。現状のヘルプメッセージだとダイス数指定の制限が読み取れないので、意図した挙動であることを明記したいです。

@Faceless192x
Copy link
Contributor Author

修正いたしました。
確かにヘルプに明記するべきでしたね。

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants