Ji GukHwan's profile

ダンジョン999F - 開発ノート

はじめまして、僕は韓国で会社に勤めながら趣味でゲームを作っている「門間(Moontm)」と申します。
韓国では以前に本人の結婚式に使うためのモバイルゲーム招待状の「ウェディングラン」というゲームを作って話題になったことがあります。グロバールにも出仕してみましたが、まだ海外では大きく知らせてなさそうです。(汗)

とりあえず、新婚旅行以降今まで5ヶ月間毎日帰宅後、週末全部を使い頑張って作ったゲームが出仕されましたので、ゲームの紹介とまたゲームを作りながら経験したいろんな事項について話してみたいと思います。
このゲームを作るため、好きな酒飲みも、バスケットボールもできなく(冬寒かったからでもありますが)クリスマスや正月まで休まず座りっぱなしで作業することで疲れましたけど、出仕してみると本当に心が楽になりました。
実はプロジェクトをはじめる前までは会社に通いながら開発をするってできるじゃないかなと考えていましたが、言葉だけの一人開発で、周りからの応援と助けがなかったら一人では絶対耐えられなかったと思います。

最初に順次的な開発を進めるプロセスを整理する日誌的なものだったけど、もうゲーム化完成した後に書く開発日誌は記憶も不分明して、過去を美化してしまったりする適当なものになってしまう場合が多くて、思い出すキーワードのまま書いてみました。それで逆に自分的には見やすいものになりましたけど…これから開発をする方にも役に立てれば…と思います。
では、はじめます!
1。グラフィックリソースから確保

本来自分がデザイナー出身だったので、ゲームに関するアイディアを考える時は画期的なアイディアも大事ですが、やはり頭に浮かぶのはどんな雰囲気のどんなトーンのゲーム…ってことを先に考えてからはじめるのが好きです。

もう一つの理由の一つは開発の時リソースの大量制作がそんなに楽ではないので…
みんなでパートを分けて作業する時とはまた違いがあり、グラフィックリソースはゲームにも大事ですが制作する際にも大事なポイントになります。

初期ゲームのトーンと制作プロセスだけ明らかに決めたら、一人でも十分必要なほどのリソースの制作が可能だと思います。
ドットや3Dモデリングをするとかいろいろの方法がありますが、どれが一番とは決めつけることはできませんが、一番大事なのは本人の長所を活用することです。

僕の場合はできるものが3Dとポスト処理なので毎度その特性を活かしたリソースを制作しています。
そのプロセスを説明してみたいと思います。

キャラクター

ゲームにより違いますけど、一般的にゲームで最も大事なのはキャラクターリソース制作だと思います。
よかったのがこのプロジェクトを始める前にちょっとずつ作っていたキャラクターがありました。
当時、ドットでも3Dでもない曖昧な感じで制作したもので、長い時間Workフォルダーに入れて置いたままでした。

でも、作業する時作っていたプロセスがとても速くできるものだったので、(1日1キャラクターアニメーションまで制作)そのプロセスを今回も使用することにしました。

このキャラクターを作る時自分はこのプロセスを利用します。

スケッチ→モデリング→レンダリング→ピクセル化→補正、エフェクト追加→スプライト

ではまずスケッチから…フフ…
落書き?!?って思われると思いますけど…僕は描くのが下手なんです…本当に…。
3Dで作業する理由もそのため…。

