@rpgjs/server 3.0.0-beta.3 → 3.0.0-beta.6

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.
package/lib/server.js CHANGED
@@ -16,7 +16,6 @@ const Query_1 = require("./Query");
16
16
  const presets_1 = require("./presets");
17
17
  const sync_server_1 = require("@rpgjs/sync-server");
18
18
  const common_1 = require("@rpgjs/common");
19
- let tick = 0;
20
19
  class RpgServerEngine {
21
20
  /**
22
21
  * Combat formulas
@@ -52,6 +51,12 @@ class RpgServerEngine {
52
51
  this.damageFormulas = {};
53
52
  this.scenes = new Map();
54
53
  this.totalConnected = 0;
54
+ this.tick = 0;
55
+ this.world = sync_server_1.World;
56
+ if (this.inputOptions.workers) {
57
+ console.log('workers enabled');
58
+ this.workers = this.gameEngine.createWorkers(this.inputOptions.workers).load();
59
+ }
55
60
  }
56
61
  _init() {
57
62
  return __awaiter(this, void 0, void 0, function* () {
@@ -73,49 +78,116 @@ class RpgServerEngine {
73
78
  }
74
79
  for (let key in this.inputOptions.database) {
75
80
  const data = this.inputOptions.database[key];
76
- this.database[data.id] = data;
81
+ this.addInDatabase(data.id, data);
77
82
  }
78
83
  this.loadScenes();
79
84
  });
80
85
  }
86
+ /**
87
+ * Adds data to the server's database (in RAM) for later use
88
+ *
89
+ * @method server.addInDatabase(id,data)
90
+ * @title Add in database
91
+ * @param {number} id resource id
92
+ * @param {class} dataClass A class representing the data
93
+ * @since 3.0.0-beta.4
94
+ * @example
95
+ * ```ts
96
+ * @Item({
97
+ * name: 'Potion',
98
+ * description: 'Gives 100 HP',
99
+ * })
100
+ * class MyItem() {}
101
+ *
102
+ * server.addInDatabase('dynamic_item', MyItem)
103
+ * ```
104
+ * @returns {void}
105
+ * @memberof RpgServerEngine
106
+ */
107
+ addInDatabase(id, dataClass) {
108
+ this.database[id] = dataClass;
109
+ }
81
110
  /**
82
111
  * Start the RPG server
83
112
  *
84
113
  * @method server.start()
114
+ * @title Start Server
85
115
  * @returns {void}
86
116
  * @memberof RpgServerEngine
87
117
  */
88
- start(inputOptions) {
118
+ start(inputOptions, scheduler = true) {
89
119
  return __awaiter(this, void 0, void 0, function* () {
90
120
  if (inputOptions)
91
121
  this.inputOptions = inputOptions;
92
122
  yield this._init();
93
- let schedulerConfig = {
123
+ this.scheduler = new common_1.Scheduler({
94
124
  tick: this.step.bind(this),
95
125
  period: 1000 / this.inputOptions.stepRate,
96
126
  delay: 4
97
- };
98
- this.scheduler = new common_1.Scheduler(schedulerConfig).start();
127
+ });
128
+ if (scheduler)
129
+ this.scheduler.start();
99
130
  this.gameEngine.start({
100
131
  getObject(id) {
101
132
  return Query_1.Query.getPlayer(id);
102
133
  },
103
134
  getObjectsOfGroup(groupId, player) {
104
- return Query_1.Query.getObjectsOfMap(groupId, player);
135
+ return Query_1.Query._getObjectsOfMap(groupId, player);
105
136
  }
106
137
  });
107
138
  this.io.on('connection', this.onPlayerConnected.bind(this));
108
139
  common_1.RpgPlugin.emit(common_1.HookServer.Start, this);
109
140
  });
110
141
  }
142
+ /**
143
+ * Sends all packages to clients. The sending is done automatically but you can decide to send yourself by calling this method (for example, for unit tests)
144
+ *
145
+ * @method server.send()
146
+ * @title Send All Packets
147
+ * @returns {void}
148
+ * @memberof RpgServerEngine
149
+ */
111
150
  send() {
112
- sync_server_1.World.send();
151
+ this.world.send();
113
152
  }
114
- step() {
115
- tick++;
116
- if (tick % 4 === 0) {
153
+ updatePlayersMove(deltaTimeInt) {
154
+ const players = this.world.getUsers();
155
+ const obj = [];
156
+ for (let playerId in players) {
157
+ const player = players[playerId];
158
+ if (player.pendingMove.length > 0) {
159
+ if (this.inputOptions.workers)
160
+ obj.push(player.toObject());
161
+ else {
162
+ this.gameEngine.processInput(playerId);
163
+ }
164
+ player.pendingMove = [];
165
+ }
166
+ }
167
+ if (this.inputOptions.workers) {
168
+ this.workers.call('movePlayers', obj).then((players) => {
169
+ for (let playerId in players) {
170
+ const player = this.world.getUser(playerId);
171
+ const data = players[playerId];
172
+ if (player) {
173
+ player.position = data.position;
174
+ player.direction = data.direction;
175
+ }
176
+ common_1.RpgPlugin.emit('Server.onInput', [player, {
177
+ input: data.direction,
178
+ moving: true
179
+ }], true);
180
+ }
181
+ });
182
+ }
183
+ }
184
+ step(t, dt) {
185
+ this.tick++;
186
+ this.updatePlayersMove(1);
187
+ if (this.tick % 4 === 0) {
117
188
  this.send();
118
189
  }
190
+ common_1.RpgPlugin.emit(common_1.HookServer.Step, this);
119
191
  }
120
192
  loadScenes() {
121
193
  this.scenes.set(Map_1.SceneMap.id, new Map_1.SceneMap(this.inputOptions.maps, this));
@@ -123,6 +195,15 @@ class RpgServerEngine {
123
195
  getScene(name) {
124
196
  return this.scenes.get(name);
125
197
  }
198
+ /**
199
+ * Return the scene that manages the maps of the game
200
+ * @prop {SceneMap} [sceneMap]
201
+ * @since 3.0.0-beta.4
202
+ * @memberof RpgServerEngine
203
+ */
204
+ get sceneMap() {
205
+ return this.getScene(Map_1.SceneMap.id);
206
+ }
126
207
  sendToPlayer(currentPlayer, eventName, data) {
127
208
  currentPlayer._socket.emit(eventName, data);
128
209
  }
@@ -130,12 +211,13 @@ class RpgServerEngine {
130
211
  const playerId = common_1.Utils.generateUID();
131
212
  let player = new this.playerClass(this.gameEngine, playerId);
132
213
  socket.on('move', (data) => {
133
- this.gameEngine.processInput(data, playerId);
214
+ player._lastFrame = data.frame;
215
+ player.pendingMove.push(data);
134
216
  });
135
217
  socket.on('disconnect', () => {
136
218
  this.onPlayerDisconnected(socket.id, playerId);
137
219
  });
138
- sync_server_1.World.setUser(player, socket);
220
+ this.world.setUser(player, socket);
139
221
  socket.emit('playerJoined', { playerId });
140
222
  player.server = this;
141
223
  player._init();
@@ -149,7 +231,7 @@ class RpgServerEngine {
149
231
  onPlayerDisconnected(socketId, playerId) {
150
232
  const player = sync_server_1.World.getUser(playerId);
151
233
  player.execMethod('onDisconnected');
152
- sync_server_1.World.disconnectUser(playerId);
234
+ this.world.disconnectUser(playerId);
153
235
  }
154
236
  }
155
237
  exports.RpgServerEngine = RpgServerEngine;
package/lib/server.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ declare const parentPort: any, threadId: any;
2
+ declare const clients: never[];
@@ -0,0 +1,8 @@
1
+ "use strict";
2
+ const { parentPort, threadId } = require('worker_threads');
3
+ const clients = [];
4
+ console.log(threadId);
5
+ parentPort.on('message', (msg) => {
6
+ console.log(msg);
7
+ });
8
+ //# sourceMappingURL=move.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"move.js","sourceRoot":"","sources":["../../src/workers/move.ts"],"names":[],"mappings":";AAAA,MAAM,EACJ,UAAU,EACV,QAAQ,EACT,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAAA;AAC7B,MAAM,OAAO,GAAG,EAAE,CAAA;AAElB,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAA;AAErB,UAAU,CAAC,EAAE,CAAC,SAAS,EAAE,CAAC,GAAG,EAAE,EAAE;IAC/B,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;AAClB,CAAC,CAAC,CAAA"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@rpgjs/server",
3
- "version": "3.0.0-beta.3",
3
+ "version": "3.0.0-beta.6",
4
4
  "description": "",
5
5
  "main": "./lib/index.js",
6
6
  "types": "./lib/index.d.ts",
@@ -18,16 +18,14 @@
18
18
  "author": "Samuel Ronce",
19
19
  "license": "MIT",
20
20
  "dependencies": {
21
- "@rpgjs/common": "^3.0.0-beta.3",
22
- "@rpgjs/database": "^3.0.0-beta.3",
23
- "@rpgjs/sync-server": "^3.0.0-beta.3",
24
- "kompute": "^1.13.0",
21
+ "@rpgjs/common": "^3.0.0-beta.6",
22
+ "@rpgjs/database": "^3.0.0-beta.6",
23
+ "@rpgjs/sync-server": "^3.0.0-beta.6",
25
24
  "lodash.merge": "^4.6.2",
26
25
  "pathfinding": "^0.4.18",
27
- "sat": "^0.8.0",
28
- "yuka": "^0.7.5"
26
+ "sat": "^0.8.0"
29
27
  },
30
- "gitHead": "7bb0326cc3216764a4bfc86f53e7b24464a2040f",
28
+ "gitHead": "23673ae3b2706d55fc924fb3648e5ec46af7cac8",
31
29
  "devDependencies": {
32
30
  "typescript": "^4.3.5"
33
31
  }