Files: system/scripts/teleport.ts:49, system/scripts/home.ts:13,
src/services/Sandbox/SandboxService.ts:59-67
u.teleport() only updates the location in memory. It does not:
"X has left." to the source room"X has arrived." to the destination roomteleport.ts even has a comment claiming “SandboxService handles the actual movements and look” — it doesn’t.home.ts has the same gap.File: src/services/WebSocket/index.ts:132-139
When a player disconnects the close event fires this.broadcast() (all connected clients, not just
the room) and the payload includes a hardcoded dummy room:
room: { name: "", desc: "", exits: [], players: [], items: [] } // dummy
exclude parameter is silently ignoredFile: src/services/broadcast/broadcast.ts
send() accepts _exclude: string[] but never uses it. Commands like get.ts and drop.ts{ exclude: [actor.id] } to avoid double-messaging the actor, but it has no effect —u.send, once from u.broadcast).File: system/scripts/give.ts:39-40
"state.money" but the actual DB field is under data. TransfersFile: src/services/commands/movement.ts:67-68
#<id> strings, but send() expects socket IDs."X tries to go North, but fails.".File: src/routes/sceneRouter.ts:358
// Only owner or allowed can invite? Let's say Owner for now.File: src/routes/dbObjRouter.ts:64-67
// Safe update fields? Allow updating 'data' and 'description' for now.File: src/utils/evaluateLock.ts:160
// Simple equality for now.>, <, >=, <=) are notFile: system/scripts/open.ts:78
{ data: { ...actor.state } }. If actor.statedb.modifyFile: system/scripts/link.ts:44,48,58
{ "data.dropto": id } style paths in db.modify calls. Whether the database layer"data.dropto".File: src/services/Map/index.ts:39
u, d, out, in all map to { x:0, y:0 }. Multi-level or z-axis maps render incorrectly.File: system/scripts/doing.ts
"X is now: <doing>" is a design question, but currently there is no option either way.File: system/scripts/moniker.ts
File: src/services/Script/index.ts:41-45
"Simplified: Just evaluating code for now to prove connection." —File: system/scripts/pose.ts:34-37
| Item | Reason |
|---|---|
@quit global disconnect |
Handled correctly via WS close event |
| Movement auto-look | Already calls force(ctx, "look") after a successful exit |
| Connect auto-look | u.execute("look") at end of connect.ts |
| Channel talking | Implemented in channels.ts via matchChannel() |