Track Commands

Commands for creating and managing promotion/demotion tracks.

Command Summary

CommandDescription
/hp track create <name>Create a new track
/hp track delete <name>Delete a track
/hp track listList all tracks
/hp track info <name>View track details
/hp track append <name> <group>Add group to end of track
/hp track insert <name> <group> <position>Insert group at position
/hp track remove <name> <group>Remove group from track
/hp track clear <name>Remove all groups from track

Permissions

PermissionDescriptionDefault
hyperperms.command.trackAccess to all track commandsop
hyperperms.command.track.createCreate tracksop
hyperperms.command.track.deleteDelete tracksop
hyperperms.command.track.listList tracksop
hyperperms.command.track.infoView track infoop
hyperperms.command.track.modifyModify tracksop

Creating and Deleting Tracks

/hp track create

Create a new promotion track.

text
Usage: /hp track create <name>

Arguments:
  <name>  - Track name (lowercase, no spaces)

Examples:
/hp track create staff
/hp track create donor
/hp track create prison
Create all the groups you want in the track before adding them. Groups must exist to be added to a track.

/hp track delete

Delete a track.

text
Usage: /hp track delete <name>

Example:
/hp track delete old-track
Deleting a track doesn't delete the groups in it. Players remain in their current groups.

Viewing Tracks

/hp track list

List all available tracks.

text
Usage: /hp track list

Output:
[HyperPerms] Tracks (2):
  - staff (4 groups)
  - donor (3 groups)

/hp track info

View detailed information about a track.

text
Usage: /hp track info <name>

Example:
/hp track info staff

Output:
[HyperPerms] Track: staff
[HyperPerms] Groups (in order):
[HyperPerms]   1. helper
[HyperPerms]   2. mod
[HyperPerms]   3. admin
[HyperPerms]   4. owner

Managing Track Groups

/hp track append

Add a group to the end (top) of a track.

text
Usage: /hp track append <track> <group>

Examples:
/hp track append staff helper
/hp track append staff mod
/hp track append staff admin
/hp track append staff owner

# Result: helper → mod → admin → owner
Groups are added to the end (highest position). The first group added becomes the lowest rank on the track.

/hp track insert

Insert a group at a specific position in the track.

text
Usage: /hp track insert <track> <group> <position>

Arguments:
  <track>     - Track name
  <group>     - Group to insert
  <position>  - Position number (1-based)

Example:
# Current track: helper → mod → admin → owner
/hp track insert staff senior-mod 3

# Result: helper → mod → senior-mod → admin → owner

Position numbers:

  • Position 1 = Bottom of track (lowest rank)
  • Higher numbers = Higher positions
  • Existing groups at that position and above shift up

/hp track remove

Remove a group from a track.

text
Usage: /hp track remove <track> <group>

Example:
/hp track remove staff senior-mod

# Group is removed from track but still exists as a group
Removing a group from a track can affect promotion/demotion. Players in that group will skip to the next available group when promoted/demoted.

/hp track clear

Remove all groups from a track.

text
Usage: /hp track clear <name>

Example:
/hp track clear staff

# Track is now empty (no groups)

Complete Examples

Creating a Staff Track

text
# First, create the groups (if they don't exist)
/hp group create helper
/hp group create mod
/hp group create admin
/hp group create owner

# Set their weights
/hp group setweight helper 30
/hp group setweight mod 50
/hp group setweight admin 80
/hp group setweight owner 100

# Create the track
/hp track create staff

# Add groups in order (lowest to highest)
/hp track append staff helper
/hp track append staff mod
/hp track append staff admin
/hp track append staff owner

# Verify
/hp track info staff

Creating a Donor Track

text
# Create donor groups
/hp group create vip
/hp group create vip-plus
/hp group create mvp
/hp group create legend

# Set weights
/hp group setweight vip 10
/hp group setweight vip-plus 12
/hp group setweight mvp 15
/hp group setweight legend 18

# Create and populate track
/hp track create donor
/hp track append donor vip
/hp track append donor vip-plus
/hp track append donor mvp
/hp track append donor legend

Inserting a New Rank Mid-Track

text
# Current: helper → mod → admin → owner
# Want to add "senior-mod" between mod and admin

# Create the group
/hp group create senior-mod "Senior Moderator"
/hp group setweight senior-mod 65
/hp group addparent senior-mod mod

# Insert at position 3 (after mod, before admin)
/hp track insert staff senior-mod 3

# Result: helper → mod → senior-mod → admin → owner

Using Tracks for Promotion

Once tracks are set up, use them with user commands:

CommandDescription
/hp user promote <player> <track>Promote user on track
/hp user demote <player> <track>Demote user on track
text
# Steve is currently "helper"
/hp user promote Steve staff
# Steve is now "mod"

/hp user promote Steve staff
# Steve is now "admin"

/hp user demote Steve staff
# Steve is now "mod"

Track Behavior Details

What Promotion Does

  1. Finds the player's current group on the track
  2. Removes that group from the player
  3. Adds the next group on the track
  4. Updates the player's primary group

What Demotion Does

  1. Finds the player's current group on the track
  2. Removes that group from the player
  3. Adds the previous group on the track
  4. Updates the player's primary group

Edge Cases

text
# Already at top of track
/hp user promote Steve staff
# Error: Steve is already at the top of the staff track

# Already at bottom of track
/hp user demote Steve staff
# Error: Steve is already at the bottom of the staff track

# Player not on track
/hp user promote Alex staff
# Alex is added to the first (lowest) group on the track

Best Practices

Do

  • Create groups before adding them to tracks
  • Use separate tracks for staff and donors
  • Match track order with group weight order
  • Test promotion/demotion after setting up

Don't

  • Put unrelated groups in the same track
  • Forget to set up inheritance for track groups
  • Delete groups that are still in tracks without updating the track

See Also