Skip to content

Commit

Permalink
Merge pull request #388 from ViVi-shark/features/fix_blood-moon
Browse files Browse the repository at this point in the history
 [BloodCrusade][BloodMoon] '両システム間で共用されていたが本来は細部の異なる' いくつかのテーブルを、個別に持つように
  • Loading branch information
ysakasin authored Feb 26, 2021
2 parents bdcb6b2 + e03f4dd commit b23aa3c
Show file tree
Hide file tree
Showing 4 changed files with 166 additions and 43 deletions.
82 changes: 41 additions & 41 deletions lib/bcdice/game_system/BloodCrusade.rb
Original file line number Diff line number Diff line change
Expand Up @@ -74,23 +74,6 @@ def eval_game_system_specific_command(command)
)

TABLES_WITH_BLOOD_MOON = {
"ST" => DiceTable::Table.new(
"シーン表",
"2D6",
[
"どこまでも広がる荒野。風が吹き抜けていく。",
"血まみれの惨劇の跡。いったい誰がこんなことを?",
"都市の地下。かぼそい明かりがコンクリートを照らす。",
"豪華な調度が揃えられた室内。くつろぎの空間を演出。",
"普通の道端。様々な人が道を行き交う。",
"明るく浮かぶ月の下。暴力の気配が満ちていく。",
"打ち捨てられた廃墟。荒れ果てた景色に心も荒む。",
"生活の様子が色濃く残る部屋の中。誰の部屋だろう?",
"喧しい飲食店。騒ぐ人々に紛れつつ事態は進行する。",
"ざわめく木立。踊る影。",
"高い塔の上。都市を一望できる。"
]
),
"IST" => DiceTable::Table.new(
"先制判定指定特技表",
"1D6",
Expand Down Expand Up @@ -120,30 +103,6 @@ def eval_game_system_specific_command(command)
"《心臓》"
]
),
"MIT" => DiceTable::Table.new(
"軽度狂気表",
"1D6",
[
"【誇大妄想】(判定に失敗するたびに【感情】が1増加する。)",
"【記憶喪失】(【幸福】の修復判定にマイナス2の修正。)",
"【こだわり】(戦闘中の行動を「パス」以外で一つ選択し、その行動をすると【感情】が6増加する。)",
"【お守り中毒】(「幸運のお守り」を装備していない場合、全ての2d6判定にマイナス1の修正。)",
"【不死幻想】(自分が受けるダメージが全て1増加する。)",
"【血の飢え】(戦闘中に最低1体でも死亡させないと、戦闘終了時に【感情】10増加。【激情】は獲得できない。)"
]
),
"SIT" => DiceTable::Table.new(
"重度狂気表",
"1D6",
[
"【幸福依存】(【幸福】を一つ選択し、その【幸福】が結果フェイズに失われたとき、死亡する。)",
"【見えない友達】(自分の関わる「関係を深める」判定にマイナス3の修正がつく。)",
"【臆病】(自分の行う妨害判定にマイナス2の修正がつく。)",
"【陰謀論】(「幸福を味わう」判定にマイナス3の修正がつく。)",
"【指令受信】(追跡フェイズBでの自分の行動は、可能な範囲でGMが決定する。)",
"【猜疑心】(自分が「連携攻撃」を行うとき、関係の【深度】をダメージに加えられない。)"
]
)
}.freeze

