Back to Mods
ServerVariables | Custom Data and Variables for Players

ServerVariables | Custom Data and Variables for Players

miscDonKolia

[Server-Side] This mod allows you to create your own variables for the server and players, meaning you have total control on which values you set

About ServerVariables | Custom Data and Variables for Players

ServerVariables

Based on the plugin by Ajneb97 - ServerVariables of Minecraft

Hytale mod that allows storing and managing player variables in MySQL with configurable validation and limitations.

Author: DonKolia Version: 1.0.0

Features

✅ Persistent variable storage in MySQL

✅ Validation system with data types (INTEGER, DOUBLE, TEXT)

✅ Configurable limitations (min/max values, maximum characters)

✅ Automatic out-of-range value management

✅ Public API for other plugins

✅ Configuration via YAML files

✅ Complete commands with silent mode

✅ Automatically derived initial values

Installation

Place ServerVariables.jar in your Hytale server's mods/ folder

Start the server to automatically generate the configuration

Edit plugins/DonKolia_ServerVariables/config.json with your MySQL credentials

Configure your variables in plugins/DonKolia_ServerVariables/variables/

Restart the server or use /svar reload

Configuration

config.json

The config.json file is automatically generated in plugins/DonKolia_ServerVariables/:

{ "databaseHost": "localhost", "databasePort": 3306, "databaseName": "hytale_vars", "databaseUser": "root", "databasePassword": "password" }

Database

The plugin automatically creates the server_variables table:

CREATE TABLE server_variables ( uuid VARCHAR(36) NOT NULL, player_name VARCHAR(16), var_key VARCHAR(64) NOT NULL, var_value TEXT, PRIMARY KEY (uuid, var_key) );

Columns:

uuid - Player's UUID

player_name - Player's name (for easier queries)

var_key - Variable name

var_value - Stored value

Variable Configuration

Variables are defined in YAML files inside plugins/DonKolia_ServerVariables/variables/.

Example Files

On first startup, two example files are created:

variables_numerales.yml

variables: oro: value_type: INTEGER limitations: max_value: 999999 min_value: 0 manage_out_of_range: true

nivel: value_type: INTEGER limitations: max_value: 100 min_value: 1 manage_out_of_range: true

experiencia: value_type: INTEGER limitations: max_value: 1000000 min_value: 0 manage_out_of_range: true

puntos-habilidad: value_type: INTEGER limitations: max_value: 500 min_value: 0 manage_out_of_range: true

reputacion: value_type: DOUBLE limitations: max_value: 100.0 min_value: -100.0 manage_out_of_range: true

variables_tipo_texto.yml

variables: rango: value_type: TEXT limitations: max_characters: 20

titulo: value_type: TEXT limitations: max_characters: 30

clan: value_type: TEXT limitations: max_characters: 16

prefijo: value_type: TEXT limitations: max_characters: 10

sufijo: value_type: TEXT limitations: max_characters: 10

Variable Structure

variables: variable-name: value_type: INTEGER|DOUBLE|TEXT limitations: # For INTEGER and DOUBLE: max_value: 100 min_value: 0 manage_out_of_range: true

# For TEXT: max_characters: 50

Value Types

value_type:

INTEGER - Whole numbers (e.g.: 1, 100, -5)

DOUBLE - Decimal numbers (e.g.: 1.5, 99.99, -10.25)

TEXT - Free text

Limitations

For numeric variables (INTEGER/DOUBLE):

max_value - Maximum allowed value

min_value - Minimum allowed value (also the initial value)

manage_out_of_range - If true, automatically adjusts out-of-range values to the nearest limit

For text variables (TEXT):

max_characters - Maximum number of characters allowed

Initial Values

Initial values are automatically derived:

INTEGER/DOUBLE: The value of min_value

TEXT: Empty string ""

Reload Variables

After creating or modifying YAML files:

/svar reload

Commands

All commands use the format /svar <subcommand> <arguments>

/svar set <variable> <value> <player> [silent:true]

Sets the value of a variable.

Validations:

The variable must be defined in the YAML files

The value must match the variable's type

Configured limitations are applied

Examples:

