【初心者必見】ゲームの作り方のコツ総まとめ!企画から開発・リリースまでのポイントを全部教えます

ゲームの作り方のコツ総まとめ ゲーム開発

今回はゲーム開発初心者の方向けの話題で、タイトルの通り

ゲームの作り方のコツ(※特に個人開発の場合)

を一通りまとめてみるという内容になっています。

ゲーム開発を始めると

  • いいゲームのアイデアが思いつかないなぁ…
  • 作業しているのにゲームがなかなか完成しない!
  • 作ってみたら大して面白いゲームじゃなかった…どうしよう?
  • 作ったゲームをどこでリリースすればいいんだろう?

といった様々な悩みにぶち当たると思います。チームでの開発なら相談相手がいるのでまだしも、個人開発の場合はこんな悩みが続々と出てくるので困ってしまいますよね。実際私もずっと個人でゲーム開発を続けているのですが、初心者の頃はゲームの作り方のコツが分からず何度も折れそうになったものです。

ただそれでも諦めずに5年間ゲーム開発を続け、35作品以上のゲームを作りまくった結果としてゲームの作り方のコツをつかめてきたので、ぜひその辺のノウハウを初心者の皆さんにお教えしておこうと思いました。そこでここではゲーム開発のコツを企画~リリースまで順を追ってご紹介していきますね。


※以下、とんでもない長文です。

ゲームの作り方のコツまとめ

では早速ですがゲームの作り方のコツを工程順に丁寧にご紹介していきます。ゲーム開発の流れは超ザックリ分けると次の4つに分類できるので、それに合わせて各工程のコツを詳しくご説明する形にしようと思います。

  1. 企画
  2. ゲームエンジン選び
  3. 開発
  4. リリース

それぞれ詳しく見ていきましょう。

企画のコツ

まずは「これからどんなゲームを作るか?」を決める企画のコツです。この工程のコツとしては次のようなものが挙げられます。

  1. 初心者のうちは「ミニゲーム」を考えるのがおすすめ
  2. 無理に斬新なアイデアを出そうとしない
  3. アイデアが固まったら「ゲームの紹介文」を書いてみよう

初心者のうちは「ミニゲーム」を考えるのがおすすめ

一つ目のコツは、初心者のうちはミニゲームを企画するのがおすすめだということです。まずは小規模なゲームを企画する練習を重ねて実力をつけるとよいでしょう。

ゲーム開発初心者の方の中には、たまにいきなり壮大な長編を企画したがる人がいますがそういうのは無謀ですし、絶対にゲームが完成しないのでやめたほうがいいです。長編を作るのはベテランでも難しいので無茶なことはしないようにしてください。

無理に斬新なアイデアを出そうとしない

二つ目のコツは無理に斬新なアイデアを出そうとしないことです。初心者が無理矢理斬新なアイデアを出そうとしても失敗に終わるだけなのでご注意ください。

じゃあどうやって意外性のあるアイデアを考えればいいのかというと、アイデアの出し方としては既存のアイデアに自分なりの工夫を付け加える方法があります。例えば

ゲームとしては堅実なFPSだけれど、自分はガトリングガンを思い切りぶっ放してみたいから「ガトリングガン撃ちまくりFPS」にしようかな

とかそんな感じです。既存のアイデアそのまんまだとクローンゲームになってしまいますが、そこに自分の好みなど「自分なりのこだわり」を入れるとオリジナリティが出て楽しいゲームになります。

アイデアが固まったら「ゲームの紹介文」を書いてみよう

さて三つ目のコツは、ある程度企画が固まったらそのゲームの紹介文を書いてみることです。

自作ゲームの紹介文というとゲームが完成してから書くもの…と思う方がほとんどだと思いますが、実際にゲームを作る前にそのゲームの紹介文を書くことでゲームのセールスポイントを整理することができます。セールスポイントが明確になると

  • ゲームをブレずに作り続けることができる
  • ゲームをリリースしたとき、プレイヤーさんにゲームの面白さが伝わりやすい

