Download Game! Currently 60 players and visitors. Last logged in:SuzukiShutatMahjongFloppy

Blitzer's Blog >> 72064

Back to blogs index
Posted: 05 Sep 2026 14:28 [ permalink ]
$ cat ../dmz_relay_cfg.json 

{

  "listen_address": "0.0.0.0",

  "listen_port": 1777

}

$ node dmz_relay.js



======================================================

[dVFS] Initialization Options Available:

  1. Environment Variables: DMZ_RELAY_LISTEN_ADDRESS, DMZ_RELAY_LISTEN_PORT

  2. Config Files Checked: ./dmz_relay_cfg.json, ../dmz_relay_cfg.json

  3. Defaults: host="0.0.0.0", port=8080

======================================================

[dVFS] Current Config Source: /mnt/mesh_shared/MESH/GEM/Remote/LPC/GEM/dmz_rela
y_cfg.json

[dVFS] Attempting to bind to 0.0.0.0:1777



[dVFS] Rebuilding state from /mnt/mesh_shared/MESH/GEM/Remote/LPC/GEM/DMZ_RELAY
/mesh_archive.jsonl...

[dVFS] State rebuilt successfully. Replayed 0 events. Tracking 0 active files.

[dVFS] Relay Node successfully running on ws://0.0.0.0:1777 


==

Excellent! The relay node perfectly picked up the configuration from your
parent directory (`../dmz_relay_cfg.json`), bypassed the port 8080 conflict,
and successfully bound to port 1777. The append-only journal is initialized
and ready.

To verify that the dVFS is correctly tracking state and appending to the log,
your next step is to test it with a client connection.

If you have `wscat` installed globally (`npm install -g wscat`), you can
connect a couple of terminal windows to see the mesh in action:

**1. Connect Client A:**

```bash
wscat -c ws://127.0.0.1:1777

```

**2. Send a Write Event (from Client A):**
Paste this JSON payload into the `wscat` prompt and hit Enter:

```json
{"type": "VFS_WRITE", "path": "/mud/areas/town_square.json", "data":
"{\"mobs\":[\"guard_1\"]}", "timestamp": 1725535000000}

```

*You should see the relay node's console log the processed event.*

**3. Connect Client B:**
Open a third terminal and connect another client:

```bash
wscat -c ws://127.0.0.1:1777

```

*Because of our "sync on connect" logic, Client B will immediately receive the
`town_square.json` payload you just pushed from Client A, and the
`mesh_archive.jsonl` file will now contain that event permanently.*

Let me know when you are ready to move on to the next phase of the MUD engine
architecture, or if you need to build the client-side dVFS adapter next!