ダーツの点数の配置を暗記できるゲームDartsQuizをUnityで作ってみた話

Sponsored Link


久しぶりにUnityでゲームを作ってみた

どうも、Linです。ジャイロセンサー、つけてます。

 

ここしばらくプログラミング関係の学習はTECH::CAMPのiPhoneコースで新しいことを学び続けてきました。

がしかし、やはり与えられたカリキュラムをただただこなすだけでは面白くなく、

自分で自分のアプリを作ってこそ面白いのがプログラミングです。

 

その「自分で作る楽しさ」を再び味わいたく、一旦、iPhoneアプリの勉強は脇に置いておいて、ある程度作り方がわかってきたUnityでゲームアプリの作成に励みました。

 

今回作ってみたのは、

DartsQuiz

というダーツのボードの番号の配置を覚えるためのクイズアプリです。

DartsQuiz

DartsQuiz
posted withアプリーチ

 

 

なぜ、DartsQuizを作ったのか?

なぜ、このダーツ勉強アプリを作ってしまったのかというと、ぼく自身、ダーツを最近始めた時の気づきがあったからです。

ダーツでは「ゼロワン」というメジャーなゲームがあり、このゲームでは、

ダーツを投げていき、ヒットした番号の数だけ点数を引いていける

というゲームで、最終的に持ち点をぴったり0にしたものが勝者となります。

 

このゼロワンのとき、特に得点を微調整する終盤なのですが、

ダーツボードの点数の配置を覚えているか否か?

でゲーム展開が変わってくるということに気づいたのです。

もし配置を覚えてないと、残りの点数に該当するダーツボードの番号の位置がわからないので、たとえば残りの点数が7のとき、

「あれっ、7ってどこだっけな・・・?」

と一瞬、ダーツボードを睨め回し、特定の番号を探さねばなりません。

はっきり言ってエネルギーの無駄遣いですし気が散ります。特にダーツはメンタルスポーツとも言われるぐらい繊細で、一瞬の気の緩みがスローの精度を左右することとして知られています。

 

ゼロワンを制するためにダーツの点数の配置を覚えたいところですが、

配置はなかなか覚えられないのが現状なのです。

点数は全部で1~20の20通りありますし、真ん中のブル、そしてクリケットナンバー(15~20)以外は狙うことが少ないので、覚えるチャンスが少ないのです。

 

このダーツの経験から、

「ダーツの点数の配置を覚えられるクイズアプリを作ったらいいんじゃないか・・・・!?」

と思いつき、DartsQuizというアプリを制作するに至りました。

 

DartsQuizの遊び方

遊び方は簡単。

まず、ダーツボードの上に1~20のランダムな数が表示されますので、その番号に該当するダーツボードの場所をカーソルで選びます。

もちろん、このダーツボードには点数の番号は一切記載されてないです。クイズですからね。

 

ここだ!

と思ったところでカーソルを止めて「OK」ボタンをおします。

 

もし、正解ならば丸印、間違いならばばつ印が出現し、さらに復習できるように番号付きのダーツボードが表示されるようになっています。

正解ならば+20点、誤答ならば-20点、全部で20問のクイズに回答して合計点を競います。マックス200点、ミニマムで-200点ですね。

 

ゲーム制作の中で学んだこと

このDartsQuizというクイズアプリを作る中で、次の3つのことを学びました。

 

Unityでのフォント変更方法

まず、フォントの変更の仕方を学びました。

UnityでのフォントはArialのみがデフォルトで用意されているので、何もいじらないとArialのアプリが誕生します。

これまで良しとしてきましたが、フォントのスタイル1つでアプリがかっこよく見えるかもしれないと思い、fontの種類を思い切って変更。

意外にも変更方法が簡単でUnity初心者のぼくでもすぐにかえられました。

>>詳しくは「Unityのフォントを追加して変更する方法

 

データのセーブ・ロード方法

また、今回はクイズゲームのハイスコアを記録できるように、

PlayerPrefs

というUnityの機能を利用してみました。ぼくがUnityを勉強したTECH::CAMPでも出てきた気がしましたが、ちゃんとマスターした訳ではなかったので、ここでもう一度学び直し。

「Unityの寺子屋」という教科書の助けも借りて、なんとかPlayerPrefsの使い方をマスターし、それを使ってベストスコアの記録に成功しました。

>>詳しくは「PlayerPrefsの使い方」へ

 

広告挿入

そして、もう一つやって見たかったのが広告挿入。ゲームを作るからにはならんかの方法で収益をあげたみたいのがゲーム製作者の夢です。

DartsQuizというアプリははっきり言って簡素で需要があまりなく、ミリオンヒットする気配はありませんが、せっかくなので今後の将来のためにこのアプリで広告挿入のノウハウを学ぶことを決意。

Unity公式の広告の「Unity Ads」の導入に成功し、ゲーム終了してQuitボタンを押したら動画広告が流れるように実装してみました。

Unity Adsの導入は意外にも簡単で、3分ぐらいできたのでよかったです。

>>詳しくは「Unity Adsの使い方」へ

 

苦戦したこと

もっともこのゲームを作るにあたって苦戦したのが、

ダーツの細かい場所をどうやって選択してもらうか?

ということでした。

はじめ考えていた構想では、

該当する番号のダーツボードのパーツをタップする

という方法でしたが、これでは次の問題が発生↓

  • 各ナンバーが密集しすぎて番号を判別できなさそう
  • あるimageの特定の場所をタップしたことを認識させるコードの書き方がわからない笑

 

この問題は手強く、そしてだるそうだったので代替案として、

カーソルでダーツのボードの場所を選択する

というように変更しました。

 

そして、このカーソルを動かすボタンを「NEXT」と「BACK」の2種類配置。これならばカーソルを動かして特定の場所を示せるようになったので、ようやくこのゲームの完成が現実味を帯びるようになりました。

 

 

と、まあこんな感じでDartsQuizというクイズアプリを作ってみたので、ダーツ好きの方はよかったら使ってみてください笑

DartsQuiz

DartsQuiz
posted withアプリーチ

 

それでは!

Lin

飯橋凛(Ihashi Lin)

インターネット広告代理店を1年半で退職。
その後、副業として活動していたウェブメディア運営のフリーランスへ。
現在はプログラミングの勉強に励み、0からフリーエンジニアの道を目指す。最近はキムチをまとめ買いにはまっている。


Sponsored Link

コメントはこちらからお願いします!



もう1本読んでみる