といったメリットがあるので予め紹介文を書くことをお勧めします。

ちなみに自作ゲームの紹介文の書き方は下記の記事で詳しくご説明していますので、併せてご覧頂ければと思います。

【ゲーム開発】自作ゲームの「紹介文」の書き方!ゲームの魅力を的確に伝える方法とは?
今回は自作ゲームの宣伝に関する話題で、タイトルのとおり 自作ゲームの紹介文の書き方や注意点 を一通りまとめてみるという内容になっています。 紹介文はゲームのトレーラームービーやスクリーンショットに比べると地味な存在ではありますが、プレイヤー...

ゲームエンジンの選び方

企画が決まったら次はゲームエンジンを選びましょう。選び方のコツは次のとおりです。

  1. 初心者のうちは「特化型ゲームエンジン」がおすすめ
  2. ゲーム開発に慣れたら汎用エンジンに乗り換えよう

初心者のうちは「特化型ゲームエンジン」がおすすめ

まず、ゲームエンジンには大きく分けて

  1. 何でも作れる汎用型のゲームエンジン
  2. 特定のジャンル専用の特化型のゲームエンジン

の2種類があるのですが、初心者の方には2番目の特化型エンジンをお勧めします。というのは特化型のほうがジャンルを絞ってある分だけ、そのジャンルのゲーム開発に必要な便利機能が揃っている場合が多いからです。なのでもし作りたいゲームのジャンルが決まっているのであればそれに合った特化型のゲームエンジンを選びましょう。

例えばRPGを作りたいならプログラミング不要の「RPGツクール」シリーズ(※今後は「RPG Maker」という名前になるそうです)があります。特化型のゲームエンジンはプログラミングができない方でも簡単に扱える場合が多いので初心者の方はぜひ活用するようにしてください。

ゲーム開発に慣れたら汎用エンジンに乗り換えよう

ただしゲーム開発に慣れてくると

  • 別のジャンルのゲームも作ってみたいなぁ
  • プログラミングで自由度の高いゲームシステムを作りたいな

といった欲が必ず出てくるので、そうなったらより高度な汎用エンジンに乗り換えるようにしましょう。

汎用型のゲームエンジンとしては

  • Unity
  • Unreal Engine
  • Godot Engine

などがあります。いずれも汎用性が高く基本的にはどんなゲームでも作れてしまうのですが、そうは言ってもそれぞれ得意・不得意があるためご自身のゲームに合ったゲームエンジンを採用するようにしてください。

ちなみにお節介な注意点ですが、汎用型のゲームエンジンは学習コストが高いので一度決めたら他のエンジンに浮気しないほうがいいと思います。試しに使ってみるくらいなら構いませんが汎用エンジン間の乗り換えは慎重に行ったほうがよいでしょう。

ゲーム開発のコツ

お次はメインとなるゲーム開発そのもののコツについてです。これに関してはたくさんのコツがあるので、次のカテゴリに分けて詳しくご説明しますね。

  1. ゲームプログラミングのコツ
  2. 素材制作・調達のコツ
  3. ゲームバランス調整のコツ
  4. デバッグのコツ
  5. もし作っているゲームがつまらないと感じたら…

ゲームプログラミングのコツ

まず一つ目はゲームプログラミングのコツです。プログラミングが必要なゲームエンジンを使う場合はぜひ参考になさってください。

  1. 必ずゲームエンジンやプログラミング言語の公式マニュアルを確認しよう
  2. 開発環境の機能をフル活用しよう
  3. 読みやすいソースコードを書こう
  4. Git等でのバージョン管理を忘れずに
必ずゲームエンジンやプログラミング言語のマニュアルを確認しよう

