Jewel-mmo開発日記

RubyでMMORPGを作る過程を記録する日記。 Yokohama.rb 発起人。
2006-09-04

[プラポケ]対決の基本ルール

基本ルールを書いておきます。

5枚のカードを使って戦う

5枚のカードを使って2人で対戦します。対決自体は決まった時間が来ると自動的に行われるので、プレイヤーは5枚のカードを用意して順番を決めて並べておけばOKです。最大7までカードを持つことが出来ますが、ホーム画面で表示されているカードの左5枚が対決で使うカードになります。左から順に1枚目、2枚目、3枚目……のカードとなります。

1枚ずつカードを出し合い得点を競う

対決はお互いに1枚ずつ順番に出し合っていく姿をイメージしてください。トランプの『戦争』のように同時に1枚ずつカードを出し合います。5枚出し終わった時点で得点が高いプレイヤーが勝ちます。

1枚目は攻撃権の争奪

まず1枚めのカードは agility(敏捷さ) 値の勝負です。1枚めのカードの agility 値を比較し数値が高いプレイヤーが攻撃権を得ます。

2枚目以降は攻撃と防御

最初の攻撃と防御は双方のプレイヤーともに2枚目のカードを使います。攻撃するプレイヤーのカードの offense 値(攻撃力)と防御プレイヤーのカードの defense 値(防御力)を比較します。攻撃手の offense 値が相手の defense 値より大きかった場合、攻撃が成功し得点(通常は2点。得点は攻撃するキャラのジョブによって違う)が入ります。

3枚目は攻守が逆転

3枚目では攻守が逆転します。攻撃の成功判定は2枚目のときと同じようにお互いの3枚目のカードの offense 値と defense 値を比較します。 offense 値が高かった場合は攻撃成功で得点が入ります。

以下繰り返し

4,5 枚目も攻守を入れ替えながら攻撃判定を繰り返します。つまり通常はどちらのプレイヤーにも 2 回攻撃のチャンスがおとずれます。 5 枚のカードを出し終わった時点で対決終了です。総得点の高いプレイヤーがそのゲームの勝者となります。

agility の再比較

agility 比較のときにもしもお互いの値が同じだった場合は、2枚目のカードに agility 勝負が移行します。2 枚目のカードの agility 勝負で決着がつけば 3枚目以降のカードで攻撃判定を行います。2枚目のカードでも agility 値が同じだった場合は3枚目に勝負が持ち越されます。 agility 勝負に決着がつくまで次のカードに持ち越されます。もしも 4 枚のカードまで agility 値が同じだった場合は一度も攻撃が行われないので引き分けとなります。

また攻撃判定で攻撃手の offense 値と守り手 defense 値が同じだった場合も agility 判定へ移行します。もし 2 枚目のカードの攻撃判定で値が互角だった場合は 3 枚目のカードから agility 判定を行うことになります。

job 特性

ウィザードとプリーストのカードは攻撃力が 1 、侍は 3 、それ以外は 2 ポイントです。今のところそれ以外の job 特性は実装されていません。

def score
  case job
  when 'wiz', 'pri'
    1
  when 'sam'
    3
  else
    2
  end
end