第8回ぷちコンに参加しました
ブログを引っ越ししました。
以前のブログはそのまま残しておくのですが、(マテリアル本第2版にリンクが書いてあるので…)
新しい記事はこちらに書いていこうと思います。
はてなはスクリーンショットがそのままブログに貼れるのでそこがいいですね。
さて、本題ですが、先日行われた第8回ぷちコンに参加しました。
以下応募作品です。
今回のテーマは『60秒』ということで、60秒以内に仲間の兵士を救出するというゲームに仕上げました。
やっている処理などはググればすぐ出てくるような簡単なものばかりなので技術的なことについては触れません。
このゲームを作るまでにやった企画の内容やその準備などについて書いていこうと思います。
ダラダラと自分の思い出程度の内容ばかりで、技術的なことは何も書いてないですが、興味ある方はお付き合いください^^
企画の前の準備
今までは眺めるだけだったぷちコンですが、今回は参加しようと決めてました。
そのために今まではよくわからず触っていたBPでしたが、7月ごろから極め本をちゃんと通しでやることでBPへの基礎理解力をつけることからスタートしました。
(今更かよ…)
一通り極め本を読みつつ、簡単なゲームの制作で実践経験を積むという感じで進めていきました。
最初に作ったのは箱の中から鍵を見つけ出し、ドアを開けるという脱出系のもの。
見た目はどうしようもないものでしたが、
これをやっておくことでBPの扱いを理解出来た気がします。
ぷちコンやる前に勉強として作ってた一人ゲームジャム動画があったからアップしとこう。箱から鍵をみつけて脱出するやつ。これでも1~2週間かかってた気がする。これができることの限界だった。 pic.twitter.com/iKut8oM6HI
— 茄子@UE4マテリアル本第2版発売! (@nasubi_s) 2017年9月28日
企画を考える
この頃は『ヘウレーカ』『ヒストリエ』を読んでいた時期で、古代ギリシャやローマに興味深々になっていたので、シラクサ包囲戦でのアルキメデスの兵器を題材にしたもので作りたいと考えていました。
この段階で船を操作するゲームでプレイヤーは攻撃を持たないという形だけはふわっと持っていました。(船からの攻撃手段が弓程度しかなく、ゲームとして成り立たなそうだなとおもったため)
7月下旬ごろにちょうどマーケットプレイスのサマーセールがやっていたのでそれっぽいアセットを買い集めて開発開始に備えました。
ぷちコンのお題発表前でしたが、それっぽくテーマに合わせればいいやと思ってたので雰囲気に合いそうなものを買い漁ってました(笑。その結果、ゲームとしての面白さを追求せずに、皮だけを決めるというダメなゲーム開発のパターンだったなと今となっては反省です…。
制作開始
テーマは60秒と発表されたので60秒で終わるゲームにするとだけ決めました。
何が60秒以内になるのかはまだ明確ではなく、60秒以内に城壁を破るのか、60秒以内に目的地へ着くのか…ぐらいの感じで進めていきました。
まずはゲームの要素になりそうなものを入れていきます。遭難してる船、救護船(回復する船)など…。
敵の兵器は『アルキメデスの鉤爪』と呼ばれるクレーンを使って船を引っ掛けて転覆させる装置と、『鏡』で太陽光を反射して船を燃やす装置の2つを実装したかったのですが、鉤爪はどう実装したものか…となったので鏡のみとなりました。
この時、やりたいことと自分ができることのギャップがすごくありました。ゲームとして形に落とし込む難しさと、BPとしてどう組むかこの両方が自分にのしかかった感じです。
結果、これらの要素でどうにかゲームの形にしたのが今回の内容になっています。
ある程度ゲーム部分が出来上がったら、ゲーム部分への興味が薄れたので、トークシーンの実装、オープニング画面の実装など横道に逸れた部分を作ってました。
これこそ皮をどんどんかぶせて見た目よくして、本質がない…というダメな感じではあるのですが、これらの実装はUMGの理解がより進んだと思います。
コントローラーの扱いがUMGでは微妙に難しいと言うのは、予想外でした。UMGはちょっと癖がありますね。
見た目をどうにかする
最初はこんな感じの斜め上からの見下ろし型でした。
とりあえず船のゲーム作ってる。ビームがシリンダーなので、ちゃんとヒットしたらそこで途切れるようにしたいなー。あと、プレイヤー動いてないとヒットしててもダメージうけてない。#UE4 #EpicFriday pic.twitter.com/xfRiJqgLMM
— 茄子@UE4マテリアル本第2版発売! (@nasubi_s) 2017年8月18日
これは鏡兵器と船の位置関係がわかりやすいということでこの位置にしていましたが、絵としてイマイチだったので横からの画面に変更しました。その結果、夕方のライティングにした時に太陽が見える、海面に太陽の映り込みが入るなどかっこいい構図が取れたのがよかったなと。
このカメラに切り替えたことの恩恵として単純に60秒という時間の縛りにするのではなく、『夕日が沈むまで』という感じでなぜその時間でクリアしなければならないのかの理由付けができるようになったのも良かったです。
太陽が沈む表現をいれるためにTrueSky(trueSKY | Simul)の体験版をテストしてみました。
雲の量や太陽が動く速度や見た目の調整が想像以上に簡単でしたが、特定のタイミングで雲の量を増やす方法がわからず、ただ日が沈むだけしか入れれなかったのは残念なところです。
実装していたけど、使わなかった機能
プレイヤーは、基本スタミナを消費してスプリント移動をすることしか敵の攻撃を回避出来ません。スタミナが切れたらダメージを受けるだけです。
これはあまりにもひどいな…と思って実装したのが『ゴッドモード』。
古代ローマであれば神の力を信じてるような時代です。
神の力を使って、雲の量を増やし太陽光を遮ることで敵の鏡の攻撃を回避する。そんな機能を入れてました。
個人的にこの機能は気にいっていたのですが、ぷちコンとして説明過多になりすぎてしまうのは避けたかったこと、TrueSkyで雲量のコントロールを実装できなかったというところでカットしました。
もし、このゲームを仕上げていくなら、様々な神を用意し、機能を切り替えながらアルキメデスの兵器に対抗していく…そんな内容にしたいなと妄想…。
どうにか完成させる
適当に色々実装していたのですが、最後の2週間で完成にするためにBGM,SE,UIを仕上げていきました。
これらが入るとゲームぽくなっていくのですごいなーと…。
こういうのも初めてゲーム制作で一通り自分でやって気づくところなので、品質を上げたいならちゃんとやらないといけないと感じました。こういうのはゲームジャムのいいところですね。
見た目の雰囲気はポリゴンナイトパック(POLYGON Knights Pack by Synty Studios in Environments - UE4 Marketplace)を使用しているのでキャラクターや背景アセットのゆるさはあるのですが、それ以外の雰囲気が重厚感がでるようにしたいと考えてました。
BGMはかっこいい本格的な中世ファンタジー風の音楽(Combat Music Collection by John French in Music - UE4 Marketplace)、UIはEU4を参考にした中世ストラテジーゲームぽい雰囲気(Europa Universalis4)を意識して(真似して?)仕上げていきました。
UIデザインとか普段さっぱりなので、作っててちょっと楽しかったです。
ぷちコンを終えて…
ゲーム制作は頭の中でイメージ出来ても形にすることの難しさや、自分のスキルのたりなさをひたすら感じるばかりでとても大変なことなんだと改めて感じさせられました。
とはいえ、様々なチュートリアルに助けられて、短期間でどんどん自分の成長を感じる事ができ楽しいことの連続でもあるなと。
今回終えて自分が次できるようになりたいと思うのは、キャラクターのアニメーションとエフェクトかなと。
ここらへんが扱えるようになるとまた一気に幅は広がりそうです。
また次回参加して、Tシャツゲットしたいですー。