778a0aの日記

戦略シミュレーションゲーム開発、本の感想、ソフトウェア技術についてなど

betrayer2: 開発過程のまとめ

前回同様、「betrayer2」の開発過程をまとめておきます。ほぼ個人用のメモです。

おおまかには、

  • 2024年8月から開発を始めて、
  • 2024年11月に軍勢の移動処理や経済などゲームのコア部分を実装が終わり、
  • 半年間ぐらい中断があって、
  • 2025年5月から再開して各種アクションやUIの実装を進め、
  • 2025年10月頭ぐらいからテストプレイや細かなブラッシュアップを行って、
  • 2025年10月31日にリリース

という流れでした。

2024年8月 開発着手・マップ実装

7月に前作「betrayer」の英語版のリリースを終えて、8月から「betrayer2」の開発に取り掛かりました。

マップのヘックスタイルの実装や、城などのデータ構造の実装を進めました。

2024年8月頃の開発画面

(当時のメモ)
今月はタイルの作成と簡単なゲームループ・UIの実装まで。今回は色々独自仕様を入れようとしているので、面白くなるか不安・どう作ればいいか悩んで進みが悪い

(その他雑記)
  • 生活を朝型化しようとしてうまくいかず、色々効率の悪い時間の使い方をしている
  • 目標を宣言して自分を追い込むため、microblog.pubを建てて進捗を書き込むことを始める
    • しかしmicroblogの改造にハマってしまって一回休み
  • 無理な体重管理をしているのも相まってかなりやる気が出てなさそう
    • おかげで体重減少はそれなりに順調そう。ただ本末転倒
  • ゲームの無駄時間も多かった。太閤立志伝V DXをようやく遊んでいた

2024年9月~10月 軍勢実装・キャラ追加

基本的なアクションの実装や、軍勢の実装などを進めました。

EditorWindow(IMGUI)で編集機能を作って、城の配置やキャラのパラメーター調整を行っていました。初めて本格的にIMGUIを使いましたが、手軽に編集UIが作れて、GitHub Copilotの補完機能との相性も良くて便利でした。

EditorWindowの様子1

EditorWindowの様子2

また、勢力数が増えたので、登場キャラを増やすためにキャラ画像の生成・追加も行いました。前作では画像生成に無印版emiを使っていましたが、emi 2.0emi 2.5も試してみました(そのときの実験メモ)。結局無印版emiの生成結果が一番バリエーションに富んでて良い感じだったので、無印版emiを使ってキャラ画像を生成しました。

