Comment créer son serveur Hytale
Ce guide vous explique comment installer et configurer un serveur dédié Hytale sur votre VPS ou serveur dédié Linux.
Commander un serveur
Pour héberger votre serveur Hytale, HostMyServers propose plusieurs offres adaptées au gaming :
- VPS Performance - Idéal pour les petits serveurs
- VPS NVMe - Excellent rapport qualité/prix
- Serveurs dédiés Eco - Pour les serveurs avec beaucoup de joueurs
- Serveurs dédiés Performance - Performance maximale
Prérequis
- Accès SSH root ou utilisateur avec sudo
- Système Linux 64 bits (Ubuntu/Debian recommandé)
- Processeur x64 ou ARM64
- Minimum 4 Go de RAM (8 Go recommandés)
- Environ 10 Go d'espace disque libre (SSD recommandé)
- Port 5520 UDP accessible
- Un compte Hytale valide
Configuration requise
| Composant | Minimum | Recommandé |
|---|---|---|
| RAM | 4 Go | 8-16 Go |
| CPU | 2 cœurs | 4 cœurs |
| Stockage | 10 Go SSD | 20 Go SSD |
| Réseau | 100 Mbps | 1 Gbps |
Hytale utilise le protocole QUIC sur UDP (et non TCP comme Minecraft). Le port par défaut est 5520 UDP.
Mise à jour du système
sudo apt update && sudo apt upgrade -y
Installation de Java 25
Hytale nécessite Java 25 minimum. Les versions antérieures ne fonctionneront pas.
Installer Adoptium Temurin 25
# Ajouter le dépôt Adoptium
sudo apt install -y wget apt-transport-https gpg
wget -qO - https://packages.adoptium.net/artifactory/api/gpg/key/public | sudo gpg --dearmor -o /usr/share/keyrings/adoptium.gpg
echo "deb [signed-by=/usr/share/keyrings/adoptium.gpg] https://packages.adoptium.net/artifactory/deb $(lsb_release -cs) main" | sudo tee /etc/apt/sources.list.d/adoptium.list
# Installer Java 25
sudo apt update
sudo apt install -y temurin-25-jdk
Vérifier l'installation
java --version
Vous devriez voir :
openjdk 25.0.1 2025-10-21 LTS
OpenJDK Runtime Environment Temurin-25.0.1+8 (build 25.0.1+8-LTS)
OpenJDK 64-Bit Server VM Temurin-25.0.1+8 (build 25.0.1+8-LTS, mixed mode, sharing)
Création d'un utilisateur dédié
Pour des raisons de sécurité, créez un utilisateur dédié :
sudo adduser --disabled-password --gecos "" hytale
Configuration du pare-feu
Ouvrez le port UDP 5520 :
Avec UFW
sudo ufw allow 5520/udp
sudo ufw reload
Avec iptables
sudo iptables -A INPUT -p udp --dport 5520 -j ACCEPT
sudo iptables-save | sudo tee /etc/iptables/rules.v4
Téléchargement du serveur Hytale
Méthode recommandée : Hytale Downloader CLI
Connectez-vous en tant qu'utilisateur hytale :
sudo -u hytale bash
cd ~
Créez le répertoire et téléchargez l'outil :
mkdir -p ~/hytale-server
cd ~/hytale-server
wget https://downloader.hytale.com/hytale-downloader.zip
unzip hytale-downloader.zip
chmod +x hytale-downloader-linux-amd64
Télécharger les fichiers du serveur
./hytale-downloader-linux-amd64
Le terminal vous demandera d'aller sur oauth.accounts.hytale.com pour autoriser le téléchargement. Suivez les instructions affichées.
Une fois validé, vous obtiendrez une archive (ex: 2026.01.13-xxxx.zip).
Extraire les fichiers
unzip 2026.01.*.zip
Vous aurez un dossier Server/ et un fichier Assets.zip.
Commandes du Hytale Downloader
| Commande | Description |
|---|---|
./hytale-downloader | Télécharge la dernière version |
./hytale-downloader -print-version | Affiche la version sans télécharger |
./hytale-downloader -check-update | Vérifie les mises à jour de l'outil |
./hytale-downloader -patchline pre-release | Télécharge depuis le canal pre-release |
Premier lancement et authentification
Lancer le serveur
cd ~/hytale-server
java -jar Server/HytaleServer.jar --assets Assets.zip
Authentifier le serveur
Au premier lancement, le serveur affiche "No Server Token Configured". Vous devez le lier à votre compte Hytale.
-
Dans la console du serveur, tapez :
/auth login device -
La console affiche un code (ex:
ABCD-1234) et une URL -
Rendez-vous sur https://accounts.hytale.com/device
-
Entrez le code affiché
-
Une fois validé, la console affichera :
Authentification réussie ! Mode : OAUTH_DEVICE
Chaque compte Hytale peut créer jusqu'à 100 serveurs maximum.
Configuration du serveur
Fichier config.json
Après le premier lancement, éditez le fichier de configuration :
nano ~/hytale-server/config.json
Configuration de base
{
"Version": 3,
"ServerName": "Mon Serveur Hytale",
"MOTD": "Bienvenue sur mon serveur !",
"Password": "",
"MaxPlayers": 32,
"MaxViewRadius": 12,
"LocalCompressionEnabled": true,
"Defaults": {
"World": "default",
"GameMode": "Adventure"
},
"ConnectionTimeouts": {
"JoinTimeouts": {}
},
"RateLimit": {},
"Modules": {},
"LogLevels": {},
"Mods": {},
"DisplayTmpTagsInStrings": false,
"PlayerStorage": {
"Type": "Hytale"
}
}
Paramètres principaux
| Paramètre | Type | Description |
|---|---|---|
ServerName | Texte | Nom public du serveur |
MOTD | Texte | Message de bienvenue |
Password | Texte | Mot de passe (vide = public) |
MaxPlayers | Entier | Nombre max de joueurs |
MaxViewRadius | Entier | Distance de vue en chunks (12-16 recommandé) |
LocalCompressionEnabled | Booléen | Compression des données (recommandé: true) |
Defaults > World | Texte | Nom du monde par défaut |
Defaults > GameMode | Texte | Mode de jeu (Adventure ou Creative) |
Configuration des mondes
Chaque monde a son propre fichier de configuration dans universe/worlds/<nom_du_monde>/config.json :
| Paramètre | Description |
|---|---|
Seed | Graine de génération du monde |
IsPvpEnabled | Activer le PvP (true/false) |
IsFallDamageEnabled | Dégâts de chute (true/false) |
IsGameTimePaused | Figer le temps (true/false) |
IsSpawningNPC | Apparition des mobs (true/false) |
IsAllNPCFrozen | Figer tous les NPCs (true/false) |
Optimisation du lancement
Allocation mémoire
java -Xms4G -Xmx8G -jar Server/HytaleServer.jar --assets Assets.zip
| Taille serveur | RAM recommandée |
|---|---|
| Petit (1-10 joueurs) | 4 Go |
| Moyen (10-20 joueurs) | 6-8 Go |
| Grand (20+ joueurs) | 10-16 Go |
Laissez toujours 1 à 2 Go de RAM libre pour le système d'exploitation.
Cache AOT (Ahead-Of-Time)
Pour améliorer les temps de démarrage :
java -XX:AOTCache=HytaleServer.aot -Xms4G -Xmx8G -jar Server/HytaleServer.jar --assets Assets.zip
Changer le port
java -jar Server/HytaleServer.jar --assets Assets.zip --bind 0.0.0.0:25565
Structure des fichiers
| Chemin | Description |
|---|---|
.cache/ | Cache des fichiers optimisés |
logs/ | Fichiers journaux |
mods/ | Mods installés |
universe/ | Données de sauvegarde du monde |
bans.json | Joueurs bannis |
config.json | Configuration principale |
permissions.json | Permissions |
whitelist.json | Liste blanche |
Configuration en tant que service systemd
Créer le fichier de service
sudo nano /etc/systemd/system/hytale.service
Contenu du fichier :
[Unit]
Description=Hytale Dedicated Server
After=network.target
[Service]
Type=simple
User=hytale
Group=hytale
WorkingDirectory=/home/hytale/hytale-server
ExecStart=/usr/bin/java -Xms4G -Xmx8G -XX:AOTCache=HytaleServer.aot -jar /home/hytale/hytale-server/Server/HytaleServer.jar --assets /home/hytale/hytale-server/Assets.zip
Restart=on-failure
RestartSec=20
[Install]
WantedBy=multi-user.target
Activer et démarrer le service
sudo systemctl daemon-reload
sudo systemctl enable hytale.service
sudo systemctl start hytale.service
Commandes de gestion
# Vérifier le statut
sudo systemctl status hytale.service
# Arrêter le serveur
sudo systemctl stop hytale.service
# Redémarrer le serveur
sudo systemctl restart hytale.service
# Voir les logs
sudo journalctl -u hytale.service -f
Lancement avec screen (alternative)
sudo -u hytale bash
cd ~/hytale-server
screen -S hytale
java -Xms4G -Xmx8G -jar Server/HytaleServer.jar --assets Assets.zip
Pour détacher : Ctrl+A puis D
Pour revenir : screen -r hytale
Mise à jour du serveur
Arrêter le serveur
sudo systemctl stop hytale.service
Vérifier les mises à jour de l'outil
sudo -u hytale bash
cd ~/hytale-server
./hytale-downloader-linux-amd64 -check-update
Sauvegarder les données
cp -r universe ~/hytale-backup-$(date +%Y%m%d)
cp config.json ~/hytale-backup-$(date +%Y%m%d)/
Télécharger la nouvelle version
./hytale-downloader-linux-amd64
unzip -o 2026.*.zip
Redémarrer le serveur
exit
sudo systemctl start hytale.service
Commandes console
| Commande | Description |
|---|---|
/auth login device | Authentifier le serveur |
/stop | Arrêter le serveur |
/save | Sauvegarder le monde |
/kick <joueur> | Expulser un joueur |
/ban <joueur> | Bannir un joueur |
/unban <joueur> | Débannir un joueur |
/whitelist add <joueur> | Ajouter à la liste blanche |
/whitelist remove <joueur> | Retirer de la liste blanche |
/op <joueur> | Donner les droits admin |
/deop <joueur> | Retirer les droits admin |
Sauvegarde automatique
Script de sauvegarde
sudo nano /home/hytale/backup.sh
#!/bin/bash
BACKUP_DIR="/home/hytale/backups"
SERVER_DIR="/home/hytale/hytale-server"
DATE=$(date +%Y-%m-%d_%H-%M-%S)
mkdir -p $BACKUP_DIR
# Sauvegarde de l'univers et de la config
tar -czf $BACKUP_DIR/hytale_$DATE.tar.gz -C $SERVER_DIR universe config.json bans.json whitelist.json permissions.json
# Supprimer les sauvegardes de plus de 7 jours
find $BACKUP_DIR -name "hytale_*.tar.gz" -mtime +7 -delete
echo "Sauvegarde terminée : hytale_$DATE.tar.gz"
sudo chown hytale:hytale /home/hytale/backup.sh
sudo chmod +x /home/hytale/backup.sh
Planifier la sauvegarde
sudo crontab -u hytale -e
Ajoutez :
# Sauvegarde toutes les 6 heures
0 */6 * * * /home/hytale/backup.sh
Connexion au serveur
Les joueurs peuvent se connecter via :
- Lancer Hytale
- Aller dans "Multijoueur"
- Entrer l'adresse :
IP_DU_SERVEUR:5520 - Si un mot de passe est configuré, l'entrer
En cas de problème
Le serveur ne démarre pas
- Vérifiez la version de Java :
java --version(doit être 25+) - Vérifiez les logs :
sudo journalctl -u hytale.service -n 100 - Vérifiez que les fichiers Assets.zip et Server/ sont présents
Erreur d'authentification
- Relancez
/auth login devicedans la console - Vérifiez que votre compte Hytale est valide
- Vérifiez la connexion internet du serveur
Les joueurs ne peuvent pas se connecter
- Vérifiez que le port 5520 UDP est ouvert :
sudo ufw status - Vérifiez que le serveur écoute :
ss -ulnp | grep 5520 - Testez avec
nc -zvu IP_SERVEUR 5520
Problèmes de performance
- Augmentez la RAM allouée (
-Xmx) - Réduisez
MaxViewRadiusdans config.json - Activez
LocalCompressionEnabled - Planifiez des redémarrages réguliers