Admin Panel
The Season Pass includes a full in-game admin panel accessible via /spadmin panel. It provides 11 tabs organized into three categories, allowing server administrators to configure every aspect of the Season Pass without editing JSON files or restarting the server.
Requirement: seasonpass.admin permission
/spadmin panel
The admin panel is also accessible through:
- The Core mod's Admin Menu (
ModMenuRegistry) - NPC page openers on showcase servers
Tab Overview
The 11 tabs are organized into three groups:
CONFIG Tabs (Settings)
| Tab | Description |
|---|---|
| General | Core plugin settings: language, debug, timezone, auto-save, item config |
| Season | Season metadata, timing, tier scaling, slot counts |
| Currency | Currency mode, display name, icon, provider settings |
| Premium | Premium pass cost, XP boost, command-only mode |
| XP Sources | XP values for all 13 gameplay activities |
| Prestige | Prestige toggle, XP boost percent, max level |
CONTENT Tabs (Editors)
| Tab | Description |
|---|---|
| Tiers | Create, edit, and delete tier definitions with rewards |
| Challenges | Manage the daily/weekly challenge pool |
| Shop | Configure shop items, costs, weights, and rewards |
MANAGEMENT Tabs
| Tab | Description |
|---|---|
| Players | Search and manage individual player season data |
| Events | Double XP events, season lifecycle controls |
All changes made in the admin panel take effect immediately without a server restart. Config and season changes are saved to disk automatically when you click Save.
General Tab
The General tab controls core plugin settings that are stored in config.json.
Settings
| Setting | Type | Description |
|---|---|---|
| Language | Dropdown | Active language (en-US, de-DE, fr-FR, es-ES, pt-BR, ru-RU, pl-PL, tr-TR, it-IT) |
| Debug | Checkbox | Enable verbose debug logging |
| Enabled | Checkbox | Master enable/disable for the mod |
| Timezone | Dropdown | Timezone for daily/weekly resets (UTC, Europe/Berlin, US/Eastern, etc.) |
| Auto-Save Interval | Text field | Interval in seconds for automatic player data saves |
| Tracker HUD | Checkbox | Global toggle for the on-screen HUD tracker |
Item Config
| Setting | Type | Description |
|---|---|---|
| Item Enabled | Checkbox | Enable the Season Pass Book item |
| Item ID | Text field | Item definition ID (default: SeasonPass) |
| Hotbar Slot | Text field | Slot number 0-8 for auto-placement |
| Give on First Join | Checkbox | Auto-give book on first login |
| Give on Every Join | Checkbox | Re-give book on every login |
| Give Delay | Text field | Delay in seconds before giving the item |
Click Save General to persist changes to config.json.
Season Tab
The Season tab edits the metadata and scaling parameters of a season definition.
Season Selector
A dropdown at the top lets you choose which season to edit. If a season is currently active, it is selected by default. You can switch to any loaded season definition to edit it.
Metadata Fields
| Field | Type | Description |
|---|---|---|
| Name | Text field | Display name (e.g., "Season 1: Explorer") |
| Description | Text field | Season description text |
| Icon Item | Text field | Hytale item ID for the season icon |
| Theme Color | Text field | Hex color code (e.g., #00bcd4) |
Timing Fields
| Field | Type | Description |
|---|---|---|
| Start Date | Text field | Season start date (set automatically by start action) |
| End Date | Text field | Season end date (calculated from start + duration) |
| Duration (days) | Text field | Season duration in days |
XP Scaling
| Field | Type | Description |
|---|---|---|
| Base XP/Tier | Text field | Base XP required for tier 1 |
| Tier Scaling | Text field | Exponential scaling factor (e.g., 1.08) |
| Daily XP Cap | Text field | Hard daily XP limit (0 = unlimited) |
| Soft Cap | Text field | XP threshold for reduced earning |
| Soft Cap Multiplier | Text field | Multiplier after soft cap (e.g., 0.25) |
Slot Counts
| Field | Type | Description |
|---|---|---|
| Daily Challenge Slots | Text field | Number of daily challenges |
| Weekly Challenge Slots | Text field | Number of weekly challenges |
| Premium Daily Slots | Text field | Extra daily challenges for premium |
| Premium Weekly Slots | Text field | Extra weekly challenges for premium |
| Daily Shop Slots | Text field | Number of shop item slots |
| Premium Shop Slots | Text field | Extra shop slots for premium |
Season Actions
| Button | Description |
|---|---|
| Save Season | Save all changes to the season JSON file |
| Start Season | Start the selected season (fails if another is active) |
| End Season | End the currently active season |
| Create Season | Create a new blank season definition |
Currency Tab
The Currency tab configures the currency system for the selected season.
Fields
| Field | Type | Description |
|---|---|---|
| Currency Mode | Dropdown | internal (built-in tokens), item (inventory items), economy (VaultUnlocked) |
| Currency Name | Text field | Display name used throughout the UI |
| Currency Icon | Text field | Item ID for the currency icon |
| Item ID | Text field | Only for item mode: which inventory item is consumed |
| Economy Provider | Text field | Only for economy mode: provider name |
Token Settings
| Field | Type | Description |
|---|---|---|
| Token/XP Ratio | Text field | XP per token earned (e.g., 100 XP = 1 token) |
| First Login XP | Text field | Bonus XP on first login of the season |
| First Login Tokens | Text field | Bonus tokens on first login of the season |
Click Save Currency to persist changes.
Premium Tab
The Premium tab configures the premium pass system for the selected season.
Fields
| Field | Type | Description |
|---|---|---|
| Premium Enabled | Checkbox | Enable/disable the entire premium track |
| Command Only | Checkbox | Restrict premium to admin commands only (disables /sp buy) |
| Hint Text | Text field | Custom text shown on premium lock boxes for non-premium players |
| Cost | Text field | Premium pass price in the specified currency |
| Currency ID | Text field | Currency ID used for premium purchase (via Core ShopService) |
| XP Boost | Text field | XP multiplier for premium holders (e.g., 1.5 = 50% bonus) |
Click Save Premium to persist changes.
XP Sources Tab
The XP Sources tab provides inline editing of all 13 XP source values for the selected season.
Fields
| Label | Field ID | Description |
|---|---|---|
| Block Broken | SPAXp0 | XP per block broken |
| Block Placed | SPAXp1 | XP per block placed |
| Mob Kill | SPAXp2 | XP per mob killed |
| PvP Kill | SPAXp3 | XP per player killed |
| Playtime/Min | SPAXp4 | XP per minute of playtime |
| Zone Discovered | SPAXp5 | XP per new zone discovered |
| Block Harvested | SPAXp6 | XP per crop harvested |
| Flower Picked | SPAXp7 | XP per flower picked |
| Quest Completed | SPAXp8 | XP per quest completed |
| Achievement | SPAXp9 | XP per achievement unlocked |
| Daily Login | SPAXp10 | XP for daily login bonus |
| Login Streak/Day | SPAXp11 | Bonus XP per login streak day |
| Streak Max Days | SPAXp12 | Maximum streak days counted for bonus |
Click Save XP Sources to persist changes.
Set any value to 0 to disable that XP source entirely. For example, set PvP Kill to 0 on PvE-only servers.
Prestige Tab
The Prestige tab controls the prestige system for the selected season.
Fields
| Field | Type | Description |
|---|---|---|
| Prestige Enabled | Checkbox | Enable/disable the prestige system |
| XP Boost % | Text field | Permanent XP boost per prestige level |
| Max Level | Text field | Maximum prestige level a player can reach |
Prestige Rewards
The tab displays up to 6 prestige reward summaries in a read-only list, showing the prestige level and number of rewards configured for each level. Prestige rewards must be edited in the season JSON file directly.
Click Save Prestige to persist changes.
Tiers Tab
The Tiers tab is a paginated content editor for tier definitions (both standard and bonus tiers).
List View
- Displays 6 tiers per page with navigation buttons (Previous / Next)
- Each row shows: tier number, icon item, free reward summary, premium reward summary
- Edit button opens the tier editor for that row
- Delete button removes the tier (with confirmation)
- Add Tier button creates a new blank tier at the end
Tier Editor
When editing a tier, the following fields are available:
| Field | Type | Description |
|---|---|---|
| Tier Number | Text field | Tier position number |
| Icon Item | Text field | Hytale item ID for the tier icon |
| Free Reward Type | Text field | Reward type (item, command, lootbag, tokens, title, booster, none) |
| Free Reward Item/Command | Text field | Item ID, command string, lootbag ID, or token amount |
| Free Reward Amount | Text field | Amount (for item rewards) |
| Free Reward Description | Text field | Display text |
| Free Reward Icon | Text field | Item ID for the reward icon |
| Free Reward Rarity | Text field | Rarity tier (common, uncommon, rare, epic, legendary) |
| Premium Reward Type | Text field | Same fields as free reward |
| Premium Reward Item/Command | Text field | |
| Premium Reward Amount | Text field | |
| Premium Reward Description | Text field | |
| Premium Reward Icon | Text field | |
| Premium Reward Rarity | Text field |
| Button | Description |
|---|---|
| Save | Save the tier changes to the season |
| Cancel | Discard changes and return to list view |
Changes are saved to the season JSON file and take effect immediately.
Challenges Tab
The Challenges tab manages the daily and weekly challenge pools for the selected season.
Filter Buttons
Two filter buttons at the top switch between:
- Daily -- Shows daily challenge pool
- Weekly -- Shows weekly challenge pool
List View
- Displays 6 challenges per page with pagination
- Each row shows: challenge ID, type, target, count, XP reward, token reward
- Edit / Delete buttons per row
- Add Challenge creates a new blank challenge
Challenge Editor
| Field | Type | Description |
|---|---|---|
| ID | Text field | Unique challenge identifier |
| Name | Text field | Display name |
| Description | Text field | Description text |
| Type | Text field | Challenge type (break_block, place_block, mob_kill, player_kill, harvest, flower_pick, zone_discover, playtime, travel) |
| Target | Text field | Specific target or any |
| Count | Text field | Completion count required |
| XP Reward | Text field | XP granted on completion |
| Token Reward | Text field | Tokens granted on completion |
| Weight | Text field | Selection weight (higher = more likely) |
| Icon Item | Text field | Item ID for display |
| Premium Only | Checkbox | Only available to premium holders |
| Button | Description |
|---|---|
| Save | Save the challenge to the pool |
| Cancel | Discard and return to list view |
Shop Tab
The Shop tab manages the shop item pool for the selected season.
List View
- Displays 6 items per page with pagination
- Each row shows: item ID, name, cost, weight, rarity
- Edit / Delete buttons per row
- Add Item creates a new blank shop item
Shop Item Editor
| Field | Type | Description |
|---|---|---|
| ID | Text field | Unique shop item identifier |
| Name | Text field | Display name |
| Description | Text field | Description text |
| Icon Item | Text field | Item ID for display |
| Cost | Text field | Price in the configured currency |
| Weight | Text field | Selection weight for daily rotation |
| Rarity | Text field | Rarity tier (common, uncommon, rare, epic, legendary) |
| Premium Only | Checkbox | Only available to premium holders |
| Reward Type | Text field | Reward type for the purchase |
| Reward Item/Command | Text field | Reward details (item ID, command, etc.) |
| Reward Amount | Text field | Amount (for item rewards) |
| Reward Description | Text field | Reward display text |
| Button | Description |
|---|---|
| Save | Save the shop item |
| Cancel | Discard and return to list view |
Players Tab
The Players tab allows searching for and managing individual player data.
Player Search
Type a player name into the search field and click Search. The player must be online for the search to work.
Player Card
When a player is selected, a card displays their current season data:
| Field | Description |
|---|---|
| Name | Player username |
| Tier | Current tier number |
| XP | Current XP / Total season XP |
| Tokens | Token balance |
| Premium | Premium pass status (Yes/No) |
| Prestige | Current prestige level |
Player Actions
| Button | Description |
|---|---|
| Grant XP | Add XP to the player (enter amount in text field) |
| Set Tier | Set the player's tier to a specific number |
| Grant Tokens | Add tokens to the player |
| Toggle Premium | Toggle premium pass on/off |
| Set Prestige | Set the player's prestige level |
| Reset Player | Archive and reset all season data for the player |
The Reset Player action archives the player's current season data to their history and resets all progress. This cannot be undone.
Events Tab
The Events tab provides controls for server-wide events and season lifecycle management.
Double XP Event
| Element | Description |
|---|---|
| Status | Shows whether a global XP event is active, with multiplier and remaining time |
| Multiplier | Text field for the XP multiplier (e.g., 2.0) |
| Duration | Text field for event duration in minutes |
| Start Event | Start a global Double XP event (visible when no event is active) |
| Stop Event | Stop the active event immediately (visible when an event is active) |
Season Lifecycle
| Element | Description |
|---|---|
| Season Status | Shows the active season name and paused state |
| Pause Season | Pause the active season (freezes XP, challenges, and shop) |
| Resume Season | Resume a paused season |
The admin panel also provides a Reload button that reloads config.json, all season definitions, and localization files -- equivalent to running /spadmin reload.
Status Bar
A status message bar at the top of the admin panel displays feedback for all actions:
- Success messages -- "General settings saved!", "Season started!", etc.
- Error messages -- "Invalid auto-save interval: abc", "No season selected to save.", etc.
- Showcase blocks -- "Blocked in showcase mode." when running on a showcase server
The status bar clears on each new action.