Custom Minecraft Plugin Developer Needed (Purpur)
Budget: Open / Negotiable
Platform: Java Edition – Purpur
Minecraft Version: 1.21.x (must be forward-compatible)
Plugin Type: XP Tracking, Leaderboards, PlaceholderAPI
Project Overview
I’m looking for an experienced Minecraft plugin developer to create a custom XP tracking and leaderboard plugin for a Purpur server. The plugin will track XP earned (not levels), maintain Top 10 leaderboards, and expose XP totals, leaderboard positions, and Top 10 entries via PlaceholderAPI.
This plugin is intended to be lightweight, efficient, and suitable for long-term server operation.
Core Requirements
XP Tracking (Earned XP Only)
Track XP gained from all sources, including but not limited to:
- Mob kills
- Mining / block XP
- Smelting
- Breeding
- Bottles o’ Enchanting
- Any XP source supported by Purpur
XP loss (death, enchanting, anvils, etc.) must NOT subtract from totals.
Data Categories
Each player must have the following XP tracked independently:
- Current XP
- Monthly XP Earned
- Yearly XP Earned
- Lifetime XP Earned
Reset Behavior
- Monthly XP resets automatically at the start of a new calendar month
- Yearly XP resets automatically at the start of a new calendar year
- Lifetime XP never resets
- Resets must be automatic, accurate, and server-safe
Leaderboard & Top 10 System (REQUIRED)
Leaderboards must exist for:
- Monthly XP
- Yearly XP
- Lifetime XP
Top 10 Rankings
Each leaderboard must maintain a Top 10 ranking list that:
- Ranks players by XP earned
- Includes online and offline players
- Updates dynamically as XP is earned
- Persists across server restarts
- Recalculates efficiently (event-driven or scheduled, not every tick)
Player Rank Tracking
For every player, the plugin must track and expose:
- Player’s current rank on:
- Monthly leaderboard
- Yearly leaderboard
- Lifetime leaderboard
Example:
- Player is #3 monthly
- Player is #14 yearly
- Player is #82 lifetime
Ranks must update automatically when leaderboard positions change.
PlaceholderAPI Support (REQUIRED)
XP Value Placeholders (examples)
- %xp_current%
- %xp_monthly%
- %xp_yearly%
- %xp_lifetime%
Rank Placeholders (examples)
- %xp_rank_monthly%
- %xp_rank_yearly%
- %xp_rank_lifetime%
Top 10 Placeholders (REQUIRED)
The plugin must expose Top 10 leaderboard entries via placeholders, including player name and XP value.
Example placeholders:
- %xp_top_monthly_1_name%
- %xp_top_monthly_1_value%
- %xp_top_monthly_10_name%
- %xp_top_monthly_10_value%
(Same structure for yearly and lifetime leaderboards.)
These placeholders will be used for:
- Scoreboards
- Holograms
- Chat formatting
- Website stats or APIs
Technical Requirements
- Designed specifically for Purpur
- Fully compatible with PlaceholderAPI
- Efficient storage (SQLite acceptable; MySQL optional)
- Minimal disk I/O and memory footprint
- Async-safe XP handling
- Handles edge cases (rapid XP gain, farms, lag spikes)
- Clean, readable, maintainable code
- Final JAR + source code (GitHub preferred)
Optional / Nice-to-Have
(Not required, but welcome)
- Configurable Top X size (default Top 10)
- Admin commands:
- Force monthly/yearly reset
- Recalculate leaderboards
- World or XP-source exclusions
- API hooks for other plugins
- Future expansion support (seasonal XP, rewards, Tebex, etc.)
Ideal Developer
- Proven experience with Spigot / Paper / Purpur
- Experience with leaderboards and PlaceholderAPI
- Familiar with XP edge cases and performance concerns
- Able to provide examples or references
How to Apply
Please include:
- Examples of plugins you’ve developed
- Estimated timeline
- Estimated cost
- Storage approach (SQLite/MySQL)
- Any technical recommendations
- Type
- Requesting
- Provided by
- Individual
