HytaleJanuary 14, 2026 82 views

Complete Guide: Optimizing the performance of your Hytale server

Complete Guide: Optimizing the performance of your Hytale server

How to Optimize the Performance of Your Hytale Server

Introduction

The performance of a Hytale server can vary significantly depending on the players' behavior. A group of players exploring different areas of the world consumes much more resources than a group gathered in the same place.

The Performance Saver plugin from Nitrado intelligently manages these load peaks to avoid crashes and maintain a smooth gaming experience, even on modest hardware.


📥 Step 1: Download the Plugin

Download the plugin from the official GitHub repository:

🔗 Download link : https://github.com/nitrado/hytale-plugin-performance-saver/releases/tag/v1.0.0

Retrieve the .jar file from the releases page.


📂 Step 2: Installation

  1. Locate your Hytale server folder
  2. Open (or create) the mods/ folder
  3. Place the downloaded .jar file in this mods/ folder
  4. Restart your server

That's it! The plugin works with its default settings.


⚙️ Step 3: Configuration (Optional)

To customize the plugin's behavior, create a configuration file:

  1. In the mods/ folder, create a sub-folder Nitrado_PerformanceSaver/
  2. In this sub-folder, create a config.json file

Full path : mods/Nitrado_PerformanceSaver/config.json


🔧 The 3 Main Features

1. TPS Limitation (Ticks Per Second)

The plugin stabilizes the server's TPS. A stable but slightly reduced TPS provides a better experience than a high but unstable TPS.

ParameterDefault ValueDescription
TpsLimit20Maximum TPS with connected players
TpsLimitEmpty5TPS when the server is empty
EmptyLimitDelaySeconds300Delay before switching to "empty server" mode

2. Dynamic View Radius Adjustment

When the server is under CPU or RAM pressure, the view radius is automatically reduced, then gradually restored when resources become available.

ParameterDefault ValueDescription
MinViewRadius2Minimum view radius
DecreaseFactor0.75Reduction factor (×0.75)
RecoveryWaitTimeSeconds60Time before attempting to increase the radius

3. Garbage Collection Management

Java does not automatically release unused memory. This plugin triggers memory cleanup when chunks are unloaded.

ParameterDefault ValueDescription
MinChunkCount128Minimum number of chunks before activation
GarbageCollectionDelaySeconds300Minimum delay between two GC

📋 Example of Full Configuration

{
  "Tps": {
    "Enabled": true,
    "TpsLimit": 20,
    "TpsLimitEmpty": 5,
    "OnlyWorlds": [],
    "InitialDelaySeconds": 30,
    "CheckIntervalSeconds": 5,
    "EmptyLimitDelaySeconds": 300
  },
  "ViewRadius": {
    "Enabled": true,
    "MinViewRadius": 2,
    "DecreaseFactor": 0.75,
    "IncreaseValue": 1,
    "InitialDelaySeconds": 30,
    "CheckIntervalSeconds": 5,
    "RecoveryWaitTimeSeconds": 60,
    "GcMonitor": {
      "Enabled": true,
      "HeapThresholdRatio": 0.85,
      "TriggerSequenceLength": 3,
      "WindowSeconds": 60
    },
    "TpsMonitor": {
      "Enabled": true,
      "TpsWaterMarkHigh": 0.75,
      "TpsWaterMarkLow": 0.6,
      "OnlyWorlds": [],
      "AdjustmentDelaySeconds": 20
    }
  },
  "ChunkGarbageCollection": {
    "Enabled": true,
    "MinChunkCount": 128,
    "ChunkDropRatioThreshold": 0.8,
    "GarbageCollectionDelaySeconds": 300,
    "InitialDelaySeconds": 5,
    "CheckIntervalSeconds": 5
  }
}

💡 Optimization Tips

For small servers (less RAM)

{
  "ViewRadius": {
    "MinViewRadius": 2,
    "GcMonitor": {
      "HeapThresholdRatio": 0.75
    }
  }
}

For servers with many players

{
  "ViewRadius": {
    "TpsMonitor": {
      "TpsWaterMarkLow": 0.5,
      "AdjustmentDelaySeconds": 10
    }
  }
}

To save resources when the server is empty

{
  "Tps": {
    "TpsLimitEmpty": 2,
    "EmptyLimitDelaySeconds": 120
  }
}

✅ Summary

  1. Download the plugin from GitHub
  2. Place the .jar in your server's mods/ folder
  3. Restart the server
  4. (Optional) Configure via mods/Nitrado_PerformanceSaver/config.json

The plugin takes care of the rest automatically! 🚀