ゲームプログラミングではゲームエンジンの独自仕様やプログラミング言語ごとのクセに悩まされることが多いので、詰まったらまずは必ずゲームエンジンやプログラミング言語の公式マニュアルを確認するようにしてください。

公式マニュアルは分かりにくい書き方をしてある場合が多く嫌われがちなのですが、やはり公式の情報なので正確さでいうと最も信頼できますよね。なので調べる順番としては公式マニュアルを当たるのが第一です。

(このブログもそうですが)第三者の情報は二次的な情報となり、勘違いなどが含まれる可能性が出てくるのであくまでも参考程度にするのがよいかと思います。公式マニュアルを見てどうしても分からなければ第三者のブログ・動画等を参考にするという流れがベストです。

開発環境の機能をフル活用しよう

ゲームプログラミングではゲームエンジンのほかにプログラミング用の開発環境(Visual Studio等)を使うことが多いと思います。ゲームエンジンを使ってゲームを作っているとそのような開発環境は単なる「プログラミング用のエディタ」として使ってしまいがちですが、開発環境の便利機能を活用することで開発効率を格段にアップさせることができます。

例えばVisual Studioであれば

  • 「名前の変更」機能で変数名・関数名などを全てのファイルで一括変更
  • ブレークポイントを使って特定の箇所でデバッグを停止
  • コードの補間・改善提案機能でよいコードを素早く入力

といった便利機能があるのでこれを使わない手はありません。開発環境についても何となく使うのではなく色々調べてみることをお勧めします。

読みやすいソースコードを書こう

ゲーム開発に限らず、プログラミングでは個人開発であっても読みやすいソースコードを書くことは重要です。

よくネタとして「とりあえず動けばヨシ!」みたいなことを言いますが、たとえ正常に動くプログラムであってもそのソースコードがグチャグチャのスパゲッティ状態だったら変更を加えたり修正を行ったりするのが大変です。

特にゲーム開発ではバグがつきものなので後で修正することを前提にしたソースコードを書く必要があります。少なくとも分かりやすいコードを書くように心がけましょう。具体的には

  • 変数名や関数名などの「名前」を分かりやすく・正確に書く
  • 改行やインデントのつけ方を統一する
  • 一つのクラス・関数に機能を詰め込みすぎない
  • if文などのネストができるだけ浅くなるように工夫する

といったことを意識して行うようにしてください。

Git等でのバージョン管理を忘れずに

ゲームを作っていると、ゲームシステムに変更を加えたときにミスったりして「やっぱり元の状態に戻したいなぁ」と思うことがよくあります。このような場合に備えて、Git等を活用したバージョン管理を行うべきです。

バージョン管理についての詳細はググって頂きたいのですが、簡単に言うとバージョン管理とは「変更履歴を記録し、必要に応じて元の状態に戻せるようにする」ことです。これを行うことで今までどんな変更を加えたのかがすぐに分かるようになりますし、ミスっても簡単に元の状態に戻せるようになるためメリットしかありません。ゲーム開発はプロジェクトが複雑になりがちなので必ずバージョン管理を行うようにしましょう。

なおUnityの場合のバージョン管理のやり方は下記の記事で詳しく説明しているので、ご興味があれば併せてご覧頂ければと思います。

【Unity】Sourcetreeを使ってプロジェクトのバージョン管理&バックアップを行う方法
今回はUnityのプロジェクトの管理に関する話題で、 Sourcetreeでプロジェクトのバージョン管理とバックアップを簡単に行う方法 をご紹介するという内容になっています。 ゲーム開発のみならずプログラミングの世界では今やバージョン管理は...

素材制作・調達のコツ

二つ目はグラフィックやサウンドといった素材を作る場合や、既存の素材を使う場合のコツについてです。

  1. 素材を自作する場合は時間配分を意識しよう
  2. 使える素材はどんどん活用しよう
  3. 既成の素材を使うときは利用規約やライセンスに注意
  4. 違法な素材を使わないように注意しよう
