All versions
1.0.0
Beta
ShadowXP 1.0.04 months ago 48
Uploaded by
Compatibility
Minecraft: Java Edition
1.21.x
Platforms
Paper
Purpur
Spigot
Changes
🌟 Initial Release: ShadowXP v1.0.0
Welcome to the first release of ShadowXP! This plugin completely overhauls the vanilla experience system to be more performance-friendly, secure, and enjoyable for your players.
✨ Features
- XP Bank & GUI: Safely store experience in a virtual bank using the
/xp bankinteractive menu to prevent XP loss on death. - Secure XP Bottles: Convert your experience into physical, tradable items using
/xp bottle <amount>. Custom bottles are secured with NBT/PersistentDataContainers to prevent duplication exploits. - Mass Orb Consumption: Sick of waiting for XP to slowly absorb? When a player picks up an XP orb, ShadowXP instantly vacuums and combines all nearby orbs in a 3-block radius into a single instant consumption, entirely bypassing vanilla pickup cooldowns.
- Instant Pickup: Option to have XP go directly into the player's balance on entity kills (requires the
shadowxp.instantpickuppermission). - PlaceholderAPI Support: Access stats anywhere using
%shadowxp_total%,%shadowxp_bank%,%shadowxp_level%, and%shadowxp_bottled%. - Admin Tools: Full suite of commands (
/shadowxp [give|take|set|stats|reload]) to manage player balances and plugin configuration. - Developer API: Clean
ShadowXPAPIprovided for other developers to easily hook into the plugin.
🛠️ Technical Details
- Built for Paper 1.21+ and Java 21.
- Uses Adventure API for rich MiniMessage component support (gradients, hex colors).
- Fully customizable
config.yml,messages.yml,sounds.yml, andgui.yml. - Highly optimized to handle data asynchronously and prevent main-thread blocking.
Projects on Modrinth are automatically available through a Maven repository for use with JVM build tools such as Gradle. To learn more about the Modrinth Maven API, click here.
Note: When available, you should use the creator's maven repo instead as it will have transitive dependency information that the Modrinth Maven API does not. You may also end up with duplicate dependencies if you use a mix of Modrinth and non-Modrinth Maven repositories for your dependencies, because the group identifier will be different when served through the Modrinth Maven API.
Maven coordinates:
Version ID:
build.gradle:
repositories {
exclusiveContent {
forRepository {
maven {
name = "Modrinth"
url = "https://api.modrinth.com/maven"
}
}
// forRepositories(fg.repository) // Uncomment when using ForgeGradle
filter {
includeGroup "maven.modrinth"
}
}
}
// Standard Gradle dependency
dependencies {
implementation "maven.modrinth:rogOH4JB:3WCU9g8K"
}
// Legacy Loom dependency
dependencies {
modImplementation "maven.modrinth:rogOH4JB:3WCU9g8K"
}

