Skip to documentation
Documentation

SERVER CONFIGURATION

Add a Standard subserver

Add a regular channel with a unique code and port, then verify login, persistence, and transfers.

3 minute read·Guide

Before adding a channel

Begin with working connections and firewall rules. This example adds regular channel 1 on TCP 56901 beside channel 0 on 56900.

  • Confirm code 1 and port 56901 are free. Keep the channel in the existing group.
  • Back up the GameServer folder, ServerList.xml, MapServerInfo.xml, and startup configuration.
  • Copy the same regular/universal executable as the working channel. A dedicated event server is not an ordinary channel.

Match the package layout

Current Kantru source uses DataServer.ini and AllowedIPList.xml beside DataServer, ConnectServer.ini and ServerList.xml beside ConnectServer, and Data\Server\MapServerInfo.xml. Older Season 6 packages instead use IGCDS.ini, IGC_AllowedIPList.xml, IGCCS.ini, IGC_ServerList.xml, and IGCData\IGC_MapServerInfo.xml. Use the set shipped with your executable; renaming files does not upgrade a package. Numbered service folders in these examples refer to the corresponding folder in your installation.

1. Create the second GameServer

  1. Copy the working GameServer folder to a sibling such as 4. GameServer-2. This preserves relative paths to Data and IGCData.
  2. In the copied GameServer.ini, change ServerName to a distinct name within its 10-character limit, ServerCode to 1, and GameServerPort to 56901.
  3. Keep the working private service addresses and ports. Both channels use the same DataServer for shared accounts and characters.
  4. Give the new process its own logs. Set the startup entry’s working directory to its new folder so it reads the correct INI.

2. Register the channel

  1. In 2. ConnectServer\ServerList.xml, duplicate the regular entry. Set Code=1, Port=56901, Visible=1, and a distinct Name. Use the same reachable IP when both processes run on one host.
  2. In Data\Server\MapServerInfo.xml → ServerList, duplicate the regular entry with Code=1 and Port=56901. Keep the existing Group and compatible Initiation value.
  3. For split routing, copy the regular channel’s ServerMapping rows and change their source Code to 1. Keep destinations pointing to the actual shared Siege/event server; do not change every destination to 1.
  4. For a universal build with valid empty mappings, keep that routing model. Do not add later-season event routes from unrelated examples.

3. Start and verify

  1. Allow TCP 56901 through Windows, provider firewall, and router forwarding if used. Follow the firewall procedure.
  2. During maintenance, restart services that read the changed lists, then start the new GameServer. Follow the order DataServer, ConnectServer, GameServers.
  3. Watch for duplicate-code, address-in-use, missing-file, or registration errors. If the port is occupied, change it consistently in both XML files, GameServer.ini, and the firewall.
  4. If only the client label is wrong, edit the matching ServerList.bmd with the release’s editor. The XML Name field does not replace client display data.

Before opening the channel

  • Both channels appear and accept the test account.
  • After logout from channel 0, the same character enters channel 1 with its saved state.
  • Map transfers reach running destinations. A full restart brings both channels back.
  • If validation fails, stop the new process, restore the backed-up XML and startup entries, and remove its public rule.

Continue

Next: Maintain a recovery checklist.

Reference: IGCN — Adding a channel. These instructions use the Season 6 file layout; keep configuration files and tools from the same release.