素材を自作する場合は時間配分を意識しよう

まずゲーム開発を始めるような方はクリエイティブな方が多く、自分で自作ゲーム用の素材を作りたい!と思っている方も多いかと思います。これ自体はとても良いことでどんどんやってもらいたいのですが、当然ながら素材制作にこだわりすぎると肝心のゲーム開発が全然進まなくなるので注意しましょう。

素材制作に時間をかけすぎるのを防ぐためには「この素材は〇時間で完成させる!」と予め決めておくのがよいと思います。たったこれだけでもダラダラと時間をかけてしまうのを防げますし、締め切り効果も生まれて程よい緊張感をもって素材を作れるでしょう。

使える素材はどんどん活用しよう

次に、使える素材はどんどんゲーム開発に活用したほうがいいです。ゲーム開発者の方の中にはこだわりが強すぎて

  • 自作素材じゃないとなんか気に食わない
  • 他人のゲームと素材がかぶるのは嫌だ

という方も少なくないと思います。しかしこのような考え方をしていると素材の制作・選定に時間を取られすぎてゲームが完成しない状態に陥ってしまうことが多いです。結果としていつまで経っても完成しない→もうやめた!となってしまうのがオチですね。

したがって特に個人開発の場合は、時間の節約という観点から見ても使える素材はなるべく活用するのがおすすめです。ただフリー素材は他人とかぶりやすいので、あまり重要でない部分(例えばザコキャラや背景など)に使うようにしてください。メインとなる部分は自作するか有料の高品質な素材を活用するとよいでしょう。

既成の素材を使うときは利用規約やライセンスに注意

他の人が作った素材を使うときは利用規約やライセンスに注意しましょう。

ダウンロード前に必ず利用規約やライセンスをチェックし、内容を理解できた場合だけ素材を使うようにしてください。たまにその辺をまともにチェックせずに素材を使ってしまう人もいるのですが、あとで揉める原因になるのでそういうことは絶対にやめたほうがいいです。素材を使わせて頂く以上はきちんとルールを守って使いたいものですね。

違法な素材を使わないように注意しよう

それから他の人が作った素材を使うときは、それが違法なものでないかを慎重に見極める必要があります。

最近ではレアなケースにはなっていますが、ネット上には既存のゲームから吸い出した素材を勝手に配布しているような違法サイトもありますし、ゲームエンジンの公式ストアでも著作権的に怪しい素材が堂々と売られていることもあるので注意が必要です。また、素材パックのなかに誤って全く他人の素材が紛れ込んでいるなんてこともあります。

この辺は利用者側は確認のしようがないことも多く、対策は非常に難しいのですがとりあえず怪しい出品者の素材は買わないのが一番です。素材を買うときは出品者が本当に信用できるかをよくチェックしてから買ったほうがいいと思います。

ゲームバランス調整のコツ

三つ目は悩みのタネになりがちなゲームバランスの調整のコツについてです。

  1. 作者が「ちょっと簡単かな」と思うくらいが丁度いい
  2. 調整の「軸」を決めておく
作者が「ちょっと簡単かな」と思うくらいが丁度いい

まずゲームバランス調整においては、作者であるあなたが「これじゃちょっと簡単かな」と思うくらいが丁度いいと思っていただいてOKです。なぜなら作者はそのゲームの全てを知っているので、(そのゲームのプレイにおいては)何も知らないプレイヤーさんよりも遥かに有利な立場にいるからです。

例えばボスの必殺技について、作者なら「こういう風に弾が飛んでくるからからこう避ければいいな」と分かりますが、プレイヤーさんにとっては初見殺しになってしまう場合もあるのでその辺に注意してバランス調整を行う必要があります。具体的には

  • ボスがいかにも大技を出しそうな「予告動作」を入れる
  • 当たると大ダメージだが、見て避けられるくらいの速さの弾にする

