Installation
This guide walks you through installing all prerequisites and setting up your Hytale dedicated server.
Installing Java 25
Section titled “Installing Java 25”Hytale servers require Java 25 or higher. We recommend using Adoptium (Temurin).
Windows
Section titled “Windows”- Download the JDK installer from Adoptium
- Select Temurin 25 and Windows x64
- Run the installer and follow the prompts
- Ensure “Add to PATH” is selected during installation
Using Homebrew:
brew install --cask temurin@25Or download directly from Adoptium and run the installer.
Ubuntu/Debian
Section titled “Ubuntu/Debian”# Add Adoptium repositorywget -qO - https://packages.adoptium.net/artifactory/api/gpg/key/public | sudo apt-key add -echo "deb https://packages.adoptium.net/artifactory/deb $(lsb_release -cs) main" | sudo tee /etc/apt/sources.list.d/adoptium.list
# Install Java 25sudo apt updatesudo apt install temurin-25-jdkFedora/RHEL
Section titled “Fedora/RHEL”sudo dnf install java-25-openjdkVerify Installation
Section titled “Verify Installation”Open a terminal and verify Java is installed correctly:
java -versionYou should see output indicating Java 25 or higher.
Getting Server Files
Section titled “Getting Server Files”- Locate your Hytale installation folder
- Copy the Server folder to your desired server location
- Note the path to your HytaleAssets folder (or copy it alongside the server)
Your server directory should contain:
my-server/├── HytaleServer.jar└── (config files will be generated on first run)
# Assets can be in a sibling directory or specified with --assets flag../HytaleAssets/ # Default location the server looks forLaunching the Server
Section titled “Launching the Server”Basic Launch
Section titled “Basic Launch”Run the server with minimum and maximum memory allocation:
java -Xms4G -Xmx4G -jar HytaleServer.jar --assets ../HytaleAssets-Xms4G- Minimum memory (4GB)-Xmx4G- Maximum memory (4GB)--assets- Path to your assets directory or.zipfile
Command-Line Arguments
Section titled “Command-Line Arguments”| Argument | Description |
|---|---|
--assets <Path> | Path to assets directory or .zip file (default: ../HytaleAssets) |
-b, --bind <Address> | Address and port to listen on, comma-separated for multiple (default: 0.0.0.0:5520) |
--auth-mode <Mode> | Authentication mode: authenticated, offline, or insecure |
--universe <Path> | Path to the universe directory |
--mods <Paths> | Comma-separated list of additional mod directories |
--backup | Enable automatic backups |
--backup-dir <Path> | Directory for backup files (required if --backup is set) |
--backup-frequency <Minutes> | Backup interval in minutes (default: 30) |
--backup-max-count <Count> | Maximum number of backups to keep (default: 5) |
--boot-command <Commands> | Comma-separated commands to run on server start |
--help | Print help message |
--version | Print version information |
Custom Port Example
Section titled “Custom Port Example”To run on a different port:
java -Xms4G -Xmx4G -jar HytaleServer.jar --assets ../HytaleAssets --bind 0.0.0.0:25565To bind to multiple addresses:
java -Xms4G -Xmx4G -jar HytaleServer.jar --assets ../HytaleAssets --bind 0.0.0.0:5520,0.0.0.0:5521Create a Start Script
Section titled “Create a Start Script”Windows (start.bat)
Section titled “Windows (start.bat)”@echo offjava -Xms4G -Xmx4G -jar HytaleServer.jar --assets ../HytaleAssetspauseLinux/macOS (start.sh)
Section titled “Linux/macOS (start.sh)”#!/bin/bashjava -Xms4G -Xmx4G -jar HytaleServer.jar --assets ../HytaleAssetsMake it executable:
chmod +x start.shFirewall Configuration
Section titled “Firewall Configuration”Hytale uses UDP (not TCP) with the QUIC protocol.
Windows Firewall
Section titled “Windows Firewall”netsh advfirewall firewall add rule name="Hytale Server" dir=in action=allow protocol=UDP localport=5520Linux (UFW)
Section titled “Linux (UFW)”sudo ufw allow 5520/udpLinux (firewalld)
Section titled “Linux (firewalld)”sudo firewall-cmd --permanent --add-port=5520/udpsudo firewall-cmd --reloadPort Forwarding
Section titled “Port Forwarding”If hosting behind a router/NAT:
- Access your router’s admin panel (usually
192.168.1.1) - Find Port Forwarding settings
- Create a new rule:
- Protocol: UDP
- External Port: 5520
- Internal Port: 5520
- Internal IP: Your server’s local IP address
First Run
Section titled “First Run”On first launch, the server will:
- Generate default configuration files
- Create the
universe/worlds/directory structure - Start listening for connections
You’ll see output like:
[INFO] Loading assets from Assets.zip[INFO] Server started on 0.0.0.0:5520[INFO] Ready for connectionsConnecting to Your Server
Section titled “Connecting to Your Server”- Local: Connect to
localhost:5520 - LAN: Connect to your machine’s local IP (e.g.,
192.168.1.100:5520) - Internet: Connect to your public IP or domain name
Next Steps
Section titled “Next Steps”Your server is now running! Continue with Server Configuration to customize your server settings.