How to Create a Hytale Server Guide: Difference between revisions

From Survival Servers
Jump to navigation Jump to search
No edit summary
No edit summary
Line 18: Line 18:
* Multiple worldwide locations and the ability to switch locations at any time
* Multiple worldwide locations and the ability to switch locations at any time


== Option #2: Creating a Hytale Server From Your Home Computer or Dedicated Server ==
== Option #2: Host Your Own Hytale Server ==


This option is for advanced users who want to host Hytale directly on their own hardware.
Want to run your own Hytale server at home or on your own hardware? This guide will walk you through everything step by step.


=== Server Requirements ===
=== What You'll Need ===


==== Software ====
==== Computer Requirements ====
 
* '''Java:''' OpenJDK 25 (64-bit) or equivalent. Java must be installed and on your PATH.
* '''Operating System:'''
** Linux (modern 64-bit distribution recommended for dedicated servers)
** Windows 10/11 64-bit
** macOS support may be added later
 
==== Hardware (starting points) ====


{| class="wikitable"
{| class="wikitable"
|-
|-
! Component !! Small Private Server !! Public/Modded Server
! What !! Minimum !! Recommended
|-
|-
| CPU || Modern 64-bit quad-core || 6+ cores recommended
| RAM || 4 GB || 6-8 GB
|-
|-
| RAM || 4-6 GB dedicated to server || 6-10 GB dedicated to server
| CPU || Modern 64-bit processor || Quad-core or better
|-
|-
| Storage || 10-20 GB (SSD recommended) || 20+ GB NVMe SSD
| Storage || 10 GB free space || 20+ GB SSD
|-
| Operating System || Windows 10/11 or Linux (64-bit) || Same
|}
|}


==== Networking ====
==== Software Requirements ====


