Google+ もご覧ください
ユーザーアイコン

モバイル/タブレット向けオープンソース紹介

Wizard War - 最強の魔導士を目指すコマンド型対戦ゲーム

Wizard War - 最強の魔導士を目指すコマンド型対戦ゲーム

この連載ではiOS/Androidなどスマートフォン/タブレット向けのオープンソース・ソフトウェアを紹介します。オープンソースであればソースコードが公開されていますので、実際にどうやって作られているかと言った疑問にもすぐに答えられるはずです。

Wizard Warはオープンソース1ながらApp Storeでも配信されているゲームで、iPhone向けになります。ルールは簡単で、左右の魔法使いが対戦します。左側が自分なので、右側のキャラクターを攻撃してライフをゼロにすれば勝ちとなります。

Wizard War
Wizard War

攻撃または防御は画面中央に浮かんだエレメントを使います。3つ以上のエレメントをタップしながらつないでいくと魔法が発動します。つなぎ方(呪文)によって発動する魔法が異なる仕組みです。

例えばファイアボールは火→空気→ハートの順番につなぐと発動します(実際には順不同でつないでも良いようです)。オーグというモンスターは火→山→水→ハートの順で4つつながないといけません。攻撃または防御力の高い魔法ほど複雑になっているはずです。

防御もまたコマンドで行います。山→火→空気をつなぐと火の壁ができ、相手のファイアボールを防げるようになります。

対戦画面
対戦画面

勝ち!
勝ち!

負け…
負け…

魔法は20種類以上用意されていますので、複雑なコマンドをつなげば凄い魔法が発動するかも知れません。実際のつなぎ方は発動した魔法しか表示されていないので色々試してみるほかありません(ステージがあがると説明が出るようです)。

呪文一覧
呪文一覧

ファイアボール
ファイアボール

魔法は使えば使うほどゲージがあがっていきます。これがいっぱいになればさらにイベントがあるかも知れません(筆者はまだそこまで達していません…)。各ステージの対戦成績も勝つとゲージがあがるようになっています。

ステージ一覧
ステージ一覧

プレイヤー対戦

さらにWizard Warの醍醐味は他のプレイヤーとの対戦機能があることです。コンピュータは通り一遍な魔法ばかりですが、人は自在に様々なテクニックを使ってきます。盛り上がること間違いなしです。対戦はネットを介して行われますので、全く知らない誰かと対戦も可能です。

初対戦で勝利!
初対戦で勝利!

利用技術、サービス

対戦時のバックエンドはFirebaseを使って実現しています。またParseも使っているそうです。これらの技術を組み合わせることで、プログラマーはアプリ開発に専念できるようになっています。

またゲームエンジンとしてはCocos2dを使って開発されています。こういった技術の組み合わせ方、使い方を知る上でも参考になる部分が多いのではないでしょうか。

終わりに

スマートフォンアプリにおける人気ジャンルとしてゲームは見逃せません。アプリだけで動くゲームも良いですが、そこにネットワーク要素が絡むとさらに面白さが増します。そういったゲームを開発するための手法、実装参考例としてWizard Warは見るべき部分が多いように思います。

seanhess/wizardwar


  1. ライセンスはMIT Licenseです 

Opensource

記事をリクエストする

関連記事

コメント