@takaro/gameserver 0.0.30 → 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (76) hide show
  1. package/dist/TakaroEmitter.d.ts +2 -1
  2. package/dist/TakaroEmitter.d.ts.map +1 -1
  3. package/dist/TakaroEmitter.js.map +1 -1
  4. package/dist/config.d.ts +9 -0
  5. package/dist/config.d.ts.map +1 -0
  6. package/dist/config.js +13 -0
  7. package/dist/config.js.map +1 -0
  8. package/dist/gameservers/7d2d/index.d.ts +5 -3
  9. package/dist/gameservers/7d2d/index.d.ts.map +1 -1
  10. package/dist/gameservers/7d2d/index.js +11 -5
  11. package/dist/gameservers/7d2d/index.js.map +1 -1
  12. package/dist/gameservers/7d2d/sdtdAPIClient.d.ts +1 -1
  13. package/dist/gameservers/7d2d/sdtdAPIClient.d.ts.map +1 -1
  14. package/dist/gameservers/7d2d/sdtdAPIClient.js +2 -1
  15. package/dist/gameservers/7d2d/sdtdAPIClient.js.map +1 -1
  16. package/dist/gameservers/generic/connectionInfo.d.ts +16 -0
  17. package/dist/gameservers/generic/connectionInfo.d.ts.map +1 -0
  18. package/dist/gameservers/{mock → generic}/connectionInfo.js +6 -14
  19. package/dist/gameservers/generic/connectionInfo.js.map +1 -0
  20. package/dist/gameservers/generic/connectorClient.d.ts +7 -0
  21. package/dist/gameservers/generic/connectorClient.d.ts.map +1 -0
  22. package/dist/gameservers/generic/connectorClient.js +84 -0
  23. package/dist/gameservers/generic/connectorClient.js.map +1 -0
  24. package/dist/gameservers/generic/emitter.d.ts +13 -0
  25. package/dist/gameservers/generic/emitter.d.ts.map +1 -0
  26. package/dist/gameservers/generic/emitter.js +31 -0
  27. package/dist/gameservers/generic/emitter.js.map +1 -0
  28. package/dist/gameservers/generic/index.d.ts +36 -0
  29. package/dist/gameservers/generic/index.d.ts.map +1 -0
  30. package/dist/gameservers/generic/index.js +170 -0
  31. package/dist/gameservers/generic/index.js.map +1 -0
  32. package/dist/gameservers/rust/index.d.ts +5 -3
  33. package/dist/gameservers/rust/index.d.ts.map +1 -1
  34. package/dist/gameservers/rust/index.js +12 -5
  35. package/dist/gameservers/rust/index.js.map +1 -1
  36. package/dist/getGame.d.ts +4 -3
  37. package/dist/getGame.d.ts.map +1 -1
  38. package/dist/getGame.js +7 -6
  39. package/dist/getGame.js.map +1 -1
  40. package/dist/interfaces/GameServer.d.ts +28 -2
  41. package/dist/interfaces/GameServer.d.ts.map +1 -1
  42. package/dist/interfaces/GameServer.js +97 -2
  43. package/dist/interfaces/GameServer.js.map +1 -1
  44. package/dist/main.d.ts +4 -2
  45. package/dist/main.d.ts.map +1 -1
  46. package/dist/main.js +4 -2
  47. package/dist/main.js.map +1 -1
  48. package/package.json +1 -1
  49. package/src/TakaroEmitter.ts +2 -1
  50. package/src/__tests__/gameEventEmitter.test.ts +4 -9
  51. package/src/config.ts +20 -0
  52. package/src/gameservers/7d2d/__tests__/7d2dEventDetection.unit.test.ts +0 -1
  53. package/src/gameservers/7d2d/index.ts +14 -4
  54. package/src/gameservers/7d2d/sdtdAPIClient.ts +3 -2
  55. package/src/gameservers/generic/connectionInfo.ts +19 -0
  56. package/src/gameservers/generic/connectorClient.ts +107 -0
  57. package/src/gameservers/generic/emitter.ts +36 -0
  58. package/src/gameservers/generic/index.ts +193 -0
  59. package/src/gameservers/rust/index.ts +16 -5
  60. package/src/getGame.ts +7 -5
  61. package/src/interfaces/GameServer.ts +91 -3
  62. package/src/main.ts +5 -3
  63. package/dist/gameservers/mock/connectionInfo.d.ts +0 -21
  64. package/dist/gameservers/mock/connectionInfo.d.ts.map +0 -1
  65. package/dist/gameservers/mock/connectionInfo.js.map +0 -1
  66. package/dist/gameservers/mock/emitter.d.ts +0 -13
  67. package/dist/gameservers/mock/emitter.d.ts.map +0 -1
  68. package/dist/gameservers/mock/emitter.js +0 -34
  69. package/dist/gameservers/mock/emitter.js.map +0 -1
  70. package/dist/gameservers/mock/index.d.ts +0 -35
  71. package/dist/gameservers/mock/index.d.ts.map +0 -1
  72. package/dist/gameservers/mock/index.js +0 -154
  73. package/dist/gameservers/mock/index.js.map +0 -1
  74. package/src/gameservers/mock/connectionInfo.ts +0 -25
  75. package/src/gameservers/mock/emitter.ts +0 -41
  76. package/src/gameservers/mock/index.ts +0 -182
@@ -1,6 +1,7 @@
1
1
  import 'reflect-metadata';
2
2
  import { BaseEvent, EventChatMessage, EventEntityKilled, EventLogLine, EventPlayerConnected, EventPlayerDeath, EventPlayerDisconnected, GameEvents } from '@takaro/modules';
