ゲーム画面:高雄の街を走行中。制限速度、地図、通りの名前が表示されている

台湾チキン

高雄をドライブ。僕の運転免許は、チキンと引き換えにもらったものじゃない。

ダウンロードApp Store近日公開今すぐ入手Google Play近日公開

ゲームの特徴

本物の街並みを走り、交通ルールを守って安全に目的地へ。

  • 運転席から見た夕暮れの湖畔道路。正面に龍虎塔とジグザグの橋

    高雄の名所ステージ

    蓮池潭、駁二、西子湾、85ビル、高雄駅、柴山、旗津。道沿いのランドマークに名前が表示されます。

  • シニアカー、ロードバイク、スクーター、小型車がアーケード脇に並んでいる

    9 台から選べる

    シニアカー、ロードバイク、スクーターから車まで。最高速度、加速、耐久性がそれぞれ違います。

  • 路地の入口:アーケードから飛び出すスクーター、水たまりの穴ぼこ、配達バイク、路肩のごみ収集車

    台湾の日常の道

    飛び出すスクーター、道路の穴、ゴミ収集車、デリバリーバイク、路地の分かれ道。どのステージにも登場します。

  • 交差点の赤信号と、違反切符のクリップボードを持って手で合図する交通警察官

    違反すれば反則切符

    信号無視、逆走、駐停車禁止の赤線での停車は反則切符。罰金は実際の交通法規を参考にしています。

  • 夕暮れの道路で、光る金色の鶏もも肉が車線の上に浮かび、奥まで並んでいる

    チキンを集めよう

    どのステージにも道沿いにチキンがあります。安定して走るほど多く集まります。

  • スマホホルダーのスマホが走行映像を録画し、ハンドル中央からクラクションの音波が広がる

    クラクション、録画、スクショ

    好きなクラクション音を選んだり、自分の録音を取り込んだり。走行画面を録画・スクショして共有できます。

ゲーム画面

左右にスワイプしてもっと見る。

技術紹介

Flutter のアプリ本体、Godot のゲーム、Django のバックエンド。スマホとWeb版は同じゲームコードで動きます。

  • ブラウザ
    • Godot 4 Web版
      • ステージ素材
      • WASMエンジン
  • 静的ファイル配信(CDN)
    • Web版ステージ素材
    • 署名付き設定
  • Django バックエンド
    • アカウントと削除
    • 名所の多言語ガイド
    • ステージ設定の公開
    • プレイ記録の分析
    • AdMob設定
  • Flutter アプリ(iOS/Android)
    • Flutter
      • 設定
      • ログイン
      • ステージ一覧
      • 記録
      • 3言語UI
      • ローカルサーバー
      • 設定チャネル
    • Godot 4 ゲーム(WebView 内)
      • 3D道路生成
      • 交通AI
      • 違反切符
      • サウンド
      • HUD

大きなチップがそれぞれのシステム、上の小さなブロックがその構成要素です。配線がシステム同士をつなぎ、光っている配線が現在のデータの流れです。下のボタンか矢印キーで切り替え、ダブルクリックで視点を戻します。

Flutter によるクロスプラットフォーム開発の利点

ゲームに three.js や Flutter ではなく Godot を使う理由

デプロイの判断:サイトとゲーム素材を Cloudflare Workers に置く

初版の公式サイトと龍虎塔の Web 版はすべて静的ファイルで、Cloudflare Workers の静的アセットとして配信し、Worker のコードは実行しません。静的アセットへのリクエストは無料・無制限で、転送量の追加料金もありません。アプリと API は引き続き findmo のバックエンドを使うため、Web のアクセスがバックエンドに負荷をかけることはありません。

