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

[サンサーラ・バラッド] Result対応 #428

Merged
merged 6 commits into from
Apr 28, 2021

Conversation

h-mikisato
Copy link
Contributor

#423 の サンサーラ・バラッド 対応です。

@codecov
Copy link

codecov bot commented Apr 21, 2021

Codecov Report

Merging #428 (c8d4c1e) into master (5c5f3ed) will increase coverage by 0.00%.
The diff coverage is 100.00%.

❗ Current head c8d4c1e differs from pull request most recent head 102a3aa. Consider uploading reports for the commit 102a3aa to get more accurate results
Impacted file tree graph

@@           Coverage Diff           @@
##           master     #428   +/-   ##
=======================================
  Coverage   95.18%   95.18%           
=======================================
  Files         287      287           
  Lines       18588    18603   +15     
=======================================
+ Hits        17693    17708   +15     
  Misses        895      895           
Impacted Files Coverage Δ
lib/bcdice/game_system/SamsaraBallad.rb 98.30% <100.00%> (+0.57%) ⬆️

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 5c5f3ed...102a3aa. Read the comment docs.

@h-mikisato h-mikisato changed the title サンサーラ・バラッドのResult対応 [サンサーラ・バラッド] Result対応 Apr 21, 2021
@ysakasin
Copy link
Member

ありがとうございます。
クリティカル/ファンブルが自動成功/自動失敗としての意味合いがあるなら、目標値が設定されていなくても success を立てた方がいいと思いますが、ルール上はどのような判定なのでしょうか?

@h-mikisato
Copy link
Contributor Author

h-mikisato commented Apr 21, 2021

ルールブックで確認してきました。

クリティカル・ファンブルが発生し得るのは攻撃時の能動判定です。
攻撃周りの判定の進み方を厳密に書き下すと

  1. 攻撃側の能動判定
  2. ダメージ算出
  3. 防御側の防御の宣言の有無を確認
  4. 防御を宣言した場合は、防御側の受動判定
  5. 3で防御側が防御を宣言しないか、4で防御側が判定に失敗した場合、ダメージ適用

と進むのですが、1→2の遷移において

  • 判定が失敗(目標値以上の出目)だった場合は失敗、この時クリティカルもファンブルも確認しない
  • 判定が成功だった場合でかつ、1の位がクリティカル値以上ならば成功かつクリティカルでダメージ計算に進む
  • 判定が成功だった場合でかつ、1の位がファンブル値以下ならば、成功かつファンブルでダメージ計算に進む
  • 判定が成功だった場合でかつ、クリティカルでもファンブルでもないならば、通常の成功としてダメージ計算に進む
  • ダメージ算出での処理で、クリティカルだった場合はダメージ2倍、ファンブルだった場合はダメージ0となる

となっています

つまり目標値を設定していない場合でもクリティカル・ファンブルは確認できますが、成功失敗とクリティカル・ファンブルは関係ないので、独立して設定されるのが正しい、と私は考えます。

ちなみに現時点でのResultの設定のしかたも実は誤っていて、「目標値がコマンドにあって、クリティカルもしくはファンブルと表示されるなら、successがtrue(failureはfalse)であるべき」ということになりますので、ここは修正します。

@ysakasin
Copy link
Member

でしたら、ついでに > ファンブル > 成功> クリティカル > 成功 のようにクリティカル/ファンブルの表記とは別に成功/失敗を表示するように変更した方が良いと思いますがいかがでしょうか。

@h-mikisato
Copy link
Contributor Author

おっしゃる通りなので修正します。

@h-mikisato
Copy link
Contributor Author

確認順番が「判定の成功失敗」→「クリティカル・ファンブルが発生したか」なので、 成功 > クリティカル というような表記にしました。

@ysakasin
Copy link
Member

ファンブルだった場合はダメージ0 とのことですが、ファンブルだった場合は実質的に失敗なのでしょうか? もし失敗した場合と最終的に得られる結果が変わらないならばそれは成功ではなく失敗とみなしてもいい気がします。

@ysakasin
Copy link
Member

失敗した場合の最終的な処理とファンブルした場合の最終的な処理に違いがあれば教えてください。

@h-mikisato
Copy link
Contributor Author

「命中自体は成功した」扱いになるので、一部命中時に効果を発揮する効果や、算出ダメージとは別にダメージを与える効果(部隊特攻など)が発生するという点において、失敗した場合とファンブルした場合は異なります。

以下FAQより引用

Q:バトル時に攻撃判定の結果が[成功]かつ[ファンブル]だった場合、攻撃は[成功]になりますか?
A:[成功]になります。したがって、「ダメージ算出」が発生して[ファンブル]によって[威力]が「0」に変更されるものの、“攻撃判定の[成功]”が条件の効果は発揮されることになります。

@ysakasin ysakasin merged commit d657ecf into bcdice:master Apr 28, 2021
@ysakasin
Copy link
Member

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

@h-mikisato h-mikisato deleted the feature/samsara_ballad_result branch November 27, 2022 16:24
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