どうもどうも! EIEIです!
本日はまたまた、僕が適当にUnityをいじった日記をつけようかと思います…
前回はオセロを作ったんだよね~
今回作っていきたい、というより、今回から作っていきたいものは、
ずばりRPGです! ロールプレイングゲーム!
王道のゲームジャンルだから、プレイしたことがある方も多いはず!
今回も、前回に引き続き、プログラミングに詳しくない方でも読めるように工夫しているつもりなので、
よければ最後まで見ていってね。
RPG作りの目標!
今回のゲーム作りの目標を忘れないように書き残しておきます。興味ない人は「よくあるタイトルを作るぜ!」まで飛ばしてくださいね。
RPG作りで頑張りたい目標!
RPG作りをしていく上で、大まかな目標が次の通り!
- レベルデザインを上手にしたい!
- 最低限遊べて(クリアできる)、ボリュームもそれなりのゲームにしたい
- 完成したら、ブログに貼ったりして公開したいなぁ…
今まで僕は、ほぼミニゲームみたいなものしか作ってこなかったので、
ちゃんとした作品? というものを目指したいな~ と思っています!
下のツイートみたいな、1日か2日で作れるレベルのものしか作ってきてません(笑)
「レベルデザイン」というのは、いわゆるゲームバランスを考えて作ることです。
敵が強すぎる、弱すぎると面白くないもんね。
これだけでなく、序盤から終盤にかけてどんどん敵味方を強くしたり、とかも必要ですよね!
これが上手にできないと、ゲームの根本が面白くなくなります…
もちろん、「わざと敵を強くした」みたいなゲームも、
それはそれで1つのレベルデザインなんじゃないかな。
妥協しまくるポイント!
ただ、すべてを完璧にしようとすると、それこそプログラミング初心者の僕だと数年かかるので、
妥協するポイントもあらかじめ考えさせていただきます…(笑)
ミニゲーム作るのにも数時間かかる人だからね(苦笑)
- グラフィック
- 音楽、効果音
- ストーリーの内容
特に、グラフィックと音関連に関しては、フリー素材を頼ろうかと思っています。
グラフィックはぴぽや倉庫様という、RPGに使いやすいドット絵を配布してくださっているサイトからお借りしました…
EIEI、絵がめちゃくちゃ下手なので…
よくあるタイトルを作るぜ!
セーブデータを作らないといけない!
では早速、タイトルを作って参りたいと思います! 作るのは次の3つ!
- はじめから
- つづきから
- オプション
様々なゲームで見られる、タイトルのメニューですね!
で、この文字の横にある三角を動かして、Wボタンで決定する、という仕組みにしました。
が、1つ問題があります。それは、既存のデータがあるかどうか!
初めてゲームをプレイする時に、「つづきから」を押せたらダメなんだよね。
既存のデータ… すなわち、セーブデータを使わないといけないんだね!
セーブデータは、本来、ゲームのプログラムとは別に、フォルダに保存されます。
だいぶ大雑把なイメージですが、下の画像みたいな感じです…
プログラムは、ゲームが起動している間しか動きませんが、
セーブデータは、ゲームが終了してしまってもゲーム機に保存されますよね~
この機能を実装するのは、本来は大変なんだよ(汗)
しかし、Unityの機能を使えば一瞬で実装できるみたいです。
これのおかげで、初めてセーブデータ機能を実装する僕でも、割とサクッとできました♪
Unityすごいね! セーブデータを簡単に作れるなんて…
オプションを作ってみる!
セーブデータ機能を使いこなせるようになったので、オプションの内容も作ってみました!
タイトルのメニューとほぼ同じ作りです♪
オプションは、0~9の値で調節できるようにしました。分かりやすいしね。
ほとんどのゲームに、こういう音量を調節するオプションがあるよね!
まあ、まだ音に関しては何も作っていないので、ハリボテなのですが…(苦笑)
文字送りに関しては、ストーリーを作る時にお世話になるでしょう。
ハリボテでも、それっぽく見えるからなんとなく楽しいです(笑)
セーブデータを初めて作る僕、実はオプションもまともに作らないので
新鮮に作業してました… やってることは地味ですが!(笑)
キャラクターのアニメーションを作る!
お次は、キャラクターのアニメーションを作りたいと思います!
ぴぽや倉庫様が配布してくださっている素材は、1つのキャラにつき12個の素材がセットになっています。
なんで12個の素材がセットなの?
これは、キャラクターが止まっている姿の他に、
歩いているアニメーションを作るために、2つの素材を交互に表示するためなんですね~
パラパラ漫画みたいに、素早く切り替えると歩いているように見えます!
これが4つの方向分あるので、12個で1つのキャラとなっています。
…せっかくなので、アニメーションを作りたいですよね!
早速アニメーションを作っています! Unityの機能で12個にざっくり切り分けて…
アニメーションを作ります! パラパラ漫画みたいなやつですね。
パラパラ漫画も、Unityの機能で簡単に作っちゃいます!
ここから、「アニメーター」と言う、条件に応じて表示するものを変える機能を使います!
例えば、プログラムが「右に歩いているよ!」と指示したら、右に歩くアニメを表示します!
これでドットのRPGらしい移動ができるね!
条件は、「向いている方向」と「歩いているか、止まっているか」の2つだけ!
これがどのように変わっても対処できるように、たくさん矢印を作りました(笑)
上の画像で、灰色だったりオレンジ色のものが、1つ1つのアニメーションだよ~
これで、マップ上でキャラを動かすときに、ちょこちょこ歩いてくれるはずです。
ただ、今回はマップまで作りませんが…(苦笑)
主人公の名前とかを決めるやつ!
とりあえず、タイトル画面から派生して次のものは作りました!
- タイトル画面
- オプション
- データを削除する時の確認(データ消えるけどよろしいですか? ってやつ)
いよいよ、「はじめから」を押してから主人公の設定を決めるところを作ります!
主人公の性別、名前を決められるようにしたいよね~
「はじめから」を押したら、フェードアウト(どんどん画面が暗くなるやつ)で真っ暗にした後、
主人公の性別を決められるようにしてみて…
そして、名前を入力するフォームをUnityの力で召喚!
ここにプレイヤーが入力した名前も、セーブデータに保存するようにしました♪
Unity、ゲームで使いたいこういう機能が多くて助かる~
ちなみに、プログラムで細かい制御をしていないので、文字数制限がありません(苦笑)
今後ストーリーを書いていく上で不具合が出る気がするので、今度制限つけておこう…
名前が何十文字にもなると、それだけで画面が埋まってしまう不具合が起きそう。
そして、主人公の名前を決めたら、お隣さんの名前も決められるようにしました!
もしかしたら、これはデフォルトの名前を用意すると良いかも?
今はプレイヤーが名付けないといけないけど、
名前を変えたい人だけ変えるシステムも良いねぇ…
余談ですが、主人公のお隣に、主人公と性別が異なるキーパーソンが住んでいる設定、
僕が人生で一番プレイしたRPG、ポケモンYのパク… リスペクトです!
当時小2のEIEI、今考えても信じられないくらいプレイしてました…
RPGの中で総プレイ時間ぶっちぎってます。
今日、上の弟がスイッチを使っているからって理由で、下の弟が3DSでポケモンYをプレイしていたんですけど、
BGMが懐かしすぎて少年時代に戻りましたよほんと…
ストーリーとか、こういう他のRPGから引っ張ってくるところもちょこちょこできちゃうかも…?(苦笑)
変な位置で改行されて、句読点だけ飛び出していますね(苦笑)
もしかしたら、昔のRPGでよく見るわかち書きを採用したほうが楽かな…?
「文節」と呼ばれる文章のサイズで区切って、空白を入れる書き方ですね!
こんな 感じに 文章を わかち書き すると、 Unityが 空白部分で 改行を してくれて 句読点が 暴走 しません!
なんなら ひらがなだけの ほうが RPG らしくて いいかも しれませんね!
これと一緒に、文字送りの機能も付けたいよね~
その方が雰囲気出るし!
さて、今回作成したのはここまでとなっております!
名前決定した先を作っていないから、今はセーブデータに名前を書き込んだらゲームが終了します!(苦笑)
次回は、マップ上でキャラを動かせるようにしたいかな!
まだ「つづきから」も作っていないので、そこはまた次回ということで!
ちなみに、今回作成した内容の動画をtwitterにアップしたのですが、なぜか画質が悪いです…
まだゲームの内容は一切作っていないけど、
次回から作るための準備はできたね~
それではまた次回! 僕は久しぶりに3DS開きたくなったので! 記事書き終えたらプレイしてきます!(笑)
それでは皆さん、バイバ~イ!
コメント
M41 bulldogさんへ返信
応援ありがとうございます! 頑張ります!
UNREALエンジンを始められたのですか、頑張ってください♪
Unityもそうなんですが、見た目より重たいんですね…
UnityでRPGをつくるんですね!がんばってください!
ちなみに私はUNREALエンジンを触り始めたとこです
UNREALエンジン想像より重いんですけどね…