{"id":161597,"date":"2026-06-09T18:33:13","date_gmt":"2026-06-09T15:33:13","guid":{"rendered":"https:\/\/vpesports.com\/minecraft\/mods\/ultimatestaffmanagement\/"},"modified":"2026-06-09T18:33:13","modified_gmt":"2026-06-09T15:33:13","slug":"ultimatestaffmanagement","status":"publish","type":"mod","link":"https:\/\/vpesports.com\/minecraft\/mods\/ultimatestaffmanagement\/","title":{"rendered":"UltimateStaffManagement"},"content":{"rendered":"<p>**\u00a0\ud83d\udcd8 UltimateStaffManagement &#8211; Complete Documentation<\/p>\n<p>&#8212;<\/p>\n<p>\u00a0\ud83c\udfaf Plugin Overview<\/p>\n<p>\u00a0What is UltimateStaffManagement?<\/p>\n<p>**UltimateStaffManagement** is an enterprise-grade staff time tracking plugin designed specifically for Minecraft Paper servers running versions 1.21 through 1.21.11. It provides server administrators with powerful tools to monitor, analyze, and manage staff member activity with precision and ease.<\/p>\n<p>Unlike basic time-tracking solutions, UltimateStaffManagement intelligently differentiates between **active work time** and **idle\/AFK time**, giving you accurate insights into actual staff productivity rather than just login duration.<\/p>\n<p>&#8212;<\/p>\n<p>\u00a0\ud83c\udf1f Key Features (Complete List)<\/p>\n<p>\u00a01\ufe0f\u20e3 Intelligent Session Management<\/p>\n<p>\u00a0Automatic Session Tracking<br \/>\n&#8211; **Auto Clock-In:** Sessions start automatically when players with `usm.track` permission join the server<br \/>\n&#8211; **Auto Clock-Out:** Sessions end gracefully when players disconnect or when the server shuts down<br \/>\n&#8211; **Manual Override:** Staff can manually clock in\/out using commands for flexible scheduling<br \/>\n&#8211; **Session Persistence:** All active sessions are immediately saved during unexpected server crashes<br \/>\n&#8211; **Multi-Session Support:** Tracks unlimited historical sessions per player<\/p>\n<p>\u00a0Session Data Captured<br \/>\n&#8220;`yaml<br \/>\nFor Each Session:<br \/>\n\u00a0 \u251c\u2500\u2500 Unique Session ID<br \/>\n\u00a0 \u251c\u2500\u2500 Player UUID &#038; Name<br \/>\n\u00a0 \u251c\u2500\u2500 Start Timestamp (millisecond precision)<br \/>\n\u00a0 \u251c\u2500\u2500 End Timestamp (millisecond precision)<br \/>\n\u00a0 \u251c\u2500\u2500 Total Active Time (milliseconds)<br \/>\n\u00a0 \u251c\u2500\u2500 Total Idle Time (milliseconds)<br \/>\n\u00a0 \u251c\u2500\u2500 Session Notes (timestamped entries)<br \/>\n\u00a0 \u2514\u2500\u2500 Activity Percentage Calculation<br \/>\n&#8220;`<\/p>\n<p>&#8212;<\/p>\n<p>\u00a02\ufe0f\u20e3 Advanced AFK\/Activity Detection<\/p>\n<p>\u00a0Movement-Based Detection<br \/>\nThe plugin uses a sophisticated multi-factor detection system:<\/p>\n<p>**Tracked Parameters:**<br \/>\n&#8211; **X, Y, Z Coordinates** &#8211; Detects physical movement (0.1 block precision)<br \/>\n&#8211; **Yaw (Head Rotation Horizontal)** &#8211; Tracks left\/right head movement (1\u00b0 precision)<br \/>\n&#8211; **Pitch (Head Rotation Vertical)** &#8211; Tracks up\/down head movement (1\u00b0 precision)<br \/>\n&#8211; **World Changes** &#8211; Instant detection of teleportation\/dimension changes<\/p>\n<p>**Detection Algorithm:**<br \/>\n&#8220;`java<br \/>\nMovement Detected IF:<br \/>\n\u00a0 \u251c\u2500\u2500 X\/Y\/Z change > 0.1 blocks OR<br \/>\n\u00a0 \u251c\u2500\u2500 Yaw change > 1.0 degrees OR<br \/>\n\u00a0 \u251c\u2500\u2500 Pitch change > 1.0 degrees OR<br \/>\n\u00a0 \u2514\u2500\u2500 World change detected<\/p>\n<p>Status Update:<br \/>\n\u00a0 \u251c\u2500\u2500 ACTIVE: Any movement detected within timeout period<br \/>\n\u00a0 \u2514\u2500\u2500 IDLE: No movement for configured duration (default: 600 seconds)<br \/>\n&#8220;`<\/p>\n<p>\u00a0Time Tracking Mechanism<br \/>\n&#8211; **Tick Rate:** Checks every 20 ticks (1 second) for optimal performance<br \/>\n&#8211; **Time Accumulation:** Every second adds 1000ms to either active or idle counter<br \/>\n&#8211; **Real-Time Updates:** Status changes are reflected immediately in GUIs<br \/>\n&#8211; **Configurable Thresholds:** Fully customizable sensitivity settings<\/p>\n<p>&#8212;<\/p>\n<p>\u00a03\ufe0f\u20e3 Enterprise Database Management<\/p>\n<p>\u00a0SQLite Support (Default)<\/p>\n<p>**Advantages:**<br \/>\n&#8211; \u2705 **Zero Configuration:** Works immediately after installation<br \/>\n&#8211; \u2705 **Portable:** Single database file, easy to backup<br \/>\n&#8211; \u2705 **No Dependencies:** No external database server required<br \/>\n&#8211; \u2705 **WAL Mode:** Write-Ahead Logging for data integrity<br \/>\n&#8211; \u2705 **Automatic Backups:** Daily backup rotation (configurable)<\/p>\n<p>&#8220;`<\/p>\n<p>\u00a0MySQL Support (Optional)<\/p>\n<p>**Perfect For:**<br \/>\n&#8211; Multi-server networks (BungeeCord\/Velocity)<br \/>\n&#8211; Centralized data management<br \/>\n&#8211; Advanced querying and reporting<br \/>\n&#8211; Large player bases (500+ concurrent)<\/p>\n<p>**Configuration Example:**<br \/>\n&#8220;`yaml<br \/>\nstorage-type: mysql<\/p>\n<p>mysql:<br \/>\n\u00a0 host: db.yournetwork.com<br \/>\n\u00a0 port: 3306<br \/>\n\u00a0 database: staff_tracking<br \/>\n\u00a0 username: minecraft<br \/>\n\u00a0 password: securePassword123<br \/>\n\u00a0\u00a0<br \/>\n\u00a0 pool:<br \/>\n\u00a0 \u00a0 maximum-pool-size: 10 \u00a0 \u00a0 \u00a0 Max concurrent connections<br \/>\n\u00a0 \u00a0 minimum-idle: 2 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0Idle connections maintained<br \/>\n\u00a0 \u00a0 connection-timeout: 30000 \u00a0 \u00a030 seconds<br \/>\n\u00a0 \u00a0 idle-timeout: 600000 \u00a0 \u00a0 \u00a0 \u00a0 10 minutes<br \/>\n\u00a0 \u00a0 max-lifetime: 1800000 \u00a0 \u00a0 \u00a0 \u00a030 minutes<br \/>\n\u00a0\u00a0<br \/>\n\u00a0 use-ssl: true \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0Encrypted connections<br \/>\n&#8220;`<\/p>\n<p>\u00a0HikariCP Connection Pooling<\/p>\n<p>**Performance Benefits:**<br \/>\n&#8211; \u26a1 **Sub-millisecond connection acquisition**<br \/>\n&#8211; \ud83d\udd04 **Automatic connection recycling**<br \/>\n&#8211; \ud83d\udee1\ufe0f **Connection leak detection**<br \/>\n&#8211; \ud83d\udcca **Real-time pool statistics**<br \/>\n&#8211; \ud83d\udd27 **Configurable pool sizing**<\/p>\n<p>**Async Architecture:**<br \/>\n&#8220;`<br \/>\nPlayer Action<br \/>\n\u00a0 \u00a0 \u2193<br \/>\nMain Thread (No Blocking)<br \/>\n\u00a0 \u00a0 \u2193<br \/>\nAsync Task Queue<br \/>\n\u00a0 \u00a0 \u2193<br \/>\nHikariCP Thread Pool<br \/>\n\u00a0 \u00a0 \u2193<br \/>\nDatabase Operation<br \/>\n\u00a0 \u00a0 \u2193<br \/>\nCallback to Main Thread<br \/>\n\u00a0 \u00a0 \u2193<br \/>\nResult Displayed<br \/>\n&#8220;`<\/p>\n<p>\u00a05\ufe0f\u20e3 Comprehensive Command System<\/p>\n<p>\u00a0Player Commands (Detailed)<\/p>\n<p>\u00a0`\/stafftime` (Main Dashboard)<br \/>\n&#8220;`yaml<br \/>\nPermission: usm.use<br \/>\nAliases: \/st, \/clock, \/staffclock<\/p>\n<p>Usage: \/stafftime<\/p>\n<p>Description:<br \/>\n\u00a0 Opens the main interactive dashboard GUI showing:<br \/>\n\u00a0 &#8211; Current session statistics<br \/>\n\u00a0 &#8211; Real-time activity status<br \/>\n\u00a0 &#8211; Quick access to history and notes<\/p>\n<p>Behavior:<br \/>\n\u00a0 \u251c\u2500\u2500 If Active Session: Shows live stats<br \/>\n\u00a0 \u251c\u2500\u2500 If No Session: Displays &#8220;Not clocked in&#8221; with instructions<br \/>\n\u00a0 \u2514\u2500\u2500 Permission Check: Requires usm.use<\/p>\n<p>Sound Effect: BLOCK_CHEST_OPEN (0.5 volume)<\/p>\n<p>Example Output: [Opens 9-slot GUI]<br \/>\n&#8220;`<\/p>\n<p>\u00a0`\/stafftime clockin` (Manual Session Start)<br \/>\n&#8220;`yaml<br \/>\nPermission: usm.use<br \/>\nAliases: \/st clockin, \/clock in<\/p>\n<p>Usage: \/stafftime clockin<\/p>\n<p>Description:<br \/>\n\u00a0 Manually starts a new time tracking session for the player.<br \/>\n\u00a0 Useful for staff who don&#8217;t have auto-tracking enabled.<\/p>\n<p>Validation Checks:<br \/>\n\u00a0 \u251c\u2500\u2500 Already has session? \u2192 Error message<br \/>\n\u00a0 \u251c\u2500\u2500 Permission check: usm.use<br \/>\n\u00a0 \u2514\u2500\u2500 Player-only command<\/p>\n<p>Success Message:<br \/>\n\u00a0 &#8220;\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550&#8221;<br \/>\n\u00a0 &#8221; \u00a0 \u2713 Clock-In Successful&#8221;<br \/>\n\u00a0 &#8220;\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550&#8221;<br \/>\n\u00a0 &#8220;Your work session has started.&#8221;<br \/>\n\u00a0 &#8220;Session will be tracked until you clock out or disconnect.&#8221;<br \/>\n\u00a0 &#8220;&#8221;<br \/>\n\u00a0 &#8220;View your stats: \/stafftime&#8221;<\/p>\n<p>Sound Effect: BLOCK_NOTE_BLOCK_PLING (1.0 volume, 2.0 pitch)<\/p>\n<p>Database Action: Creates new session record (async)<br \/>\n&#8220;`<\/p>\n<p>\u00a0`\/stafftime clockout` (Manual Session End)<br \/>\n&#8220;`yaml<br \/>\nPermission: usm.use<br \/>\nAliases: \/st clockout, \/clock out<\/p>\n<p>Usage: \/stafftime clockout<\/p>\n<p>Description:<br \/>\n\u00a0 Manually ends the current active session and displays<br \/>\n\u00a0 a detailed summary of the work period.<\/p>\n<p>Validation Checks:<br \/>\n\u00a0 \u251c\u2500\u2500 No active session? \u2192 Error message<br \/>\n\u00a0 \u251c\u2500\u2500 Permission check: usm.use<br \/>\n\u00a0 \u2514\u2500\u2500 Player-only command<\/p>\n<p>Success Output:<br \/>\n\u00a0 &#8220;\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550&#8221;<br \/>\n\u00a0 &#8221; \u00a0 \u2713 Clock-Out Successful&#8221;<br \/>\n\u00a0 &#8220;\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550&#8221;<br \/>\n\u00a0 &#8220;&#8221;<br \/>\n\u00a0 &#8220;Session Summary:&#8221;<br \/>\n\u00a0 &#8220;&#8221;<br \/>\n\u00a0 &#8221; \u00a0\u26a1 Active Time: 2h 15m 30s&#8221;<br \/>\n\u00a0 &#8221; \u00a0\u23f8 Idle Time: 18m 42s&#8221;<br \/>\n\u00a0 &#8221; \u00a0\u23f1 Total Time: 2h 34m 12s&#8221;<br \/>\n\u00a0 &#8221; \u00a0\ud83d\udcca Activity: 87.5%&#8221;<br \/>\n\u00a0 &#8220;&#8221;<br \/>\n\u00a0 &#8220;Your session has been saved to the database.&#8221;<\/p>\n<p>Sound Effect: ENTITY_EXPERIENCE_ORB_PICKUP<\/p>\n<p>Database Actions:<br \/>\n\u00a0 \u251c\u2500\u2500 Save session to usm_sessions table<br \/>\n\u00a0 \u251c\u2500\u2500 Update user totals in usm_users table<br \/>\n\u00a0 \u2514\u2500\u2500 Remove from active sessions cache<br \/>\n&#8220;`<\/p>\n<p>\u00a0`\/stafftime addnote <message>` (Session Annotation)<br \/>\n&#8220;`yaml<br \/>\nPermission: usm.use<br \/>\nAliases: \/st addnote, \/clock note<\/p>\n<p>Usage: \/stafftime addnote <message><br \/>\nExample: \/stafftime addnote Handled 5 player reports<\/p>\n<p>Description:<br \/>\n\u00a0 Adds a timestamped note to the current active session.<br \/>\n\u00a0 Notes are saved with the session and visible in history.<\/p>\n<p>Validation Checks:<br \/>\n\u00a0 \u251c\u2500\u2500 No active session? \u2192 Error message<br \/>\n\u00a0 \u251c\u2500\u2500 Message empty? \u2192 Show usage<br \/>\n\u00a0 \u251c\u2500\u2500 Message > 200 chars? \u2192 Error message<br \/>\n\u00a0 \u251c\u2500\u2500 Notes > 50 per session? \u2192 Error message<br \/>\n\u00a0 \u2514\u2500\u2500 Permission check: usm.use<\/p>\n<p>Note Format:<br \/>\n\u00a0 Stored: &#8220;[14:35:22] Handled 5 player reports&#8221;<br \/>\n\u00a0 Timestamp: HH:mm:ss format (configurable)<\/p>\n<p>Success Message:<br \/>\n\u00a0 &#8220;\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550&#8221;<br \/>\n\u00a0 &#8221; \u00a0 \ud83d\udcdd Note Added&#8221;<br \/>\n\u00a0 &#8220;\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550&#8221;<br \/>\n\u00a0 &#8220;&#8221;<br \/>\n\u00a0 &#8220;Note: Handled 5 player reports&#8221;<br \/>\n\u00a0 &#8220;&#8221;<br \/>\n\u00a0 &#8220;This note will be saved with your session.&#8221;<\/p>\n<p>Sound Effect: ENTITY_ITEM_PICKUP (0.5 volume, 1.5 pitch)<\/p>\n<p>Use Cases:<br \/>\n\u00a0 \u251c\u2500\u2500 Document player reports handled<br \/>\n\u00a0 \u251c\u2500\u2500 Record ban appeals reviewed<br \/>\n\u00a0 \u251c\u2500\u2500 Note server events assisted<br \/>\n\u00a0 \u251c\u2500\u2500 Log important decisions made<br \/>\n\u00a0 \u2514\u2500\u2500 Track tickets resolved<br \/>\n&#8220;`<\/p>\n<p>&#8212;<\/p>\n<p>\u00a0Admin Commands (Detailed)<\/p>\n<p>\u00a0`\/stafftime top [days]` (Leaderboard)<br \/>\n&#8220;`yaml<br \/>\nPermission: usm.admin<br \/>\nAliases: \/st top, \/clock leaderboard<\/p>\n<p>Usage:\u00a0<br \/>\n\u00a0 \/stafftime top \u00a0 \u00a0 \u00a0 \u00a0 \u00a0(defaults to 7 days)<br \/>\n\u00a0 \/stafftime top 30 \u00a0 \u00a0 \u00a0 (last 30 days)<br \/>\n\u00a0 \/stafftime top 1 \u00a0 \u00a0 \u00a0 \u00a0(last 24 hours)<\/p>\n<p>Description:<br \/>\n\u00a0 Displays a ranked leaderboard of staff members by<br \/>\n\u00a0 ACTIVE time (idle time excluded) for the specified period.<\/p>\n<p>Parameters:<br \/>\n\u00a0 \u251c\u2500\u2500 days: Integer (1-365)<br \/>\n\u00a0 \u251c\u2500\u2500 Default: 7 days<br \/>\n\u00a0 \u2514\u2500\u2500 Shows top 10 results<\/p>\n<p>Output Format:<br \/>\n\u00a0 &#8220;\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550&#8221;<br \/>\n\u00a0 &#8221; \u00a0 \ud83c\udfc6 Top Staff &#8211; Last 7 Days&#8221;<br \/>\n\u00a0 &#8220;\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550&#8221;<br \/>\n\u00a0 &#8220;&#8221;<br \/>\n\u00a0 &#8220;\ud83e\udd47 1 PlayerOne &#8211; 45h 30m 15s&#8221;<br \/>\n\u00a0 &#8220;\ud83e\udd48 2 PlayerTwo &#8211; 38h 15m 42s&#8221;<br \/>\n\u00a0 &#8220;\ud83e\udd49 3 PlayerThree &#8211; 32h 45m 10s&#8221;<br \/>\n\u00a0 &#8221; \u00a0 4 PlayerFour &#8211; 28h 20m 30s&#8221;<br \/>\n\u00a0 &#8221; \u00a0 5 PlayerFive &#8211; 25h 55m 18s&#8221;<br \/>\n\u00a0 &#8221; \u00a0 6 PlayerSix &#8211; 22h 10m 45s&#8221;<br \/>\n\u00a0 &#8221; \u00a0 7 PlayerSeven &#8211; 20h 30m 22s&#8221;<br \/>\n\u00a0 &#8221; \u00a0 8 PlayerEight &#8211; 18h 45m 50s&#8221;<br \/>\n\u00a0 &#8221; \u00a0 9 PlayerNine &#8211; 15h 20m 12s&#8221;<br \/>\n\u00a0 &#8221; \u00a0 10 PlayerTen &#8211; 12h 35m 40s&#8221;<br \/>\n\u00a0 &#8220;&#8221;<br \/>\n\u00a0 &#8220;\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550&#8221;<br \/>\n\u00a0 &#8220;Showing top 10 staff members&#8221;<\/p>\n<p>Medal Icons:<br \/>\n\u00a0 \u251c\u2500\u2500 \ud83e\udd47 1st Place (Gold)<br \/>\n\u00a0 \u251c\u2500\u2500 \ud83e\udd48 2nd Place (Silver)<br \/>\n\u00a0 \u2514\u2500\u2500 \ud83e\udd49 3rd Place (Bronze)<\/p>\n<p>Database Query:<br \/>\n\u00a0 SELECT u.name, SUM(s.active_millis) as total<br \/>\n\u00a0 FROM usm_sessions s<br \/>\n\u00a0 JOIN usm_users u ON s.uuid = u.uuid<br \/>\n\u00a0 WHERE s.start_timestamp >= [cutoff]<br \/>\n\u00a0 GROUP BY s.uuid<br \/>\n\u00a0 ORDER BY total DESC<br \/>\n\u00a0 LIMIT 10<\/p>\n<p>Processing: Async (displays loading message)<br \/>\n&#8220;`<\/p>\n<p>\u00a0`\/stafftime list` (Live Staff Monitor)<br \/>\n&#8220;`yaml<br \/>\nPermission: usm.admin<br \/>\nAliases: \/st list, \/clock active<\/p>\n<p>Usage: \/stafftime list<\/p>\n<p>Description:<br \/>\n\u00a0 For players: Opens an interactive GUI with player heads<br \/>\n\u00a0 For console: Displays formatted chat list<\/p>\n<p>GUI Features:<br \/>\n\u00a0 \u251c\u2500\u2500 Player heads with skins<br \/>\n\u00a0 \u251c\u2500\u2500 Real-time status indicators<br \/>\n\u00a0 \u251c\u2500\u2500 Session duration displays<br \/>\n\u00a0 \u251c\u2500\u2500 Activity percentages (color-coded)<br \/>\n\u00a0 \u251c\u2500\u2500 Note counts<br \/>\n\u00a0 \u2514\u2500\u2500 Manual refresh button<\/p>\n<p>Console Output:<br \/>\n\u00a0 &#8220;\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550&#8221;<br \/>\n\u00a0 &#8221; \u00a0 \ud83d\udccb Currently Active Staff&#8221;<br \/>\n\u00a0 &#8220;\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550&#8221;<br \/>\n\u00a0 &#8220;&#8221;<br \/>\n\u00a0 &#8220;1. PlayerOne &#8211; 2h 34m (Activity: 92.3%)&#8221;<br \/>\n\u00a0 &#8221; \u00a0 Active: 2h 15m | Idle: 18m&#8221;<br \/>\n\u00a0 &#8220;&#8221;<br \/>\n\u00a0 &#8220;2. PlayerTwo &#8211; 1h 45m (Activity: 78.5%)&#8221;<br \/>\n\u00a0 &#8221; \u00a0 Active: 1h 22m | Idle: 22m&#8221;<br \/>\n\u00a0 &#8220;&#8221;<br \/>\n\u00a0 &#8220;\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550&#8221;<br \/>\n\u00a0 &#8220;Total: 2 staff member(s) active&#8221;<\/p>\n<p>Use Cases:<br \/>\n\u00a0 \u251c\u2500\u2500 Monitor current staff availability<br \/>\n\u00a0 \u251c\u2500\u2500 Check who&#8217;s actively working<br \/>\n\u00a0 \u251c\u2500\u2500 Identify idle staff members<br \/>\n\u00a0 \u251c\u2500\u2500 Plan shift coverage<br \/>\n\u00a0 \u2514\u2500\u2500 Performance oversight<br \/>\n&#8220;`<\/p>\n<p>\u00a0`\/stafftime adjust <player> <add|remove> <amount> <active|idle>` (Time Adjustment)<br \/>\n&#8220;`yaml<br \/>\nPermission: usm.admin (requires usm.adjust)<br \/>\nAliases: \/st adjust, \/clock modify<\/p>\n<p>Usage:\u00a0<br \/>\n\u00a0 \/stafftime adjust <player> <add|remove> <amount> <active|idle><\/p>\n<p>Examples:<br \/>\n\u00a0 \/stafftime adjust Steve add 3600000 active<br \/>\n\u00a0 \u00a0 \u2192 Adds 1 hour to Steve&#8217;s active time<br \/>\n\u00a0\u00a0<br \/>\n\u00a0 \/stafftime adjust Alex remove 1800000 idle<br \/>\n\u00a0 \u00a0 \u2192 Removes 30 minutes from Alex&#8217;s idle time<br \/>\n\u00a0\u00a0<br \/>\n\u00a0 \/stafftime adjust Bob add 7200000 active<br \/>\n\u00a0 \u00a0 \u2192 Adds 2 hours to Bob&#8217;s active time<\/p>\n<p>Parameters:<br \/>\n\u00a0 \u251c\u2500\u2500 player: Player name (online or offline)<br \/>\n\u00a0 \u251c\u2500\u2500 operation: &#8220;add&#8221; or &#8220;remove&#8221;<br \/>\n\u00a0 \u251c\u2500\u2500 amount: Milliseconds (1 hour = 3600000)<br \/>\n\u00a0 \u2514\u2500\u2500 type: &#8220;active&#8221; or &#8220;idle&#8221;<\/p>\n<p>Time Conversions:<br \/>\n\u00a0 \u251c\u2500\u2500 1 minute \u00a0= 60,000 ms<br \/>\n\u00a0 \u251c\u2500\u2500 5 minutes = 300,000 ms<br \/>\n\u00a0 \u251c\u2500\u2500 10 minutes = 600,000 ms<br \/>\n\u00a0 \u251c\u2500\u2500 30 minutes = 1,800,000 ms<br \/>\n\u00a0 \u251c\u2500\u2500 1 hour = 3,600,000 ms<br \/>\n\u00a0 \u251c\u2500\u2500 2 hours = 7,200,000 ms<br \/>\n\u00a0 \u2514\u2500\u2500 24 hours = 86,400,000 ms<\/p>\n<p>Validation:<br \/>\n\u00a0 \u251c\u2500\u2500 Player exists check<br \/>\n\u00a0 \u251c\u2500\u2500 Amount > 0 check<br \/>\n\u00a0 \u251c\u2500\u2500 Valid operation check<br \/>\n\u00a0 \u251c\u2500\u2500 Valid type check<br \/>\n\u00a0 \u2514\u2500\u2500 Permission verification<\/p>\n<p>Confirmation Display:<br \/>\n\u00a0 &#8220;\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550&#8221;<br \/>\n\u00a0 &#8221; \u00a0 Time Adjustment&#8221;<br \/>\n\u00a0 &#8220;\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550&#8221;<br \/>\n\u00a0 &#8220;&#8221;<br \/>\n\u00a0 &#8220;Player: Steve&#8221;<br \/>\n\u00a0 &#8220;Operation: ADD&#8221;<br \/>\n\u00a0 &#8220;Amount: 1h 0m 0s&#8221;<br \/>\n\u00a0 &#8220;Type: ACTIVE&#8221;<br \/>\n\u00a0 &#8220;&#8221;<br \/>\n\u00a0 &#8220;\u23f3 Processing adjustment&#8230;&#8221;<br \/>\n\u00a0 &#8220;\u2713 Time adjustment applied successfully!&#8221;<\/p>\n<p>Logging:<br \/>\n\u00a0 Logs to console:<br \/>\n\u00a0 &#8220;[ADJUST] AdminName added 1h 0m 0s active time for Steve&#8221;<\/p>\n<p>Use Cases:<br \/>\n\u00a0 \u251c\u2500\u2500 Correct tracking errors<br \/>\n\u00a0 \u251c\u2500\u2500 Compensate for server downtime<br \/>\n\u00a0 \u251c\u2500\u2500 Reward bonus time<br \/>\n\u00a0 \u251c\u2500\u2500 Fix database issues<br \/>\n\u00a0 \u2514\u2500\u2500 Manual corrections<br \/>\n&#8220;`<\/p>\n<p>&#8212;<\/p>\n<p>\u00a06\ufe0f\u20e3 Permission System (Complete)<\/p>\n<p>\u00a0Permission Hierarchy Tree<br \/>\n&#8220;`<br \/>\nusm.* (OP)<br \/>\n\u2502<br \/>\n\u251c\u2500 usm.use (TRUE) \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2510<br \/>\n\u2502 \u00a0\u251c\u2500 usm.clockin \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0\u2502 PLAYER<br \/>\n\u2502 \u00a0\u251c\u2500 usm.clockout \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u2502 PERMISSIONS<br \/>\n\u2502 \u00a0\u251c\u2500 usm.addnote \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0\u2502<br \/>\n\u2502 \u00a0\u2514\u2500 usm.history \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0\u2502<br \/>\n\u2502 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u2502<br \/>\n\u251c\u2500 usm.track (FALSE) \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2524 STAFF<br \/>\n\u2502 \u00a0\u2514\u2500 [Enables auto-tracking] \u00a0 \u00a0 \u00a0\u2502 PERMISSION<br \/>\n\u2502 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u2502<br \/>\n\u2514\u2500 usm.admin.* (OP) \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2518<br \/>\n\u00a0 \u00a0\u251c\u2500 usm.admin<br \/>\n\u00a0 \u00a0\u251c\u2500 usm.top<br \/>\n\u00a0 \u00a0\u251c\u2500 usm.list<br \/>\n\u00a0 \u00a0\u2514\u2500 usm.adjust<br \/>\n&#8220;`<\/p>\n<p>\u00a0Permission Descriptions<\/p>\n<p>**usm.*** (Parent Permission)<br \/>\n&#8220;`yaml<br \/>\nDescription: Grants all plugin permissions<br \/>\nDefault: OP only<br \/>\nChildren:<br \/>\n\u00a0 &#8211; usm.use<br \/>\n\u00a0 &#8211; usm.track<br \/>\n\u00a0 &#8211; usm.admin<br \/>\n\u00a0 &#8211; usm.adjust<\/p>\n<p>Grant Command (LuckPerms):<br \/>\n\u00a0 \/lp user <name> permission set usm.*<\/p>\n<p>Use Case: Server owners and senior administrators<br \/>\n&#8220;`<\/p>\n<p>**usm.use** (Basic Access)<br \/>\n&#8220;`yaml<br \/>\nDescription: Access to dashboard and basic commands<br \/>\nDefault: True (all players)<br \/>\nAllows:<br \/>\n\u00a0 &#8211; \/stafftime (dashboard)<br \/>\n\u00a0 &#8211; \/stafftime clockin<br \/>\n\u00a0 &#8211; \/stafftime clockout<br \/>\n\u00a0 &#8211; \/stafftime addnote<\/p>\n<p>Does NOT Allow:<br \/>\n\u00a0 &#8211; Auto-tracking on join<br \/>\n\u00a0 &#8211; Admin commands<\/p>\n<p>Grant Command:<br \/>\n\u00a0 \/lp group default permission set usm.use true<\/p>\n<p>Use Case: All players (for personal time tracking)<br \/>\n&#8220;`<\/p>\n<p>**usm.track** (Auto-Tracking)<br \/>\n&#8220;`yaml<br \/>\nDescription: Enables automatic session tracking<br \/>\nDefault: False (must be granted)<br \/>\nBehavior:<br \/>\n\u00a0 &#8211; Auto clock-in on join<br \/>\n\u00a0 &#8211; Auto clock-out on quit<br \/>\n\u00a0 &#8211; Requires usm.use permission also<\/p>\n<p>Grant Command:<br \/>\n\u00a0 \/lp user <name> permission set usm.track true<\/p>\n<p>Use Case: ONLY grant to actual staff members<\/p>\n<p>Example Setup:<br \/>\n\u00a0 1. Create staff group: \/lp creategroup staff<br \/>\n\u00a0 2. Grant tracking: \/lp group staff permission set usm.track true<br \/>\n\u00a0 3. Add user: \/lp user PlayerName parent add staff<br \/>\n&#8220;`<\/p>\n<p>**usm.admin** (Admin Commands)<br \/>\n&#8220;`yaml<br \/>\nDescription: Access to administrative features<br \/>\nDefault: OP only<br \/>\nAllows:<br \/>\n\u00a0 &#8211; \/stafftime top<br \/>\n\u00a0 &#8211; \/stafftime list<br \/>\n\u00a0 &#8211; View all player data<\/p>\n<p>Does NOT Allow:<br \/>\n\u00a0 &#8211; Time adjustments (requires usm.adjust)<\/p>\n<p>Grant Command:<br \/>\n\u00a0 \/lp user <name> permission set usm.admin true<\/p>\n<p>Use Case: Server moderators and administrators<br \/>\n&#8220;`<\/p>\n<p>**usm.adjust** (Time Modification)<br \/>\n&#8220;`yaml<br \/>\nDescription: Ability to modify player time records<br \/>\nDefault: OP only<br \/>\nAllows:<br \/>\n\u00a0 &#8211; \/stafftime adjust command<br \/>\n\u00a0 &#8211; Add\/remove time from any player<\/p>\n<p>Security Warning:<br \/>\n\u00a0 Only grant to highly trusted administrators!<\/p>\n<p>Grant Command:<br \/>\n\u00a0 \/lp user <name> permission set usm.adjust true<\/p>\n<p>Use Case: Senior admins for corrections only<br \/>\n&#8220;`<\/p>\n<p>\u00a0Recommended Permission Setups<\/p>\n<p>**Setup 1: Small Server (10-50 players)**<br \/>\n&#8220;`yaml<br \/>\nDefault Group (All Players):<br \/>\n\u00a0 &#8211; usm.use: true<\/p>\n<p>Staff Group (Moderators):<br \/>\n\u00a0 &#8211; Inherits: default<br \/>\n\u00a0 &#8211; usm.track: true<\/p>\n<p>Admin Group (Administrators):<br \/>\n\u00a0 &#8211; Inherits: staff<br \/>\n\u00a0 &#8211; usm.admin: true<br \/>\n\u00a0 &#8211; usm.adjust: true<\/p>\n<p>Commands:<br \/>\n\u00a0 \/lp creategroup staff<br \/>\n\u00a0 \/lp group staff parent add default<br \/>\n\u00a0 \/lp group staff permission set usm.track true<br \/>\n\u00a0\u00a0<br \/>\n\u00a0 \/lp creategroup admin<br \/>\n\u00a0 \/lp group admin parent add staff<br \/>\n\u00a0 \/lp group admin permission set usm.admin true<br \/>\n\u00a0 \/lp group admin permission set usm.adjust true<br \/>\n&#8220;`<\/p>\n<p>**Setup 2: Large Network (100+ players)**<br \/>\n&#8220;`yaml<br \/>\nGroups:<br \/>\n\u00a0 default:<br \/>\n\u00a0 \u00a0 &#8211; No USM permissions (not tracked)<br \/>\n\u00a0\u00a0<br \/>\n\u00a0 helper:<br \/>\n\u00a0 \u00a0 &#8211; usm.use: true<br \/>\n\u00a0 \u00a0 &#8211; usm.track: true<br \/>\n\u00a0\u00a0<br \/>\n\u00a0 moderator:<br \/>\n\u00a0 \u00a0 &#8211; Inherits: helper<br \/>\n\u00a0 \u00a0 &#8211; usm.admin: true<br \/>\n\u00a0\u00a0<br \/>\n\u00a0 admin:<br \/>\n\u00a0 \u00a0 &#8211; Inherits: moderator<br \/>\n\u00a0 \u00a0 &#8211; usm.adjust: true<br \/>\n\u00a0\u00a0<br \/>\n\u00a0 owner:<br \/>\n\u00a0 \u00a0 &#8211; usm.*: true<\/p>\n<p>Commands:<br \/>\n\u00a0 \/lp creategroup helper<br \/>\n\u00a0 \/lp group helper permission set usm.use true<br \/>\n\u00a0 \/lp group helper permission set usm.track true<br \/>\n\u00a0\u00a0<br \/>\n\u00a0 \/lp creategroup moderator<br \/>\n\u00a0 \/lp group moderator parent add helper<br \/>\n\u00a0 \/lp group moderator permission set usm.admin true<br \/>\n\u00a0\u00a0<br \/>\n\u00a0 \/lp creategroup admin<br \/>\n\u00a0 \/lp group admin parent add moderator<br \/>\n\u00a0 \/lp group admin permission set usm.adjust true<br \/>\n&#8220;`<br \/>\n\u00a0\ud83d\udd1f Integration &#038; API<\/p>\n<p>\u00a0PlaceholderAPI Support (Planned v1.1)<\/p>\n<p>**Planned Placeholders:**<br \/>\n&#8220;`yaml<br \/>\n%usm_session_duration% \u00a0 \u00a0 \u00a0 \u00a0\u2192 &#8220;2h 34m 12s&#8221;<br \/>\n%usm_session_active% \u00a0 \u00a0 \u00a0 \u00a0 \u00a0\u2192 &#8220;2h 15m 30s&#8221;<br \/>\n%usm_session_idle% \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0\u2192 &#8220;18m 42s&#8221;<br \/>\n%usm_session_activity% \u00a0 \u00a0 \u00a0 \u00a0\u2192 &#8220;87.5%&#8221;<br \/>\n%usm_session_status% \u00a0 \u00a0 \u00a0 \u00a0 \u00a0\u2192 &#8220;Active&#8221; \/ &#8220;Idle&#8221;<br \/>\n%usm_total_active% \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0\u2192 &#8220;145h 30m 15s&#8221;<br \/>\n%usm_total_idle% \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0\u2192 &#8220;12h 45m 20s&#8221;<br \/>\n%usm_rank_position% \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u2192 &#8220;3&#8221;<br \/>\n%usm_notes_count% \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u2192 &#8220;5&#8221;<\/p>\n<p>Usage Example (Scoreboard):<br \/>\n\u00a0 &#8211; &#038;aSession: &#038;f%usm_session_duration%<br \/>\n\u00a0 &#8211; &#038;aStatus: &#038;f%usm_session_status%<br \/>\n\u00a0 &#8211; &#038;aActivity: &#038;f%usm_session_activity%<br \/>\n&#8220;`<\/p>\n<p>\u00a01\ufe0f\u20e32\ufe0f\u20e3 Support &#038; Resources<\/p>\n<p>\u00a0Official Resources<\/p>\n<p>**\ud83d\udc1b Bug Reporting:**<br \/>\n&#8211; [Discord](geturplugins)<\/p>\n<p>&#8212;<\/p>\n<p>\u00a01\ufe0f\u20e33\ufe0f\u20e3 Technical Specifications<\/p>\n<p>**Plugin Information:**<br \/>\n&#8220;`yaml<br \/>\nName: UltimateStaffManagement<br \/>\nVersion: 1.0.0<br \/>\nAuthor: geturplugins<br \/>\nLicense: AllRightsReserved<br \/>\nLanguage: Java 21<\/p>\n<p>Dependencies:<br \/>\n\u00a0 \u251c\u2500\u2500 Paper API: 1.21-1.21.11 (Required)<br \/>\n\u00a0 \u251c\u2500\u2500 HikariCP: 5.1.0 (Bundled)<br \/>\n\u00a0 \u251c\u2500\u2500 SQLite JDBC: 3.45.1.0 (Bundled)<br \/>\n\u00a0 \u251c\u2500\u2500 MySQL Connector: 8.3.0 (Optional)<br \/>\n\u00a0 \u2514\u2500\u2500 Adventure API: 4.x (Provided by Paper)<\/p>\n<p>File Size:<br \/>\n\u00a0 \u251c\u2500\u2500 JAR Size: ~1.5 MB<br \/>\n\u00a0 \u251c\u2500\u2500 With Dependencies: ~3.2 MB<br \/>\n\u00a0 \u2514\u2500\u2500 Database (SQLite): Grows ~50KB per 1000 sessions<\/p>\n<p>Performance:<br \/>\n\u00a0 \u251c\u2500\u2500 RAM Usage: 30-50MB (100 active sessions)<br \/>\n\u00a0 \u251c\u2500\u2500 CPU Impact: < 0.1% per 50 tracked players\n\u00a0 \u251c\u2500\u2500 TPS Impact: None (async operations)\n\u00a0 \u2514\u2500\u2500 Database Speed: < 10ms per query (SSD)\n\nCompatibility:\n\u00a0 \u2705 Paper 1.21 - 1.21.11\n\u00a0 \u2705 Purpur 1.21+\n\u00a0 \u26a0\ufe0f \u00a0Spigot 1.21 (Limited Adventure API)\n\u00a0 \u274c Bukkit (Not supported)\n\u00a0 \u274c Folia (Not yet supported)\n```\n\n---\n\n**\ud83d\udcca Statistics (Example Server)**\n\n**Server Profile:**\n- Type: Roleplay Server\n- Players: 150 concurrent\n- Staff: 25 tracked members\n- Database: MySQL\n- Uptime: 99.8%\n\n**Results:**\n```yaml\nPerformance Metrics:\n\u00a0 \u251c\u2500\u2500 Average Session Length: 3h 15m\n\u00a0 \u251c\u2500\u2500 Total Sessions Tracked: 12,450\n\u00a0 \u251c\u2500\u2500 Database Size: 145 MB\n\u00a0 \u251c\u2500\u2500 Query Response Time: < 5ms\n\u00a0 \u2514\u2500\u2500 Zero TPS impact\n\nStaff Insights:\n\u00a0 \u251c\u2500\u2500 Most Active Staff: 45h\/week\n\u00a0 \u251c\u2500\u2500 Average Activity Rate: 82.3%\n\u00a0 \u251c\u2500\u2500 Total Hours Tracked: 15,230h\n\u00a0 \u2514\u2500\u2500 Notes Recorded: 3,847\n\nResource Usage:\n\u00a0 \u251c\u2500\u2500 Plugin RAM: 42 MB\n\u00a0 \u251c\u2500\u2500 Database Connections: 8 active\n\u00a0 \u251c\u2500\u2500 Thread Pool: 4 threads\n\u00a0 \u2514\u2500\u2500 CPU Usage: 0.08%\n```\n\n---\n\n\u00a0\ud83c\udf93 Summary\n\n**UltimateStaffManagement** is the most comprehensive staff tracking solution for Minecraft servers, offering:\n\n\u2705 **Precision Tracking** - Millisecond-accurate time tracking with active\/idle differentiation \u00a0\n\u2705 **Zero Performance Impact** - Fully asynchronous operations with HikariCP pooling \u00a0\n\u2705 **Beautiful GUIs** - Interactive dashboards with real-time updates \u00a0\n\u2705 **Enterprise Database** - SQLite and MySQL support with automatic backups \u00a0\n\u2705 **Powerful Analytics** - Leaderboards, performance metrics, and detailed reports \u00a0\n\u2705 **Flexible Configuration** - 100+ config options for complete customization \u00a0\n\u2705 **Developer Friendly** - Full Java API with extensive documentation \u00a0\n\u2705 **Production Ready** - Battle-tested architecture with comprehensive error handling \u00a0\n\n**Perfect for:**\n- Roleplay servers requiring staff hour tracking\n- Networks needing centralized time management\n- Communities managing volunteer staff\n- Professional servers with paid staff positions\n- Any server wanting detailed activity analytics\n\n---\n\n\n**\ud83c\udfc6 The Ultimate Solution for Staff Management \ud83c\udfc6**\n\n\n<\/p>\n","protected":false},"excerpt":{"rendered":"<p>A plugin to track your working cycle of your staffs&#8230;&#8230;<\/p>\n","protected":false},"featured_media":161598,"template":"","meta":{"_minecraft_slug":"ultimatestaffmanagement","_minecraft_project_id":"ROhPGyKn","_minecraft_author":"geturplugins","_minecraft_license":"LicenseRef-All-Rights-Reserved","_minecraft_downloads":31,"_minecraft_follows":0,"_minecraft_client_side":"unsupported","_minecraft_server_side":"required","_minecraft_storage_type":"zip","_minecraft_archive_name":"ultimatestaffmanagement.zip","_minecraft_size_bytes":18669659,"_minecraft_version_count":1,"_minecraft_updated_at":"2026-05-15T22:02:12.886908Z","_minecraft_date_created":"2026-02-15T06:04:39.649515Z","_minecraft_date_modified":"2026-02-12T06:19:56.643525Z","_minecraft_project_url":"https:\/\/modrinth.com\/mod\/ultimatestaffmanagement","_minecraft_icon_attachment_id":161598,"_minecraft_imported_at":"2026-06-09T15:33:14+00:00","_minecraft_import_hash":"ca231cc764c80b3d8aa0da2edfbe7493","_minecraft_versions":"","_minecraft_links":"","_minecraft_gallery":"","_minecraft_api_metadata":""},"mod_category":[126,127,867,123],"mod_loader":[132],"minecraft_version":[62,37,40,41,73,74,38,78,79,80,81,82],"class_list":["post-161597","mod","type-mod","status-publish","has-post-thumbnail","hentry","mod_category-management","mod_category-paper","mod_category-social","mod_category-technology","mod_loader-paper","minecraft_version-1-21","minecraft_version-1-21-1","minecraft_version-1-21-10","minecraft_version-1-21-11","minecraft_version-1-21-2","minecraft_version-1-21-3","minecraft_version-1-21-4","minecraft_version-1-21-5","minecraft_version-1-21-6","minecraft_version-1-21-7","minecraft_version-1-21-8","minecraft_version-1-21-9"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.6 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>UltimateStaffManagement - Minecraft<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/vpesports.com\/minecraft\/mods\/ultimatestaffmanagement\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"UltimateStaffManagement - Minecraft\" \/>\n<meta property=\"og:description\" content=\"A plugin to track your working cycle of your staffs......\" \/>\n<meta property=\"og:url\" content=\"https:\/\/vpesports.com\/minecraft\/mods\/ultimatestaffmanagement\/\" \/>\n<meta property=\"og:site_name\" content=\"Minecraft\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data1\" content=\"11 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/mods\\\/ultimatestaffmanagement\\\/\",\"url\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/mods\\\/ultimatestaffmanagement\\\/\",\"name\":\"UltimateStaffManagement - Minecraft\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/mods\\\/ultimatestaffmanagement\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/mods\\\/ultimatestaffmanagement\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/wp-content\\\/uploads\\\/2026\\\/06\\\/ultimatestaffmanagement-icon-31027dd64aed210568b42f82ec483fdb6f861c2c_96.webp\",\"datePublished\":\"2026-06-09T15:33:13+00:00\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/mods\\\/ultimatestaffmanagement\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/mods\\\/ultimatestaffmanagement\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/mods\\\/ultimatestaffmanagement\\\/#primaryimage\",\"url\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/wp-content\\\/uploads\\\/2026\\\/06\\\/ultimatestaffmanagement-icon-31027dd64aed210568b42f82ec483fdb6f861c2c_96.webp\",\"contentUrl\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/wp-content\\\/uploads\\\/2026\\\/06\\\/ultimatestaffmanagement-icon-31027dd64aed210568b42f82ec483fdb6f861c2c_96.webp\",\"width\":96,\"height\":96},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/mods\\\/ultimatestaffmanagement\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Mods\",\"item\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/mods\\\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"UltimateStaffManagement\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/#website\",\"url\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/\",\"name\":\"Minecraft\",\"description\":\"\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"UltimateStaffManagement - Minecraft","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/vpesports.com\/minecraft\/mods\/ultimatestaffmanagement\/","og_locale":"en_US","og_type":"article","og_title":"UltimateStaffManagement - Minecraft","og_description":"A plugin to track your working cycle of your staffs......","og_url":"https:\/\/vpesports.com\/minecraft\/mods\/ultimatestaffmanagement\/","og_site_name":"Minecraft","twitter_card":"summary_large_image","twitter_misc":{"Est. reading time":"11 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/vpesports.com\/minecraft\/mods\/ultimatestaffmanagement\/","url":"https:\/\/vpesports.com\/minecraft\/mods\/ultimatestaffmanagement\/","name":"UltimateStaffManagement - Minecraft","isPartOf":{"@id":"https:\/\/vpesports.com\/minecraft\/#website"},"primaryImageOfPage":{"@id":"https:\/\/vpesports.com\/minecraft\/mods\/ultimatestaffmanagement\/#primaryimage"},"image":{"@id":"https:\/\/vpesports.com\/minecraft\/mods\/ultimatestaffmanagement\/#primaryimage"},"thumbnailUrl":"https:\/\/vpesports.com\/minecraft\/wp-content\/uploads\/2026\/06\/ultimatestaffmanagement-icon-31027dd64aed210568b42f82ec483fdb6f861c2c_96.webp","datePublished":"2026-06-09T15:33:13+00:00","breadcrumb":{"@id":"https:\/\/vpesports.com\/minecraft\/mods\/ultimatestaffmanagement\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/vpesports.com\/minecraft\/mods\/ultimatestaffmanagement\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/vpesports.com\/minecraft\/mods\/ultimatestaffmanagement\/#primaryimage","url":"https:\/\/vpesports.com\/minecraft\/wp-content\/uploads\/2026\/06\/ultimatestaffmanagement-icon-31027dd64aed210568b42f82ec483fdb6f861c2c_96.webp","contentUrl":"https:\/\/vpesports.com\/minecraft\/wp-content\/uploads\/2026\/06\/ultimatestaffmanagement-icon-31027dd64aed210568b42f82ec483fdb6f861c2c_96.webp","width":96,"height":96},{"@type":"BreadcrumbList","@id":"https:\/\/vpesports.com\/minecraft\/mods\/ultimatestaffmanagement\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/vpesports.com\/minecraft\/"},{"@type":"ListItem","position":2,"name":"Mods","item":"https:\/\/vpesports.com\/minecraft\/mods\/"},{"@type":"ListItem","position":3,"name":"UltimateStaffManagement"}]},{"@type":"WebSite","@id":"https:\/\/vpesports.com\/minecraft\/#website","url":"https:\/\/vpesports.com\/minecraft\/","name":"Minecraft","description":"","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/vpesports.com\/minecraft\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"}]}},"_links":{"self":[{"href":"https:\/\/vpesports.com\/minecraft\/wp-json\/wp\/v2\/mod\/161597","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/vpesports.com\/minecraft\/wp-json\/wp\/v2\/mod"}],"about":[{"href":"https:\/\/vpesports.com\/minecraft\/wp-json\/wp\/v2\/types\/mod"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/vpesports.com\/minecraft\/wp-json\/wp\/v2\/media\/161598"}],"wp:attachment":[{"href":"https:\/\/vpesports.com\/minecraft\/wp-json\/wp\/v2\/media?parent=161597"}],"wp:term":[{"taxonomy":"mod_category","embeddable":true,"href":"https:\/\/vpesports.com\/minecraft\/wp-json\/wp\/v2\/mod_category?post=161597"},{"taxonomy":"mod_loader","embeddable":true,"href":"https:\/\/vpesports.com\/minecraft\/wp-json\/wp\/v2\/mod_loader?post=161597"},{"taxonomy":"minecraft_version","embeddable":true,"href":"https:\/\/vpesports.com\/minecraft\/wp-json\/wp\/v2\/minecraft_version?post=161597"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}