まあ、頭の中でモデリングする前に必要なほど、描いた後モデリングをします。
モデリングが終わったら関節を作り上げアニメーション作業をします。
3Dの長所の一つはやはり一回作ったら再活用が便利なことです。
もちろんキャラクターによる変化をさせるんですけどね。これから何回もいうと思いますが、一人開発の時一番大事な最初の時間に妻帯の作業をするってことの…!…悪くない選択だと思います。(自己合理化…汗)
このようなモデリングとアニメーション作業が終わったらレンダリング作業をします。
結局2Dの感じで最終リソースを作る予定なのでレンダリングの設定は簡単に使用しました。
各アニメーションのパート別に名前をちゃんと設定しておいた方があとから片付けられやすいってことがとても大事です。
それじゃないと、レンダリング後どこからどこまでが本人が使うパートか探すのが大変です。
レンダリング終わったリソースをアフターエフェクトみたいなToolで外角線を描いて顔を作ってあげたら完成!!
以前には顔の表情なども3Dで処理してましたが、今回のプロジェクトからは目、鼻、口など一フレームずつ設定してみました。
明らかに時間は2倍以上かかりましたか、そのままレンダリングするときに比べ、最もアニメ的な表現ができました。

 
-
主人公を作りましたのでゲームに使う最も大事なスライムを作らなければですね。
スライムもまずスケッチからはじめます。 
はい…。
実は頭の中でどんな風に作ろうって思い終わったら、スケッチを…適当にやり始めます。
主人公を作った時のと同じくスライムのモデリングと簡単なアニメーション作業をして、
レンダリング後映像Toolのアフターエフェクトで、表情また周りのラインとエフェクトを別で描きます。
本業がアニメーターではないので、完璧ではないけど、あるほど使えるものがきたと思い本格的に大量生産モード作業をはじめました。

簡単に書きましたが、このようなプロセスを作るまでいろいろテストしてみましたが、みんな自分に合う一番楽なプロセスを作ることが大事なので必ずこのように作業する必要はないと思います。

さあ、大量生産を決めたので…単純なスライムの形をいろいろ作ってアニメーションを適用させレンダリングをしました。
どこか、コピーペーの臭いが…(笑)
先ほど作業にリソースだけちょっと変えて色変換後、顔をちょっとずつ変えていろいろなスライムを作り始めました。
話ではいろいろっていうが…コピーペーです。(笑)
最初からゲームの主モンスターをスライムにしたこともリソースの節減をするためっていうこともありますね。
-背景リソース

キャラクター作業やもともと好きだった作業でゲームの必須的な要素なので作業しましたが、ゲームの背景は実はあまりすぐすすめれないです。もちろん雰囲気に合わせるため直接作った方が一番ですが…
本業でもありUnityのassetstoreっていうグラフィックリソースを販売するストアーでいろいろなものを見ていましたので、今回会社の仲間のお勧めでこんな世下げのマップエディターを発見しました。
直接使ってみたらとてもちゃんと作られたマップエディターでした。 PhotoshopのペンToolみたいに地形を編集するとか、いろんないい機能がありましたが比較的に簡単なゲームのダンジョン999Fにはこの高級エディターをそのまま使うには重い気がしました。 ダンジョン999Fに必要なものはマップエディティングより単純な地形テクスチャーだけだったので、簡単に中のテクスチャーだけを利用し違うタイプのマップを作りました。
もしくは僕のように外部からのリソースを使用する予定でしたら、外部リソースを素のまま使うよりは自分に要るものを編集して使用する方がゲーム容量や効率的にいいと思います。
-アイテム

アイテムのイメージなどは本当によく作られている外部リソースが多いので、作ってみようかともおみましたが、いろいろありすぎるものを集めて使う時、全体的なゲームの雰囲気を崩壊する恐れがあり、基本的なイメージ何枚は自分で作ることにしました。もちろん一人開発なのにこんなところで時間を使うのはもったいないけど、練習だと思いやってみました。