といった感じですね。これが何の予告もなく高威力の高速弾が発射されるようだとプレイヤーさんからしたら理不尽極まりなく、「こんなの無理ゲーだろ!」と怒られてしまうので作者としてはそこも見越してバランス調整をするように心がけてください。

調整の「軸」を決めておく

次にゲームバランスの調整においては軸を決めておくことが重要です。これはどういうことかというと、例えば敵キャラの攻撃パターンを調整するにしても

  • 攻撃の威力
  • 攻撃の素早さ
  • 攻撃範囲

など色々な変数があるわけで、全部を総当たりで調整するのは時間的に無理ですから「こういう方向で調整しよう」という軸を決めておくということです。

例えばある敵キャラに

  1. 弱いが素早い攻撃
  2. 遅いが強い攻撃

の2パターンがあるとして、2番目のパターンがちょっと強すぎるように感じるとしましょう。そうしたら考え方としては

  • 速度が遅いけど強い攻撃というパターンは変えないようにしよう
  • 強い攻撃なので威力は変えず、攻撃速度をもう少し落としてみるか
  • それとも、攻撃範囲を少し狭くしてみようかな

といった具合ですね。この場合は威力が軸になっているので、そこは変えずに他の部分を調整していくイメージです。もしここで威力を落とすと、弱攻撃の威力が相対的に上昇することになってしまうのでそれはやめた方がいいかもしれません。

…とまあ、こんな感じで軸を決めておくとバランス調整がやりやすいのでオススメです。

デバッグのコツ

四つ目は大変になりがちなデバッグのコツです。

  1. 予めデバッグ機能を用意しておく
  2. 「予想外の操作」を考慮する
  3. 条件式のミスに注意しよう
予めデバッグ機能を用意しておく

まずゲームのデバッグは非常に大変な作業になりがちなので、予めデバッグ機能(要するにデバッグ用のチート機能)を用意しておくことをお勧めします。盛り込みたい機能としては、例えば

  • 特定の地点にワープできる機能
  • 主人公を無敵にできる機能
  • 特定のアイテムを好きなだけ入手できる機能

などがあります。ただし当然ながらチート機能が実際のゲームに含まれたら大変なのでその辺は上手く管理するようにしてくださいね。

「予想外の操作」を考慮する

次にデバッグにおいてはプレイヤーさんの「予想外の操作」まで想定しておくことが重要です。

例えば作者としては正規のルートを通ってもらいたいと思っていても、プレイヤーさんが無理矢理別のルートを通ってゲームを進めようとするかもしれませんよね。このようなときに正規でないルートのことを考慮していないとバグの原因となり、結果としてプレイヤーさんが怒って低評価をつけてくるかもしれません。

したがってゲーム開発においては想定外のことも想定内に収める必要があります。自分がプレイヤーさんの立場だったらどんなことをやらかすかを常に想像しながらデバッグを行うようにしましょう。

条件式のミスに注意しよう

それからこれは初歩的なことなのですが、プログラミングでif文等の条件式を間違えているとバグ等につながるのでデバッグではその辺のミスがないかをよく確認しましょう。

これはプログラミング初心者の方だけでなく、上級者でも条件式をミスってバグを作ってしまうということは決して少なくありません。条件式のミスはコンパイルエラーにならず気づかないことがほとんどなので、ソースコードを見直すのはもちろんですが実際にゲームを動かして挙動をよく確認するようにしてください。

もし作っているゲームがつまらないと感じたら…

五つ目は番外編的な感じなのですが、ゲームを作っていると「あれ、このゲーム思ったほど面白くないな…」と感じることが結構あります。このような場合はどうすればよいでしょうか?

これは個人的な意見なのですが、結論としては「そう思ったら潔くボツにしたほうがいい」と私は思っています。というのも、面白くないと感じたゲームを作り続けても

  • 作っていて面白くないのでモチベーションが下がり、作業効率が低下する
  • 「こんなのをリリースしたら失敗するんじゃないか」という不安が常につきまとう

