公式パッケージ · ゲームエンジン

Cocos Creator のマルチプレイヤールーム

依存ライブラリのない Cocos Creator 3.x 用クライアント。Web、ネイティブ、ミニゲームのビルドで動き、HibiraConnection コンポーネントがシーンをまたいで接続を保ちます。ルームには席、ホスト、準備完了フラグ、チャットがあります。

  • ルームは Lobby パッケージと同じイベントを使うので、Cocos のプレイヤーとブラウザのプレイヤーが同じルームで遊べます。
  • Lobby パッケージのマッチングキューも入っています。プレイヤーが並び、レーティングと条件でマッチングされ、一緒に新しいルームに入ります。
  • 自動で再接続し、チャンネルを購読し直します。
  • 認証エンドポイントは無料プランで動く Cloudflare Worker です。

サインインすると、コード例にご自身のクラスターホストが入ります。 サインイン

  1. 設定する

    git clone https://github.com/hibira-io/cocos && cd cocos/server
    # put your app key in wrangler.toml, then:
    npx wrangler deploy
    npx wrangler secret put HIBIRA_APP_SECRET
  2. インストール

    Copy assets/hibira into your project's assets/.
    Add the HibiraConnection component to a root node of the first scene:
      App Key:        YOUR_APP_KEY
      Host:           ws.hibira.io
      Auth Endpoint:  your Worker's URL
  3. 使う

    import { HibiraConnection } from './hibira/HibiraConnection';
    
    const hibira = HibiraConnection.instance!;
    hibira.setName('Ann');
    const room = hibira.joinRoom('ABCD', { capacity: 4 });
    room.on('members', ({ players, host }) => renderSeats(players, host));
    room.on('start', ({ data }) => startGame(data.seed));

始める前に

  • アプリの設定で「クライアントイベントを許可」をオンにすると、プレイヤー同士で操作やタップを送り合えます。
  • http://localhost:7456(エディターのブラウザプレビュー)と各 Web ビルドのサイトをアプリの許可オリジンに登録してください。ミニゲームのビルドでは、WebSocket のホストと認証エンドポイントもプラットフォームの許可ドメインに追加します。

ダッシュボードのアプリキーを使ってください。シークレットはサーバー側だけに置きます。チャンネル、イベント、認可エンドポイントは Pusher とまったく同じように動作します。 無料でアカウントを作成 →