On this page
Joining a Schedule I dedicated server takes three one-time changes to your own game: make sure Steam is on the branch that matches the server, install MelonLoader, and add the client mod. After that you connect by IP address and port from a new Servers button on the main menu.
This guide is for players. It covers servers hosted with us, and it applies to any server running the same mod.
Why you need a mod at all#
Schedule I does not ship a dedicated server. Its built-in multiplayer is Steam co-op, where one player hosts and the world exists only while they are playing.
Our servers run S1DedicatedServers, an open-source community mod that runs the game headless as an always-on server. The mod replaces the Steam lobby with a direct connection to the server, so a game without the mod's client package has no way to reach it.
Two things follow from that:
- Every player installs the client package. There is no server-side switch that lets an unmodded game join.
- It is unofficial. The mod states that it is not affiliated with or endorsed by TVGS, the game's developer.
Find out the server's runtime#
Schedule I exists in two builds, IL2CPP and Mono, and the mod publishes a separate client package for each. Your game and the server must be on the same one.
| Server runtime | Steam branch | Client package |
|---|---|---|
| IL2CPP | The default branch (no beta selected) | Il2cpp_Client.zip |
| Mono | alternate | Mono-Client.zip |
What you need#
| Requirement | Detail |
|---|---|
| The game | Schedule I on Steam, on Windows. The server checks your Steam session when you join. |
| Steam branch | The default branch for an IL2CPP server, or alternate for a Mono server. |
| Mod loader | MelonLoader. The mod supports 0.6.x, 0.7.0 and 0.7.2 or newer. Avoid 0.7.1. |
| Client mod | The client package for the server's runtime, from the S1DedicatedServers releases page. |
| Server details | The server's IP address or hostname, its port, and its password if it has one. |
Step 1: Put Steam on the matching branch#
- In your Steam library, right-click Schedule I and choose Properties.
- Open Betas.
- For an IL2CPP server, set beta participation to None, so you are on the default branch. For a Mono server, select
alternate. - Let Steam finish downloading before you continue.
If you were already on the default branch and the server runs IL2CPP, nothing changes here. Do this step first either way, so that the loader and the client mod go onto the build you will actually play on.
Step 2: Install MelonLoader#
- Download the MelonLoader installer from the MelonLoader releases page.
- Point it at Schedule I and pick a supported version. Our servers run
0.7.2. - Install, then start the game once and close it. That first run lets MelonLoader create its folders, including
Mods.
On IL2CPP, the first start with MelonLoader takes noticeably longer than usual while it prepares the game. Let it finish. It does the same after each game update.
Step 3: Add the client mod#
- Open the S1DedicatedServers releases page and download the client package for the server's runtime:
Il2cpp_Client.zipfor IL2CPP orMono-Client.zipfor Mono. - Extract it into the Schedule I install folder, the one that contains
Schedule I.exe, so the archive'sModsfolder merges with the game's. - Check that the client DLL now exists:
Mods\DedicatedServerMod_Il2cpp_Client.dllfor IL2CPP, orMods\DedicatedServerMod_Mono_Client.dllfor Mono.
Do not install a Server package. Those are for running a server, not for joining one.
To find the install folder, right-click the game in Steam and choose Manage, then Browse local files.
Step 4: Connect to the server#
Start the game normally. The mod adds a Servers button to the main menu, which opens its server browser.
You have two ways in:
- Direct connect. Enter the server's IP address or hostname and its port, then connect. Use this for a one-off join.
- Save it as a favorite. Add the server with a name, its IP / Host and its Port, then choose Save Server. It then appears under Favorites with its status, and you can join it from there next time.
The browser also has a History tab for servers you have joined before and a Public tab. The public list only shows servers whose owners have opted in to it, so a server missing from that tab is normal. Joining by address works either way.
What the server checks when you join#
Two checks run before you are let into the world:
- Steam authentication. The server validates your Steam session. You need to be signed in to Steam on a copy of the game you own.
- Client mod verification. The server looks at the mods you have loaded. By default it allows ordinary client-only mods and blocks entries on the mod's built-in list of risky client tools. A server owner can tighten this or deny specific mods.
If verification fails, you are disconnected with a message that states the reason. The server never downloads mods to your machine through this check.
Keep your version in step with the server#
The server and every client should run the same Schedule I build and the same release of the mod. The mod's release notes say to update the server and clients together.
In practice a game update can lock you out for a while: Steam updates your game, but the server stays on the previous build until the mod supports the new one. As of 16 October 2026 the current mod release is 1.1.2, which targets Schedule I 0.4.7.
When an update lands:
- Ask the server owner which mod release the server is on.
- Download that release's client package for the server's runtime and extract it over your install, replacing the old file.
- If Steam switched your branch or reinstalled the game, repeat Steps 1 to 3.
If you cannot join#
| What you see | Most likely cause | What to do |
|---|---|---|
| No Servers button on the main menu | The client mod is not loading | Confirm the client DLL is in Mods, that MelonLoader starts with the game, and that the package matches your branch: IL2CPP on the default branch, Mono on alternate. |
| A saved server never shows a status | The status query is not being answered | Check the address and port. The status query uses TCP on the same port number as the game. |
| Connecting does nothing or times out | Wrong address or port, or the server is not running | Re-check the port against what the owner gave you and ask whether the server is online. |
| You connect, then drop after a short delay | The authentication handshake timed out | Make sure Steam is running and signed in, then try again. The owner can raise the server's timeout. |
| You are disconnected with a mod message | Client mod verification refused a mod | Remove the mod named in the message, or ask the owner whether it is allowed. |
| It worked yesterday and fails after an update | Game or mod version mismatch | See Keep your version in step with the server. |
If none of that resolves it, send the server owner your MelonLoader log from the MelonLoader folder in the game's install directory. It records which mods loaded and any errors from the session.
Playing without the server#
The mod's documentation says the client package can stay installed for single-player and for the game's own co-op, and that its dedicated-server behaviour only starts when you open a dedicated-server connection. You do not need a second copy of the game for normal play.
Trusted references#
- S1DedicatedServers quick start — client packages per runtime and supported MelonLoader versions
- S1DedicatedServers releases — client packages and per-release game version
- Client mod verification — what the server checks at join
- Authentication — the Steam session requirement
- Public server list — why a server may not be in the Public tab
- Schedule I on Steam — supported platform

