Tutorials

Practical setups and step-by-step guides for common server needs.

How-To Guides
These are the setups most servers want first.
πŸ“£ Custom Commands (commands.yml)

HyEssentialsX includes a built-in Custom Commands system so you can define simple text commands without extra plugins. Perfect for: /discord, /website, /vote, /store, /rules.

  • Each command sends a configurable message to the player
  • Permissions are auto-generated
  • Supports aliases and full color formatting
  • Changes apply on reload
Permission Format
hyessentialsx.custom.<command> (Examples: hyessentialsx.custom.discord, hyessentialsx.custom.website)
🏠 Home Limits (Permission-Based)

Set a player’s max homes using: hyessentialsx.sethome.max.<number>

  • Example: hyessentialsx.sethome.max.3 allows up to 3 homes
  • Combine with rank groups for clean progression
πŸ›‘οΈ Spawn Protection Bypass

If you have spawn protection enabled, give staff the bypass node: hyessentialsx.spawn.bypass

πŸ’΅ Paycheck Tiers (Permission-Based)

Paychecks can be tiered using permission nodes. Give higher ranks a higher payout.

  • Base permission: hyessentialsx.paycheck
  • Tier format: hyessentialsx.paycheck.amount.<amount>
  • Example: hyessentialsx.paycheck.amount.250 β†’ pays $250 per paycheck
  • Special: hyessentialsx.paycheck.amount.* / hyessentialsx.paycheck.amount.unlimited uses default configured amount
🎁 Kit Permissions (Per-Kit Access)

If you enable kit permission checks, each kit can require its own node.

  • Enable: kits.requirePermission=true
  • Per-kit: hyessentialsx.kit.<kitname>
  • Example: hyessentialsx.kit.starter
  • Cooldown bypass per-kit: hyessentialsx.kit.<kitname>.bypass
  • Global bypass: hyessentialsx.kit.bypass
πŸ›οΈ Sleep Percentage (Live Update)

Control how many players must sleep to skip the night.

  • Command: /sleeppercent <percent> (alias /sp)
  • Permission: hyessentialsx.sleeppercent
  • Applies instantly (no restart needed)
⬆️ Rankups (Confirm Payments)

Rankups can require playtime, currency, or both. To prevent accidental payments, confirm is required.

  • Command: /rankup then /rankup confirm
  • Permission: hyessentialsx.rankup
🌐 Per-Player Language

Players can set their own language (with English fallback): /hyessentialsx language <code>

If you want custom translations added officially, ask in Discord and include your language file.
πŸͺ Admin Shop Setup
  • Create a shop using /adminshop create <name>
  • Assign buy/sell prices in the editor UI
  • Optionally enable stock limits and money pools
  • NPCs are created automatically on /adminshop create
πŸ§β€β™‚οΈ Player Shop Setup
  • Create a shop using /shop create <name>
  • Link nearby chests for real inventory storage
  • Assign buy/sell/barter trades in the editor UI
  • NPCs are created automatically on /shop create
  • Use the settings tab to add editors (optional)
⏱️ Playtime Tracking
  • Players: /playtime or /pt
  • Staff: /playtime <player>
  • Used automatically by timed rankups
πŸͺ§ Holograms: Images & GIFs

Add static images or animated GIFs to holograms using the asset folders below, then reference them in hologram lines.

πŸ“ File Locations
  • Images: mods/HyEssentialsX/holograms/images/
  • GIFs: mods/HyEssentialsX/holograms/gifs/
πŸ”„ Load Flow
  • Images: place file β†’ /holo reload β†’ restart server (images require restart to load assets)
  • GIFs: place file β†’ /holo reload β†’ restart server (gifs require restart to load assets)
Basic Commands
  • Create a hologram: /holo create <name>
  • Add an image line: /holo addline <name> image:my_logo
  • Add a GIF line: /holo addline <name> gif:my_anim
List Available Assets
/holo listimages
/holo listgifs
Naming Rule
Asset names come from the filename. Lowercase + underscores recommended. Example: My Logo.png β†’ use image:my_logo
Images
Syntax
image:<name>[:<scale>][:<billboard>][:<distance>][:<direction>]
Examples
  • image:logo
  • image:logo:2.0 (scale up)
  • image:logo:billboard (faces each player)
  • image:logo:billboard:32 (billboard tracking distance 32 blocks)
  • image:logo:1.5:billboard:24:n (scaled + billboard + distance + facing)
  • Scale: numeric (e.g. 1.0, 2.5). Default 1.0.
  • Billboard: use billboard or true/yes/1. (Requires billboard enabled in config.)
  • Tracking distance: when billboard is used, add :32 etc. to control update distance.
  • Facing direction: n, ne, e, se, s, sw, w, nw. If omitted, the hologram’s default facing is used.
  • Double-sided: images show from both sides. :ds / :doublesided
GIFs
Syntax
gif:<name>[:<scale>][:<speed>][:<billboard>][:<distance>][:<direction>]
Examples
  • gif:welcome
  • gif:welcome:1.2
  • gif:welcome:1.0:0.5 (half speed)
  • gif:welcome:billboard
  • gif:welcome:1.0:billboard:32:n
Also supported token style
gif:<name>:scale_1.5:speed_0.75:billboard:blocks_32:dir_n
  • Scale: numeric or scale_#.
  • Speed: numeric or speed_# (1.0 normal, 0.5 slower, 2.0 faster).
  • Billboard + distance: same as images. blocks_# is another way to set distance.
  • Facing direction: same as images.
  • Double-sided: GIFs show from both sides. :ds / :doublesided
Animations Tag

You can append :anim_<name> to image/GIF lines. If the animation exists, it applies; otherwise it’s ignored.

Example
image:logo:anim_spin
Common Troubleshooting
  • Image/GIF not showing:
    • Image: did you restart after /holo reload?
    • GIF: did you restart after /holo reload?
    • Verify names with /holo listimages / /holo listgifs
  • Wrong name: name is derived from the filename (lowercase + underscores recommended).
  • One-sided view: take a look at the double sided section add :ds to the end of the image name.