助けて
開発FAQ

MATCHMAKE_UNHANDLED エラーが発生しました

5
qrテスト中にmatchmake unhandledエラーが発生した場合は、以下の方法を試して解決してください。 マルチプレイサーバースクリプト(index ts)を確認してください。 このエラーコードは、クライアントがマルチプレイサーバーに接続した後、サーバーからマルチプレイルームの状態データをスムーズに受信できない場合に発生する可能性があります。 以下のチュートリアルを参照し、サーバースクリプト(index ts)のoncreate/onjoin部分のコードを確認してください。 📘 以下のガイドを参照してください。 マルチプレイを作る docid\ zp83r5fc6n0bi1i84p4k3 zepeto world sdkのバージョンを最新のものに更新してください。 以下のガイドを参照して、zepeto world sdkのバージョンが最新であるか確認し、最新バージョンに更新してください。 📘 以下のガイドを参照してください。 パッケージの更新 docid\ h49wbnb7bcwrrcljybkic zepeto world multiplayコンポーネントを確認してください。 zepeto world multiplayコンポーネントが異なるシーンに存在する場合、このエラーが発生する可能性があります。 zepeto world multiplayコンポーネントを1つのシーンにのみ追加し、以下のサンプルコードに従ってシングルトンとして実装してください。 import { zepetoscriptbehaviour } from 'zepeto script'; import { gameobject } from 'unityengine'; export default class multiplaycomponent extends zepetoscriptbehaviour { private static instance multiplaycomponent = null; public static get instance() multiplaycomponent { // インスタンスがまだ作成されていない場合、以下のロジックを実行します。 if (this instance === null) { // シーン内でmultiplaycomponentのインスタンスを検索します。 this instance = gameobject findobjectoftype\<multiplaycomponent>(); // シーン内にmultiplaycomponentのインスタンスが見つからない場合、以下のロジックを実行します。 if (this instance === null) { this instance = new gameobject(multiplaycomponent name) addcomponent\<multiplaycomponent>(); } } return this instance; } private awake() { // すでに別のインスタンスが存在し、現在のインスタンスが異なる場合、以下のロジックを実行します。 if (multiplaycomponent instance !== null && multiplaycomponent instance !== this) { // 現在のgameobject(現在のインスタンス)を破棄して、重複インスタンスの作成を防ぎます。 gameobject destroy(this gameobject); // 他のインスタンスが存在しない場合、または現在のインスタンスが同じ場合、以下のロジックを実行します。 } else { multiplaycomponent instance = this; gameobject dontdestroyonload(this gameobject); } } }