JoinCommands
Runs a configurable set of commands on a player joining
Screenshots 1 screenshots
About this mod Author’s original text
Join Commands
A lightweight Hytale server plugin that runs a configurable list of commands every time a player joins the server. Useful for granting starter items, sending welcome messages, teleporting players to a spawn world, or running any other command-driven setup that needs to happen on connection.
Features
- Runs any number of commands on player join, in the order they appear in the config.
- Supports running commands as the joining player or as the console, so you can mix elevated-permission setup with ordinary player actions.
- Supports per-player command lists, keyed by UUID, that run in addition to the global list. Per-player lists also support both player-executed and console-executed commands.
- Skips empty entries, so leaving blank lines in your config will not cause errors.
- Accepts commands with or without a leading slash. /give coins --quantity=100 and give coins --quantity=100 both work.
- Logs each dispatched command for easy debugging, including which sender (player or console) ran it.
- Catches and reports failures per command, so one broken entry will not stop the rest from running.
- Optional integration with PlaceholderAPI. If the plugin is installed, placeholders such as %player_username%, %luckperms_prefix%, or any other registered expansion will be replaced before the command runs. Placeholders resolve against the joining player even when the command runs as the console.
Configuration
The config file is generated at mods/com.azuredoom_joincommands/joincommands.json on first startup. By default, it contains an empty command list, meaning nothing will run on join until you add entries.
Example:
{
"Commands": [
"coins --quantity=100",
"say Welcome to the server!",
"tp 0 64 0"
],
"ConsoleCommands": [
"echo %player_username% just joined!"
]
}
Each entry is run as if the joining player had typed it as a command. The player is the executor, so permissions are required to run commands.
Player commands vs. console commands
The plugin supports two execution contexts at every level of the config:
- Commands – run as the joining player. The player is the executor, and the player's permissions are required for the command to succeed. Use this for actions you want the player to "perform" themselves.
- ConsoleCommands – run as the server console (ConsoleSender). These bypass the player's permission set and run with full server authority. Use this for administrative actions like granting items, modifying ranks, or broadcasting messages, where the joining player should not need (or have) permission to run the command directly.
In both cases the joining player is still the placeholder context, so something like %player_username% will resolve to the joining player even inside a ConsoleCommands entry.
For each player, global commands run first (Commands, then ConsoleCommands), followed by any matching per-player entries.
Per-player commands
In addition to the global Commands list, you can define commands that run only for specific players, keyed by their UUID. These run after the global commands, so they layer on top rather than replacing them.
{
"Commands": [
"say Welcome to the server!"
],
"ConsoleCommands": [
"echo %player_username% just joined!"
],
"PlayerCommands": [
{
"Uuid": "550e8400-e29b-41d4-a716-446655440000",
"Commands": [
"coins --quantity=500",
"echo Welcome back, admin."
],
"ConsoleCommands": [
"coins --quantity=500 --player=%player_username%",
"lp user %player_username% parent set admin"
]
},
{
"Uuid": "6ba7b810-9dad-11d1-80b4-00c04fd430c8",
"Commands": [
"tp 100 64 100"
]
}
]
}
Notes:
- UUIDs are matched exactly. Use the standard dashed format shown above.
- If a UUID is not found in the PlayerCommands list, only the global commands run for that player.
- You can have multiple entries for the same UUID; all matching entries will run in the order they appear.
- Both Commands and ConsoleCommands are optional inside a per-player entry. Include only the lists
Install & use Install: follow the bundled instructions
- Unzip the archive from playbuff and read the bundled readme / instructions first.
- Most mods rely on the game's mod loader — the usual route is a community mod manager (such as r2modman): pick this game, install, and it handles the loader and dependencies.
- For a manual install, put the mod files into the matching Mod / plugins folder inside the game directory.
- Launch the game to confirm it loaded; mods with listed dependencies need those installed as well.
Install locations vary a lot between mods — the bundled readme is the most reliable guide.