Skip to main content

Class Commands

Assign and inspect player classes and class-driven behaviors.

Members

createClassInstance

Create a class instance without side effects.
  • Source: packages/server/src/Player/ClassManager.ts
  • Kind: method

Signature

createClassInstance(classInput: ClassClass | string)

Parameters

  • classInput: ClassClass | string

resolveClassSnapshot

Resolve class snapshot entry into a class instance without side effects.
  • Source: packages/server/src/Player/ClassManager.ts
  • Kind: method

Signature

resolveClassSnapshot(snapshot: { _class?: any }, mapOverride?: any)

Parameters

  • snapshot: { _class?: any }
  • mapOverride?: any

setActor

Set up the player as a specific actor archetype
  • Source: packages/server/src/Player/ClassManager.ts
  • Kind: method
  • Defined in: IClassManager

Signature

setActor(actorClass: ActorClass | string): any

Parameters

  • actorClass: ActorClass | string

Returns

The instantiated actor object

setClass

Assign a class to the player
  • Source: packages/server/src/Player/ClassManager.ts
  • Kind: method
  • Defined in: IClassManager

Signature

setClass(_class: ClassClass | string): any

Parameters

  • _class: ClassClass | string

Returns

The instantiated class object

WithClassManager

Class Manager Mixin Provides class and actor management capabilities to any class. This mixin handles character class assignment and actor setup, including automatic parameter configuration, starting equipment, and skill progression based on class definitions.
  • Source: packages/server/src/Player/ClassManager.ts
  • Kind: function

Signature

WithClassManager(Base: TBase)

Parameters

  • Base: TBase

Returns

Extended class with class management methods

Examples

class MyPlayer extends WithClassManager(BasePlayer) {
  constructor() {
    super();
    // Class system is automatically initialized
  }
}

const player = new MyPlayer();
player.setClass(Fighter);
player.setActor(Hero);