Documentation menu

Getting started

Installation

Put Link on every server, let it write its settings file, and join your servers into one network.

Link is one jar. The same jar goes on every server in your network: lobbies and game servers alike. There is no proxy and no database to install.

What you need

  • Two or more Hytale servers that players can reach directly.
  • Access to each server’s mods folder.

Install the jar

  1. Download the latest Link.jar from the releases page.
  2. Put it in the mods folder of every server.
  3. Start each server once. Link writes its settings file to mods/Link_Link/link.json. Out of the box, that file describes a network of one server.

Describe your network

Open link.json on one server. The quickest setup is a shared file that lists every server. The first boot already filled in secret: keep that value.

mods/Link_Link/link.jsonJSON
{
  "serverId": "lobby-1",
  "backend": "static",
  "secret": "generated on first boot, copy it to every server",
  "servers": [
    { "id": "lobby-1", "group": "lobby",   "host": "play.example.com", "port": 5520 },
    { "id": "sw-1",    "group": "skywars", "host": "play.example.com", "port": 5521 }
  ]
}
  • serverId is this server’s name. Players use it with /server.
  • group is what /play matches on, for example lobby or skywars.
  • host and port are where players connect to reach that server. Use an address their game can reach, not 127.0.0.1, unless everyone plays on the same machine.

Copy the finished file to every server. Only serverId is different on each one. To keep the file identical everywhere, leave serverId alone and set the LINK_SERVER_ID environment variable on each server instead.

The secret signs every transfer. It must be the same on all servers, and nobody else should see it. Read the security model.

Check that it works

Restart every server. The log prints one line when Link joins the network:

Output
[Link] lobby-1 (lobby) joined the network via static, 2 servers known

Then, in game:

  1. Type /servers. You see every server, grouped.
  2. Type /play skywars. You move to sw-1.

If a server prints warnings instead, see troubleshooting.

Next steps

  • A shared file is fine for a handful of servers. To let servers join by themselves and to see live player counts, use Redis or Cloudflare.
  • Every setting is on the configuration page.

Something wrong or missing on this page? Open an issue on GitHub.