beta Open source plugin for Hytale. Get the jar.

Turn your Hytale servers into one network.

Link is a free plugin that lets players move between your servers without leaving the game.

lobby-1 [Link] matched sw-2 (7/12 players, strategy fill)

lobby-1 Referring player Steve (6f1d2c4e-8a3b-4e7f-9c21-5b0a7d3e9f14) to 10.0.0.2:5521 with 222 bytes of data

sw-2 [Link] ticket from lobby-1 for Steve: signed, addressed here, 29s left, first use

Features

One command to play

/play skywars sends players to a game with room. /server picks a specific one.

Secure by default

Every move between servers is checked, so players can't fake one.

Servers join on their own

New servers show up in the network by themselves, with Redis or Cloudflare.

Full games, even lobbies

Fill the busiest game that still has room, or spread players evenly over lobbies.

Keeps working when things break

If Redis or Cloudflare goes down, players can still move.

No proxy, no database

Uses Hytale's own server transfers. One settings file is enough to start.

How it works

Hytale moves a player by telling their game to connect to another server. Link chooses that server and adds a pass, so the server on the other end knows the move is real.

  1. 1

    Link picks a server.

    A player types /play skywars. Link looks at your SkyWars servers and picks one with room.

  2. 2

    The player gets a pass.

    The pass says who the player is and where they are going, and it expires after 30 seconds. Hytale moves the player and the pass goes with them.

  3. 3

    The other server checks it.

    Real, for this player, for this server and not used before? They are in. If not, Link treats it as a normal join, or sends them to your lobby if you switch that on.

Installation

  1. 1

    Download the jar from the releases page and put it in the mods folder of every server.

  2. 2

    Start each server once. Link creates its settings file, mods/Link_Link/link.json.

  3. 3

    List all your servers in that file and copy it to every server. Only serverId is different on each one.

  4. 4

    Restart, then type /servers in game to see your network.

mods/Link_Link/link.json

{
  "serverId": "lobby-1",
  "backend": "static",
  "secret": "generated on first boot",
  "servers": [
    { "id": "lobby-1", "group": "lobby",   "host": "play.example.com", "port": 5520 },
    { "id": "sw-1",    "group": "skywars", "host": "play.example.com", "port": 5521 }
  ]
}

Choose how your servers find each other

To move players around, each server needs to know about the others. Pick one of these. You can change it later.

  • A shared settings file default

    Type your servers into link.json and copy it to every server. Nothing else to set up. Good for a handful of servers.

  • Redis

    Servers add themselves to your Redis database, and Link sees how busy each one is. Good if you already run Redis.

  • Cloudflare free

    Like Redis, but hosted for you on a free Cloudflare account. It runs as a Cloudflare Worker with a Durable Object to store the list. Set up in one click, nothing to run yourself.

For plugin developers

Your own plugins can move players through Link's Java API. If a move can't happen, you get a message you can show the player.

// send a player to one server
LinkPlugin.send(player, "sw-1");

// or into a specific world there
LinkPlugin.send(player, "farm-1", "farm-42");

// or let matchmaking pick
LinkPlugin.play(player, "skywars");

Supported games

Hytale

Supported. Uses Hytale's built-in server transfers, so there is no proxy to run.

Minecraft planned

Planned, using the server transfers Minecraft added in 1.20.5. Also without a proxy.

HiveScale

Ready for a whole network?

HiveScale runs everything between your servers, so you only run the games. Made by the team behind Link.

From €5 a month. Link stays free.

  • Player data that follows players to every server
  • Bans and mutes that apply across the whole network
  • A separate security key for every server
  • A dashboard for your servers and players

FAQ

Is it free?
Yes. Link is open source, has no account or sign-up, and does not send any data to us.
Do I need a proxy?
No. Hytale can move players between servers by itself. Link decides where they go and checks that the move is real.
Can a player fake a move to a server they shouldn't reach?
No. The pass is locked to one player and one server, expires after 30 seconds and works once.
What does Link not protect against?
All your servers share one key. If one of them is hacked, it could let players into the others. That is fine when you run every server yourself. If you don't, HiveScale gives each server its own key.
Does it work with Minecraft?
Not yet. It is planned, using the server transfers Minecraft added in version 1.20.5.

Contributing

Link is developed in the open. Bug reports, ideas and pull requests are welcome on GitHub.