TABLES = {
Expand Down Expand Up @@ -388,6 +347,47 @@ def eval_game_system_specific_command(command)
"新しい友達が出来る。\n任意の年齢の協力者を、狩人のプレイヤーが作成する。\nレベルは1とすること。\nこの協力者はセッションに登場し、獲得すれば使用できる。"
]
),
"ST" => DiceTable::Table.new(
"シーン表",
"2D6",
[
"どこまでも広がる荒野。風が吹き抜けていく。",
"血まみれの惨劇の跡。いったい誰がこんなことを?",
"都市の地下。かぼそい明かりがコンクリートを照らす。",
"豪華な調度が揃えられた室内。くつろぎの空間を演出。",
"普通の道端。様々な人が道を行き交う。",
"明るく浮かぶ月の下。暴力の気配が満ちていく。",
"打ち捨てられた廃墟。荒れ果てた景色に心も荒む。",
"生活の様子が色濃く残る部屋の中。誰の部屋だろう?",
"喧しい飲食店。騒ぐ人々に紛れつつ事態は進行する。",
"ざわめく木立。踊る影。",
"高い塔の上。都市を一望できる。"
]
),
"MIT" => DiceTable::Table.new(
"軽度狂気表",
"1D6",
[
"【誇大妄想】(判定に失敗するたびに【感情】が1増加する。)",
"【記憶喪失】(【幸福】の修復判定にマイナス2の修正。)",
"【こだわり】(戦闘中の行動を「パス」以外で一つ選択し、その行動をすると【感情】が6増加する。)",
"【お守り中毒】(「幸運のお守り」を装備していない場合、全ての2d6判定にマイナス1の修正。)",
"【不死幻想】(自分が受けるダメージが全て1増加する。)",
"【血の飢え】(戦闘中に最低1体でも死亡させないと、戦闘終了時に【感情】10増加。【激情】は獲得できない。)"
]
),
"SIT" => DiceTable::Table.new(
"重度狂気表",
"1D6",
[
"【幸福依存】(【幸福】を一つ選択し、その【幸福】が結果フェイズに失われたとき、死亡する。)",
"【見えない友達】(自分の関わる「関係を深める」判定にマイナス3の修正がつく。)",
"【臆病】(自分の行う妨害判定にマイナス2の修正がつく。)",
"【陰謀論】(「幸福を味わう」判定にマイナス3の修正がつく。)",
"【指令受信】(追跡フェイズBでの自分の行動は、可能な範囲でGMが決定する。)",
"【猜疑心】(自分が「連携攻撃」を行うとき、関係の【深度】をダメージに加えられない。)"
]
),
}.merge(TABLES_WITH_BLOOD_MOON).freeze

register_prefix(RTT.prefixes, TABLES.keys)
Expand Down
41 changes: 41 additions & 0 deletions lib/bcdice/game_system/BloodMoon.rb
Original file line number Diff line number Diff line change
Expand Up @@ -63,6 +63,47 @@ def eval_game_system_specific_command(command)
end

