Skill addons¶
Status: In Progress — all skill addons shipped. See per-skill status notes below.
Each skill is its own addon. They all follow the same shape — described once here, with skill-specific deltas in each section.
Common shape¶
Every skill addon ships:
- A
config.ymlmatching the skills framework schema (max level, curve, XP sources, milestones, implicit-per-level) - Listeners that turn in-game events into
SkillsService.awardXp(player, skillId, amount)calls - A reload command and an admin "give content" command
- Optional content folders (e.g.,
recipes/,ores/,crops/)
Common commands:
| Command | Permission |
|---|---|
/<skill> reload |
rpg.<skill>.reload |
/<skill> give <item> |
rpg.<skill>.admin.give |
Combat (rpg-combat)¶
Status: In Progress — XP from
PostDamageEvent(proportional to damage) and kill XP fromEntityDeathEventboth live.COMBAT_WISDOMscales both. Per-mob kill-XP override table in config.
XP sources¶
Damage XP: Proportional to HP dealt. xp-per-damage rate; ability-source damage gets a separate combat-xp-multiplier-from-abilities multiplier. The per-ability CombatXpMultiplier (in ability YAML) layers on top of that.
Kill XP: Flat award when the player lands the killing blow. default-kill-xp fallback; override per mob type (vanilla name or RPG mob id) in xp-per-kill.
# rpg-combat/config.yml
xp-per-damage: 1.0
combat-xp-multiplier-from-abilities: 1.0
victim-whitelist: ["any"] # entity types that award XP; ["any"] = all LivingEntities
default-kill-xp: 10
xp-per-kill:
{}
# zombie: 15
# crypt_guardian: 100 # RPG mob id override
Stats milestones (defaults)¶
crit_chance +1 every 5 levels, strength +2 every 10 levels, max_health +5 every 25 levels. Configurable.
Mining (rpg-mining)¶
Status: In Progress — Mining XP awarded on
RpgBlockBreakEvent. XP per block-id configurable inrpg-mining/config.yml, with adefault-xpfallback.MINING_WISDOMscales the award.MINING_SPEEDhold-to-break is live (BlockBreakHandler ticks at HP/sec).MINING_FORTUNEdrop multiplier live (applied inBlockBreakHandler.rollDrops).
Content¶
- Custom ores defined as custom blocks with
RequiredToolType: pickaxe - Pickaxe items in
items/withMINING_SPEED,MINING_FORTUNE,BREAKING_POWERstats
XP source¶
BlockBreakEvent for tagged custom blocks; XP per ore type configurable.
Milestones (defaults)¶
Per-level: mining_speed +0.5, mining_fortune +0.1. Tier breakpoints unlock recipes (e.g., level 10 unlocks iron_pickaxe recipe).
Foraging (rpg-foraging)¶
Status: In Progress — Foraging XP awarded on
BlockBreakEventfor log/stem materials (any*_logor*_stemplus explicitly configured block IDs).FORAGING_WISDOMscales XP.FORAGING_FORTUNEdrop multiplier live viaBlockDropItemEvent.FORAGING_SPEEDand custom tree content arrive with the foraging block content slice.
Content¶
- Custom logs / trees as custom blocks (
RequiredToolType: axe) - Axe items with
FORAGING_SPEED,FORAGING_FORTUNE
XP source¶
Custom-block break for axe-target blocks.
Farming (rpg-farming)¶
Status: In Progress — Farming XP awarded on
BlockBreakEventfor mature Ageable crops. Default config covers wheat/carrots/potatoes/beetroots/nether_wart/cocoa/pumpkin/melon/sugar_cane/bamboo. Scaled byFARMING_WISDOM.FARMING_FORTUNEdrop multiplier live viaBlockDropItemEvent(same formula as mining/foraging; only triggers at max age).
Content¶
- Custom crops as custom blocks (vanilla growth cancelled; we tick growth ourselves so we can apply boosts)
- Hoe items with
FARMING_FORTUNE
XP source¶
Crop harvest (custom-block break of mature crops).
Note¶
No FARMING_SPEED stat by design — farming uses FARMING_FORTUNE only. Crop growth tick rate is set per-crop in YAML and globally scalable in rpg-farming/config.yml.
Fishing (rpg-fishing)¶
See Fishing for the full page.
XP on successful PlayerFishEvent catch, scaled by FISHING_WISDOM. Stats: FISHING_SPEED, FISHING_FORTUNE, SEA_CREATURE_CHANCE. Sea creatures spawn mobs at the float location instead of a fish drop.
Cooking (rpg-cooking)¶
See Cooking for the full page.
XP on cooking-station recipe completion, scaled by COOKING_WISDOM. Cooking station is a custom block (StationType: cooking). Outputs are CONSUMABLE items with stat buffs and status effects.
Alchemy (rpg-alchemy)¶
See Alchemy for the full page.
XP on brewing-station recipe completion, scaled by ALCHEMY_WISDOM. Brewing station is a custom block (StationType: brewing). Outputs are potion-style CONSUMABLE items that apply status effects.