Connect your Voxel Turf server to Takaro — player events, chat bridge, server announcements, and admin control from the Takaro dashboard.
Download Latest Release Sign Up for Takaro (Free)Voxel Turf server (1.9.9) bridge.exe (auto-launched) Takaro
┌───────────────────────────┐ ┌──────────────────────────┐ ┌──────────────┐
│ TakaroConnector Lua mod │ │ bridge.js │ │ Takaro Cloud │
│ · player / chat / death │─UDP─│ · WebSocket client │──▶ │ wss://connect│
│ · inventory, kick, give │◀UDP─│ · request / response │◀── │ .takaro.io/ │
└───────────────────────────┘ └──────────────────────────┘ └──────────────┘
winmm.dll in the server root launches bridge.js and shuts it down with the game.
The Lua mod runs inside your Voxel Turf server. A small winmm.dll placed in the server root auto-launches bridge.exe — a self-contained program with no Node.js or other runtime required — which holds the WebSocket connection to Takaro. The bridge starts and stops with the game; there is no separate program to run and no client-side install.
1.9.9 beta branch. The connector uses an API that does not exist in 1.9.8 stable. On the wrong version the server runs but Takaro never connects (endless "UDP timeout" in the bridge log). See Step 1.bridge.exe that starts and stops with your server.
Using SteamCMD, update the Voxel Turf Dedicated Server (app id 526340) to the beta branch:
force_install_dir C:\path\to\your\voxelturf\server
login anonymous
app_update 526340 -beta beta
quit
The beta branch is labelled "Public Beta" and is the 1.9.9 line — no password needed. Run it without validate so it does not remove the mod files.
app_update 526340 (or a Steam auto-update) reverts to 1.9.8 and breaks Takaro. Always include -beta beta in whatever update script you use.
app.takaro.io.Download the latest release ZIP and extract it directly into your Voxel Turf server folder. The ZIP is laid out so its contents land in the right places:
C:\path\to\your\voxelturf\server\
├── winmm.dll <-- lands in the server ROOT (launches the bridge)
├── vtserver.exe (already there)
└── mods\
└── TakaroConnector\ <-- the mod
├── TakaroConfig.txt
├── bridge\
│ └── bridge.exe (self-contained — no Node.js needed)
└── scripts\
├── server_scripts.txt
└── server\takaro_connector.lua
winmm.dll must sit in the same folder as vtserver.exe (the server root), not inside mods\. That file is what starts the bridge.Open mods\TakaroConnector\TakaroConfig.txt and set:
SERVER_NAME=My Voxel Turf Server
REGISTRATION_TOKEN=paste-your-token-from-step-2-here
GAME_PORT=5728
EXTERNAL_SECRET=123456
ENABLED=true
| Key | Required? | Description |
|---|---|---|
SERVER_NAME | Yes | Any name — used as this server's identity in Takaro. |
REGISTRATION_TOKEN | Yes | Token from the Takaro dashboard (Step 2). |
GAME_PORT | Optional | Your server's UDP port. Default 5728; match it to your --port if you changed it. |
EXTERNAL_SECRET | Optional | Localhost-only shared secret. Leave as 123456 unless you also change it in takaro_connector.lua. |
ENABLED | Optional | Set false to disable without removing the mod. |
Start your Voxel Turf server normally — the mod and bridge load automatically. To confirm it's working:
[TC] takaro_connector.lua loaded OK and [TC] defineExternalCommands callback called.mods\TakaroConnector\bridge.log shows Identified with Takaro and VoxelTurf server started, with no repeating UDP timeout lines.player-connected and chat-message appear in Takaro's event stream./takarostatus to see tracked-player count, queued events, and the shared secret.| Event | When it fires |
|---|---|
player-connected | A player joins. Carries gameId (player id), name (steam name), steamId. |
player-disconnected | A player leaves (detected on the next roster scan, a few ticks). |
chat-message | A player sends a public chat message. |
player-death | A player's death counter increases. |
log — server started | The server finishes loading and the bridge connects. |
log — world saved | The world is saved to disk. |
log — server stopped | The server process exits. |
Takaro has no built-in start/stop/save event, so those are delivered as log events — create a module Hook on the log event and match the message text.
| Action | What it does |
|---|---|
testReachability | Confirms the server is online. |
getPlayers | Returns the current online player list. |
getPlayerInventory | Returns a player's inventory items (name, code, amount). |
sendMessage | Broadcasts a server message to all players. |
sendMessageToPlayer | Sends a private message to one player. |
kickPlayer / banPlayer / unbanPlayer | Moderation by game id. |
giveItem | Adds an item to a player's inventory. |
teleportPlayer | Teleports a player to X/Z coordinates. |
executeCommand | Dispatches a console command. |
Your server is on 1.9.8, not the 1.9.9 beta. The Lua loads but the external API never registers (you won't see defineExternalCommands callback called). Redo Step 1 with -beta beta and confirm the version is 1.9.9.
winmm.dll is in the server root (next to vtserver.exe), not in mods\.bridge.exe (it's an unsigned bundled executable). Allow it and restart the server.REGISTRATION_TOKEN matches the dashboard; regenerate it if it was already used.connect.takaro.io:443 must not be firewalled.Open an issue at github.com/mad-001/Voxel-Turf-Server-Manager/issues and include mods\TakaroConnector\bridge.log and your server console output.