まず、簡単なスケッチをします。
アイテムはモデリングまでする必要まではないと思い、そのままペンToolを使うために頑張ってディテール(?!)に描いておきました。
スケッチが大体終わったらPhotoshopなどのグラフィックToolを利用し作業します。 こんなイメージを作る時は大きく二つの方法があると思いますが、直接ペインティング(描く)をするか、ペンToolを利用し一定範囲を塗りながらベクターイメージで制作する方法があります。 個人的にはリソースの再活用がとても大事だと思いますので、ペンToolでベクターイメージで制作します。 (実は描くのが下手すぎて…) ベクターイメージの場合、作業量は結構ありますが、後からイメージを拡大したりしても数値の調整であるほど割れないきれいなイメージを作れる長所があります。 一人開発の特性でいつまたどんなイメージを作るかしらないので、どんなリソースも再活用できるように作って置く方が大事だと思います。
アイテムはベクターでつくりましたけど、スキルアイコンの場合写真を縮小して作ったもので仕方なくペインティングしました。
下手なペインティングで描いたもので…イメージが拡大したら悲惨に割れる状態が…僕のような方は最初からベクターで作った方がいいと思います。(泣)
以外にもグラフィックリソース制作に関するいろいろの話がありますけど…
これ以上書く…力が…っていうか、言った通り正解っていうのがないもので自分の得意を活かして制作するのが大事だと思います。
重要だと思うのは一人開発のため、最初に時間を使って最大のイメージを作る方法、つまり効率っていうのが一人開発のグラフィックリソース制作の一番の優先順位ではないか…と個人的な意見です。
2。人代わりの効率的なTool

グラフィックリソースほど大事なものは効率的な作業Toolを選択することです。
一人開発の特性で、分業化されてないので一人ですべての作業をしなければならないこと。
そのため、人代わりの効率的なプログラムを選択することが何より大事だと思います。
一人で開発するって言ってもグラフィック以外にも無数のデータ、スケジュール、文書を管理しなければならないので…。
個人的に開発してみながら一番効率的に感じてたToolを紹介します。
- Unity
 
前に作業をする時はネイティブで直接コードを作成するか、エンジンを作って制作をしている方も多かったらしいですけど、最近は開発のためのエンジンが結構安くなり、エンジンを購入試使用することが一般化になったようです。
さらに、インディの開発者には無料のエンジンもいっぱい…!!
まあ、Unityの職員でもあり開発エンジンでは当然Unityを選択しました。
実は職員だからではなく、自分のようにプログラマーベースでない人が開発するには一番適切なインターフェースを持っているためです。
コンポーネント形態の開発なので、最初作って置いたコードを再使用するにも便利で時間がない開発者には最適で、いろんなモバイルプラットフォームにも対応できるプラグイン(フェイスブック SDKなどいろんな広告モジュール)がいっぱいで一人で開発する時Unityを使うと難しいネイティブコードをつる時間を節約できる最高の長所があります。
たまにはプラグイン制作者に外注してるようなかんじもしますが… 
- Google drive
 
一人で開発をしてみると、結構忘れてしまうのがデータの管理と思います。
どんなにえらいゲームをを作るってデータ管理まで気にする…って言われるかもしれませんがどんなゲームでも数値は必要です。
今までは適当、適当―――――――につくってみたら、後からバランスの調整が最悪になってしまいました。
Excelを使ってもいいですが、グーグルのスプレッドシートを使用したら移動や外出の時も作業ができますので時間が足りなくなりやすい一人開発者に効率的なデータ管理環境が設定できます。
最近はプラグインの中でグーグルドライブと実際ゲーム内のキャラの情報を連動してくれるToolもありますのでもっとシナジーになれるとは思いますけど、安定性と保安性のことで進めまでは…どうでしょうね。
- Trello
本来、チーム作業などでテスク中心でスケジュール管理をすることでとても!!!!有名なToolです。
しかし、個人的にまじめで自己管理が徹底な人ならいらないのかな…とも。
実は一人で作業すると、ここにテスク入力するものさえ時間がもったいないと思うかもです。
もちろん本人はそんなにまじめだとは言えないので「Trello」を適切に使用しました。
特に会社に通いながら、開発をする場合会社のリズムと混じりこみ今何をやっているのか思ったりすることも多くなりますね。
Trelloを使用するとそれでも自分が今までどのぐらい作業をしたか、これから何をしたらいいっていうことが一目にわかりやすく片付けられますので、満足感もありのんびりになりそうな自己管理に結構助かります。
もちろん!自己管理が徹底な人にはTrelloを使う時間さえもったいかも…ですが自分はいつそんな人になれるのか…。
3。いろんなプロットタイプのテスト

