Skip to content

从 0.11 版本迁移至 0.12 版本

0.12 版本主要为内部优化和 bug 修复.

请安装最新版本您的服务器和客户端:

升级服务器:

npm install colyseus@^0.14.0 --save

升级客户端:

npm install colyseus.js@^0.14.0 --save

若您使用的是 Unity 或其他客户端,请在 GitHub 上查看相应资源库.如果您有任何问题, 欢迎在 Discord 上进行询问

onJoin() 期间在服务器中使用 this.broadcast()

0.11 版本中有一个 bug, 导致 this.broadcast() 不会在 onJoin() (#260) 期间向当前连接的客户端发送消息.为使当前连接的客户端也收到消息, 您不得不同时使用 this.send(client, ...).此问题现已在 0.12 版本中得到修复:

class MyRoom extends Room {
  onJoin(client, options) {
    this.broadcast(/* your data */);

    /**
    * IF YOU'RE ALSO USING `this.send()` HERE, YOU CAN SAFELY REMOVE IT,
    * OTHERWISE THE MESSAGE WILL ARIVE TWICE FOR THIS CLIENT
    */
    // this.send(client, /* your data */);
  }
}

@serialize() 修饰器已被弃用.

@serialize 修饰器于 0.10 版本引入, 现已被弃用.

您可以从您的项目中移除 @serialize() 调用, 因为现在当您使用 this.setState() 时,序列化程序是自动决定的.

Fossil Delta 序列化程序依然受到 0.12 版本支持, 并且可能在 JavaScript, LUA 和 C# 客户端中继续存在. 其他客户端将不再支持 Fossil Delta 序列化程序.

Back to top