といった弊害があるのでいいことがないからです。

…確かに作りかけのゲームをボツにするのはもったいないし勇気がいると思うのですが、惰性でダラダラ作り続けても仕方ないので、そんなことをするくらいなら思い切って新しいゲームを作ったほうがよっぽどいいと思います。

リリースのコツ

最後はゲームが完成した後のリリース作業のコツです。

  1. そのゲームに合ったストア・投稿サイトでリリースしよう
  2. 紹介動画やスクリーンショットの作成に力を入れよう
  3. プレスリリースを有名メディアに送ってみよう

そのゲームに合ったストア・投稿サイトでリリースしよう

まずリリース作業にあたっては、そのゲームに合ったストアや投稿サイトでリリースするように公開場所の選定を行うことが重要です。場違いなところでリリースするとなかなかダウンロードしてもらえなかったりするので気を付けましょう。

紹介動画やスクリーンショットの作成に力を入れよう

ゲームの公開場所を決めたら、ゲームの紹介動画やスクリーンショットの作成に力を入れましょう。動画やスクリーンショットはゲームを手に取ってもらえるかどうかを決める重要な要素なので、もし真面目にゲームを販売することを考えている場合は「映える」場面を丁寧に選定するようにしてください。

まあゲーム内容やジャンルによっては動画やスクリーンショットの映え方がいまいちな場合もありますが、そのような場合も面白そうに見えるように工夫しましょう。動画やスクリーンショットがイマイチだとプレイヤーさんはすぐにブラウザバックしてしまいますので、多少時間をかけてでも見栄えの良い見本を用意すべきです。

プレスリリースを有名メディアに送ってみよう

最後はゲームの宣伝に関する話で、少しハードルは高いですが「プレスリリース」を有名メディアに送ってみることをお勧めします。

プレスリリースとは「こういう新製品をこれから販売しますよ」というお知らせをメディアに送付することで、一般的には企業が作るものですがゲーム業界では一般の個人でもメディアに送ることができます。大手メディアに掲載されればかなりの宣伝効果が期待できますし、プレスリリースを送るだけならタダでできるのでこれを活用しない手はありません。ググればプレスリリースの書き方とかも出てくるのでぜひチャレンジしてみてください。

ただしプレスリリースは送ればいいというものではなく、送るタイミングが重要です。ゲームの場合は次のタイミングでプレスリリースを送るのがベストだとされています。

  1. 新作ゲームの発表・もしくはストアページ公開時
  2. 新作ゲームのリリース日決定時
  3. 新作ゲームのリリース当日
  4. ゲームの大型アップデート時

特に1~3まではどのゲームにも平等にあるチャンスなので、もしゲームを真面目に売ることを考えているのであれば必ずこれらのタイミングでプレスリリースを送るようにしましょう。

ちなみにプレスリリースの具体的な書き方や送り先については下記の記事で詳しくご紹介していますので、ご興味があればそちらも併せてご覧ください。

【ゲーム開発】プレスリリースの書き方&送り方まとめ!メディアに自作ゲームのリリース情報を載せてもらおう
今回は自作ゲームのマーケティングに関する話題で、タイトルの通り プレスリリースの書き方と送り方 を一通りまとめてみるという内容になっています。 個人でゲームを開発しているとゲームを売るとなった時に「一体どうやってゲームを宣伝すればいいのか?...

おわりに

以上、かなり長くなってしまい恐縮ですがゲームの作り方のコツを一通りご紹介しました。

ゲーム開発は困難や悩みが尽きなくて初心者の方にとってはとても大変な創作活動だと思います。しかし自分の手でゲームを作り上げることほど面白いことはなかなか他にないと個人的には断言できます。ぜひ上記の内容を参考にしていただき、皆さんも楽しくゲーム開発を進めて頂ければと思います。

この記事がゲーム開発のお役に立てば幸いです。