TABLES = {
"ST" => DiceTable::Table.new(
"シーン表",
"2D6",
[
"どこまでも広がる荒野。風が吹き抜けていく。",
"血まみれの惨劇の跡。いったい誰がこんなことを?",
"都市の地下。かぼそい明かりがコンクリートを照らす。",
"豪華な調度が揃えられた室内。くつろぎの空間を演出。",
"普通の道端。様々な人が道を行き交う。",
"明るく浮かぶ月の下。暴力の気配が満ちていく。",
"打ち捨てられた廃墟。荒れ果てた景色に心も荒む。",
"生活の様子が色濃く残る部屋の中。誰の部屋だろう?",
"にぎやかな飲食店。騒ぐ人々に紛れつつ事態は進行する。",
"ざわめく木立。踊る影。",
"高い塔の上。都市を一望できる。"
]
),
"MIT" => DiceTable::Table.new(
"軽度狂気表",
"1D6",
[
"【誇大妄想】(判定に失敗するたびに【テンション】が1増加する。)",
"【記憶喪失】(【幸福】の修復判定にマイナス2の修正。)",
"【こだわり】(戦闘中の行動を「パス」以外で一つ選択し、その行動をすると【テンション】が6増加する。)",
"【お守り中毒】(「幸運のお守り」を装備していない場合、全ての2d6判定にマイナス1の修正。)",
"【不死幻想】(自分が受けるダメージが全て1増加する。)",
"【血の飢え】(戦闘中、ラウンドごとに他のキャラクターにダメージを与えないと、ラウンド終了時に【テンション】4増加。)"
]
),
"SIT" => DiceTable::Table.new(
"重度狂気表",
"1D6",
[
"【幸福依存】(【幸福】を一つ選択し、その【幸福】が結果フェイズに失われたとき、死亡する。)",
"【見えない友達】(交流判定にマイナス3の修正がつく。)",
"【臆病】(自分の行う妨害判定にマイナス2の修正がつく。)",
"【陰謀論】(休息判定にマイナス3の修正がつく。)",
"【指令受信】(メインフェイズの3サイクル目の自分のシーンでは、可能な範囲でGMが行動を決定する。)",
"【猜疑心】(自分が「連携攻撃」を行うとき、関係の【深度】をダメージに加えられない。)"
]
),
"CHT" => DiceTable::Table.new(
"自信幸福表",
"1D6",
Expand Down
41 changes: 41 additions & 0 deletions test/data/BloodCrusade.toml
Original file line number Diff line number Diff line change
Expand Up @@ -59,6 +59,15 @@ rands = [
{ sides = 6, value = 1 },
]

[[ test ]]
game_system = "BloodCrusade"
input = "ST"
output = "シーン表(10) > 喧しい飲食店。騒ぐ人々に紛れつつ事態は進行する。"
rands = [
{ sides = 6, value = 4 },
{ sides = 6, value = 6 },
]

[[ test ]]
game_system = "BloodCrusade"
input = "ST"
Expand Down Expand Up @@ -227,6 +236,14 @@ rands = [
{ sides = 6, value = 1 },
]

[[ test ]]
game_system = "BloodCrusade"
input = "MIT"
output = "軽度狂気表(3) > 【こだわり】(戦闘中の行動を「パス」以外で一つ選択し、その行動をすると【感情】が6増加する。)"
rands = [
{ sides = 6, value = 3 },
]

[[ test ]]
game_system = "BloodCrusade"
input = "MIT"
Expand All @@ -243,6 +260,30 @@ rands = [
{ sides = 6, value = 1 },
]

[[ test ]]
game_system = "BloodCrusade"
input = "SIT"
output = "重度狂気表(2) > 【見えない友達】(自分の関わる「関係を深める」判定にマイナス3の修正がつく。)"
rands = [
{ sides = 6, value = 2 },
]

[[ test ]]
game_system = "BloodCrusade"
input = "SIT"
output = "重度狂気表(4) > 【陰謀論】(「幸福を味わう」判定にマイナス3の修正がつく。)"
rands = [
{ sides = 6, value = 4 },
]

[[ test ]]
game_system = "BloodCrusade"
input = "SIT"
output = "重度狂気表(5) > 【指令受信】(追跡フェイズBでの自分の行動は、可能な範囲でGMが決定する。)"
rands = [
{ sides = 6, value = 5 },
]

[[ test ]]
game_system = "BloodCrusade"
input = "SIT"
Expand Down
45 changes: 43 additions & 2 deletions test/data/BloodMoon.toml
Original file line number Diff line number Diff line change
Expand Up @@ -104,6 +104,15 @@ rands = [
{ sides = 6, value = 1 },
]

[[ test ]]
game_system = "BloodMoon"
input = "ST"
output = "シーン表(10) > にぎやかな飲食店。騒ぐ人々に紛れつつ事態は進行する。"
rands = [
{ sides = 6, value = 4 },
{ sides = 6, value = 6 },
]

[[ test ]]
game_system = "BloodMoon"
input = "ST"
Expand Down Expand Up @@ -250,15 +259,23 @@ rands = [
[[ test ]]
game_system = "BloodMoon"
input = "MIT"
output = "軽度狂気表(1) > 【誇大妄想】(判定に失敗するたびに【感情】が1増加する。)"
output = "軽度狂気表(1) > 【誇大妄想】(判定に失敗するたびに【テンション】が1増加する。)"
rands = [
{ sides = 6, value = 1 },
]

[[ test ]]
game_system = "BloodMoon"
input = "MIT"
output = "軽度狂気表(6) > 【血の飢え】(戦闘中に最低1体でも死亡させないと、戦闘終了時に【感情】10増加。【激情】は獲得できない。)"
output = "軽度狂気表(3) > 【こだわり】(戦闘中の行動を「パス」以外で一つ選択し、その行動をすると【テンション】が6増加する。)"
rands = [
{ sides = 6, value = 3 },
]

[[ test ]]
game_system = "BloodMoon"
input = "MIT"
output = "軽度狂気表(6) > 【血の飢え】(戦闘中、ラウンドごとに他のキャラクターにダメージを与えないと、ラウンド終了時に【テンション】4増加。)"
rands = [
{ sides = 6, value = 6 },
]
Expand All @@ -271,6 +288,30 @@ rands = [
{ sides = 6, value = 1 },
]

[[ test ]]
game_system = "BloodMoon"
input = "SIT"
output = "重度狂気表(2) > 【見えない友達】(交流判定にマイナス3の修正がつく。)"
rands = [
{ sides = 6, value = 2 },
]

[[ test ]]
game_system = "BloodMoon"
input = "SIT"
output = "重度狂気表(4) > 【陰謀論】(休息判定にマイナス3の修正がつく。)"
rands = [
{ sides = 6, value = 4 },
]

[[ test ]]
game_system = "BloodMoon"
input = "SIT"
output = "重度狂気表(5) > 【指令受信】(メインフェイズの3サイクル目の自分のシーンでは、可能な範囲でGMが行動を決定する。)"
rands = [
{ sides = 6, value = 5 },
]

[[ test ]]
game_system = "BloodMoon"
input = "SIT"
Expand Down

0 comments on commit b23aa3c

Please sign in to comment.