3
3
  import { errors } from '@takaro/util';
4
+ import EventEmitter from 'events';
4
5
  /**
5
6
  * Maps event types to their listener function signatures
6
7
  * This allows our EventEmitter to be strongly typed
@@ -16,8 +17,8 @@ export interface IEventMap {
16
17
  }
17
18
  export declare abstract class TakaroEmitter {
18
19
  private listenerMap;
20
+ abstract start(nodeEventEmitter?: EventEmitter): Promise<void>;
19
21
  abstract stop(): Promise<void>;
20
- abstract start(): Promise<void>;
21
22
  constructor();
22
23
  emit<E extends keyof IEventMap>(event: E, data: BaseEvent<unknown> | Error): Promise<void>;
23
24
  on<E extends keyof IEventMap>(event: E, listener: IEventMap[E]): this;
@@ -1 +1 @@
1
- {"version":3,"file":"TakaroEmitter.d.ts","sourceRoot":"","sources":["../src/TakaroEmitter.ts"],"names":[],"mappings":"AAAA,OAAO,kBAAkB,CAAC;AAE1B,OAAO,EACL,SAAS,EACT,gBAAgB,EAChB,iBAAiB,EACjB,YAAY,EACZ,oBAAoB,EACpB,gBAAgB,EAChB,uBAAuB,EACvB,UAAU,EACX,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,MAAM,EAAuB,MAAM,cAAc,CAAC;AAK3D;;;GAGG;AACH,MAAM,WAAW,SAAS;IACxB,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC,GAAG,EAAE,YAAY,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC5D,CAAC,UAAU,CAAC,gBAAgB,CAAC,EAAE,CAAC,MAAM,EAAE,oBAAoB,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC/E,CAAC,UAAU,CAAC,mBAAmB,CAAC,EAAE,CAAC,MAAM,EAAE,uBAAuB,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACrF,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE,CAAC,WAAW,EAAE,gBAAgB,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC5E,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE,CAAC,WAAW,EAAE,gBAAgB,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC5E,CAAC,UAAU,CAAC,aAAa,CAAC,EAAE,CAAC,YAAY,EAAE,iBAAiB,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC/E,KAAK,EAAE,CAAC,KAAK,EAAE,MAAM,CAAC,WAAW,GAAG,KAAK,KAAK,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;CACpE;AAED,8BAAsB,aAAa;IACjC,OAAO,CAAC,WAAW,CAAiE;IAEpF,QAAQ,CAAC,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAC9B,QAAQ,CAAC,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;;IAMzB,IAAI,CAAC,CAAC,SAAS,MAAM,SAAS,EAAE,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,SAAS,CAAC,OAAO,CAAC,GAAG,KAAK;IA0BhF,EAAE,CAAC,CAAC,SAAS,MAAM,SAAS,EAAE,KAAK,EAAE,CAAC,EAAE,QAAQ,EAAE,SAAS,CAAC,CAAC,CAAC,GAAG,IAAI;IAKrE,GAAG,CAAC,CAAC,SAAS,MAAM,SAAS,EAAE,KAAK,EAAE,CAAC,EAAE,QAAQ,EAAE,SAAS,CAAC,CAAC,CAAC,GAAG,IAAI;IAatE,gBAAgB;CAGjB;AAED,wBAAgB,oBAAoB,CAAC,CAAC,SAAS,aAAa,EAAE,OAAO,EAAE,CAAC,KAgDvE"}
1
+ {"version":3,"file":"TakaroEmitter.d.ts","sourceRoot":"","sources":["../src/TakaroEmitter.ts"],"names":[],"mappings":"AAAA,OAAO,kBAAkB,CAAC;AAE1B,OAAO,EACL,SAAS,EACT,gBAAgB,EAChB,iBAAiB,EACjB,YAAY,EACZ,oBAAoB,EACpB,gBAAgB,EAChB,uBAAuB,EACvB,UAAU,EACX,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,MAAM,EAAuB,MAAM,cAAc,CAAC;AAC3D,OAAO,YAAY,MAAM,QAAQ,CAAC;AAKlC;;;GAGG;AACH,MAAM,WAAW,SAAS;IACxB,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC,GAAG,EAAE,YAAY,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC5D,CAAC,UAAU,CAAC,gBAAgB,CAAC,EAAE,CAAC,MAAM,EAAE,oBAAoB,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC/E,CAAC,UAAU,CAAC,mBAAmB,CAAC,EAAE,CAAC,MAAM,EAAE,uBAAuB,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACrF,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE,CAAC,WAAW,EAAE,gBAAgB,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC5E,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE,CAAC,WAAW,EAAE,gBAAgB,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC5E,CAAC,UAAU,CAAC,aAAa,CAAC,EAAE,CAAC,YAAY,EAAE,iBAAiB,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC/E,KAAK,EAAE,CAAC,KAAK,EAAE,MAAM,CAAC,WAAW,GAAG,KAAK,KAAK,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;CACpE;AAED,8BAAsB,aAAa;IACjC,OAAO,CAAC,WAAW,CAAiE;IAEpF,QAAQ,CAAC,KAAK,CAAC,gBAAgB,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC;IAC9D,QAAQ,CAAC,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;;IAMxB,IAAI,CAAC,CAAC,SAAS,MAAM,SAAS,EAAE,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,SAAS,CAAC,OAAO,CAAC,GAAG,KAAK;IA0BhF,EAAE,CAAC,CAAC,SAAS,MAAM,SAAS,EAAE,KAAK,EAAE,CAAC,EAAE,QAAQ,EAAE,SAAS,CAAC,CAAC,CAAC,GAAG,IAAI;IAKrE,GAAG,CAAC,CAAC,SAAS,MAAM,SAAS,EAAE,KAAK,EAAE,CAAC,EAAE,QAAQ,EAAE,SAAS,CAAC,CAAC,CAAC,GAAG,IAAI;IAatE,gBAAgB;CAGjB;AAED,wBAAgB,oBAAoB,CAAC,CAAC,SAAS,aAAa,EAAE,OAAO,EAAE,CAAC,KAgDvE"}
@@ -1 +1 @@
1
- {"version":3,"file":"TakaroEmitter.js","sourceRoot":"","sources":["../src/TakaroEmitter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"TakaroEmitter.js","sourceRoot":"","sources":["../src/TakaroEmitter.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ import { Config, IBaseConfig } from '@takaro/config';
2
+ interface IGameServerLibConfig extends IBaseConfig {
3
+ connector: {
4
+ host: string;
5
+ };
6
+ }
7
+ export declare const config: Config<IGameServerLibConfig>;
8
+ export {};
9
+ //# sourceMappingURL=config.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAErD,UAAU,oBAAqB,SAAQ,WAAW;IAChD,SAAS,EAAE;QACT,IAAI,EAAE,MAAM,CAAC;KACd,CAAC;CACH;AAaD,eAAO,MAAM,MAAM,8BAAmD,CAAC"}
package/dist/config.js ADDED
@@ -0,0 +1,13 @@
1
+ import { Config } from '@takaro/config';
2
+ const configSchema = {
3
+ connector: {
4
+ host: {
5
+ doc: 'The host of the connector',
6
+ format: String,
7
+ default: 'http://localhost:3003',
8
+ env: 'CONNECTOR_HOST',
9
+ },
10
+ },
11
+ };
12
+ export const config = new Config([configSchema]);
13
+ //# sourceMappingURL=config.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAe,MAAM,gBAAgB,CAAC;AAQrD,MAAM,YAAY,GAAG;IACnB,SAAS,EAAE;QACT,IAAI,EAAE;YACJ,GAAG,EAAE,2BAA2B;YAChC,MAAM,EAAE,MAAM;YACd,OAAO,EAAE,uBAAuB;YAChC,GAAG,EAAE,gBAAgB;SACtB;KACF;CACF,CAAC;AAEF,MAAM,CAAC,MAAM,MAAM,GAAG,IAAI,MAAM,CAAuB,CAAC,YAAY,CAAC,CAAC,CAAC"}
@@ -1,5 +1,5 @@
1
1
  import { IGamePlayer, IPosition } from '@takaro/modules';
2
- import { BanDTO, CommandOutput, IGameServer, IItemDTO, IMessageOptsDTO, IPlayerReferenceDTO, TestReachabilityOutputDTO } from '../../interfaces/GameServer.js';
2
+ import { BanDTO, CommandOutput, IEntityDTO, IGameServer, IItemDTO, IMessageOptsDTO, IPlayerReferenceDTO, TestReachabilityOutputDTO, ILocationDTO } from '../../interfaces/GameServer.js';
3
3
  import { SevenDaysToDieEmitter } from './emitter.js';
4
4
  import { Settings } from '@takaro/apiclient';
5
5
  import { SdtdConnectionInfo } from './connectionInfo.js';
@@ -18,7 +18,7 @@ export declare class SevenDaysToDie implements IGameServer {
18
18
  testReachability(): Promise<TestReachabilityOutputDTO>;
19
19
  executeConsoleCommand(rawCommand: string): Promise<CommandOutput>;
20
20
  sendMessage(message: string, opts?: IMessageOptsDTO): Promise<void>;
21
- teleportPlayer(player: IGamePlayer, x: number, y: number, z: number): Promise<void>;
21
+ teleportPlayer(player: IGamePlayer, x: number, y: number, z: number, _dimension?: string): Promise<void>;
22
22
  kickPlayer(player: IPlayerReferenceDTO, reason: string): Promise<void>;
23
23
  banPlayer(options: BanDTO): Promise<void>;
24
24
  unbanPlayer(player: IPlayerReferenceDTO): Promise<void>;
@@ -27,6 +27,8 @@ export declare class SevenDaysToDie implements IGameServer {
27
27
  getPlayerInventory(player: IPlayerReferenceDTO): Promise<IItemDTO[]>;
28
28
  shutdown(): Promise<void>;
29
29
  getMapInfo(): Promise<import("../../interfaces/GameServer.js").MapInfoDTO>;
30
- getMapTile(x: number, y: number, z: number): Promise<Buffer>;
30
+ getMapTile(x: number, y: number, z: number): Promise<string>;
31
+ listEntities(): Promise<IEntityDTO[]>;
32
+ listLocations(): Promise<ILocationDTO[]>;
31
33
  }
32
34
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/gameservers/7d2d/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AACzD,OAAO,EACL,MAAM,EACN,aAAa,EACb,WAAW,EACX,QAAQ,EACR,eAAe,EACf,mBAAmB,EACnB,yBAAyB,EAC1B,MAAM,gCAAgC,CAAC;AACxC,OAAO,EAAE,qBAAqB,EAAE,MAAM,cAAc,CAAC;AAErD,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAE7C,OAAO,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AASzD,qBACa,cAAe,YAAW,WAAW;IAO9C,OAAO,CAAC,QAAQ;IANlB,OAAO,CAAC,MAAM,CAAkB;IAChC,OAAO,CAAC,SAAS,CAAgB;IACjC,cAAc,EAAE,kBAAkB,CAAC;gBAGjC,MAAM,EAAE,kBAAkB,EAClB,QAAQ,GAAE,OAAO,CAAC,QAAQ,CAAM;IAM1C,eAAe;IAKT,SAAS,CAAC,MAAM,EAAE,mBAAmB,GAAG,OAAO,CAAC,WAAW,GAAG,IAAI,CAAC;IAKnE,UAAU,IAAI,OAAO,CAAC,WAAW,EAAE,CAAC;IA6BpC,qBAAqB,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,GAAG,SAAS,CAAC;IASnE,iBAAiB,CAAC,MAAM,EAAE,mBAAmB,GAAG,OAAO,CAAC,SAAS,GAAG,IAAI,CAAC;IAezE,QAAQ,CAAC,MAAM,EAAE,mBAAmB,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,GAAE,MAAU,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAYxG,gBAAgB,IAAI,OAAO,CAAC,yBAAyB,CAAC;IAwCtD,qBAAqB,CAAC,UAAU,EAAE,MAAM;IAWxC,WAAW,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,eAAe;IAsBnD,cAAc,CAAC,MAAM,EAAE,WAAW,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM;IAKnE,UAAU,CAAC,MAAM,EAAE,mBAAmB,EAAE,MAAM,EAAE,MAAM;IAKtD,SAAS,CAAC,OAAO,EAAE,MAAM;IAwCzB,WAAW,CAAC,MAAM,EAAE,mBAAmB;IAKvC,QAAQ,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;IAsC7B,SAAS,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC;IA4BhC,kBAAkB,CAAC,MAAM,EAAE,mBAAmB,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC;IA6BpE,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;IAQzB,UAAU;IAIV,UAAU,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM;CAGjD"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/gameservers/7d2d/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AACzD,OAAO,EACL,MAAM,EACN,aAAa,EACb,UAAU,EACV,WAAW,EACX,QAAQ,EACR,eAAe,EACf,mBAAmB,EACnB,yBAAyB,EACzB,YAAY,EACb,MAAM,gCAAgC,CAAC;AACxC,OAAO,EAAE,qBAAqB,EAAE,MAAM,cAAc,CAAC;AAErD,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAE7C,OAAO,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AASzD,qBACa,cAAe,YAAW,WAAW;IAO9C,OAAO,CAAC,QAAQ;IANlB,OAAO,CAAC,MAAM,CAAkB;IAChC,OAAO,CAAC,SAAS,CAAgB;IACjC,cAAc,EAAE,kBAAkB,CAAC;gBAGjC,MAAM,EAAE,kBAAkB,EAClB,QAAQ,GAAE,OAAO,CAAC,QAAQ,CAAM;IAM1C,eAAe;IAKT,SAAS,CAAC,MAAM,EAAE,mBAAmB,GAAG,OAAO,CAAC,WAAW,GAAG,IAAI,CAAC;IAKnE,UAAU,IAAI,OAAO,CAAC,WAAW,EAAE,CAAC;IA6BpC,qBAAqB,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,GAAG,SAAS,CAAC;IASnE,iBAAiB,CAAC,MAAM,EAAE,mBAAmB,GAAG,OAAO,CAAC,SAAS,GAAG,IAAI,CAAC;IAezE,QAAQ,CAAC,MAAM,EAAE,mBAAmB,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,GAAE,MAAU,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAYxG,gBAAgB,IAAI,OAAO,CAAC,yBAAyB,CAAC;IAwCtD,qBAAqB,CAAC,UAAU,EAAE,MAAM;IAWxC,WAAW,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,eAAe;IAqBnD,cAAc,CAAC,MAAM,EAAE,WAAW,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM;IAMxF,UAAU,CAAC,MAAM,EAAE,mBAAmB,EAAE,MAAM,EAAE,MAAM;IAKtD,SAAS,CAAC,OAAO,EAAE,MAAM;IAwCzB,WAAW,CAAC,MAAM,EAAE,mBAAmB;IAKvC,QAAQ,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;IAsC7B,SAAS,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC;IA4BhC,kBAAkB,CAAC,MAAM,EAAE,mBAAmB,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC;IA6BpE,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;IAQzB,UAAU;IAIV,UAAU,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM;IAI1C,YAAY,IAAI,OAAO,CAAC,UAAU,EAAE,CAAC;IAIrC,aAAa,IAAI,OAAO,CAAC,YAAY,EAAE,CAAC;CAG/C"}
@@ -8,7 +8,7 @@ var __metadata = (this && this.__metadata) || function (k, v) {
8
8
  if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
9
9
  };
10
10
  import { errors, logger, traceableClass } from '@takaro/util';
11
- import { IGamePlayer } from '@takaro/modules';
11
+ import { IGamePlayer, IPosition } from '@takaro/modules';
12
12
  import { BanDTO, CommandOutput, IItemDTO, TestReachabilityOutputDTO, } from '../../interfaces/GameServer.js';
13
13
  import { SevenDaysToDieEmitter } from './emitter.js';
14
14
  import { SdtdApiClient } from './sdtdAPIClient.js';
@@ -71,11 +71,11 @@ let SevenDaysToDie = class SevenDaysToDie {
71
71
  if (!playerLocation) {
72
72
  return null;
73
73
  }
74
- return {
74
+ return new IPosition({
75
75
  x: playerLocation.position.x,
76
76
  y: playerLocation.position.y,
77
77
  z: playerLocation.position.z,
78
- };
78
+ });
79
79
  }
80
80
  async giveItem(player, item, amount = 1, quality) {
81
81
  const command = this.connectionInfo.useCPM
@@ -134,7 +134,6 @@ let SevenDaysToDie = class SevenDaysToDie {
134
134
  });
135
135
  }
136
136
  async sendMessage(message, opts) {
137
- // eslint-disable-next-line quotes
138
137
  const escapedMessage = message.replaceAll(/"/g, "'");
139
138
  let command = `say "${escapedMessage}"`;
140
139
  if (opts?.recipient?.gameId) {
@@ -149,7 +148,8 @@ let SevenDaysToDie = class SevenDaysToDie {
149
148
  }
150
149
  await this.executeConsoleCommand(command);
151
150
  }
152
- async teleportPlayer(player, x, y, z) {
151
+ async teleportPlayer(player, x, y, z, _dimension) {
152
+ // 7D2D doesn't support dimensions, so we ignore the dimension parameter
153
153
  const command = `teleportplayer EOS_${player.gameId} ${x} ${y} ${z}`;
154
154
  await this.executeConsoleCommand(command);
155
155
  }
@@ -286,6 +286,12 @@ let SevenDaysToDie = class SevenDaysToDie {
286
286
  async getMapTile(x, y, z) {
287
287
  return this.apiClient.getMapTile(x, y, z);
288
288
  }
289
+ async listEntities() {
290
+ throw new errors.NotImplementedError();
291
+ }
292
+ async listLocations() {
293
+ throw new errors.NotImplementedError();
294
+ }
289
295
  };
290
296
  SevenDaysToDie = __decorate([
291
297
  traceableClass('game:7d2d'),
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/gameservers/7d2d/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/gameservers/7d2d/index.ts"],"names":[],"mappings":"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"}
@@ -13,6 +13,6 @@ export declare class SdtdApiClient {
13
13
  getOnlinePlayers(): Promise<AxiosResponse<Array<OnlinePlayerResponse>>>;
14
14
  getPlayerInventory(id: string): Promise<AxiosResponse<InventoryResponse>>;
15
15
  getMapInfo(): Promise<MapInfoDTO>;
16
- getMapTile(x: number, y: number, z: number): Promise<Buffer>;
16
+ getMapTile(x: number, y: number, z: number): Promise<string>;
17
17
  }
18
18
  //# sourceMappingURL=sdtdAPIClient.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"sdtdAPIClient.d.ts","sourceRoot":"","sources":["../../../src/gameservers/7d2d/sdtdAPIClient.ts"],"names":[],"mappings":"AAAA,OAAc,EAAS,aAAa,EAAE,MAAM,OAAO,CAAC;AACpD,OAAO,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AACzD,OAAO,EACL,eAAe,EACf,iBAAiB,EACjB,oBAAoB,EACpB,cAAc,EACd,aAAa,EACd,MAAM,mBAAmB,CAAC;AAE3B,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAE3C,qBAAa,aAAa;IAGZ,OAAO,CAAC,MAAM;IAF1B,OAAO,CAAC,MAAM,CAAQ;gBAEF,MAAM,EAAE,kBAAkB;IA0C9C,OAAO,KAAK,GAAG,GAEd;IAEK,QAAQ,IAAI,OAAO,CAAC,aAAa,CAAC,aAAa,CAAC,CAAC;IAIjD,qBAAqB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC,eAAe,CAAC,CAAC;IAI/E,kBAAkB,IAAI,OAAO,CAAC,aAAa,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC,CAAC;IAInE,gBAAgB,IAAI,OAAO,CAAC,aAAa,CAAC,KAAK,CAAC,oBAAoB,CAAC,CAAC,CAAC;IAIvE,kBAAkB,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC,iBAAiB,CAAC,CAAC;IAIzE,UAAU,IAAI,OAAO,CAAC,UAAU,CAAC;IAajC,UAAU,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;CAMnE"}
1
+ {"version":3,"file":"sdtdAPIClient.d.ts","sourceRoot":"","sources":["../../../src/gameservers/7d2d/sdtdAPIClient.ts"],"names":[],"mappings":"AAAA,OAAc,EAAS,aAAa,EAAE,MAAM,OAAO,CAAC;AACpD,OAAO,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AACzD,OAAO,EACL,eAAe,EACf,iBAAiB,EACjB,oBAAoB,EACpB,cAAc,EACd,aAAa,EACd,MAAM,mBAAmB,CAAC;AAE3B,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAE3C,qBAAa,aAAa;IAGZ,OAAO,CAAC,MAAM;IAF1B,OAAO,CAAC,MAAM,CAAQ;gBAEF,MAAM,EAAE,kBAAkB;IA0C9C,OAAO,KAAK,GAAG,GAEd;IAEK,QAAQ,IAAI,OAAO,CAAC,aAAa,CAAC,aAAa,CAAC,CAAC;IAIjD,qBAAqB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC,eAAe,CAAC,CAAC;IAI/E,kBAAkB,IAAI,OAAO,CAAC,aAAa,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC,CAAC;IAInE,gBAAgB,IAAI,OAAO,CAAC,aAAa,CAAC,KAAK,CAAC,oBAAoB,CAAC,CAAC,CAAC;IAIvE,kBAAkB,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC,iBAAiB,CAAC,CAAC;IAIzE,UAAU,IAAI,OAAO,CAAC,UAAU,CAAC;IAajC,UAAU,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;CAOnE"}
@@ -70,7 +70,8 @@ export class SdtdApiClient {
70
70
  const res = await this.client.get(`/map/${z}/${x}/${y}.png?t=${Date.now() / 1000}`, {
71
71
  responseType: 'arraybuffer',
72
72
  });
73
- return res.data;
73
+ // Convert to b64
74
+ return Buffer.from(res.data, 'binary').toString('base64');
74
75
  }
75
76
  }
76
77
  //# sourceMappingURL=sdtdAPIClient.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"sdtdAPIClient.js","sourceRoot":"","sources":["../../../src/gameservers/7d2d/sdtdAPIClient.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sdtdAPIClient.js","sourceRoot":"","sources":["../../../src/gameservers/7d2d/sdtdAPIClient.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,16 @@
1
+ import { TakaroDTO } from '@takaro/util';
2
+ export declare class GenericConnectionInfo extends TakaroDTO<GenericConnectionInfo> {
3
+ identityToken: string;
4
+ }
5
+ export declare const genericJsonSchema: {
6
+ $schema: string;
7
+ title: string;
8
+ type: string;
9
+ properties: {
10
+ identityToken: {
11
+ type: string;
12
+ };
13
+ };
14
+ required: string[];
15
+ };
16
+ //# sourceMappingURL=connectionInfo.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"connectionInfo.d.ts","sourceRoot":"","sources":["../../../src/gameservers/generic/connectionInfo.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAEzC,qBAAa,qBAAsB,SAAQ,SAAS,CAAC,qBAAqB,CAAC;IAElE,aAAa,EAAE,MAAM,CAAC;CAC9B;AAED,eAAO,MAAM,iBAAiB;;;;;;;;;;CAU7B,CAAC"}
@@ -9,29 +9,21 @@ var __metadata = (this && this.__metadata) || function (k, v) {
9
9
  };
10
10
  import { IsString } from 'class-validator';
11
11
  import { TakaroDTO } from '@takaro/util';
12
- export class MockConnectionInfo extends TakaroDTO {
12
+ export class GenericConnectionInfo extends TakaroDTO {
13
13
  }
14
14
  __decorate([
15
15
  IsString(),
16
16
  __metadata("design:type", String)
17
- ], MockConnectionInfo.prototype, "host", void 0);
18
- __decorate([
19
- IsString(),
20
- __metadata("design:type", String)
21
- ], MockConnectionInfo.prototype, "name", void 0);
22
- export const mockJsonSchema = {
17
+ ], GenericConnectionInfo.prototype, "identityToken", void 0);
18
+ export const genericJsonSchema = {
23
19
  $schema: 'http://json-schema.org/draft-07/schema#',
24
- title: 'MockConnectionInfo',
20
+ title: 'GenericConnectionInfo',
25
21
  type: 'object',
26
22
  properties: {
27
- host: {
28
- type: 'string',
29
- },
30
- name: {
23
+ identityToken: {
31
24
  type: 'string',
32
- default: 'mock',
33
25
  },
34
26
  },
35
- required: ['host'],
27
+ required: ['identityToken'],
36
28
  };
37
29
  //# sourceMappingURL=connectionInfo.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"connectionInfo.js","sourceRoot":"","sources":["../../../src/gameservers/generic/connectionInfo.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAC3C,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAEzC,MAAM,OAAO,qBAAsB,SAAQ,SAAgC;CAG1E;AADQ;IADN,QAAQ,EAAE;;4DACkB;AAG/B,MAAM,CAAC,MAAM,iBAAiB,GAAG;IAC/B,OAAO,EAAE,yCAAyC;IAClD,KAAK,EAAE,uBAAuB;IAC9B,IAAI,EAAE,QAAQ;IACd,UAAU,EAAE;QACV,aAAa,EAAE;YACb,IAAI,EAAE,QAAQ;SACf;KACF;IACD,QAAQ,EAAE,CAAC,eAAe,CAAC;CAC5B,CAAC"}
@@ -0,0 +1,7 @@
1
+ export declare class TakaroConnector {
2
+ private client;
3
+ constructor();
4
+ requestFromServer(id: string, operation: string, data: string): Promise<any>;
5
+ resetConnection(id: string): Promise<any>;
6
+ }
7
+ //# sourceMappingURL=connectorClient.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"connectorClient.d.ts","sourceRoot":"","sources":["../../../src/gameservers/generic/connectorClient.ts"],"names":[],"mappings":"AA+DA,qBAAa,eAAe;IAC1B,OAAO,CAAC,MAAM,CAAgB;;IAKxB,iBAAiB,CAAC,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC;IAsB5E,eAAe,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC;CAehD"}
@@ -0,0 +1,84 @@
1
+ import axios, { isAxiosError } from 'axios';
2
+ import { config } from '../../config.js';
3
+ import { errors, logger } from '@takaro/util';
4
+ function getConnectorClient() {
5
+ const log = logger('client:connector');
6
+ const connectorClient = axios.create({
7
+ baseURL: config.get('connector.host'),
8
+ headers: {
9
+ 'Content-Type': 'application/json',
10
+ 'User-Agent': 'Takaro',
11
+ },
12
+ });
13
+ connectorClient.interceptors.request.use((request) => {
14
+ log.debug(`➡️ ${request.method?.toUpperCase()} ${request.url}`, {
15
+ method: request.method,
16
+ url: request.url,
17
+ operation: request.data?.operation,
18
+ });
19
+ return request;
20
+ });
21
+ connectorClient.interceptors.response.use((response) => {
22
+ log.debug(`⬅️ ${response.request.method?.toUpperCase()} ${response.request.path} ${response.status} ${response.statusText}`, {
23
+ status: response.status,
24
+ method: response.request.method,
25
+ url: response.request.url,
26
+ operation: response.config.data?.operation,
27
+ });
28
+ return response;
29
+ }, (error) => {
30
+ let details = {};
31
+ if (error.response?.data) {
32
+ const data = error.response.data;
33
+ details = JSON.stringify(data.error_description);
34
+ }
35
+ log.warn(`☠️ Request errored: [${error.response?.status}] ${details}`, {
36
+ status: error.response?.status,
37
+ statusText: error.response?.statusText,
38
+ method: error.config?.method,
39
+ url: error.config?.url,
40
+ response: error.response?.data,
41
+ });
42
+ return Promise.reject(error);
43
+ });
44
+ return connectorClient;
45
+ }
46
+ export class TakaroConnector {
47
+ constructor() {
48
+ this.client = getConnectorClient();
49
+ }
50
+ async requestFromServer(id, operation, data) {
51
+ try {
52
+ const res = await this.client.post(`/gameserver/${id}/request`, { operation, data });
53
+ return res.data.data;
54
+ }
55
+ catch (error) {
56
+ if (isAxiosError(error)) {
57
+ if (error.response?.data.meta.error.code === 'ValidationError') {
58
+ throw new errors.BadRequestError('The gameserver responded with bad data, please verify that the mod is up to date.');
59
+ }
60
+ if (error.response?.status) {
61
+ if (error.response?.status >= 400 && error.response?.status < 500) {
62
+ throw new errors.BadRequestError(error.response?.data.meta.error.message);
63
+ }
64
+ }
65
+ }
66
+ throw error;
67
+ }
68
+ }
69
+ async resetConnection(id) {
70
+ try {
71
+ await this.client.post(`/gameserver/${id}/reset`);
72
+ return;
73
+ }
74
+ catch (error) {
75
+ if (isAxiosError(error)) {
76
+ if (error.response?.data.meta.error.code === 'ValidationError') {
77
+ throw new errors.BadRequestError('The gameserver responded with bad data, please verify that the mod is up to date.');
78
+ }
79
+ }
80
+ throw error;
81
+ }
82
+ }
83
+ }
84
+ //# sourceMappingURL=connectorClient.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"connectorClient.js","sourceRoot":"","sources":["../../../src/gameservers/generic/connectorClient.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,13 @@
1
+ import { GenericConnectionInfo } from './connectionInfo.js';
2
+ import { TakaroEmitter } from '../../TakaroEmitter.js';
3
+ import { GameEventTypes } from '@takaro/modules';
4
+ export declare class GenericEmitter extends TakaroEmitter {
5
+ private config;
6
+ private scopedListener;
7
+ constructor(config: GenericConnectionInfo);
8
+ start(): Promise<void>;
9
+ stop(): Promise<void>;
10
+ get listener(): (event: GameEventTypes, args: any) => Promise<void>;
11
+ private privateListener;
12
+ }
13
+ //# sourceMappingURL=emitter.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"emitter.d.ts","sourceRoot":"","sources":["../../../src/gameservers/generic/emitter.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;AAC5D,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AACvD,OAAO,EAAgB,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAG/D,qBAAa,cAAe,SAAQ,aAAa;IAGnC,OAAO,CAAC,MAAM;IAF1B,OAAO,CAAC,cAAc,CAAmC;gBAErC,MAAM,EAAE,qBAAqB;IAI3C,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAItB,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAI3B,IAAI,QAAQ,YAIyB,cAAc,QAAQ,GAAG,mBAF7D;YAEa,eAAe;CAU9B"}
@@ -0,0 +1,31 @@
1
+ import { logger } from '@takaro/util';
2
+ import { TakaroEmitter } from '../../TakaroEmitter.js';
3
+ import { EventMapping } from '@takaro/modules';
4
+ const log = logger('Generic');
5
+ export class GenericEmitter extends TakaroEmitter {
6
+ constructor(config) {
7
+ super();
8
+ this.config = config;
9
+ this.scopedListener = this.privateListener.bind(this);
10
+ }
11
+ async start() {
12
+ // No-op, generic connectors initiate the connection
13
+ }
14
+ async stop() {
15
+ // No-op, generic connectors initiate the connection
16
+ }
17
+ get listener() {
18
+ return this.scopedListener;
19
+ }
20
+ async privateListener(event, args) {
21
+ log.debug(`Transmitting event ${event}`);
22
+ const dto = EventMapping[event];
23
+ if (dto) {
24
+ this.emit(event, new dto(args));
25
+ }
26
+ else {
27
+ this.emit(event, args);
28
+ }
29
+ }
30
+ }
31
+ //# sourceMappingURL=emitter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"emitter.js","sourceRoot":"","sources":["../../../src/gameservers/generic/emitter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAEtC,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AACvD,OAAO,EAAE,YAAY,EAAkB,MAAM,iBAAiB,CAAC;AAE/D,MAAM,GAAG,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC;AAC9B,MAAM,OAAO,cAAe,SAAQ,aAAa;IAG/C,YAAoB,MAA6B;QAC/C,KAAK,EAAE,CAAC;QADU,WAAM,GAAN,MAAM,CAAuB;QAFzC,mBAAc,GAAG,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAIzD,CAAC;IAED,KAAK,CAAC,KAAK;QACT,oDAAoD;IACtD,CAAC;IAED,KAAK,CAAC,IAAI;QACR,oDAAoD;IACtD,CAAC;IAED,IAAI,QAAQ;QACV,OAAO,IAAI,CAAC,cAAc,CAAC;IAC7B,CAAC;IAEO,KAAK,CAAC,eAAe,CAAC,KAAqB,EAAE,IAAS;QAC5D,GAAG,CAAC,KAAK,CAAC,sBAAsB,KAAK,EAAE,CAAC,CAAC;QACzC,MAAM,GAAG,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC;QAEhC,IAAI,GAAG,EAAE,CAAC;YACR,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC;QAClC,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;QACzB,CAAC;IACH,CAAC;CACF"}
@@ -0,0 +1,36 @@
1
+ import { IGamePlayer, IPosition } from '@takaro/modules';
2
+ import { BanDTO, CommandOutput, IEntityDTO, IGameServer, IItemDTO, ILocationDTO, IMessageOptsDTO, IPlayerReferenceDTO, MapInfoDTO, TestReachabilityOutputDTO } from '../../interfaces/GameServer.js';
3
+ import { Settings } from '@takaro/apiclient';
4
+ import { GenericConnectionInfo } from './connectionInfo.js';
5
+ import { GenericEmitter } from './emitter.js';
6
+ export declare class Generic implements IGameServer {
7
+ private settings;
8
+ private gameServerId;
9
+ private logger;
10
+ connectionInfo: GenericConnectionInfo;
11
+ emitter: GenericEmitter;
12
+ private takaroConnector;
13
+ constructor(config: GenericConnectionInfo, settings: Partial<Settings>, gameServerId: string);
14
+ getEventEmitter(): GenericEmitter;
15
+ private requestFromServer;
16
+ getPlayer(rawPlayer: IPlayerReferenceDTO): Promise<IGamePlayer | null>;
17
+ getPlayers(): Promise<IGamePlayer[]>;
18
+ getPlayerLocation(rawPlayer: IPlayerReferenceDTO): Promise<IPosition | null>;
19
+ testReachability(): Promise<TestReachabilityOutputDTO>;
20
+ executeConsoleCommand(rawCommand: string): Promise<CommandOutput>;
21
+ sendMessage(message: string, opts?: IMessageOptsDTO): Promise<void>;
22
+ teleportPlayer(player: IGamePlayer, x: number, y: number, z: number, dimension?: string): Promise<void>;
23
+ kickPlayer(player: IGamePlayer, reason: string): Promise<void>;
24
+ banPlayer(options: BanDTO): Promise<void>;
25
+ unbanPlayer(player: IGamePlayer): Promise<void>;
26
+ listBans(): Promise<BanDTO[]>;
27
+ giveItem(rawPlayer: IPlayerReferenceDTO, item: string, amount: number, quality: string): Promise<void>;
28
+ listItems(): Promise<IItemDTO[]>;
29
+ getPlayerInventory(rawPlayer: IPlayerReferenceDTO): Promise<IItemDTO[]>;
30
+ shutdown(): Promise<void>;
31
+ getMapInfo(): Promise<MapInfoDTO>;
32
+ getMapTile(_x: number, _y: number, _z: number): Promise<string>;
33
+ listEntities(): Promise<IEntityDTO[]>;
34
+ listLocations(): Promise<ILocationDTO[]>;
35
+ }
36
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/gameservers/generic/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AACzD,OAAO,EACL,MAAM,EACN,aAAa,EACb,UAAU,EACV,WAAW,EACX,QAAQ,EACR,YAAY,EACZ,eAAe,EACf,mBAAmB,EACnB,UAAU,EACV,yBAAyB,EAC1B,MAAM,gCAAgC,CAAC;AACxC,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAE7C,OAAO,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;AAE5D,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAE9C,qBACa,OAAQ,YAAW,WAAW;IAQvC,OAAO,CAAC,QAAQ;IAChB,OAAO,CAAC,YAAY;IARtB,OAAO,CAAC,MAAM,CAAqB;IACnC,cAAc,EAAE,qBAAqB,CAAC;IACtC,OAAO,EAAE,cAAc,CAAC;IACxB,OAAO,CAAC,eAAe,CAAyB;gBAG9C,MAAM,EAAE,qBAAqB,EACrB,QAAQ,EAAE,OAAO,CAAC,QAAQ,CAAM,EAChC,YAAY,EAAE,MAAM;IAM9B,eAAe;YAID,iBAAiB;IAWzB,SAAS,CAAC,SAAS,EAAE,mBAAmB,GAAG,OAAO,CAAC,WAAW,GAAG,IAAI,CAAC;IAStE,UAAU,IAAI,OAAO,CAAC,WAAW,EAAE,CAAC;IASpC,iBAAiB,CAAC,SAAS,EAAE,mBAAmB,GAAG,OAAO,CAAC,SAAS,GAAG,IAAI,CAAC;IAS5E,gBAAgB,IAAI,OAAO,CAAC,yBAAyB,CAAC;IActD,qBAAqB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC;IASjE,WAAW,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,eAAe;IAQnD,cAAc,CAAC,MAAM,EAAE,WAAW,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM;IAIvF,UAAU,CAAC,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM;IAI9C,SAAS,CAAC,OAAO,EAAE,MAAM;IAIzB,WAAW,CAAC,MAAM,EAAE,WAAW;IAI/B,QAAQ,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;IAS7B,QAAQ,CAAC,SAAS,EAAE,mBAAmB,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAStG,SAAS,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC;IAShC,kBAAkB,CAAC,SAAS,EAAE,mBAAmB,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC;IAUvE,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;IAIzB,UAAU,IAAI,OAAO,CAAC,UAAU,CAAC;IASjC,UAAU,CAAC,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAK/D,YAAY,IAAI,OAAO,CAAC,UAAU,EAAE,CAAC;IASrC,aAAa,IAAI,OAAO,CAAC,YAAY,EAAE,CAAC;CAG/C"}