Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

「ダンジョンズ&ドラゴンズ第5版」のダイスボット追加 #594

Merged
merged 11 commits into from
Feb 18, 2023

Conversation

Faceless192x
Copy link
Contributor

「ダンジョンズ&ドラゴンス第5版」をプレイしたところ、クリティカル・ファンブル・成功・失敗の表示が無く、BCdiceを使っているにしては「寂しい感じ」がしたので戦闘用ダイスコマンドを書いてみました。

実装コマンドは「AC」コマンドのみで、攻撃対象になった相手のACをnとして
ACnで実行します。
また、先頭に「+(有利)または-(不利)」を指定することで、有利不利のダイスを自動ロールします。
ex. +AC14 -AC18
とりあえずこれだけですが、戦闘が楽しくなれば幸いです。

@codecov
Copy link

codecov bot commented Jan 19, 2023

Codecov Report

Base: 95.44% // Head: 95.45% // Increases project coverage by +0.01% 🎉

Coverage data is based on head (bd133de) compared to base (60130e8).
Patch coverage: 97.29% of modified lines in pull request are covered.

Additional details and impacted files
@@            Coverage Diff             @@
##           master     #594      +/-   ##
==========================================
+ Coverage   95.44%   95.45%   +0.01%     
==========================================
  Files         330      331       +1     
  Lines       18471    18582     +111     
  Branches     4773     4820      +47     
==========================================
+ Hits        17629    17737     +108     
- Misses        842      845       +3     
Impacted Files Coverage Δ
lib/bcdice/game_system/DungeonsAndDragons5.rb 97.27% <97.27%> (ø)
lib/bcdice/game_system.rb 100.00% <100.00%> (ø)

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.

☔ View full report at Codecov.
📢 Do you have feedback about the report comment? Let us know in this issue.

@Faceless192x Faceless192x changed the title Feature/dnd5e 「ダンジョンズ&ドラゴンズ第5版」のダイスボット追加 Jan 19, 2023
@Faceless192x
Copy link
Contributor Author

うっかりダイスの修正値を指定する必要があるのを忘れていました。
また、チャットパレットに登録して使うことを考えると、コマンドのうち、訂正・入力の必要がある部分は固まっている方が良いのでACコマンドの書式を見直して変更しました。

・[x]AC[y]n
x:修正値
y:有利(P)、不利(N)
n:目標のアーマークラス

ex. AC15 ACP18 ACN14 +5AC16 -3ACP16

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.

ありがとうございます。いくつかフィードバックです。

式のフォーマット

加算ダイスに形式を寄せて、 XXX+n>=tの形式が良いと思います。

有利不利

英語では Advantage / Disadvantage なので、P / NでなくA / D が良いと思います。

コマンド名

アーマークラスを指定するコマンドなのでなく、攻撃ロールであるとわかるようにAttack Rollsを省略してAR Attack AT などにした方が良いと思います。

ヘルプ

「命中判定」ではなく、日本語のルールブックに合わせて「攻撃ロール」と表記してください。

能力値判定について

攻撃ロールと違ってクリティカル/ファンブルがありませんが、有利不利を扱いやすくするために攻撃ロールと似たフォーマットでコマンドを用意してもいいかもしれません。こうしておくと、ヘルプにも書かれるので、能力値判定で攻撃ロールコマンドを使ってしまうような問題が緩和されると思います。

@Faceless192x
Copy link
Contributor Author

早速のフィードバックありがとうございます。

式のフォーマット

加算ダイスに形式を寄せて、 XXX+n>=tの形式が良いと思います。

 ここが悩ましいところですね。

・加算ダイスに形式を合わせた方がコマンドとして覚えがよく、混乱しにくい

のと

・加算ダイスでは必要であったが、専用ダイスコマンドでは自明な指定はできるだけ排除したい
・デファクトスタンダードであるキャラクターシートが、判定用コマンドを自動出力する都合上、書き換えの手間をなるべく省きたい
・セパレータとしてみたときに「>=」と二文字になるのは不格好である

 の両方を満たせるコマンドが理想なのですが、なかなかそうもいかず。

 コマンドの読み替えは前例がありますので、複数フォーマットから同一機能を使えるようにしてはどうかと思うのですが、どうでしょう?

 これ以外は、まったくもっておっしゃる通りですね。(^^;

@ysakasin
Copy link
Member

専用ダイスコマンドでは自明な指定はできるだけ排除したい

これについては読みと書きのトレードオフだと考えています。前提知識が自明な指定がある方が読み優先となり、コマンドの意味が理解しやすいので、私は自明な指定を推奨しています。

書き換えの手間をなるべく省きたい

XXXA+x>=tは、有利不利の位置とACの位置が離れているという点が問題かと思います。XXX+x>=tAのように末尾に指定する方式を採用してもいいと思います。例えば Cthulhu7th で技能判定の難易度ハードは CC<=75h の形式です。こうするとチャットパレットは XXX+x>= としておくことができます。

セパレータとしてみたときに「>=」と二文字になるのは不格好である

>= の代わりに AC にして、AR+xACt などするのも一興かもしれません。こうすればACとしてt指定しているのは自明ですし、不格好さは緩和されるかと思います。ただ、私としては >= を推奨したいです。

コマンドの読み替えは前例がありますので、複数フォーマットから同一機能を使えるようにしてはどうかと思うのですが、どうでしょう?

方向性が読み解けなかったので、具体例を交えて提案いただけると助かります。

@Faceless192x
Copy link
Contributor Author

書き換えの手間をなるべく省きたい

XXXA+x>=tは、有利不利の位置とACの位置が離れているという点が問題かと思います。XXX+x>=tAのように末尾に指定する方式を採用してもいいと思います。例えば Cthulhu7th で技能判定の難易度ハードは CC<=75h の形式です。こうするとチャットパレットは XXX+x>= としておくことができます。

 ああ!これは良いですね!
 この方向で修正します。

Faceless192x and others added 5 commits January 26, 2023 11:02
・ACコマンドの書式を「AC+x>=ty」式に変更した。
・ACコマンドをATコマンドに変更した。
・ATコマンドを元に「能力値判定」のコマンド「AR」を追加した。
・ヘルプを仕様変更に合わせて変更した。
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.

能力値判定のテストケースがないようなので、追加をお願いします。

@Faceless192x
Copy link
Contributor Author

失礼しました。うっかり放置状態になっておりました。
能力値判定のテストケースを追加しましたので、お手隙の時にご確認お願いします。

@ysakasin ysakasin added the new dicebot 新システムの対応 label Feb 18, 2023
@ysakasin ysakasin merged commit 69611e2 into bcdice:master Feb 18, 2023
@ysakasin
Copy link
Member

ありがとうございます! マージしました。

@Faceless192x Faceless192x deleted the feature/dnd5e branch February 18, 2023 08:56
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
new dicebot 新システムの対応
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants