LoginSignup
4

More than 3 years have passed since last update.

posted at

updated at

オンラインカードゲームのサーバーサイドを作った①

はじめに?

学校の課題やら趣味のゲーム制作で結構頑張ってカードゲームを作ったので、投下しようと思いました。
今回作ったゲームは、Black Pokerというカードゲームです。
タグを見て来た方の中には、
「おいおい、TCGタグ付いてるくせにトランプゲームじゃねえか」
と思った方もいると思います。
ただこのゲーム、トレーディング要素はないものの、デッキを構築し、山札から引いたカードで攻撃しあうという最近のTCGの要素が詰まったゲームなのです。

Black Pokerとは?

1人1セットのトランプを使ったターン制のTCG風トランプゲームです。
(公式サイトより引用)
お互いは山札を良くカットします。
山札の上から1枚捲り、数字・マークの大きい方が先攻となります。
お互いに山札から7枚引きます。
ターンプレイヤーは山札からカードを1枚引き、以下の行為を行います。
① ダメージを1点受け、手札からカードを裏向きで置く (ターン1)
② ダメージを1点受け、裏向きのカードを横に向け、手札からカードを表向きで置く (ターン1)
③ 自身の表向きのカードをn枚選択して、攻撃する (召喚酔いあり)
攻撃を受けたプレイヤーは、場のカードでブロックするもしくはダメージを受けます

ダメージを受けたプレイヤーは、山札からn枚のカードを墓地へ送ります。
デッキがなくなったプレイヤーはゲームに敗北します。

まずはゲーム本体を作る

サーバーサイド開発ではありますが、通信などは置いておいて、まずはコンソールで動作する本体を作成します。

私は以下のような設計をしました

UML図.png

トランプのカード1枚1枚に対応するCardオブジェクトを生成し、Playerがメンバ内のCardを移動させていきます。

疲れたので今回はここまでです。
次回はカードクラスを書いていきます。

プログラムはGitHubにも置いておくので参考にしてください
Black_Poker4j

次回はこちら

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
What you can do with signing up
4