'''Important:''' Hytale uses '''QUIC over UDP''' for networking, not TCP.
* '''Java 25''' - This is required to run the server. Download it free from [https://adoptium.net/ Adoptium]


* Ensure your firewall/router permits '''UDP''' traffic on the server port
To check if Java is installed correctly, open Command Prompt (Windows) or Terminal (Linux/Mac) and type:
* DDoS protection services must be configured to support UDP/QUIC traffic
<pre>java --version</pre>


== Step 1: Getting the Server Files ==
You should see something like:
<pre>openjdk 25.0.1 2025-10-21 LTS</pre>


When available, obtain <code>HytaleServer.jar</code> via:
=== Step 1: Get the Server Files ===


# '''Hytale Launcher''' - option to download the dedicated server
There are two ways to get the Hytale server files:
# '''hytale-downloader CLI tool''' - command-line utility from the Hytale team
# '''Direct CDN link''' - download URL provided in official documentation


Example download (placeholder URL):
'''Method A: Copy from your Hytale game installation (easiest for beginners)'''
<pre>
curl -L https://cdn.hytale.com/HytaleServer.jar -o HytaleServer.jar
</pre>


== Step 2: First Launch ==
# Install and run the Hytale Launcher on your computer
# Navigate to your Hytale installation folder:
#* '''Windows:''' <code>%appdata%\Hytale\install\release\package\game\latest</code>
#* '''Linux:''' <code>~/.local/share/Hytale/install/release/package/game/latest</code>
#* '''Mac:''' <code>~/Application Support/Hytale/install/release/package/game/latest</code>
# Copy the <code>Server</code> folder and <code>Assets.zip</code> to wherever you want to run your server


# Verify Java 25 is installed:
'''Method B: Use the Hytale Downloader tool (best for keeping updated)'''
<pre>java -version</pre>
You should see <code>openjdk version "25.x"</code> or similar.


# Create a server directory:
# Download the [https://support.hytale.com/ Hytale Downloader] from the official support site
<pre>
# Run the downloader to automatically fetch the latest server files
mkdir hytale-server
# This method makes it easy to update your server when new versions release
cd hytale-server
</pre>


# Download <code>HytaleServer.jar</code> to this directory.
=== Step 2: Start the Server for the First Time ===


# Run the server:
# Create a new folder for your server (example: <code>C:\HytaleServer</code>)
<pre>java -jar HytaleServer.jar</pre>
# Place the server files (<code>HytaleServer.jar</code> and <code>Assets.zip</code>) in this folder
# Open Command Prompt or Terminal in that folder
# Run this command:
<pre>java -jar HytaleServer.jar --assets Assets.zip</pre>


The server will:
The server will start up and create all its configuration files. You'll see text scrolling in the window as it loads.
* Generate default configuration files
* Bind to the default port
* Create an initial world


# Stop the server (Ctrl+C), edit configuration files, then restart.
=== Step 3: Authenticate Your Server ===


== Step 3: Memory (RAM) Configuration ==
Before players can join, you need to link your server to your Hytale account:


Allocate memory using JVM flags:
# In the server console, type: <code>/auth login device</code>
* <code>-Xms</code> - initial heap size
# You'll see a code and a link appear
* <code>-Xmx</code> - maximum heap size
# Open the link in your web browser and enter the code
# Log in with your Hytale account
# Once approved, you'll see "Authentication successful!" in the console


'''Tip:''' Keep <code>-Xms</code> and <code>-Xmx</code> equal for more predictable performance.
Your server is now ready to accept players!


{| class="wikitable"
=== Step 4: Set Up Port Forwarding (Required for Friends to Join) ===
|-
! Plan RAM !! Command
|-
| 4 GB || <code>java -Xms3G -Xmx3G -jar HytaleServer.jar</code>
|-
| 6 GB || <code>java -Xms5G -Xmx5G -jar HytaleServer.jar</code>
|-
| 8 GB || <code>java -Xms7G -Xmx7G -jar HytaleServer.jar</code>
|}


Reserve approximately 1 GB for OS overhead.
'''Important:''' Hytale uses '''UDP port 5520''' by default. This is different from many games that use TCP.


=== Start Script Examples ===
==== If you're hosting at home: ====


==== Windows (.bat file) ====
# Find your computer's local IP address (usually starts with 192.168)
# Log into your router's admin page (usually http://192.168.1.1 or http://192.168.0.1)
# Find the Port Forwarding section
# Add a new rule:
#* '''Protocol:''' UDP (not TCP!)
#* '''External Port:''' 5520
#* '''Internal Port:''' 5520
#* '''Internal IP:''' Your computer's local IP
# Save the settings


Create <code>StartHytaleServer.bat</code>:
If you need help with your specific router, [https://portforward.com/ PortForward.com] has guides for most router models.
<pre>
@echo off
java -Xms4G -Xmx4G -jar HytaleServer.jar
pause
</pre>


==== Linux (.sh file) ====
==== Firewall Settings ====


Create <code>start-hytale-server.sh</code>:
You may also need to allow the port through your firewall:
<pre>
#!/bin/bash
java -Xms4G -Xmx4G -jar HytaleServer.jar
</pre>


Make executable: <code>chmod +x start-hytale-server.sh</code>
'''Windows:'''
# Open Windows Defender Firewall
# Click "Advanced settings"
# Click "Inbound Rules" then "New Rule"
# Select "Port" > "UDP" > enter "5520"
# Allow the connection and give it a name like "Hytale Server"


== Step 4: Port Forwarding and Firewall Rules ==
'''Linux (ufw):'''
<pre>sudo ufw allow 5520/udp</pre>


Hytale uses '''QUIC (UDP)''' networking. You must allow UDP traffic on your game port.
=== Step 5: Allocate More RAM (Optional but Recommended) ===


=== Linux (ufw) ===
By default, Java might not use enough memory. To give your server more RAM, use these flags when starting:
<pre>sudo ufw allow 3000/udp</pre>
(Replace 3000 with actual Hytale port when confirmed)


=== Windows Firewall ===
{| class="wikitable"
# Open Windows Defender Firewall with Advanced Security
|-
# Add Inbound Rule > Port > UDP > your port number > Allow
! Your Available RAM !! Command to Use
|-
| 4 GB || <code>java -Xms3G -Xmx3G -jar HytaleServer.jar --assets Assets.zip</code>
|-
| 6 GB || <code>java -Xms5G -Xmx5G -jar HytaleServer.jar --assets Assets.zip</code>
|-
| 8 GB || <code>java -Xms7G -Xmx7G -jar HytaleServer.jar --assets Assets.zip</code>
|}


=== Router Port Forwarding ===
'''Tip:''' Always leave about 1 GB for Windows/Linux to use.
# Find your server's local IP (e.g., <code>192.168.1.50</code>)
# Log into your router admin panel
# Add port forwarding rule: '''UDP''' on your chosen port to your local IP
# Share your '''public IP''' and port with players


If you are unsure how to port forward, [https://portforward.com/ PortForward.com] has guides for many router models.
=== Create a Start Script (Makes Life Easier) ===


== Step 5: Running in Docker ==
Instead of typing the command every time, create a script file:


The Hytale team has confirmed Docker container support.
'''Windows - Create <code>start.bat</code>:'''
<pre>@echo off
java -Xms4G -Xmx4G -jar HytaleServer.jar --assets Assets.zip
pause</pre>


=== Quick Test ===
'''Linux - Create <code>start.sh</code>:'''
<pre>
<pre>#!/bin/bash
docker run -it --rm openjdk:25-slim /bin/sh -c \
java -Xms4G -Xmx4G -jar HytaleServer.jar --assets Assets.zip</pre>
  "apt-get update && apt-get install -y curl && \
Then make it executable: <code>chmod +x start.sh</code>
  curl -L https://cdn.hytale.com/HytaleServer.jar -o HytaleServer.jar && \
  java -jar HytaleServer.jar"
</pre>


=== Production Dockerfile ===
Double-click the script to start your server!
<pre>
FROM openjdk:25-slim


RUN apt-get update && \
== Understanding Your Server Files ==
    apt-get install -y --no-install-recommends curl ca-certificates && \
    rm -rf /var/lib/apt/lists/*


RUN useradd -m -d /hytale hytale
After running the server, you'll see these folders and files:
USER hytale
WORKDIR /hytale


EXPOSE 3000/udp
{| class="wikitable"
VOLUME ["/hytale/data"]
|-
! File/Folder !! What It Does
|-
| <code>config.json</code> || Main server settings (server name, max players, etc.)
|-
| <code>universe/</code> || Your world saves and player data
|-
| <code>mods/</code> || Put mod files here to add them to your server
|-
| <code>logs/</code> || Server logs for troubleshooting
|-
| <code>bans.json</code> || List of banned players
|-
| <code>whitelist.json</code> || List of allowed players (if whitelist is enabled)
|-
| <code>permissions.json</code> || Player permissions and ranks
|}


ENTRYPOINT ["java"]
'''Important:''' Always stop your server before editing configuration files!
CMD ["-Xms2G", "-Xmx2G", "-jar", "HytaleServer.jar"]
</pre>
 
== Expected File Layout ==
 
After first run, typical structure:
<pre>
hytale-server/
├─ HytaleServer.jar
├─ server.log
├─ config/
│  ├─ server.properties
│  ├─ networking.json
│  └─ gameplay.json
└─ worlds/
  └─ Orbis/
      ├─ region/
      ├─ playerdata/
      └─ level.dat
</pre>
 
Edit config files while server is stopped, then restart to apply changes.
 
== Configuring your Hytale Game Server ==
 
Configuration options you can expect to set:
 
* Server name / MOTD (how the server appears to players)
* Maximum players
* World seed and world settings
* Difficulty and gameplay rules
* Password protection
* Logging, backups, and performance settings
 
Survival Servers customers can edit most of these options directly via the web control panel.
 
== Locating and Joining your Server ==
 
=== Direct IP ===
# Start the Hytale client
# Select the option to join by IP / direct connect
# Enter your server's IP address and port
# Connect
 
=== Server Browser (after implemented) ===
# Open the in-game server browser
# Search or filter by name, tags, or region
# Click to join
 
If you cannot connect:
* Verify the server is running (check console for errors)
* Double-check your IP/hostname and port
* Ensure firewall and port-forwarding rules allow '''UDP''' traffic
* Have someone on a different network test to rule out local issues


== Quick Reference ==
== Quick Reference ==
Line 240: Line 186:
! Task !! Command
! Task !! Command
|-
|-
| Minimal run || <code>java -jar HytaleServer.jar</code>
| Start server (basic) || <code>java -jar HytaleServer.jar --assets Assets.zip</code>
|-
| Start with 4GB RAM || <code>java -Xms4G -Xmx4G -jar HytaleServer.jar --assets Assets.zip</code>
|-
|-
| Run with 4GB RAM || <code>java -Xms3G -Xmx3G -jar HytaleServer.jar</code>
| Use a different port || <code>java -jar HytaleServer.jar --assets Assets.zip --bind 0.0.0.0:25565</code>
|-
|-
| Show help/options || <code>java -jar HytaleServer.jar --help</code>
| See all options || <code>java -jar HytaleServer.jar --help</code>
|}
|}


== Tools ==
== Tips for Better Performance ==
 
Hytale is being built with powerful creator tools:


* '''In-game world editing and prefabs''' for fast building and world design
* '''Lower view distance''' - The default view distance uses a lot of RAM. Consider reducing it in your config if you have performance issues
* A '''Blockbench plugin''' for creating and animating models
* '''Use an SSD''' - Solid state drives help the server load chunks faster
* Server-side modding via plugins and asset packs
* '''Monitor your resources''' - Watch CPU and RAM usage while players are online to understand what your server needs
* Official documentation and examples planned by the Hytale team
* '''Keep Java updated''' - Always use Java 25 as recommended by Hytale


== See Also ==
== See Also ==


* [[How to Join a Hytale Server]]
* [[How to Install Mods on a Hytale Server]]
* [https://hytale.com/ Official Hytale Website]
* [https://hytale.com/ Official Hytale Website]
* [https://www.survivalservers.com/services/game_servers/hytale/ Rent a Hytale Server]
* [https://support.hytale.com/ Hytale Support & Documentation]


__NOTOC__
__NOTOC__

Revision as of 10:37, 12 January 2026

Creating a Hytale game server is an easy process that can be done from either a dedicated server or your home computer. Alternatively, you can choose a Hytale server host that will fit your needs.

Option #1: Renting a Hytale server (see example control panel below!)

Renting from a professional game server provider is the fastest and easiest way to get online. Survival Servers handles hardware, network, DDoS protection, and updates for you.

Control panel.gif
Hytale game server.png

With a rented Hytale server from Survival Servers you get:

  • Custom control panel (start/stop/restart, config editor, backups)
  • High-clock dedicated hardware (no VPS)
  • NVMe SSD storage
  • DDoS protection configured for UDP/QUIC traffic
  • Full FTP / SFTP file access
  • Multiple worldwide locations and the ability to switch locations at any time

Option #2: Host Your Own Hytale Server

Want to run your own Hytale server at home or on your own hardware? This guide will walk you through everything step by step.

What You'll Need

Computer Requirements

What Minimum Recommended
RAM 4 GB 6-8 GB
CPU Modern 64-bit processor Quad-core or better
Storage 10 GB free space 20+ GB SSD
Operating System Windows 10/11 or Linux (64-bit) Same

Software Requirements

  • Java 25 - This is required to run the server. Download it free from Adoptium

To check if Java is installed correctly, open Command Prompt (Windows) or Terminal (Linux/Mac) and type:

java --version

You should see something like:

openjdk 25.0.1 2025-10-21 LTS

Step 1: Get the Server Files

There are two ways to get the Hytale server files:

Method A: Copy from your Hytale game installation (easiest for beginners)

  1. Install and run the Hytale Launcher on your computer
  2. Navigate to your Hytale installation folder:
    • Windows: %appdata%\Hytale\install\release\package\game\latest
    • Linux: ~/.local/share/Hytale/install/release/package/game/latest
    • Mac: ~/Application Support/Hytale/install/release/package/game/latest
  3. Copy the Server folder and Assets.zip to wherever you want to run your server

Method B: Use the Hytale Downloader tool (best for keeping updated)

  1. Download the Hytale Downloader from the official support site
  2. Run the downloader to automatically fetch the latest server files
  3. This method makes it easy to update your server when new versions release

Step 2: Start the Server for the First Time

  1. Create a new folder for your server (example: C:\HytaleServer)
  2. Place the server files (HytaleServer.jar and Assets.zip) in this folder
  3. Open Command Prompt or Terminal in that folder
  4. Run this command:
java -jar HytaleServer.jar --assets Assets.zip

The server will start up and create all its configuration files. You'll see text scrolling in the window as it loads.

Step 3: Authenticate Your Server

Before players can join, you need to link your server to your Hytale account:

  1. In the server console, type: /auth login device
  2. You'll see a code and a link appear
  3. Open the link in your web browser and enter the code
  4. Log in with your Hytale account
  5. Once approved, you'll see "Authentication successful!" in the console

Your server is now ready to accept players!

Step 4: Set Up Port Forwarding (Required for Friends to Join)

Important: Hytale uses UDP port 5520 by default. This is different from many games that use TCP.

If you're hosting at home:

  1. Find your computer's local IP address (usually starts with 192.168)
  2. Log into your router's admin page (usually http://192.168.1.1 or http://192.168.0.1)
  3. Find the Port Forwarding section
  4. Add a new rule:
    • Protocol: UDP (not TCP!)
    • External Port: 5520
    • Internal Port: 5520
    • Internal IP: Your computer's local IP
  5. Save the settings

If you need help with your specific router, PortForward.com has guides for most router models.

Firewall Settings

You may also need to allow the port through your firewall:

Windows:

  1. Open Windows Defender Firewall
  2. Click "Advanced settings"
  3. Click "Inbound Rules" then "New Rule"
  4. Select "Port" > "UDP" > enter "5520"
  5. Allow the connection and give it a name like "Hytale Server"

Linux (ufw):

sudo ufw allow 5520/udp

Step 5: Allocate More RAM (Optional but Recommended)

By default, Java might not use enough memory. To give your server more RAM, use these flags when starting:

Your Available RAM Command to Use
4 GB java -Xms3G -Xmx3G -jar HytaleServer.jar --assets Assets.zip
6 GB java -Xms5G -Xmx5G -jar HytaleServer.jar --assets Assets.zip
8 GB java -Xms7G -Xmx7G -jar HytaleServer.jar --assets Assets.zip

Tip: Always leave about 1 GB for Windows/Linux to use.

Create a Start Script (Makes Life Easier)

Instead of typing the command every time, create a script file:

Windows - Create start.bat:

@echo off
java -Xms4G -Xmx4G -jar HytaleServer.jar --assets Assets.zip
pause

Linux - Create start.sh:

#!/bin/bash
java -Xms4G -Xmx4G -jar HytaleServer.jar --assets Assets.zip

Then make it executable: chmod +x start.sh

Double-click the script to start your server!

Understanding Your Server Files

After running the server, you'll see these folders and files:

File/Folder What It Does
config.json Main server settings (server name, max players, etc.)
universe/ Your world saves and player data
mods/ Put mod files here to add them to your server
logs/ Server logs for troubleshooting
bans.json List of banned players
whitelist.json List of allowed players (if whitelist is enabled)
permissions.json Player permissions and ranks

Important: Always stop your server before editing configuration files!

Quick Reference

Task Command
Start server (basic) java -jar HytaleServer.jar --assets Assets.zip
Start with 4GB RAM java -Xms4G -Xmx4G -jar HytaleServer.jar --assets Assets.zip
Use a different port java -jar HytaleServer.jar --assets Assets.zip --bind 0.0.0.0:25565
See all options java -jar HytaleServer.jar --help

Tips for Better Performance

  • Lower view distance - The default view distance uses a lot of RAM. Consider reducing it in your config if you have performance issues
  • Use an SSD - Solid state drives help the server load chunks faster
  • Monitor your resources - Watch CPU and RAM usage while players are online to understand what your server needs
  • Keep Java updated - Always use Java 25 as recommended by Hytale

See Also