Unity で Telegram ミニゲームを作成する
このガイドでは、Sequence の Unity SDK を使った Telegram ゲームの作成方法を解説します。
このガイドでは、Sequence の Unity SDK を使って Telegram ミニアプリやゲームをセットアップし、EVM チェーン上で Web3 機能を提供する方法(メールやゲスト認証を含む)を説明します。
ゲームロジックは Unity で開発しますが、Telegram ミニゲームとしてデプロイするために、WebGL ビルドを React プロジェクト内に組み込みます。
Telegram ボットのセットアップ
BotFatherでTelegramボットを作成
- Telegramを開き、「@BotFather」を検索します。
- 「Start」をクリックするか、「/start」と入力して会話を開始してください。
- 「/newbot」と入力して新しいボットを作成します。
- 案内に従って進めてください:
- ボットの名前を入力します。
- ユーザー名を選択します(必ず「bot」で終わる必要があります)
必要なトークンの取得
ボット作成後、BotFatherから以下が提供されます:
- ボットトークン(HTTP APIトークン)
- ボットのユーザー名
これらの認証情報は次の手順で必要になるため、必ず保存してください。
Unity WebGL プロジェクトの準備
Sequence の Unity SDK をインストール
既存プロジェクトには推奨インストール方法をご利用いただけます。新規プロジェクトの場合は、Unity Boilerplate をご利用いただけます。
モバイルレイアウト向けのUI
ゲームのUIがモバイル端末のアスペクト比に最適化されていることを確認してください。Unity の Device Simulator の利用を推奨します。また、タッチ操作に対応した入力処理も設定してください。
WebGL 用 Sequence の React テンプレートを設定
Sequence の Unity SDK には、React プロジェクトとしてエクスポートするための WebGL テンプレートが含まれています。Packages/Sequence Embedded Wallet SDK/
内の WebGLTemplates
フォルダをプロジェクトの Assets/
ディレクトリにコピーしてください。Project Settings
→ Player
→ WebGL
→ Resolution and Presentation
で SequenceReact
テンプレートを選択します。
Cloudflare の設定
React プロジェクトのルートディレクトリに wrangler.toml
ファイルを作成し、以下の内容を記述します。
WebGL ゲームを React プロジェクトとしてビルド
React プロジェクトのルートディレクトリを CLI や Visual Studio Code などの IDE で開き、以下のコマンドを実行してブラウザでゲームをテストします。
Telegram ミニゲームをデプロイする
Cloudflareアカウントで認証する
React プロジェクトのルートディレクトリから、アプリケーションおよびファンクションのロジックを Cloudflare にデプロイします。
pnpm wrangler pages deploy
を実行します
Cloudflare にまだログインしていない場合は、認証を求められます。デプロイが成功したら、アプリケーションがホストされている URL をコピーしてください。
TelegramでWebhookを登録
次に、アプリの registerWebhook
エンドポイントを呼び出し、デプロイしたアプリケーションの URL で Webhook の設定を行い、Telegram API からのアクセスを有効にします。
許可するオリジンの更新
Sequence Builderで、ウォレット設定にデプロイ済みアプリケーションのURLが 許可されたオリジンとして含まれていることを確認してください。
Telegram ゲームをテストしてください。
Telegram でボットにメッセージを送信して、応答があるか確認してください。ボットからシェア、プレイ、または詳細情報を得るための案内が表示されます。