業務プログラマがゲームを完成させられない本当の理由|課題解決型思考の落とし穴

コードは書ける。なのに、ゲームだけ完成しない

プログラマー歴33年。COBOLから始まって、VB、C#、ASP.NET。お客様の会社の請求や在庫を支える業務システムを、ずっと書いてきました。

便利なアプリなら作れます。『らくらく宝くじ確認』も『EasyEyeBreak』も、リリースまで漕ぎ着けました。

なのに、ゲームだけが完成しない。

長いあいだ、この矛盾に悩んできました。Unityは何年も触っている。C#も書ける。アセットも買った。プロトタイプまでは作れるんです。キャラクターが動いて、ジャンプして、敵を倒せる。「おお、動いた!」と感動する。

そこから先が、続かない。

「で、このゲーム、何が面白いんだっけ?」

その問いに答えられなくて、手が止まる。そしてプロジェクトフォルダだけが増えていきました。

今日は、その原因を自分なりに分析した話をします。**技術力の問題ではありませんでした。**思考の型の問題でした。

目次

アプリは作れるのに、ゲームは止まる理由

整理してみて、はっきりしたことがあります。

『らくらく宝くじ確認』は「宝くじの当選確認が面倒」という課題からスタートしました。『EasyEyeBreak』は「在宅ワークで目が疲れる」という課題から生まれました。

課題が明確だから、ゴールも明確。あとは技術で解決するだけです。

ゲームには、それがありません。

アプリ開発ゲーム開発
目標便利な機能の実現面白さ・爽快さの実現
出発点課題・不便世界観・体験
成功の基準「便利になった」「楽しい!もう一回!」
完成の判断要件を満たしたら完成満たしても面白くなければ未完成

最後の行が、決定的でした。

業務システムでは、要件を満たした時点で完成です。33年間、私はそれを繰り返してきました。仕様書があり、それを満たすコードを書き、テストが通れば納品。この型が体に染みついています。

ところがゲームでは、要件を満たした時点がスタートラインなんです。動くようになってから「面白いかどうか」を延々と調整する。そこが本番。

アプリ開発では強みだった「課題解決型の思考」が、ゲーム開発では足かせになっていた。これが私の結論です。

私が止めた5つのプロジェクト

恥ずかしい話ですが、証拠として並べます。今なら、止まった理由が説明できます。

① 傾き操作のボール転がしゲーム
スマホを傾けてボールが転がる。動いた。で、何が面白いの? → 放置

今なら分かる理由:「傾けたら転がる」は技術の実現であって、遊びの設計ではありませんでした。要件を満たした=完成、という業務の癖がそのまま出ています。

② Candy Crush風マッチパズル
7色のブロックが揃うと消える。動いた。でもCandy Crushでよくない? → 放置

今なら分かる理由:お手本の「動き」は写せても、「なぜ面白いか」は写せません。業務なら既存システムの仕様を正確に写せば正解ですが、ゲームでは仕様を写しても面白さはついてきませんでした。

③ 釣りゲーム
魚が釣れる。動いた。だから何? → 放置

今なら分かる理由:機能が揃った時点で「終わった」と思ってしまいました。ゲームでは、そこからが本番だったんです。

④ ローグライクRPG
ダンジョン生成できた。敵も出る。でもバランス調整が無限に思えて → 放置

今なら分かる理由:業務システムには正解があります。計算が合うか合わないか、それだけです。でも「面白い」に正解はない。終わりが見えないことが、単純に怖かったのだと思います。

⑤ リズムゲーム
音に合わせてブロックが降ってくる。動いた。でも曲を用意するのが大変で → 放置

今なら分かる理由:面白さの大部分が「音楽」という、自分の強みの完全に外側にあるものに依存していました。最初の企画の時点で無理があったんです。

並べてみて、共通点に気づきました。5本すべてが、アクション寄りのゲームです。面白さが「操作感」に宿るジャンル。

そして操作感の設計には、データ構造も状態遷移もルール設計も、業務で鍛えた武器がひとつも効きません。得意な道具を一切持たずに、毎回戦場に出ていたわけです。

それでも、作りたかった

じゃあアプリだけ作ってればいいじゃないか、と思いますよね。私もそう思ったことがあります。

でも、子供の頃からの夢が「ゲームを作ること」だったんです。

ファミコン世代。信長の野望に夢中になった少年時代。「いつか自分でゲームを作りたい」——その夢だけは、50代になった今でも消えていません。

アプリを作れるようになって嬉しい。でも、それは夢の代わりにはなりませんでした。

だから何度挫折しても、またUnityを開いてしまう。

抜け出すために変えた3つのこと

長い停滞のあと、ようやく完成させられるようになりました。変えたのは、技術ではなくアプローチです。

① 自分の強みに合うジャンルを選ぶ

アクションをやめて、シミュレーション・戦略ゲームに切り替えました。理由は単純で、SLGの画面構造は業務アプリとほぼ同じだからです。マスタデータがあり、状態遷移があり、イベントロジックがある。33年の経験が、そのまま武器になりました。

そうして完成したのが『三国志ミニ』です。詳しくはこちらに書きました。
なぜ私のゲームは完成しなかったのか——そして完成した『三国志ミニ』

② 環境を軽くして、AIと組む

もうひとつは、Unityを一旦離れたことでした。ブラウザで動くPhaserに切り替えたところ、環境構築の重さから解放され、AIとの相性も一気に良くなりました。結果、2本のゲームを完成させられました。
ゲームが作れなくて悩んでいた私が、AIと一緒に2本作れた話

③ 新しい技術に飛びつかない

これが一番大きかったかもしれません。私は昔から「3Dで作ろう」「新しいエンジンを試そう」と、新しく高度なものに手を出しては失敗してきました。

今は横井軍平さんの「枯れた技術の水平思考」を座右の銘にしています。実績があって単純な技術を、新しい使い方で活かす。この方針に変えてから、完成率が明らかに上がりました。

最後に

技術力と創造性は別物です。プログラマーなら誰でもゲームが作れるわけじゃない。私のように「コードは書けるけどアイデアが出ない」人間もいます。

でも、原因が分かれば、対処はできます。アイデアが出ないのではなく、自分の強みが効かない土俵で戦っていただけでした。

苦手なら苦手なりのやり方があります。強みが効くジャンルを選んでいい。アセットを使っていい。AIと組んでいい。お手本を真似ていい。

まずは1本、完成させる。50代からでも遅くありません。

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!
目次