/svar set oro 1000 DonKolia /svar set nivel 5 DonKolia /svar set rango "Guerrero" DonKolia /svar set reputacion 75.5 DonKolia silent:true

/svar get <variable> <player>

Gets the value of a variable.

Behavior:

If the variable doesn't exist in the DB, returns the initial value

Validates that the variable is defined in YAML

Examples:

/svar get oro DonKolia /svar get nivel DonKolia

/svar add <variable> <value> <player> [silent:true]

Adds a value to a numeric variable (INTEGER or DOUBLE).

Validations:

Only works with INTEGER or DOUBLE variables

Applies limitations after adding

Examples:

/svar add oro 100 DonKolia /svar add reputacion 5.5 DonKolia silent:true

/svar reduce <variable> <value> <player> [silent:true]

Reduces the value of a numeric variable (INTEGER or DOUBLE).

Validations:

Only works with INTEGER or DOUBLE variables

Applies limitations after subtracting

Examples:

/svar reduce oro 50 DonKolia /svar reduce reputacion 10.0 DonKolia silent:true

/svar reset <variable> <player> [silent:true]

Resets a variable to its initial value.

Behavior:

INTEGER/DOUBLE: Resets to min_value

TEXT: Resets to empty string

Examples:

/svar reset oro DonKolia /svar reset nivel DonKolia silent:true

/svar reload

Reloads the plugin configuration and YAML variables.

Example:

/svar reload

silent:true Parameter

Add silent:true at the end of the command to suppress confirmation messages.

Example:

/svar set oro 1000 DonKolia silent:true

Limitation Management

manage_out_of_range: true

When enabled, out-of-range values are automatically adjusted:

oro: value_type: INTEGER limitations: max_value: 1000 min_value: 0 manage_out_of_range: true

Examples:

/svar set oro 1500 DonKolia &rarr; Saved as 1000

/svar set oro -50 DonKolia &rarr; Saved as 0

manage_out_of_range: false

When disabled, the operation is rejected:

nivel: value_type: INTEGER limitations: max_value: 100 min_value: 1 manage_out_of_range: false

Examples:

/svar set nivel 150 DonKolia &rarr; Error: "Value 150 exceeds maximum of 100"

Common Error Messages

"Variable 'X' is not defined in configuration files" The variable doesn't exist in any YAML file. Create it first.

"Invalid value type for variable 'X'. Expected: INTEGER" The provided value doesn't match the variable's type.

"Value X exceeds maximum of Y" The value exceeds the allowed maximum and manage_out_of_range is set to false.

"Text exceeds maximum length of X characters" The text is too long for the TEXT variable.

License

Created by DonKolia for Hytale

Downloads
64
Created
Jan 16, 2026
Updated
Jan 16, 2026
Version
Early Access

Categories

MiscellaneousUtility

Screenshots

ServerVariables | Custom Data and Variables for Players screenshot 1

Download Mod

Download on CurseForge
Free download • 64 total downloads

Need a Server?

Run ServerVariables | Custom Data and Variables for Players on a dedicated Hytale server with easy mod management.

Get Hytale Hosting

Frequently Asked Questions

What is ServerVariables | Custom Data and Variables for Players?

[Server-Side] This mod allows you to create your own variables for the server and players, meaning you have total control on which values you set

How do I download ServerVariables | Custom Data and Variables for Players?

You can download ServerVariables | Custom Data and Variables for Players for free from CurseForge. Click the "Download on CurseForge" button on this page to go directly to the download page.

Who created ServerVariables | Custom Data and Variables for Players?

ServerVariables | Custom Data and Variables for Players was created by DonKolia. The mod has been downloaded 64 times.

Is ServerVariables | Custom Data and Variables for Players compatible with Hytale servers?

ServerVariables | Custom Data and Variables for Players is designed for Hytale and can be used on both single-player and multiplayer servers. Check the mod page on CurseForge for specific compatibility information.

How do I install ServerVariables | Custom Data and Variables for Players?

To install ServerVariables | Custom Data and Variables for Players: 1) Download the mod from CurseForge, 2) Place the file in your Hytale mods folder, 3) Restart the game. The mod should load automatically.