
Set custom amount for xp to be dropped by mobs when they are killed, includes Ender Dragon's first and subsequent kills. Also allows setting custom amounts for baby mob variants, and chickens that have jockeys
This mod allows setting a custom amount of xp that mobs will drop when killed. This includes being able to change the amount of xp the Ender Dragon drops on the first kill and subsequent kills.
Vanilla Minecraft had different xp amounts for some baby mob variants (e.g. Zombie babies), and chickens that had jockeys. So this mod also allows setting custom amounts for any baby mob variant and chickens with jockeys if wanting to do so.
Permission
Uses the permission mobxp.manageXP (or if the user is OPed / Singleplayer) to check if a user is allowed to edit the custom settings.
GUI
Starting with v1.1.3 there is an ingame GUI that can be used to modify the custom xp amounts and set the various flags. The default key for opening the GUI is the Keypad 5 when loaded in a world.

Starting with v1.1.3, all custom mob XP settings are stored as NBT data on a per-world basis.
This means each world maintains its own independent XP configuration.
The configuration file is named:
mob_xp_data.dat
and is stored in the world’s data directory.
Singleplayer worlds
.minecraft/saves/<WorldName>/data/mob_xp_data.dat
Dedicated / Integrated servers
<WorldName>/data/mob_xp_data.dat
Each entry represents custom XP settings for a specific mob.
| Field | Description |
|---|---|
id |
Minecraft entity ID (e.g. minecraft:ender_dragon) |
primaryXP |
Base amount of XP dropped when the mob is killed |
secondaryXP |
Alternate XP value used for special conditions (e.g. chicken jockeys, non-first Ender Dragon kills) |
babyXP |
XP dropped when killing a baby variant of the mob |
enabled |
If true, custom XP values are used; if false, vanilla XP behavior is applied |
random |
If true, XP dropped will be a random value between 0 and the configured XP amount |
usePrimaryXPForBaby |
If true, baby mobs use primaryXP instead of babyXP |
Notes
usePrimaryXPForBaby is enabled, babyXP is ignored.enabled is false, all other settings for that mob are ignored and vanilla XP is used./mobxp <entity_id>
Displays the current custom XP settings for the specified mob.
Example: /mobxp minecraft:ender_dragon
Set primary XP
/mobxp <entity_id> primaryXP <amount>
Example: /mobxp minecraft:ender_dragon primaryXP 12000
Set secondary XP
/mobxp <entity_id> secondaryXP <amount>
Example: /mobxp minecraft:ender_dragon secondaryXP 500
Set baby mob XP
/mobxp <entity_id> babyXP <amount>
Example: /mobxp minecraft:zombie babyXP 100
Enable or disable custom XP
/mobxp <entity_id> enabled <true|false>
Example: /mobxp minecraft:sheep enabled true
Enable random XP drops
/mobxp <entity_id> random <true|false>
Example: /mobxp minecraft:warden random true
Use adult XP for baby mobs
/mobxp <entity_id> usePrimaryXPForBaby <true|false>
Example: /mobxp minecraft:zoglin usePrimaryXPForBaby true
On first run config file will be generated in config/mobxp.json.
{
"dragonXP": 15000,
"firstDragonXP": 15000,
"xp": {
"minecraft:villager": {
"enabled": true,
"experiencePoints": 1000,
"random": false
}
}
}