I/O FLIP: Googleの生成AIで進化したクラシックカードゲーム

I/O FLIP:伝統的なカードゲームにAIのひねりを加える方法

はじめに

Jay ChangさんとGlenn Cameronさんによって開発されたI/O FLIPは、Googleがシードしたプロジェクトで、開発者が最新の生成AI技術を活用して何ができるかを試すためのインスピレーションを提供することを目的としています。このゲームは、プレイヤーが何千ものカスタムキャラクター画像とその説明を生成し、楽しむことができるカードゲームです。

ゲームの基本的な流れ

I/O FLIPをプレイする際、ユーザーは次の手順に従います:

  • キャラクタークラスと能力を選択し、12枚のカードパックを生成する。
  • そのパックから3枚のカードを選んでチームを作る。
  • マッチに参加し、ベストオブ3で勝つ。
  • 複数のマッチに連勝してリーダーボードに名前を掲載するチャンスを得る。
  • 自分のデッキを世界中のプレイヤーと共有する。

開発の裏側:FlutterとDartを活用

I/O FLIPのゲームロジックとUIは、Flutterのカジュアルゲームツールキットの機能を基に構築されています。特に、音声機能やappナビゲーションにgo_routerパッケージを利用して、レスポンシブなウェブアプリとしての特性を確保しました。これにより、ユーザーの画面サイズに応じてアプリが適切にリサイズされます。

カードのロジック

ゲームの大部分のロジックはカードに基づいています。各カードには、次の特長があります:

  • 4つのGoogleマスコット(Dash、Sparky、Dino、Android)の画像。
  • クラスと能力に基づく説明。
  • ランダムに割り当てられた元素の力(空気、水、火、金属、地球)。
  • 10から100の間の数字で示されるカードの強さ。

元素の力は、マッチプレイにおいて相互作用があり、誤った元素マッチアップの場合は10ポイントのペナルティが与えられます。

AI生成の画像と説明

I/O FLIPの各カードは、技術革新によって生み出されたAI生成の画像と説明を特徴としています。画像は、Google Researchから生まれた次の2つの技術を用いて事前生成されました:

  • Muse:テキストから画像を生成するAIモデル。
  • DreamBooth:特定のテーマについて個別化された画像を生成する技術。

カードの説明は、Googleの大規模言語モデルにアクセスするPaLM APIを使用してプロトタイピングされます。

Firebase:ゲームのホスティングとシェア機能

Firebase Cloud Storageは、すべての画像、説明、要素、そしてプレイヤーのカードデッキを生成するための数値を格納します。また、Firestoreは「最高の連勝記録」を追跡します。このデータ全体は、Firebaseのセキュリティルールを用いて保護されています。

Dart Frogによる共有機能

I/O FLIPでは、チートを防ぐために、Dart Frogを利用しました。バックエンドとフロントエンドでゲームロジックを共有することで、同じ言語でコードを書くことが可能になり、開発を加速させました。

プレイを楽しもう

I/O FLIPは、多くのプレイヤーがオンラインでプレイしているときが最も楽しいです。Cloud RunにデプロイされたI/O FLIP Dart Frogサーバーを利用することで、オートスケーリングが可能になり、多くのプレイヤーを同時に支えることができます。

最後に、I/O FLIPのコードはオープンソース化されており、ユーザーがどのようにそれを構築したかを深く探ることができます。ぜひ、生成AI技術を試してみてください。Google I/Oに参加して、さらなる情報を学ぶこともおすすめです。