mirror of
https://git.sanhost.net/sanasol/hytale-f2p
synced 2026-02-26 11:41:49 -03:00
- server/start.sh: Linux/macOS starter with auto-download, auto-update, F2P launcher detection (game files + bundled JRE), and token fetch - server/start.bat: Windows equivalent using PowerShell for JSON/UUID - server/README.md: Beginner-friendly guide with playit.gg networking - Remove obsolete server_scripts_2.zip Scripts auto-detect F2P launcher install (including custom installPath from config.json), copy game files locally if available, download missing files (HytaleServer.jar, Assets.zip, dualauth-agent.jar), and check for updates on every launch via ETag/GitHub releases API.
Hytale F2P - Dedicated Server
Host your own Hytale server. The scripts handle everything automatically.
Prerequisites
- Java 25+ — Windows installer | Other platforms
- If you have the F2P launcher installed, its bundled Java will be used automatically
- Internet connection for first launch (downloads ~3.5 GB of game files)
- If you have the F2P launcher installed, game files are copied locally (no download needed)
Quick Start
Windows
- Download
start.batto an empty folder - Double-click
start.bat - Done — server starts on port 5520
Linux / macOS
mkdir hytale-server && cd hytale-server
curl -O https://raw.githubusercontent.com/amiayweb/Hytale-F2P/develop/server/start.sh
chmod +x start.sh
./start.sh
What the scripts do
- Search for the F2P launcher install (default paths + custom
installPathfrom config) - Use bundled Java from the launcher, or fall back to system Java (25+ required)
- Copy game files from the launcher install if available
- Download missing files:
HytaleServer.jar(~150 MB),Assets.zip(~3.3 GB),dualauth-agent.jar(~5 MB) - Check for updates on every launch (server, assets, and agent)
- Generate a persistent server ID
- Fetch authentication tokens
- Start the server with dual-auth support
Connecting
- Same PC: Connect to
localhost:5520or127.0.0.1:5520 - LAN: Connect to your local IP (e.g.
192.168.1.x:5520) - Internet: Forward port
5520(TCP + UDP) on your router, friends connect to your public IP
No public IP? Use playit.gg (recommended)
If you're behind CGNAT or can't port forward, playit.gg gives you a public address for free:
- Go to playit.gg and create an account
- Download and run the playit agent
- Create a tunnel — select Hytale as the game type, local port
5520 - Share the generated address with friends (e.g.
something.joinplayit.gg:12345)
Other options
- Radmin VPN — virtual LAN, all players must install it
- ZeroTier — same idea, create a network, friends join and connect via VPN IP
Configuration
Set environment variables before running the script:
| Variable | Default | Description |
|---|---|---|
SERVER_NAME |
My Hytale Server |
Server name shown in listings |
BIND_ADDRESS |
0.0.0.0:5520 |
IP and port to listen on |
JVM_XMX |
(Java default) | Max memory (e.g. 4G, 8G) |
JVM_XMS |
(Java default) | Initial memory |
AUTH_MODE |
authenticated |
Auth mode (authenticated or none) |
HYTALE_AUTH_DOMAIN |
auth.sanasol.ws |
Auth server domain |
DOWNLOAD_BASE |
https://download.sanasol.ws/download |
File download URL |
Example (Linux):
SERVER_NAME="Epic Server" JVM_XMX=4G ./start.sh
Example (Windows):
set SERVER_NAME=Epic Server
set JVM_XMX=4G
start.bat
Files created
your-folder/
├── start.sh / start.bat # Startup script
├── HytaleServer.jar # Game server (auto-downloaded)
├── Assets.zip # Game assets (auto-downloaded)
├── dualauth-agent.jar # Auth agent (auto-downloaded)
├── .server-id # Persistent server UUID
├── .versions/ # Version tracking for auto-updates
├── Server/ # Server data (created by server)
│ ├── config.json
│ └── worlds/
└── UserData/ # Player saves
Troubleshooting
| Problem | Solution |
|---|---|
java not found |
Install the F2P launcher (includes Java) or install Java 25+ from adoptium.net |
| Download fails | Check internet connection. Files can be downloaded manually from https://download.sanasol.ws/download/ |
| Port already in use | Change port: BIND_ADDRESS=0.0.0.0:5521 ./start.sh |
| Out of memory | Set more RAM: JVM_XMX=4G ./start.sh |
| Friends can't connect | Forward port 5520 (TCP+UDP) on your router, or use playit.gg if you can't port forward |
Discord
Need help? Join the community: https://discord.gg/Fhbb9Yk5WW