非エンジニアの50歳が、Claude Codeでゲーム制作に挑戦してみた話(きっかけは腱鞘炎でした)

トラックボールマウス練習ゲーム「トラックボール道場」

コードなんて書いたことがない50歳のおじさんが、Claude Codeと日本語でやり取りしただけで、ちゃんと遊べるゲームを1本作ってしまった。きっかけは、まさかの腱鞘炎だった。


きっかけは、右手首の痛みだった

ある朝、マウスを握った瞬間に手首がズキッとした。 病院で言われたのは腱鞘炎。原因は、はっきり言ってマウスの使いすぎだった。

仕事でも自宅でも、一日の大半をマウスと一緒に過ごしている。ブログを書くのも、写真を選ぶのも、全部マウス。手首を固定して湿布を貼りながら、「これ、しばらく治らないやつだな」と思った。

そこで、ずっと気になっていながら手を出していなかったトラックボールマウスを買った。今更である。50歳にして、初めてのトラックボールデビュー。

トラックボール、想像以上に慣れない

届いた日は少し感動した。手首を動かさなくていい。親指でコロコロ転がすだけでカーソルが動く。 ただ、その感動は30分で消えた。

  • カーソルが狙ったところで止まらない
  • ドラッグ&ドロップで指が疲れる
  • テキストを範囲選択しようとすると、行がずれる

「トラックボール 慣れない」で検索すると、同じように悩んでいる人がたくさんいた。だいたい「2週間我慢すれば慣れる」と書いてある。でも、仕事でイライラしながら2週間我慢するのはつらい。

そこで思った。 練習する場所がないなら、練習するためのゲームを作ればいいんじゃないか。

非エンジニアでも、ゲーム開発はできるのか

僕はプログラマーではない。仕事でGoogle Apps Scriptをちょっと触る程度で、「ゲーム制作」なんて自分には縁のない世界だと思っていた。

ただ最近、AIコーディングツールのClaude Codeを触る機会があった。チャットで「こういうものを作って」と伝えると、コードを書いて、動かして、直してくれる。噂には聞いていたが、実際に「非エンジニアのゲーム開発」がどこまで現実的なのか、自分で試してみたくなった。 以前、別のAIで作ってもらった簡単なHTMLの叩き台も手元にあった。

「これを本格的なトラックボール練習ゲームにしたい」

そう伝えるところから、Claude Codeでのゲーム作成が始まった。

できあがった「トラックボール道場」

完成したのは、単一のHTMLファイル1本で動くブラウザゲーム。画像もライブラリも使わず、絵はすべて手描きのSVGとCanvasで描いたドット絵。著作権的に完全にクリーンなオリジナル素材だけでできている。

トラックボールで一番つまずく3つの操作を、それぞれゲームにした。

1. 射撃(移動+クリックの練習)

  • 初級:酒場でこちらを狙ってくるガンマンを迎撃
  • 中級:燃え広がる導火線の火花を、地面を這う炎ごと撃って消火
  • 上級:荒廃した街を歩いてくるゾンビの「眉間だけ」を狙うヘッドショット。1発ごとにリロードが入る

2. レールウェイ(ドラッグ&ドロップの練習)

周回する汽車の前に「川」「穴」「停止車両」が現れるので、橋をかけたり、砂利を埋めたり、車をドラッグでどかしたりして通してあげる。 「上→下」「下→上」「全方向」と、練習したいドラッグの方向を選べる。

3. 時限爆弾解除(コピー&ペーストの練習)

基板とLCD画面のある爆弾装置から、解除コードをドラッグで選択→コピー→貼り付け→決定。 桁数と制限時間が難易度で変わり、時間切れになると爆発する。地味に一番緊張するモード。

どれも60秒のスコアアタックで、命中率・反応速度・最大コンボからS〜Dのランクが出る。 ゲームとしてちゃんと遊べるものになったのが、自分でも意外だった。

Claude Codeでのゲーム制作、実際の進め方

ここからが本題。非エンジニアのゲーム開発と聞くと身構えるかもしれないが、実際にやったのは日本語で会話しただけ。「AIに頼めば何でもできる」わけではなかったけれど、「対話だけでここまでできる」のは本当だった。Claude Codeでのゲーム作成で印象に残ったことを5つ書いておく。

① まず設計案を出してもらい、合意してから作る

いきなり「作って」ではなく、先にゲームデザインの案を出して推敲させた。「クリック・ドラッグ&ドロップ・コピペの3モードにしよう」「60秒のスコアアタックにしよう」という骨組みで合意してから実装に入ったので、途中で迷子にならずに済んだ。

② 参考画像は「そのまま使わない」を徹底した

ガンマン、ゾンビ(これは後述)、汽車、爆弾装置。それぞれのイメージをGeminiで作成して「参考画像」として渡した。 ただし、具体的なデザインは真似せず、「西部劇のガンマン」「よろよろ歩くゾンビ」といった一般的な記号だけを抽出して、ゼロから描き起こしてもらう方針にした。

