ゲーム(ジャバスクリプト) 作成ノート

今回は「コードがわからなくても、AIがいればオンライン実装までいける」をテーマにまとめます。 ゲーム本体はブラウザでそのまま動くシンプル構成。そこに世界ランキング(オンライン)を足した時の考え方と手順を、できるだけ噛み砕いて書きます。

目次

ゲームと今回の目的

「接待焼肉:ベストで回収」は、上司が勝手に網へ置いていく肉をベストな焼き加減で回収して評価を稼ぐゲームです。 肉ごとに焼ける速さが違って、網の汚れが進むほど焼ける速度も上がるので、判断の速さリスク管理が両方必要になります。

そして今回の本題は、 「このスコア、世界ランキングにしたい」です。

ただ、リアルタイム対戦じゃないので、正直オンライン実装はめちゃくちゃ楽です。 「ゲームが終わったときにスコアを送る」 「ホーム画面でランキングを読む」 これだけで成立します。

ゲーム本体の作り方(ざっくり)

まずゲーム本体は、難しいことをしていません。 やってることを日本語にすると、ほぼこれだけです。

重要なのは、ゲームの状態(スコアや焼け具合)を変数で持つという考え方。 見た目は派手でも、中身は「数字の管理」です。

そしてオンラインを足すなら、次の章の考え方を知っておくと一気に楽になります。

オンラインランキングは「こう考える」と一気に楽

よく「オンライン=難しい」って思うんですが、今回みたいなランキングは別物です。

対戦ゲームみたいに「同時に接続して同期する」必要がないので、 実態はスコアのメモ帳をネット上に置くだけです。

つまり必要なのはこの2つ。

これができれば、オンラインっぽさは十分出ます。 逆に、ここに変にリアルタイム要素を入れると一気に難しくなります。今回は入れません。

Cloudflare Workers + KV の全体像

今回の構成は、無料枠でも長く使える可能性が高い、かなり現実的なやつです。

ざっくり言うと、 「Pagesでゲームを配る」→「Workersにスコアを送る」→「KVに保存」→「ホームで読み込む」 という流れです。

ここで嬉しいのが、サーバーを常時動かす必要がないこと。 Renderみたいに「無料枠のスリープで落ちる」問題が起きにくいです(これが本当にでかい)。

オンライン実装の手順(コードなしで再現)

1) Cloudflareにログインして、Pagesを作る

まずはゲームを置く場所を作ります。Pagesは「HTMLを置くだけで公開」できるので簡単です。

公開できたら、home.html が開ける状態になっているはずです。

2) KV(保存箱)を作る

次にランキングデータを保存するためのKVを作ります。

ここが「オンラインの心臓部」です。 ゲーム側は、ここに直接触りません。Workersが仲介します。

3) Workers(受付係API)を作る

ここからが「オンライン実装っぽいところ」ですが、やることは単純です。

大事なのは、Workersが最低限これをやってくれること:

ここはコードが必要そうに見えるけど、実際はAIに「これを満たすWorkersのコード作って」と頼めばOKです。 しかも、コードを理解する必要はありません。コピペしてDeployできれば勝ちです。

4) home.html と game.html に「APIの住所」を入れる

最後に、ホームとゲームに「WorkersのURL(API_BASE)」を設定します。

ここが繋がると、世界ランキングが動きます。 「送信OK」「取得OK」が見えるようにしてあるので、デバッグも楽です。

5) 動作チェック(ここだけやれば判断できる)

ここまで動けば、オンライン実装は成功です。

AIに頼むときのコツ(僕のやり方)

ここが一番大事かもしれない。 AIは「全部作って」って言うと、だいたいズレます。僕はこうやって頼みます。

AIに渡す情報は3つだけ

具体的な頼み方(こう言うと強い)

これで出てきたコードを、そのままCloudflareに貼ってDeploy。 動かなかったら、エラー画面をスクショしてAIに投げる。 これを繰り返すと、理解してなくても普通に完成します。

詰まりやすいポイント(ここだけ見ればOK)

「ランキングが取れない」

「送信はできるのに反映されない」

「無料でずっと使える?」

正直「絶対」はないです。でも、少なくとも 常時サーバーを動かす方式よりは遥かに現実的です。 Pages + Workers + KV は「軽いアクセスに強い」構成なので、個人の作品公開にはかなり向いてます。