Back to Mods
Placeholders

Placeholders

miscteximexi

PlaceholderAPI for developers to use in their code with unlimited options to use - use one of the default placeholders or register your own

About Placeholders

Placeholders Plugin for Hytale

A plugin that provides a placeholder system for Hytale, similar to PlaceholderAPI for Minecraft. This plugin allows you to use placeholders in text, which will be replaced with dynamic values.

Version

This mod/plugin is made for the game version "2026.01.17-4b0f30090". It is very likely to be usable for other versions - at your own risk. As soon as a stable game version is released, all versions will be supported.

Features

Parse placeholders in the format %placeholder%

Register custom placeholders from other plugins

Built-in placeholders for common values

Simple API for developers

Usage for Server Owners

Simply install the plugin in your Hytale server. The plugin will automatically register default placeholders that you can use in your server.

Default placeholders:

%current_time% - The current time

%current_date% - The current date

%current_year% - The current year

%current_datetime% - The current datetime

Server placeholders:

%server_name% - The server name

%server_motd% - The server motd

%server_password% - The server password

%server_max_players% - The server player limit

%server_max_view_radius% - The max view radius

%server_default_world_name% - The default world name

%server_default_gamemode% - The default game mode

Player placeholders (when a player object is provided as context → Must be a PlayerRef):

%player_uuid% - The UUID of the player

%player_name% - The name of the player

%player_fall_distance% - The current fall distance of the player

%player_gamemode% - The game mode of the player

%player_language% - The language of the player

%player_world_name% - The current world name the player is in

%player_world_uuid% - The current world UUID the player is in

%player_player_is_first_spawn% - Is first spawn of player

%player_x% - The x coordinate of the player

%player_y% - The y coordinate of the player

%player_z% - The z coordinate of the player

%player_x_exact% - The exact x coordinate of the player

%player_y_exact% - The exact y coordinate of the player

%player_z_exact% - The exact z coordinate of the player

%player_health% - The health of the player

%player_max_health% - The max health of the player

%player_min_health% - The min health of the player

%player_mana% - The mana of the player

%player_max_mana% - The max mana of the player

%player_min_mana% - The min mana of the player

%player_oxygen% - The oxygen of the player

%player_max_oxygen% - The max oxygen of the player

%player_min_oxygen% - The min oxygen of the player

%player_stamina% - The stamina of the player

%player_max_stamina% - The max stamina of the player

%player_min_stamina% - The min stamina of the player

%player_ammo% - The ammo of the player

%player_max_ammo% - The max ammo of the player

%player_min_ammo% - The min ammo of the player

Config

Config updates all 10 seconds automatically.

{ "TimeFormat": "HH:mm:ss", "DateFormat": "dd.MM.yyyy", "DateTimeFormat": "dd.MM.yyyy HH:mm:ss" } Commands

/testplaceholders - Shows all placeholders with values to the player

Usage for Developers

Adding the Plugin as a Dependency

Gradle

Add the plugin as a dependency in your build.gradle.kts file:

dependencies { compileOnly(files("libs/Placeholders-1.1.0.jar")) } Maven

Add the plugin as a dependency in your pom.xml

<dependencies> <dependency> <groupId>com.texisoft</groupId> <artifactId>placeholderapi</artifactId> <version>1.1.0</version> <scope>system</scope> <systemPath>${project.basedir}/libs/Placeholders-1.1.0-.jar</systemPath> </dependency> </dependencies>

Change the name to the name of the .jar file If needed change the version too (maven only) The .jar file has to be in the /libs folder. Create it if it is not present. The libs folder is in the same depth as the src folder

Registering Custom Placeholders

import com.texisoft.plugin.api.PlaceholderAPI; import com.texisoft.plugin.api.Placeholder; import com.texisoft.plugin.placeholders.DefaultPlaceholder;

// Get the PlaceholderAPI instance PlaceholderAPI api = PlaceholderAPI.getInstance();

// Register a simple placeholder with a static value api.registerPlaceholder(DefaultPlaceholder.ofStatic("my_placeholder", "My Value"));

// Register a placeholder with a dynamic value api.registerPlaceholder(new DefaultPlaceholder("my_dynamic_placeholder", context -> { // You can use the context to determine the value // For example, if the context is a player, you can get player-specific values return "Dynamic Value"; })); Parsing Text with Placeholders

import com.texisoft.plugin.api.PlaceholderAPI;

// Get the PlaceholderAPI instance PlaceholderAPI api = PlaceholderAPI.getInstance();

// Parse text with placeholders String text = "Welcome to %server_name%!"; String parsed = api.parse(text, null);

// If you have player-specific placeholders, you can pass the player as the context. Current it must be a `PlayerRef` // String parsed = api.parse(text, playerRef); Creating Custom Placeholder Implementations

You can create your own implementation of the Placeholder interface:

import com.texisoft.plugin.api.Placeholder;

public class MyCustomPlaceholder implements Placeholder { @Override public String getIdentifier() { return "my_custom_placeholder"; }

@Override public String getValue(Object context) { // Implement your custom logic here return "Custom Value"; } }

// Register your custom placeholder PlaceholderAPI.getInstance().registerPlaceholder(new MyCustomPlaceholder()); Using PlayerPlaceholder for Dynamic Data Extraction

The plugin includes a PlayerPlaceholder class that can dynamically extract data from player objects using reflection. This is useful when you want to access properties of player objects without knowing their exact structure in advance.

import com.texisoft.plugin.placeholders.PlayerPlaceholder;

// Create a placeholder that extracts the "name" property from player objects PlayerPlaceholder namePlaceholder = PlayerPlaceholder.of("player_name", "name", "Unknown Player");

// Create a placeholder that extracts a nested property (e.g., "location.x") PlayerPlaceholder xPlaceholder = PlayerPlaceholder.of("player_x", "location.x", "0");

// Register the placeholders PlaceholderAPI api = PlaceholderAPI.getInstance(); api.registerPlaceholder(namePlaceholder); api.registerPlaceholder(xPlaceholder);

// Use the placeholders in text String text = "Player %player_name% is at X: %player_x%"; String parsed = api.parse(text, playerObject); The PlayerPlaceholder class tries multiple approaches to extract data:

Using getter methods (e.g., getName() for "name" property)

Using "is" methods for boolean properties (e.g., isOp() for "op" property)

Using direct field access if methods are not available

It also supports nested properties (e.g., "location.x") by traversing the object hierarchy.

You can join our discord for support: https://discord.texisoft.com

Downloads
134
Created
Jan 17, 2026
Updated
Jan 18, 2026
Version
Early Access

Categories

MiscellaneousQuality of LifeLibraryUtility

Download Mod

Download on CurseForge
Free download • 134 total downloads

Need a Server?

Run Placeholders on a dedicated Hytale server with easy mod management.

Get Hytale Hosting

Frequently Asked Questions

What is Placeholders?

PlaceholderAPI for developers to use in their code with unlimited options to use - use one of the default placeholders or register your own

How do I download Placeholders?

You can download Placeholders for free from CurseForge. Click the "Download on CurseForge" button on this page to go directly to the download page.

Who created Placeholders?

Placeholders was created by teximexi. The mod has been downloaded 134 times.

Is Placeholders compatible with Hytale servers?

Placeholders 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 Placeholders?

To install Placeholders: 1) Download the mod from CurseForge, 2) Place the file in your Hytale mods folder, 3) Restart the game. The mod should load automatically.