Claude Code自身からも「著作権が保護するのは具体的な表現であって、アイデアやジャンルではない」という説明があった。なるほど。

③ 見た目は何度も作り直しになった

一番苦労したのが上級の射撃モード。 「小さい的+暗いスコープ演出」→「ビルの窓越しに強盗が見える演出」→最終的に「荒廃した街をゾンビが迫ってきてヘッドショット」と、3回ほど大きく作り直した。

原因はいつも同じで、僕が見た目の指示を先に出しすぎていたこと。「何をしているシーンなのか」「舞台はどこなのか」を後から詰めていたから、AIも迷っていた。

逆に「荒廃した街で、ゾンビが歩いてきて、眉間を撃つ」と3点セットで最初に伝えた瞬間、一発でイメージ通りのものができた。これは仕事でも同じだなと思った。

④ 「これ以上は難しそう」と言ってもらえた

ドット絵を固定にしていたが、ゾンビの見た目をもっと精巧にできないかと聞いたとき、「手描きのSVGでここまで来たら、これ以上の作り込みは非効率」と正直に返された。 ちょっと拍子抜けしたけれど、おかげでそこで区切りをつけられた。AIは無限に何でもできるわけではない。得意な範囲を見極めて頼むのが大事だと感じた。

⑤ バグ探しも、難易度調整も、一緒にやった

爆弾解除モードで「画面が震えたまま固まる」不具合が出た。僕がやったのは、スクリーンショットを添えて「この画面のまま震えて動かなくなりました」と伝えただけ。

そこから再現条件を一緒に検証して、「決定ボタンを押すタイミングと時間切れがほぼ同時に重なると、古いタイマーが新しい爆弾のタイマーを誤って止めてしまう」というレース条件(稀にしか起きないタイミングのバグ)だと突き止め、自己解決してくれた。

難易度調整も面白かった。ゾンビモードで「20秒ごとに速く」「30秒後は5体」「ただし60秒で倒しきれるように」とお願いしたら、実際に60秒間のプレイをシミュレーションするコードを書いて、「1発1.1秒ペースまでなら取りこぼしゼロで完走できる」と数字で裏付けを取ってから実装してくれた。感覚ではなく数字で難易度を握れたのは大きかった。

手戻りを減らす依頼テンプレート(コピーして使えます)

一通り作り終えたあと、「今回どこで作り直しが起きたか」を振り返って、依頼のテンプレートにまとめてみた。次にAIで何か作るときに、そのまま使えると思う。

結論:先に決めるのは3つだけ

この3つさえ揃っていれば、絵も演出も数値もほぼ一意に決まる。逆に、揃っていないと作り直しになった。

  1. 何の練習か(機能の目的):見た目より先に。「ドラッグの練習」と分かっていれば、レールウェイは最初から方向別ステージで作れた
  2. 舞台・相手・勝ち負け(3点セット):「小さい的を撃つ」では絵が決まらない。「荒廃した街でゾンビの眉間を撃つ/到達されたら失点」まで書くと決まる
  3. 数値と、クリアできる条件:「速くして」ではなく「20秒ごとに78→140→185」。加えて「60秒で倒しきれること」があると、AI側で検算して破綻を防いでくれる

実際に起きた作り直し

今回のセッションで大きく戻ったのは3か所。原因はどれも同じで、絵の指示が先に来て、目的や舞台が後から出てきたことだった。

上級ライフル(3回作り直し)

  • 小さい的+スコープ暗転 →「真っ暗で何がなんだか」
  • ビルの窓+5シチュエーション →「何をしているか分からない」
  • 荒廃した街+ゾンビ → 採用
  • こう書けば1回だった:「荒廃した街。ゾンビが3体こちらへ歩いてくる。眉間だけが的。1発ごとに0.65秒リロード。到達されたら失点」

レールウェイ(2回作り直し)

  • 横スクロールで3種類の障害を同時に処理 →「やることが分かりづらい」
  • 周回コース化 → さらに1ステージ1種類へ整理
  • こう書けば1回だった:「ドラッグ方向の練習。上→下=橋、下→上=砂利、左右=車。ステージごとに1種類だけ」

ドット絵の細かさ(エンジンごと作り直し)

  • 「ドット絵で」→ 粗すぎる →「ストリートファイターIIくらい細かく」→ 描画方式から作り直し
  • こう書けば1回だった:最初から「スーファミ級の解像度」と基準を1語添える。ファミコン級/スーファミ級/イラスト調、で伝わる

コピーして使う型

A→B→C→Dは依頼が発生する順番。埋まらない項目は「おまかせ」と書けば、AI側で案を出してくれる。

A. 最初の1通(企画をまるごと渡すとき)

■ 作るもの
  ジャンル:
  目的:(例:トラックボールの操作練習)
  1プレイの長さ:

■ モードごとの中身(鍛えたい操作の数だけ)
  モード1
    練習する操作:
    舞台:
    相手・障害:
    勝ち/負けの条件:
  モード2
    (同上)