ただ、まだあんまり順調に進んだわけではなく、モチベ不足に苦しみながらなんとか開発を進めていました。(当時メモ

(その他雑記)
  • 9月頭にやる気の上がらない原因・問題点を整理している
    • (無茶な体重管理、無駄な英語記事閲覧、生活朝型化の難航等)
  • ただ結局太閤立志伝V DXに手を出して時間を無駄にする
    • 太閤立志伝Vはやっぱり面白い😭
  • 10月に入ってから徐々に開発に取り組めるようになる
  • 食事は省エネ状態にならないよう気をつけてかなり改善した
  • 運動と開発のバランスに苦慮している
  • 10月後半にまとまった時間が取れて、いい感じに進む
    • 実装が面白いところに差し掛かったからとメモに書いてあるけど、生活習慣の改善も大きい気がする
  • 年内リリースを目指してそれなりに進められた

2024年11月 AI実装

AIキャラの動作を一通り実装して、全自動でゲームを長時間進行させるのを何度も繰り返して、AIの思考の改善や軍勢・戦闘処理のバグ修正や内政のバランス調整などを行いました。

この月は割と順調に作業が進みました。

(その他雑記)
  • かなり順調
  • 無酸素運動を試している
  • ノイズキャンセリングイヤホンを付けて寝るとよく眠れるようになることに気付く
    • → 耳栓を買って着けて寝るようになる(かなりいい感じ)
  • 健康診断で色々数値が悪いのを見て気を引き締める
  • ツールづくりのためにBlazorを試す
  • オーディオブックで適当な本を読む
    • これはいいとも悪いとも言えなかった。忙しすぎる気がする。静かな時間も大事だと思った

2024年12月~2025年4月 進捗無し

(忙しかったので進捗はありませんでした)

(その他雑記)
  • ぼちぼちAIコーディングエージェントについて調べはじめる(Roo Code、Replit等)

2025年5月 再開・仕様簡略化

ようやく開発を再開しました。

元々お試しで「兵糧」「城安定度(治安)」「町建設」などの要素を実装していたのですが、あまりゲームの面白さに寄与しない感じだったので、削除してゲームの仕様を簡略化しました。(そのときのメモ)

この変更でだいぶん独自色が弱くなって、お手本の「NeoDeserter's PLUS」のゲーム性に近づいていきました。

(その他雑記)
  • 色々生活が崩れていたので立て直す
  • とはいえ食生活が終わっているのでまだ活力は全然無い
  • 気力が出ないので読書が多め
  • やる気が出ない原因、ゲーム開発の阻害要因をまとめているけど、栄養のことには触れられていない
    • 読書、本の自炊、ブログ投稿再開どうするか、運動、AI関連のお試し、情報収集などなど、色々気の散る要因が多い状況だった
  • 運動を久しぶりに再開したとのこと

2025年6月~8月 UI実装着手・地名付け

UIの実装を進めていきました。前作同様、UI Toolkit + Rosalinaで作っていきました。また、Claude Codeも本格的に利用しはじめました。Claude CodeはUI Toolkit + Rosalinaとの相性もバツグンで、かなり作業が捗りました。このあたりの話は別記事(後日投稿予定)の技術解説で詳しく紹介できればと思います。

前作より画面の数も複雑さもかなり増しましたが、Claude Codeに手伝ってもらったおかげでなんとか作り切ることができました。

Claude Codeに初めて作ってもらったUI(画像右側)
(かなり良い感じ)

7月まではあまり気分も乗らず進みが悪かったのですが、8月から生活習慣を改めて、ちゃんとした食事・睡眠・運動を心掛けるようにしたら、やる気も回復して開発が捗るようになりました。やっぱり健康的な生活は大事だと思いました。

(8月頃のメモ)
開発については、地名付けや行動画面のUIができてきて、だいぶん完成までの道筋が見えてきた。あとは各アクションのUIと処理を実装したら、AIやバランスの調整が主になっていきそう。9月中にほぼ完成まで持っていって、10月は仕上げやタイトル画面の作成などにしていきたい。

(その他雑記)
  • 6月はまだ栄養状態が悪くて低活力
  • また朝型化を試そうとする
    • これはエネルギー不足で夜にやる気が出ないことの裏返しだったんだと思い返して気付いた
  • 6月末からClaude Codeを本格的に使いだし、UI作成を進める
    • まだ画面構成は固まっていない。Claude Codeと一緒に探索的に画面を作っていった感じ
  • 7月はたぶん一番食事が終わっていた時期
    • なのでほとんど進捗無しで、成果はせいぜい読書程度。「不思議と本だけは読める」とのこと()
  • 8月頭にようやく栄養不足・運動不足が全ての活力不足の原因だと突き止める
    • 「ちゃんとした食事とか運動とか面倒だったけど、必要経費だったと分かった」
    • 意外とこういう必要経費は多いし、疎かにしてはいけないと分かった
      • 開発が本当に乗っているときは、睡眠とそれなりの食事さえ確保すれば何の工夫もなく開発を進められるけど、そんな状況は多くは訪れないし、長期的に持続可能でもない
      • 無駄に思えるけど、ちゃんと栄養ある食事を取り、しっかり運動に時間をかけて体を疲れさせて十分な睡眠を取ることが大事、という当たり前の事実を一度見失ってようやく取り戻せた
      • 運動も大事なことに改めて気づけたのも大きな進歩だった。9時から23時ぐらいまでぶっ続けで開発できればさすがに体も疲れて7時間ぐらい睡眠できるけど、そうでない普通の生活だと体が疲れてなくて6時間ぐらいしか眠れない。その睡眠量は頭の疲労回復には不十分なので、開発時間を削ってでも運動して体を疲れさせて睡眠時間を確保しないといけない
        • 今のところは7時間睡眠を心掛けている。7時間を下回ると自覚できるレベルでパフォーマンスが下がる。気を抜いて運動を怠るとすぐ6時間半睡眠とかになってしまうので、運動もしっかりしている。できれば7時間半睡眠を目指したいけど、それを実現できる運動時間の確保はだいぶん厳しそう
    • 夜なかなか開発する気が起きなくて、どうやって昔はあんなに開発できていたんだろう(その頃もモチベと戦いつつではあったと思うものの)と不思議で仕方なかったけど、ちゃんとした食事を取ると24時まで何の問題もなく開発できるようになった
  • 8月末時点で地名の検討、城情報パネルUI、目標選択UIなどを終わらせる
  • 10月になんとしてもリリースすると決意する

2025年9月 UIほぼ完成・ブラッシュアップ

10月のリリースを目標に設定して開発を進めていきました。

UIも粗方できてきて、ある程度遊べるようになってきたので、デバッグも兼ねたテストプレイを繰り返して、ひたすらUIやAIのブラッシュアップを行っていきました。

(9月頃のメモ)
ゲーム開発は、大方のアクション実装やUI実装が終わってきた。後はバランス調整や、細かなタスクの消化が主。バランス調整がどんな感じなのか、通しで遊べるのかなどまだ未知数なところがある。状況次第では大きく変更が必要になるリスクがあると思っている。

ともかく10月中のリリース目標は固持して、10月いっぱいまで頑張って取り組んでいきたい。

できれば10月の早い段階のリリースを目指していたけど、今の感じでは10月後半ぐらいまでかかりそう。できる限り前倒ししたい。ただ、納得の行く出来になるまで妥協はしたくない。どれだけ遅くても、10月いっぱいでけりをつけたい。

(その他雑記)
  • NeoDeserter's PLUSで遊ぶ
    • 忘れていたゲームの面白さの部分や、思い違いをしていた仕様などが色々見つかる
  • NeoDeserter's PLUSのプレイ感に近づけるように改造を行う
  • 去年から続けていた23時就寝の目標を放棄する
    • それだけ夜に気力が保てるようになってきたということ
    • とはいえ24時超えが続くと睡眠不足になるので23時半~24時半ぐらいには寝られるように心掛ける

2025年10月~ 最終調整・リリース

バランス調整や、欲しい機能の実装などをひたすら繰り返しました。

バランス調整、特にテストプレイが大変で、通しでプレイすると数時間はかかってしまうので、結局リリース前に2、3回ぐらいしかテストプレイはできませんでした。もう少し大きな規模のゲームになると、必要なテストプレイ時間が大変なことになりそうだと思いました。

10月最終日になんとか納得のいく水準まで作り込めて、無事unityroomにてリリースできました。

おかげさまで前作よりも好評そうでunityroomの閲覧数の伸びもよく、11月14日時点では閲覧数2135、評価数2、コメント数8(作者返信4含む)でした。betrayer1をやりこんでくださった方々からの嬉しい要望コメントや感想コメントもいただけて良かったです。

テストプレイの様子(クリア画面)

また、betrayer1も改造して、ゲーム内に新作リリースのお知らせを追加したり、betrayer2のキャラが出てくるボーナスシナリオを追加したりしました。

今後について

次は「高機動幻想ガンパレード・マーチ」のようなゲームを作ってみようと思います。また、コメントで頂いたbetrayer2の要望なども対応していこうと思います。

ただ、またしばらく時間が取れなくなりそうなので、いつできるかは分かりません...。5年掛かってでも作りたいとは思います。時間を見つけてコツコツ開発を続けていきます。

終わりに

前作の振り返り記事を見返して、「このゲームを作りはじめたときは、戦略シミュレーションゲームの作り方なんて皆目見当もつかず」と書かれているのを見て、ああそうだったんだと感慨深くなりました。あれから2本の習作を作ってきて、多少は戦略シミュレーションゲームの作り方を覚えられた気がします。

今回の開発ではClaude Codeにかなり助けられました。モチベが上がらないときや疲れ果てて頭が動かないときも、Claude Codeに実装をお願いしたら80点~95点ぐらいのコードを書いてくれ、それを手直ししているうちにモチベが復活してきて作業を進めて、また疲れたらClaude Codeにお願いして...、ということを繰り返して開発を進めました。開発終盤ではちょっとした雑用レベルの変更(特にUI周り)はほとんどClaude Codeに任せていたと思います。

また、前作は約3ヶ月程度の開発期間ということもあり、割と勢いで乗り切った感がありました。今作は開発期間も長くなり、特にゲームの仕様やUIの仕様を固められていない時期はなかなかモチベも上がらず苦しみました。

開発の終盤になって「開発のモチベの維持には十分な食事・運動・睡眠が大切」という極めて平凡かつ重要な秘訣に辿り着けたのは良かったです。ただ、結局やるべきことがある程度明確になってきたから開発が順調に進むようになっていただけかもしれませんが...。このあたりは次回作の開発で検証できればと思います。

開発の過程では、これほど素晴らしい創作物が溢れるこの世の中で、あえて自分がゲームを作る意味はあるのだろうかと疑問に思うこともありました。それでもなんとか作りきることができました。次回作の開発でも色々な迷いや困難にぶちあたるとは思いますが、また最後まで作りきれるといいなと思います。

以上です。