Skip to content

Commit 3dae440

Browse files
committed
fix: remove client side sendTo
app.sendTo is now only available on the server as allowing this on the client enabled client spoofing.
1 parent 9f8b193 commit 3dae440

4 files changed

Lines changed: 3 additions & 10 deletions

File tree

src/core/packets.js

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,6 @@ const names = [
1515
'entityRemoved',
1616
'playerTeleport',
1717
'playerPush',
18-
'sendTo',
1918
'kick',
2019
]
2120

src/core/systems/Apps.js

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -196,6 +196,9 @@ export class Apps extends System {
196196
if (internalEvents.includes(name)) {
197197
return console.error(`apps cannot send internal events (${name})`)
198198
}
199+
if (!world.network.isServer) {
200+
throw new Error('sendTo can only be called on the server')
201+
}
199202
const player = world.entities.get(playerId)
200203
if (!player) return
201204
const event = [entity.data.id, entity.blueprint.version, name, data]

src/core/systems/ClientNetwork.js

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -40,11 +40,6 @@ export class ClientNetwork extends System {
4040
this.ws.send(packet)
4141
}
4242

43-
sendTo(playerId, name, data) {
44-
const packet = writePacket('sendTo', { playerId, name, data })
45-
this.ws.send(packet)
46-
}
47-
4843
async upload(file) {
4944
{
5045
// first check if we even need to upload it

src/core/systems/ServerNetwork.js

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -433,10 +433,6 @@ export class ServerNetwork extends System {
433433
this.sendTo(data.networkId, 'playerSessionAvatar', data.avatar)
434434
}
435435

436-
onSendTo = (socket, data) => {
437-
this.sendTo(data.playerId, data.name, data.data)
438-
}
439-
440436
onDisconnect = (socket, code) => {
441437
socket.player.destroy(true)
442438
this.sockets.delete(socket.id)

0 commit comments

Comments
 (0)