■ 難易度の上げ方
  何を上げる:(速度/数/的の小ささ/制限時間)
  いつ上げる:(例:20秒ごと)
  クリアできる条件:(例:60秒で倒しきれること)

■ 絵のタッチ
  参考画像:(添付)
  細かさ:(ファミコン級/スーファミ級/イラスト調)
  色の方向:

■ 公開まわり
  置き場所:
  広告:
  権利表記:

B. モードを1つ作る/作り直す(今回いちばん効いた型)

■ どのモード:
■ 舞台:(場所・時間帯・雰囲気)
■ プレイヤーは何者:
■ 相手は何で、何をしてくる:
■ プレイヤーの1アクション:(例:眉間をクリック→0.65秒リロード)
■ 成功したら:
■ 失敗したら:
■ 数値
  同時に出る数:
  速度/制限時間:
  難易度の変化:
  クリアできる条件:
■ 参考画像:(あれば添付)

C. 直してほしい(最後の1行が事故を防ぐ)

■ 対象:(モード名/画面名)
■ 今こうなっている:
■ こうしたい:
■ 理由:(あれば。判断の材料になります)
■ 変えなくていいところ:

D. バグが出た(画面が固まった時に使った型)

■ 何をしたら:(操作の手順)
■ どうなった:
■ 期待していた動き:
■ 再現性:(毎回/ときどき/1回だけ)
■ スクリーンショット:(添付)

数値は「3点セット」で

「速く」「難しく」は解釈が割れる。開始値・変化・上限の3つが揃うと一度で通った。

解釈が割れる書き方一度で通った書き方
だんだん速くして20秒ごとに 78 → 140 → 185
敵を増やして30秒までは2体、以降は3体
難しすぎないように60秒で全部倒しきれること
的を小さく眉間だけ。13〜26px(距離で変化)

とくに「クリアできる条件」は効果が大きかった。ゾンビの調整では、これがあったので60秒間のシミュレーションを回して「1発1.1秒ペースまでは取りこぼしゼロ」と数字で確認できた。

今回とても助かった伝え方

型に落とすまでもないけれど、そのまま続けると精度が上がったやり方。

  • 参考画像を貼る:ゾンビ・爆弾装置・汽車・ガンマンは、画像1枚で言葉10行分の情報になった
  • 実際に遊んでから言う:「震えて動かなくなった」の一言から、決定ボタンと時間切れが重なるレース条件のバグを特定してもらえた
  • やめる判断をもらう:「これ以上は難しそうだね」「逆効果だね、やめよう」で、無駄な作り込みを止められた
  • 撤回をはっきり言う:「初級2個の話は撤回」と明示したので、古い仕様が残らずに済んだ

公開まで

  • サーバーはXserver。ブログはWordPress(テーマはSWELL)だが、ゲームはブログのページにはせず、独立した静的ファイルとして/game/trackball-dojo/に直接置いた。テーマやプラグインとの衝突を避けるため
  • タイトルタグ・meta description・OGP・構造化データ(JSON-LD)を設定して、検索で「トラックボール道場」が出るようにした
  • 「トラックボール 練習」「トラックボール 慣れない」といったキーワードは、詰め込むのではなく、ちゃんと読める説明文としてページに入れた
  • Google AdSenseは承認済みのアカウントだったので、コードを埋め込むだけ。公開後すぐに小さな収益が発生し始めた
  • サイトマップは、ブログ側のプラグインがWordPressのコンテンツしか拾わないので、このページ専用の小さなサイトマップXMLを別に作ってSearch Consoleに登録した

で、トラックボールには慣れたのか

慣れた。 毎日ゾンビの眉間を撃ち、汽車のために橋をかけ、爆弾を解除していたら、いつの間にか仕事中のカーソルが狙ったところで止まるようになっていた。 手首の痛みも、マウスを握らなくなってから少しずつ引いている。

非エンジニアがゲーム制作に挑戦するなら

50歳の非エンジニアが、Claude Codeでのゲーム開発を一本やってみて分かったことを、ひとことでまとめるならこうだ。

見た目より先に「目的・舞台・数値」を決めて伝えると、作り直しが激減する。

コードは一行も書いていない。書いたのは日本語と、上のテンプレートだけ。 それでも、非エンジニアの自分が必要だったものを、ちゃんとしたゲームとして手元に作ることができた。

トラックボールに慣れなくて困っている人はもちろん、「自分にもClaude Codeでゲーム作成ってできるのかな」と気になっている人にも、一度遊んでみてほしい。

トラックボール道場で遊ぶ

この記事を書いた人

妻と愛犬ジェイド(女の子)と暮らしています。 老眼鏡を新調したのを機に、積読していた本を少しずつ読み始めました。

派手な生活ではありませんが、犬と眼鏡と本と音楽とコーヒーあれば十分。そんな日々の断片を、記憶がわりに書き留めています。