How Hytale Server Networks Work: Native Transfers vs Proxies

Par :nom Catégorie: :nom : minutes min lire

Hytale ships native referral-based routing, so a server can hand a connected player off to another host without a traffic-forwarding proxy in the middle. That genuinely removes the need for BungeeCord on a simple hub-and-spoke setup. It does not make Hytale proxy-free: transfer packets are capped at 4KB, they travel through the client where they can be tampered with, they do not manage global plugins, and the community FAQ says outright that they are primarily intended for smaller servers. This guide walks the architectural fork, the security problem in the payload, and the six proxy and network tools that actually exist today, with their real download counts and last-updated dates.

If you have run a Minecraft network you know the shape of the problem. One lobby, several game mode servers, players moving between them without being dumped back to a server list. The standard answer there is a proxy: BungeeCord or Velocity sits in front, holds the connection, and forwards packets to whichever backend the player belongs to. Hytale does not work that way by default. It ships native referral-based routing: a server can tell a connected client to go and connect somewhere else, handing it a small payload to carry along. No traffic forwarding, no intermediary holding the socket. For a hub plus a handful of game modes that is genuinely all you need, and it is why you keep reading "Hytale does not need BungeeCord". That sentence is true and incomplete, including in our own Hytale server setup guide, where the multiserver section says roughly that in four short subsections and moves on. This is the long version. Does Hytale Need BungeeCord or a Velocity Equivalent? The community modding docs answer this directly, and it is worth quoting rather than paraphrasing. The HytaleModding FAQ, on transfer packets: "They are not equivalent to something like BungeeCord or Velocity and are primarily intended for smaller servers." "Unlike BungeeCord, they do not manage network-wide features such as global plugins." "Implementing DDOS protection would also be incredibly hard for smaller networks by using transfer packets." So the honest framing is not "proxies are obsolete in Hytale". It is that Hytale natively covers the easy 80 percent of what people used BungeeCord for and leaves the hard 20 percent to you. That 20 percent is global state, network-wide plugins, and one public address you can defend and observe. What Is a Hytale Transfer Packet? The FAQ defines them as: "small data payloads (4kb) that allow players to move from one server to another while carrying information." Four kilobytes is the whole budget, and the first constraint to internalise. It fits an identity, a rank string, a couple of counters, a signature and a timestamp. Not an inventory dump or a serialized profile. The intended use case, per the FAQ, is: "small server networks or hubs where players will hop between servers without the loss of progress" The example given is finishing a dungeon on one server then moving to a lobby or another game mode with inventory and stats intact. A hub plus some game modes is exactly the target. What does ClientReferral do? ClientReferral is the packet name you will see in tooling. The clearest public description comes from hyrouter, a "plugin-driven Layer 7 referral router and QUIC entrypoint for Hytale". Its docs describe the flow precisely: accept a QUIC connection, inspect the TLS SNI and initial Connect packet, apply optional plugins, then either deny with a Hytale Disconnect packet or redirect the client to a backend with a Hytale ClientReferral packet. The line that matters most is the disclaimer: hyrouter is not a reverse proxy and does not forward gameplay traffic. One decision at the door, then out of the way. That is the native model in a sentence. On the server side, the capability is that a server can refer a connected player to another host and port with an optional payload attached. We are deliberately not reprinting an exact method signature, because the only place we found one written down was our own site, and citing yourself is not a citation. PlayerRef is the relevant Hytale API type, and it appears in official-style packet-filter examples in the community protocol docs. Writing that plugin is covered in our modding API and plugin development guide. Historical context, since you may hit it in old threads: hyrouter notes that a client-side bug meant ClientReferral redirects only worked correctly from client version pre-release/2026.01.29 onward. The client is many months past that, so this is not a live warning, just why some old writeups say redirects were broken. The QUIC Protocol Underneath, and Why It Shapes Your Options Hytale's networking is Netty-based, with QUIC over UDP as the primary transport and a TCP fallback. The FAQ describes QUIC as: "a hybrid protocol that builds off UDP to get the same speed benefits, but adds some layers of reliability like TCP." The wire format, per the community protocol docs, is 4 bytes of length (little-endian, excluding the header), 4 bytes of packet ID (little-endian), then the payload, with optional Zstd compression for large payloads. The documented surface is 268 packets and 315 structs across 7 categories. Two consequences follow. A Hytale proxy is a QUIC proxy. You cannot put a generic TCP load balancer in front and call it done. Every tool below had to implement QUIC termination, which is much of why there are six rather than sixty. Protocol changes hurt proxies more than servers. Anything writing packets by hand is exposed to every wire-format tightening. Update 6 already made validation stricter, rejecting non-canonical VarInts and malformed UTF-8, covered in our Update 6 protocol breaking changes guide and the Part 12 pre-release notes. Run a proxy and you inherit that maintenance. A general official Hytale screenshot, included for illustration only. It does not depict networking, transfers or proxies, and nothing in this image relates to the features discussed here. Native Referral or a Proxy: Which Does Your Hytale Multi Server Setup Need? The decision, reduced to the questions that actually change the answer. Use native referral when You have a hub and a few backends, and players move between them by choice rather than constantly. Each backend holds its own state, or a shared database already sits behind them. You are happy for each backend to be directly reachable on its own address. You want the least infrastructure possible. No extra process, no extra hop, no extra thing to fall over at 2am. Being individually addressable is not yet a DDoS liability at your size. That is most Hytale networks in August 2026, and the cheapest thing to run. Our self-hosted versus managed hosting comparison covers what an extra always-on process costs. Use a proxy when You need one public address. The big one. A proxy gives you a single entry point to firewall, rate limit and put scrubbing in front of. With pure referral every backend is exposed, and the FAQ is explicit that DDoS protection is "incredibly hard" that way. You need network-wide plugins. Global chat, a shared punishment system, parties that survive a server hop. Transfer packets explicitly do not manage these. You need players to survive a backend dying. Fallback handling is cleaner when something in front still holds the connection. You need load balancing across identical backends. Referral can round-robin, but a proxy sees live player counts and acts on them. You want to hide your topology. Nobody should enumerate your servers by reading a referral. There is also a middle path Minecraft never had: the referral router, of which hyrouter is the clearest example. It terminates QUIC at the door, routes with load balancing and plugins, then refers the client onward. Centralised admission control and one advertised entrypoint, with no packet forwarding, so the router is never in the gameplay hot path. Not full DDoS protection, but it solves discovery and admission neatly. The Security Problem: Your Transfer Payload Travels Through the Client This is the most important practical point here, and the one most likely to bite a network that grew fast. A transfer payload is not sent server to server. It is handed to the client, and the client hands it to the next server. The client is a program on someone else's computer. Anything in that 4KB is attacker-controlled input, full stop. Think about what people want to put in there: rank or permission group, currency balance, a purchase receipt, "this player already cleared the dungeon", staff status. Every one is a privilege escalation waiting to happen if you trust it. A player who can edit the payload arrives at your lobby as an admin with a million coins. Not theoretical: it is the same class of bug that made "BungeeCord IP forwarding without a firewall" a running joke for a decade. Two acceptable postures. Pick one: Treat it as untrusted. Use it only as a hint. The receiving server looks up real values from a shared database keyed by player identity, and the payload grants nothing. Sign it. HMAC it with a network-wide secret, include a timestamp and a nonce, verify on arrival, reject anything unsigned or wrongly signed. Both work. Mixing them carelessly does not. Signing is common enough that a plugin exists purely for it. SecureTransfer by Jumpers, v0.0.7, GPLv3, 315 downloads, last updated February 22, 2026, cryptographically signs and verifies payload data from transfer and referral packets, rejecting unsigned or incorrectly signed connections. The shared secret lives in config.json on every participating server, and the author recommends copying the pre-generated secret across rather than inventing your own. Numdrassl and hyrouter both offer HMAC-signed referrals natively. Two related traps. Rank data crossing a network boundary is where permission systems get subtly wrong, so read our rank system and permissions guide and decide where the source of truth lives before writing transfer code. And a referral is a connection your anti-cheat never saw begin; our anti-cheat plugin comparison covers what each assumes about session start. Hytale Proxy and Network Tooling Compared Everything that exists, with real numbers from the CurseForge pages. Read the "last updated" column carefully. ToolTypeLanguageVersionDownloadsLast updated NumdrasslFull proxy (BungeeCord-style)Java2026.01.17 build.1323January 18, 2026 SecureTransferPayload signing pluginPlugin0.0.7 (GPLv3)315February 22, 2026 OrbisManagerNative-referral network managerMod plus SaaSOrbisMod 1.2.3118May 30, 2026 OrbisProxyFull proxy (deprecated)Go1.3.1104March 27, 2026 Lineage ProxyQUIC/TLS proxy plus modding APIKotlinAlpha (0.x)103January 25, 2026 hyrouterL7 referral router / QUIC entrypointGo--February 1, 2026 (Docker Hub) Numdrassl The closest thing to BungeeCord for Hytale. Java, requires Java 25 or higher, ships as a proxy-*.jar plus a bridge-*.jar per backend. Config lives in config/proxy.yml: bindAddress and bindPort (default 45585), publicAddress and publicPort, proxySecret, backends, debugMode. It is the most complete of the lot: HMAC-signed referrals, native QUIC with BBR congestion control, YAML permissions with groups and wildcards, a /server command. The setup detail that trips people up is the backend launch line: java -jar HytaleServer.jar --auth-mode insecure --transport QUIC The documentation explains why: "The --auth-mode insecure flag is required because the proxy handles Hytale authentication, not the backend." Read that as a firewall requirement, not a footnote. A backend in insecure auth mode reachable from the open internet will accept anyone claiming to be anyone. Bind backends to a private interface and let only the proxy reach them. The console and startup flag guide covers the rest. OrbisProxy and OrbisManager OrbisProxy is a Go proxy, lightweight and high-performance, with load balancing, player transfers, automatic fallback handling and hot-reloadable Lua plugins. It is also deprecated, with a notice directing users to OrbisManager. Do not start a new build on it. OrbisManager is the interesting successor because it went the other way: it drops the proxy entirely and manages a network on top of native referral. Its pitch is "No proxy layer, no extra infrastructure, just direct connections." Addons include InventorySync and StaffChat, filling exactly the "network-wide features" gap the FAQ warns about, at the manager level. A companion OrbisRouter is an optional routing gateway. One caveat to weigh honestly: OrbisManager requires an active internet connection and an OrbisManager account. That is a SaaS dependency in your control plane. For some operators it is a fair trade for not running a proxy; for others, a third party affecting whether players can move between their servers is a non-starter. Decide deliberately rather than discovering it after migration. hyrouter and Lineage Proxy hyrouter is the referral router described earlier: Go, Kubernetes and Agones discovery, and a serious load balancing menu (round robin, random, weighted, least-loaded, power-of-two-choices). Plugins are gRPC or WebAssembly, referral envelopes can be HMAC-signed. If you run Hytale on Kubernetes with dynamic backends, this was built for you. Lineage Proxy is a QUIC/TLS proxy that also exposes a modding API, written in Kotlin on top of Netty. 103 downloads, last updated January 25, 2026. Its own page describes it as alpha and warns that "APIs and config formats may change", so treat it as something to experiment with rather than something to put a paying playerbase behind. Why the Hytale Proxy Ecosystem Is Largely Frozen Read that table as dates rather than features. Numdrassl: January 18. Lineage: January 25. hyrouter: February 1. SecureTransfer: February 22. OrbisProxy: March 27, and deprecated. Only OrbisManager, on May 30, is inside the last three months, and the highest download count on the list is 323. These are not abandoned projects so much as projects waiting. CurseForge lists 6,318 Hytale projects, and its version filter still offers only 0.5 and Early Access. There is no 0.6 or Update 6 tag, because no stable 0.6 build has shipped. The Bootstrap category, the low-level "Early Plugins" layer closest to proxies and protocol tools, has 21 projects in total, and exactly one was updated in August 2026. Update 6 has been in pre-release for months, 0.6.0-pre.12 on August 13, 2026 being the newest build, and it keeps changing the protocol. No sane proxy author ships stable releases against a moving wire format. Expect a burst of releases when Update 6 stabilises. Until then, deploying a proxy means signing up to fix it yourself. That is a real argument for native referral right now, on maintenance exposure rather than elegance. Native referral is implemented by the game. A proxy is implemented by a volunteer whose last commit was in January. How to Link Two Hytale Servers: The Practical Checklist Get server two running standalone first. Correct ports, correct mods, joinable directly. Do not debug two things at once. Our server setup guide covers the baseline. Decide your source of truth. Shared database, or signed payloads? Write it down. This determines everything after it. Make the mod sets compatible. A player carrying items into a server that does not know them is a bad time. See the mod install and management guide. Implement the referral to server two's host and port, with the minimum payload that does the job. Sign it, or trust nothing in it. SecureTransfer, your own HMAC, or a payload that carries no privileges at all. Test the failure path. Stop server two and refer a player anyway. What do they see? Where do they land? Decide your fallback before players find the edge for you. Fix your monitoring. Player counts split across two servers report differently, and vote integrations usually target one host. Check the player count setup guide so your listing does not start under-reporting the moment you split. Only then consider a proxy. If steps 1 to 7 exposed a need you cannot meet, you now know exactly which one it is. FAQ Does Hytale have BungeeCord? No, and nothing in Hytale is a drop-in BungeeCord replacement. It has native referral-based routing instead. Third-party proxies exist, the closest being Numdrassl, last updated January 18, 2026. The community FAQ is explicit that transfer packets are not equivalent to BungeeCord or Velocity. What is the Hytale equivalent of Velocity? None exactly. Numdrassl is the nearest full proxy in spirit. hyrouter fills a role Velocity does not have: a Layer 7 referral router that makes one admission decision then steps out of the traffic path. OrbisManager goes the other way, managing a network with no proxy layer at all. How big is a Hytale transfer packet payload? 4KB. The FAQ calls them "small data payloads (4kb) that allow players to move from one server to another while carrying information." Budget for identity, a few fields, a timestamp and a signature. Is the transfer payload safe to trust? No. It travels through the client, so it can be modified. Sign it with HMAC and verify on arrival, or treat it as a hint and look up authoritative values from a shared database. SecureTransfer does the signing for you. Do I need a proxy for a Hytale lobby server? Usually not. A lobby plus a few game modes is exactly what native referral was designed for, and the FAQ names hub setups as the intended use. You need a proxy for one public address to defend, network-wide plugins, or load balancing across identical backends. What is ClientReferral in Hytale? The packet a server sends to redirect a client to a different backend. hyrouter's docs describe inspecting the incoming QUIC connection's TLS SNI and initial Connect packet, then either denying with a Disconnect or redirecting with a ClientReferral. We are not printing a numeric packet ID, because we could not verify one. Will Update 6 break my Hytale proxy? Very possibly. Update 6 has already made packet validation stricter and changed protocol APIs across its pre-release run, and anything writing packets by hand is exposed. No stable release date has been announced. If your proxy's last update was in January, plan on maintaining it yourself. The Short Version Hytale's native referral routing is real, it works, and for a hub with a few backends it removes the need for a traffic-forwarding proxy. Most networks should start there. But do not read it as "proxies are solved". Transfer packets carry 4KB through the client, do not manage global plugins, and leave every backend individually exposed. Those three gaps are what a proxy buys back, and the available proxies were mostly last touched in early 2026. Whatever you build, sign your payloads or trust nothing in them. That is the mistake that turns an architecture question into an incident. Once it is running, get it listed on HytaleCharts so players can find the front door.