初版の素材サイズ(2026-10-15 実測、転送量は圧縮後)
素材元のサイズ実際の転送量読み込むタイミング
サイトの HTML・CSS・JS・アイコン111 KB43 KBページを開いたとき
トップ動画+ポスター(PC 16:9/スマホ 4:5)2.0 MB/1.6 MB2.0 MB/1.6 MBページを開いたとき
特集画像 6 枚+ゲーム画面 7 枚0.9 MB0.9 MBスクロールしたとき
3D 構成図(three.js+チップ図)619 KB159 KBスクロールしたとき
動く背景(shaders.com)2.5 MB696 KBWebGPU 対応の PC のみ
Web 版エンジン index.wasm17.1 MB4.9 MB遊び始めたとき
Web 版共通リソース index.pck10.1 MB6.7 MB遊び始めたとき
龍虎塔ステージパック3.5 MB2.2 MB遊び始めたとき
Web 版のその他(JS・起動画像・ステージデータ)1.0 MB0.7 MB遊び始めたとき
公式サイト 1 回の閲覧最後までスクロール:PC 約 3.8 MB、スマホ約 2.7 MB、約 25 リクエスト
Web 版の初回プレイ約 14.4 MB、約 13 リクエスト。2 回目以降はブラウザのキャッシュを使い、更新確認だけ
Workers 無料プランの仕様と本サイトの使用量
項目無料プランの上限本サイト(Workers 上)
静的アセットへのリクエスト無料・無制限すべて静的アセット
転送量追加料金なし—
Worker コードを実行するリクエスト1 日 10 万回(UTC 0 時にリセット、超えると 1027 エラー)0(Worker コードなし)
1 ファイルのサイズ25 MiB最大 17.1 MB(index.wasm)
1 バージョンのファイル数20,00057
Worker の CPU 時間1 リクエスト 10 ms該当なし
シナリオ分析(1 回の閲覧約 3.3 MB、PC とスマホが半々)
閲覧数リクエスト数転送量(20% が Web 版で遊ぶ)転送量(全員が遊ぶ)費用結論
1 万約 28 万約 59 GB約 172 GB0無料プランで十分
10 万約 276 万約 593 GB約 1.7 TB0無料プランで対応可能。アクセスが増える前に有料プラン(月 5 ドル)へ
100 万約 2,760 万約 5.9 TB約 17.2 TB0~月 5 ドルリクエストも転送量も無料。有料プランへの移行を推奨
費用比較:20% が Web 版で遊ぶ場合(月額、米ドル)
方式月 1 万閲覧月 10 万月 100 万
GCP VM(Premium ネットワーク、テストサイトで使用中)約 7 ドル約 71 ドル約 663 ドル
GCP VM(Standard ネットワーク)0約 43 ドル約 631 ドル
GCS 公開バケット(直接ダウンロード)1 ドル未満約 60 ドル約 662 ドル
GCS+Cloud CDN約 24 ドル約 72 ドル約 552 ドル
Cloudflare Workers(本サイト) 最適000~月 5 ドル
費用比較:全員が Web 版で遊ぶ場合(月額、米ドル)
方式月 1 万閲覧月 10 万月 100 万
GCP VM(Premium ネットワーク、テストサイトで使用中)約 21 ドル約 199 ドル約 1,727 ドル
GCP VM(Standard ネットワーク)0約 167 ドル約 1,625 ドル
GCS 公開バケット(直接ダウンロード)約 9 ドル約 189 ドル約 1,696 ドル
GCS+Cloud CDN約 34 ドル約 173 ドル約 1,357 ドル
Cloudflare Workers(本サイト) 最適000~月 5 ドル
GCP VMPremium の台湾からアジア太平洋への転送:1 TiB まで 1 GiB あたり 0.12 ドル、1~10 TiB は 0.11、10 TiB 超は 0.085。Standard:毎月最初の 200 GiB は無料、その後 10 TiB まで 0.11、150 TiB まで 0.075、それ以上は 0.07。VM 本体の費用は含みません。
GCS台湾(asia-east1)の Standard ストレージは 1 GiB あたり月 0.02 ドル(本サイトは 58 MB で約 0.001 ドル)。読み取りは毎月 5 万回まで無料、その後 1 回 0.0000004 ドル。アジア太平洋へのダウンロードは毎月 100 GiB まで無料、その後 1 TiB まで 0.12、10 TiB まで 0.11、それ以上は 0.08。
GCS+CDNCloud CDN のアジア向け転送:10 TiB まで 1 GiB あたり 0.09 ドル、150 TiB まで 0.06、それ以上は 0.05。外部ロードバランサが必要で、転送ルールは 1 時間 0.025 ドル(月約 18 ドル)。キャッシュ参照料とキャッシュフィル料は含みません。
出典と範囲単価は 2026-10-15 に GCP Cloud Billing カタログで確認。テストサイト https://app.findmoapp.com/driver/ はバックエンド API と同じ e2-medium の VM を共用しているため、アクセスの集中は API の速度にも影響します。

前提:1 回の閲覧はトップページを開いて最後までスクロールすること。遊ぶ人は別途ゲームをダウンロードします。リスク:Cloudflare のサービス規約では、CDN で動画や大きなファイルを大量に配信する場合は有料サービス(開発者プラットフォームを含む)を使う必要があり、Workers 無料プランが該当するかは明記されていません。そのため、アクセスが増える前に Workers 有料プランへ移行します。有料プランでも静的アセットへのリクエストは無料・無制限です。index.pck とステージパックは Cloudflare で圧縮配信するようにし、Web 版の初回ダウンロードは約 19.7 MB から約 14.4 MB に減りました。

全ステージをアプリに同梱する理由

運営費:AdMob 広告

開発ストーリー

プロジェクト作成から 0.1.0 まで、コードとテストの大部分は Claude Code が書き、人は要件の提示、判断、実機での確認を担当しました。以下の数字はビルド時に git の履歴から自動で集計しています。

使用したツールとモデル

マイルストーン

  1. プロジェクト作成:企画、Godot 試作版、Flutter アプリ本体Godot は本プロジェクトが初めての採用です。Flutter は過去の複数のプロジェクトで実績があり、実行性能にも開発効率にも満足しています。
  2. 3言語対応(繁体字中国語、英語、日本語)
  3. 最初の高雄の街ステージ
  4. Web 版を独立ビルド:龍虎塔 1 ステージの体験版
  5. 0.1.0 審査提出

作業の流れ

  1. 人欲しい機能や気づいた問題を一文で伝える
  2. AI現在の動作、期待する動作、受け入れ条件を書いた課題に分ける
  3. AI課題ごとにブランチを作って実装し、テストを追加
  4. AI静的チェックと自動テストを実行し、合格したらマージ
  5. AIテスト環境にデプロイして実際に動作を確認
  6. 人判断する:AI が決めるべき事項を3つの選択肢とおすすめにまとめ、人が選ぶ
  7. 人人が実機で試遊し、スクリーンショットに問題を書き込んで AI に修正を依頼する
  8. AIストア申請と本番デプロイは AI が Ego Lite ブラウザで行い、アカウントとパスワードは人が入力する

全自動ではありません。製品の方向性、選択肢の判断、本番公開は人が決めます。

人と Claude Code の役割分担

ブラウザで遊ぶ

Web版は蓮池潭・龍虎塔の 1 ステージのみ。インストール不要で、パソコンやスマホのブラウザで開けます。

ブラウザで龍虎塔を遊ぶ

初回の読み込みは約 15 MB(圧縮後)。高雄の全ステージはアプリでどうぞ。

アプリを入手

App Store 版と Google Play 版を準備中です。公開後はここからダウンロードできます。

ダウンロードApp Store近日公開今すぐ入手Google Play近日公開