Skip to content

從 0.6x 或 0.8x 版本遷移至 0.9 版本

伺服器端

客戶端

colyseus.js

colyseus-unity3d

從 0.4 版本遷移至 0.5 版本

使用 Server#listen 綁定 http 端口.

目前 Server 在底層使用 ClusterServer, 用於自動生成工作線程. 如果您目前使用的是 ClusterServer, 而非直接使用 Server, 那麽您應當調用其 listen 方法.

舊版

import { createServer } from 'http';
import { Server } from 'colyseus';
const httpServer = createServer(app);
const gameServer = new Server({ server: httpServer });
httpServer.listen(2567);

新版

import { createServer } from 'http';
import { Server } from 'colyseus';
const httpServer = createServer(app);
const gameServer = new Server({ server: httpServer });
gameServer.listen(2567); // calling 'listen' from gameServer instead of httpServer

constructor 前面已變更,現在使用的是onCreate.

舊版

constructor (options) {
  super(options);
  // ... initialize the room
}

新版

constructor () {
  // room has been constructed. no options available yet!
}

onCreate (options) {
  // ... initialize the room
}

requestJoin - can return type can be either boolean or number (0..1)

舊版

requestJoin (options) {
  // accept connections if this room is not full.
  return this.clients.length < 10;
}

新版

requestJoin (options) {
  // give priority to connect on rooms with fewer clients.
  return 1 - (this.clients.length) / 10;
}

使用 patchRate 屬性替代 setPatchRate().

舊版

constructor (options) {
  this.setPatchRate(1000 / 50);
}

新版

class MyRoom extends Room {
  patchRate = 1000 / 50;
}

client.id / client.sessionId

  • client.sessionId - 是用戶接入房間的唯一身份標識.
  • client.id - 是用戶的唯一身份標識.若用戶重復接入同一房間,您可以通過查看 client.id 看到他發起了 2 次會話. 若您不希望同一用戶多次接入同一房間, 可使用 client.sessionId 進行識別.

room.maxClients 新屬性.

舊版 - 若要查看 requestJoin 上的 client.length,您可切換為 maxClients.

requestJoin (options) {
  return this.clients.length < 10;
}

新版

class MyRoom extends Room {
  maxClients = 10;
}

從 0.3x 版本遷移至 0.4 版本

構造函數/補丁率

舊版構造函數/補丁率

class MyRoom extends Room {
  constructor ( options ) {
    super( options, PATH_RATE )
  }
}

新版構造函數/補丁率

class MyRoom extends Room {
  constructor ( options ) {
    super( options )
    this.setPatchRate( PATCH_RATE )
  }
}

Back to top