今回開発する時一番大きく感じたことです。
結構僕はプロットタイプを色いる作って、毎度最初に作ったものがもったいなくて持っていくって決めたのが多かったりします。
僕だけではないかなって思うことが、1人開発の場合何人か一緒に作業をしているわけではないので、チームの作業よりブレイクなしで、私は面白いからみんなも面白いやろ!と危険な考えになってしまうこともありそうです。(僕だけかもですが…。)

今回のプロジェクトが2か月間一次プロットタイプを基盤に制作を進んだら、超面白くないって怒られ…完全に新しく作業をしてみましたものの…

必ず!最初のプロットタイプにこだわらずにいろんなタイプを作ってみることをお勧めします。
一つやり終わって失敗するよりいろんなタイプを作って選んでみて関せする方が成功率が高いんじゃないでしょうか…。
(本人もまだ成功っていうのは…まですが…(泣))

まあ、ダンジョン999Fの初期は本当に今完成したゲームとは違うものでした。
ちょっと変な感じですね今見たら…さらに、主人公の比率もおかしいですね…
このようにタッチでジャンプをするプロジェクトでした。
長押しで長くジャンプ、短くタッチしたらショットジャンプをするシンプルなゲームでしたが…
あまりにも僕にも面白くなくて…
UIの問題かなと思い改善もしてみたり、ロビーで簡単なタップを利用したミニーゲームも作ってみましたが…
ゲームの根本的なプレイを変えないと全然改善できなさそうだったです。
なんかちょっとだけ変えたらよさそうだけど…って言われてもそのちょっとっていうことが結局ゲームの中では結構の医影響を与えるものなのでそのちょっとを探すのに時間をかけるより、完全に違う方法のプロットタイプを制作するのが早いと思い、新しいタイップを作ることにしました。

いろいろアイディアがでましたけど、その中メインのものはウェディングラン(前作)を作った時のようにひとりより二人をコントロールするゲームにポイントを合わせ新しく進んでみました。
こんなデュアルスティック…というとんでもないこともないことも考えてました。

スティックつで二人を別々にコントロールするっていう…怖いアイディアでした…。
このように作業することで今のゲームの形になり、また大事なフィードバックが来たもので、それは女キャラの追加して欲しい!!!っていうフィーどバック。

プレイをしてみた人のみんなが一人でも…魔法師でも女になってほしいって言われ、結局魔法師はローズっていう女の子の魔法師になりました。可愛いとかきれいなキャラでもないですが、今までの反応を見たらもしそのまま男キャラで出仕されたらどうだったのか…と思うほどローズのフィードバックがよかったです。
結論が急に女キャラの話に代わってしまいましたが…(汗)
…とりあえず、最初より確実にいろいろのタイプを作った後選択したことが本当に安定的に作業できたっていうことです。
絶対最初に作ったプロットタイプを捨てることを惜しくは思わないでください!!明らかにいい土台になります。
4。自動戦闘とバランステスト

1人開発の苦労の一つはレーベルデザインとバランス作業だと思います。

実は開発者の方はご存じだと思いますけど、自分が作ったゲームほど自分がやりたくない気持ちになったり…
まるで、ラーメン屋さんの子がラーメンが飽きすぎて食べたくない…っていうような。

だけど、やらなければならない999階のステージのバランスを合わせるため、数値だけでは確認できないものが多く、直接シミュレーションをしなければならなかったです。

それでテスト用で作ったものが自動戦闘システムだったんですが…
実は最初はゲームには自動戦闘を入れる計画はまったくだったです。
…がテストで使用してみると、これが意外に面白く意外に楽でいつの間にか入れることになりました。(笑)

それで、いちいちすべてのステージを直接プレイする時間を節約し、自動戦闘とステージに合わせて適切なバランスを合わせてくれるコードを作成し、テスト、各ステージのクリア時間を合わせるものでバランスを調整しました。
上のコントロールウィンドウを見たら、記録したディバギングコードがでますけど、各ステージ別に約20秒ほどを残し、クリアできますように合わせて適切なレーベルになるようにつくりました。

