帮助
开发常见问题
发生了MATCHMAKE_UNHANDLED错误
5分
如果在二维码测试期间发生 matchmake unhandled 错误,请尝试以下方法解决。 请检查 multiplay 服务器脚本 (index ts)。 当客户端在连接到 multiplay 服务器后未能顺利接收 multiplay 房间状态数据时,可能会发生此错误代码。 请参考下面的教程,并检查服务器脚本 (index ts) 中的 oncreate/onjoin 部分的代码。 📘 请参考以下指南。 创建多人游戏 docid\ spk tardrdz3td3r6gnae 请将 zepeto world sdk 版本更新到最新版本。 请参阅下面的指南,以检查 zepeto world sdk 版本是否为最新版本,然后更新到最新版本。 📘 请参阅以下指南。 更新包裹 docid\ btjlzbhm63zmyimiqnx8h 请检查 zepeto world multiplay 组件。 如果 zepeto world multiplay 组件在不同场景中存在,则可能会发生此错误。 将 zepeto world multiplay 组件添加到仅一个场景中,并按照下面的示例代码将其实现为单例。 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); } } }