HytaleVault

Personal Vault Storage System

Overview

HytaleVault is a personal numbered vault storage plugin for Hytale servers. It provides players with expandable, multi-slot storage containers that can be progressively unlocked and managed by administrators.

Key Features

  • Up to 9 numbered vaults per player
  • 54 storage slots per vault (configurable)
  • Intuitive vault selector UI with statistics
  • Progressive vault unlocking via permissions
  • Admin commands to grant, set, or clear vaults
  • JSON-based persistent storage with auto-save
  • Thread-safe Developer API

Installation

  1. Download HytaleVault from your BuiltByBit purchase
  2. Stop your Hytale server
  3. Place the JAR file in your server's mods/ directory
  4. Start your server
  5. Configure the plugin in mods/HytaleVault/config.json
  6. Use /vaultadmin reload to apply changes

Requirements: Hytale Server, Java 25+

Commands

Player Commands

CommandDescription
/vaultOpen the vault selector UI
/vault <number>Open a specific vault (1-9)
/vAlias for /vault
/vaultinfoDisplay vault statistics

Admin Commands

CommandDescription
/vaultadminOpen the admin panel UI
/vaultadmin give <player> <amount>Grant additional vaults to a player
/vaultadmin set <player> <amount>Set a player's total vault count
/vaultadmin clear <player>Clear all items from a player's vaults
/vaultadmin reloadReload configuration from disk

Permissions

Vault Access Permissions

PermissionDescriptionDefault
hytalevault.vault.1Access vault 1true
hytalevault.vault.2Access vault 2false
hytalevault.vault.3Access vault 3false
.........
hytalevault.vault.9Access vault 9false
hytalevault.vault.*Access all vaults (wildcard)false

Admin Permissions

PermissionDescription
hytalevault.adminAccess to all admin commands

Permission-Based Unlocking

Players unlock vaults by being granted the corresponding permission. This integrates well with rank systems - simply add vault permissions to your ranks:

  • Default: hytalevault.vault.1
  • VIP: hytalevault.vault.2, hytalevault.vault.3
  • MVP: hytalevault.vault.* (all vaults)

Configuration

Main configuration file: mods/HytaleVault/config.json

Vault Settings

{
  "vault": {
    "defaultVaults": 1,
    "maxVaults": 9,
    "slotsPerVault": 54
  }
}
  • defaultVaults - Starting vaults for new players (default: 1)
  • maxVaults - Maximum vaults per player (default: 9)
  • slotsPerVault - Storage slots per vault (default: 54)

Storage Settings

{
  "storage": {
    "type": "json",
    "directory": "playerdata",
    "saveIntervalSeconds": 300
  }
}
  • type - Storage backend (currently JSON)
  • directory - Subdirectory for player data files
  • saveIntervalSeconds - Auto-save interval (default: 300 = 5 minutes)

Customizable Messages

{
  "messages": {
    "vaultOpened": "&aOpened Vault #%vault%",
    "vaultUnlocked": "&aYou have unlocked Vault #%vault%!",
    "noPermission": "&cYou don't have permission to access this vault!",
    "playerNotFound": "&cPlayer not found!",
    "vaultsGranted": "&aGranted %amount% vaults to %player%",
    "vaultsSet": "&aSet %player%'s vaults to %amount%",
    "vaultsCleared": "&aCleared all vaults for %player%"
  }
}

Developer API

HytaleVault provides a thread-safe API for other plugins to integrate with vault storage.

Getting the API

VaultAPI api = VaultAPI.getInstance();

Vault Access Methods

// Get a player's vault data
PlayerVault vault = api.getVault(player);
PlayerVault vault = api.getVault(uuid);

// Check how many vaults a player has unlocked
int unlocked = api.getUnlockedVaults(uuid);

// Check if a specific vault is unlocked
boolean hasVault3 = api.isVaultUnlocked(uuid, 3);

// Grant additional vaults to a player
api.grantVaults(uuid, 2); // Grants 2 more vaults

Item Management

// Get an item from a vault
ItemStack item = api.getItem(uuid, vaultNumber, slot);

// Set an item in a vault
api.setItem(uuid, vaultNumber, slot, itemStack);

// Get total items stored across all vaults
int totalItems = api.getTotalItems(uuid);

// Force save a player's vault data
api.saveVault(uuid);

Configuration Access

// Get configuration values
int maxVaults = api.getMaxVaults();
int slotsPerVault = api.getSlotsPerVault();

Thread Safety: All VaultAPI methods are thread-safe and can be called from async tasks.

Ready to use HytaleVault?

Give your players secure, expandable vault storage!