もちろん時間が過ぎてしまうとか、残りすぎる場合自動にレーベルを変更してテストをするようにするとか、ステージのレーベルを設定するのに、自動戦闘は結構助かりました。

しかし、一定なバランスを設定してからも、個別的に手動でバランスの調整する方がゲームの面白さを作るにはよかったです。特に最初ステージのあるほどまではできるだけ易しくした方が助けになったと思います。
5。 開発以外に準備するもの

実はゲームを出仕するにあって、開発以外にもやらなければならないものがいっぱいです。
マーケットに出すイメージや映像の制作や、ゲーム紹介や…広告のための資料の作成も忘れてはいけないです。

本当にいろいろありますけれども、何一つちゃんと終わらせないと、逆にゲームは作られても完成ができなく疲れてしまったりします。僕もいつも最後の締めが弱くて適当になってしまったり…

最後まで頑張って完成するため、開発が終わるごろ1人開発者がゲーム登録と広告のため準備することはこんなものがあるって知って置いたらちょっとは安心でしょう。
大きいサイズのスクリーンショット確保

何もないって思っていただけるかもしれませんが、最大5枚まで登録できるアップストアーの場合はその5枚をどんなイメージで入れるのかが結構悩みになります。
さらに、ダンジョン999Fは移動やモーションが多くてきれいな、使えるショットが出る時に撮るのタイミングがいつも変わってくるので今だ!って思ったら撮って置かないと難しかったです。

映像制作のためのプレイクリップ収集

これも思ったより難しかったです。
今の時期本当に大事に言われている映像制作なんですけれども、一つのTIPっていうと、録画の時は必ずゲームのBGMを消してから録画をした方がいいです。あとからサウンドが混ぜてしまい編集の時雑になってしまう可能性がありますので…。

マーケット登録用文の作成
実は僕はあまりにも文を書くのが下手で、難しいです。
今回も何回も書き直したのか…でもまた読んでみたら直したくなると思います。もちろん僕だけではないと思いますので、登録の時の文の場合は最後に慌てて書くよりは何回も書いて何日後かまた読んでみて直したりする方法で文をきれいにして置くことが最もゲームを表現できるのではないかと思います。

適切なコミュニティー活動
今活動している、この広告のような国苦じゃない広告の役割のこのコミュニティーの活動です。
実は大体は結局広告かぁ…ってズルーされてしまうかもしらないけど本人が直接書いて、ゲームのことを知らせた方がもっと大事たと考えてます。今は本当に毎日無数のゲームが出てくるこの時、本人が作ったゲームは本人も頑張って知らせや広告をしないと、本当に面白いゲームも誰も知らないまま過去の跡になってしまう可能性が高いからです…。(実は僕も経験したもの…)
それで、長くなっていますが…
本当に久しぶりにちゃんとできたゲームを作り出せましたのでうれしい気持ちの表現だと思っていただければ…と。

最後は今まで作業の事務室になってくれたパソコン部屋の写真です。
本当に最後ですが…
ゲーム開発のと同じのように長くなりましたね。
実は有料ゲームなので、ダウンロードを強要するのも悪いと思いますけれども、それよりこのように作業していましたってことを紹介したかったです。

ってことにはなりますが、やはりここまで頑張って作ったので面白くないかな?と思っていただいてプレイしていただいたら…とも思います。(笑、実はこれも本気で…)
 
+ Game introduction 
 
 
長い文ですが、ここまで読んでいただいて本当にありがとうございます。

Ps.このような開発日記は韓国語でありますが、ブログとフェイスブックにもコツコツ書いていますので、
気になる方は気軽くよっていただいたらうれしいです。それではほんとここまで。
 
 
 
ダンジョン999F - 開発ノート
Published:

ダンジョン999F - 開発ノート

これはダンジョン999Fの1人の開発に対する開発のノートです

Published: