Launch a game session
launchLaunch tModLoader in server-client mode to test mod sync behavior. Specify port, player, world, and timeout; waits for a live heartbeat before returning.
Instructions
Start tModLoader and wait until it can actually answer.
Args:
mode: "server_client" — a server plus one joined client. It is the only
mode there is, and the only way to observe what a CLIENT sees, which
is where most sync bugs live. The other two are refused because the
engine cannot satisfy them: "singleplayer" has no headless entry
point, and "server" alone never ticks, so the mod never polls and
never answers.
port: Server port. Change it only if something else holds the default.
player: Character name for the client. Must already exist — -player
does not create one, and a duplicate name is kicked.
world: WINDOWS path to a .wld, overriding TMODLOADER_WORLD_WIN. A WSL
path is refused rather than tried: tModLoader runs as a Windows
process, cannot resolve /mnt/c, and the only symptom is a readiness
timeout blaming the heartbeat.
timeout: Seconds to wait for readiness. Raise it on a slow machine or a
large world — the default assumes neither.
Waits for a heartbeat that is BOTH recent and reporting a live world. Those fail differently — a stale-but-ready heartbeat means the process died, a fresh-but-not-ready one means it is still loading — and checking only existence conflates them.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| mode | No | server_client | |
| port | No | ||
| world | No | ||
| player | No | n43n | |
| timeout | No |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| mode | Yes | ||
| port | Yes | ||
| world | Yes | ||
| player | Yes | ||
| started_pids | Yes |