⚠️ RunestoneSkills is still in active development. The addon is playable, expanding, and actively being refined for long-term MMO use on Paper.
🧩 RunestoneSkills
Modular skill-system addon for RunestoneCore — built for MMO-style Paper servers (RunestoneMMO)
RunestoneSkills is the dedicated progression addon for RunestoneCore.
It adds a configurable, performance-minded skill layer for MMO-style gameplay while keeping individual professions split into clean modules instead of forcing everything into one oversized system.
Mining, Forestry, Fishing, Hunting, Farming, Cooking, Exploration, Foraging, and Smithing are all integrated through RunestoneCore’s shared skill registry, shared XP curve support, YAML-driven tuning, anti-abuse protections, and modular listener/service structure.
✅ Addon-ready
🧩 Modular per-skill design
⚡ Performance-minded
🔧 Config-driven
🛡️ Anti-abuse built in
⛏️ Oraxen + worldgen support
Join the RunestoneMMO community
Discord: https://discord.gg/BNkJDU6qE4
Website: https://runestonemmo.com
📌 Compatibility
- Platform: Paper
- Minecraft: 1.21.11
- Java: 21
- Required: RunestoneCore
- Soft-Dependencies: Oraxen
🚀 Quick Start
- Drop
RunestoneCore.jarandRunestoneSkills.jarinto/plugins/ - Start the server once to generate config and data files
- Tune settings in
plugins/RunestoneSkills/ - Restart the server ✅
Avoid
/reloadwhen possible. Prefer a full restart or the module reload command where appropriate.
🧩 What’s Included
🏗️ Skill Engine & Architecture
- Clean module-based skill architecture
- One addon plugin that registers multiple skills into RunestoneCore
- Per-skill enable/disable behavior through YAML
- Shared integration through RunestoneCore’s public API
- Enabled skills register into the shared
/skillsoutput - Designed for future expansion without rebuilding the base skill engine
📈 Progression & Leveling
- Shared profession XP curve through RunestoneCore integration
- Per-skill
skill_id,display_name, andmax_level - Consistent registration into RunestoneCore’s skills registry
- Shared add / set total XP flow for each skill through the core registry bridge
- Ready for future profession expansion and addon growth
💾 Storage & Persistence
- Persistent YAML-backed skill XP storage in
data.yml - Separate exploration discovery persistence in
exploration_data.yml - Shared placed-block anti-abuse tracking in
placed_blocks.yml - Safe load/save lifecycle on enable, disable, and reload
- Runtime-generated config/data files that preserve tuned values
🛡️ Anti-Exploit & Abuse Prevention
- Player-placed block protection where applicable
- Creative/spectator filtering
- Per-skill interval and rate-limit controls
- Natural-only checks where appropriate
- Tool validation depending on the skill
- Forestry natural tree-context validation
- Mining placed-scope controls
- Exploration anti-teleport / anti-flight / anti-glide / anti-vehicle protections
- Hunting protections against babies, named mobs, tamed mobs, and blocked spawn reasons
- Farming maturity checks and base-segment protections
- Foraging placed-aware vegetation gathering rules
🎛️ Performance & Optimization
- Avoids heavy exploration move-event spam
- Scheduled/background exploration sampling
- Rate-limited XP flow where configured
- Shared placed-block tracker with autosave support
- Skill logic remains split across dedicated listeners, configs, and XP managers
- Lightweight dependency footprint outside RunestoneCore and optional Oraxen support
🔄 Updater Support
- Built-in Hangar version checking
- Configurable startup checks
- Configurable repeating check interval
- Optional OP/admin update notifications
- Optional auto-download to Paper’s update folder for next restart
🧱 Oraxen Support
- Optional Oraxen integration for custom mining blocks
- Built-in Oraxen asset installer
- Bundled RunestoneMMO Oraxen item/block content packaged with the addon
- Server-startup installer support
- Manual asset installation command support
- Diagnostics command for Oraxen/bundled asset checks
🌍 Mining Worldgen / Oregen
- Separate
oregen_system.ymlfor mining worldgen config - Additive custom ore generation support for new chunks
- Oraxen-backed custom ore placement support
- Mining XP remains controlled through
mining.yml - Worldgen is separated from skill XP config for cleaner maintenance
🧩 Skill Modules
Each skill is configured independently under plugins/RunestoneSkills/.
⛏️ Mining
Config: mining.yml
- XP for vanilla mineable pickaxe blocks
- Per-material overrides
- Correct-tool enforcement
- Fortune and Silk Touch multiplier support
- Optional Oraxen block XP mappings
- Player-placed block denial and anti-abuse controls
- Separate additive custom ore generation support via
oregen_system.yml
🌲 Forestry
Config: forestry.yml
- XP for natural tree blocks and nether stem/hyphae families
- Axe/tool enforcement support
- Tree-context validation using nearby leaves or wart blocks
- Player-placed block denial
- Rate limiting and anti-abuse controls
- Supports overworld and nether tree families
- Includes broader natural tree handling for more complex tree structures
🎣 Fishing
Config: fishing.yml
- XP for fish, treasure, junk, and caught entities
- Rod requirement
- Optional open-water validation
- Catch interval protections and rate limits
- Per-material and per-entity XP overrides
🏹 Hunting
Config: hunting.yml
- XP for configured passive mobs
- Spawn-reason filtering
- Ignores babies, named mobs, and tamed mobs
- Per-entity XP overrides
- Rate limiting and gamemode filtering
🌾 Farming
Config: farming.yml
- XP for crops, plants, nether crops, vines, cave plants, and more
- Mature-ageable requirement support
- Base-segment protections for vertical plants
- Crop-trample protection support
- Configurable XP per material
🍲 Cooking
Config: cooking.yml
- XP for edible crafting
- XP for furnace/smoker/blast extraction
- XP for campfire cooked-item pickup
- Per-source multipliers
- Interval anti-abuse controls
- Explicit edible item XP tables
🧭 Exploration
Config: exploration.yml
- Background travel XP using scheduled sampling
- Biome discovery XP
- Landmark discovery system
- Per-world biome discovery support
- Anti-flight / anti-glide / anti-vehicle / anti-teleport-farm rules
- Auto-fill support for missing biome entries
- Giant mushroom handling tied into exploration-side config flow
🌿 Foraging
Config: foraging.yml
- Gathering XP from natural vegetation
- Mushrooms, flowers, grass, moss, lichen, vines, azalea, dripleaf, underwater plants, and more
- Right-click harvesting support for berry/vine-style sources
- Natural-only / placed-aware gathering flow
- Configurable XP per material and harvest source
⚒️ Smithing
Config: smithing.yml
- XP for crafting tools, weapons, and armor
- XP for smithing-table upgrades
- XP for smelting extraction of metal outputs
- Strict-list-only item control
- Per-source intervals and rate limits
- Full config-driven item XP tables
📂 Configuration Layout
All generated files are located in:
plugins/RunestoneSkills/config.ymlplugins/RunestoneSkills/mining.ymlplugins/RunestoneSkills/forestry.ymlplugins/RunestoneSkills/fishing.ymlplugins/RunestoneSkills/hunting.ymlplugins/RunestoneSkills/farming.ymlplugins/RunestoneSkills/cooking.ymlplugins/RunestoneSkills/exploration.ymlplugins/RunestoneSkills/foraging.ymlplugins/RunestoneSkills/smithing.ymlplugins/RunestoneSkills/oregen_system.ymlplugins/RunestoneSkills/data.ymlplugins/RunestoneSkills/exploration_data.ymlplugins/RunestoneSkills/placed_blocks.yml
What these files do
config.yml→ updater settings and addon-level runtime options<skill>.yml→ per-skill tuning, enable/disable, anti-abuse, XP values, and messagesoregen_system.yml→ additive custom ore generation configdata.yml→ persistent total XP by player and skillexploration_data.yml→ discovered landmarks and biomesplaced_blocks.yml→ shared anti-abuse placed-block tracking
Everything is YAML-driven — no recompiling required for normal tuning.
⌨️ Commands
RunestoneSkills currently provides an admin command set plus integration with RunestoneCore’s shared /skills display.
Main commands
/skills/runestoneskills reload/runestoneskills installoraxenassets/runestoneskills diag/runestoneskills orestats/rsr/rso
Command notes
/skills→ provided by RunestoneCore, but displays enabled skills registered by RunestoneSkills/runestoneskills reload→ reloads RunestoneSkills configs, listeners, and services/runestoneskills installoraxenassets→ installs bundled Oraxen assets/runestoneskills diag→ runs diagnostics for bundled/Oraxen content paths/runestoneskills orestats→ admin-facing oregen status utility path/rsr→ shortcut alias for reload/rso→ shortcut alias for Oraxen asset install
🔐 Permissions
Permission: runestone.skills.admin
- Default: op
- Grants access to:
/runestoneskills reload/runestoneskills installoraxenassets/runestoneskills diag/runestoneskills orestats/rsr/rso
Player-facing
/skillsvisibility and related display permissions are handled through RunestoneCore.
🔌 Integrations
RunestoneCore (required)
- Skills registry integration
- Shared profession XP curve
- Shared API contracts
- Shared
/skillsoutput
Oraxen (softdepend)
- Optional mining block XP mappings
- Bundled asset installer support
- Custom ore/block content support
✅ Built for long-term expansion
RunestoneSkills adds a scalable progression layer on top of RunestoneCore — new professions, worldgen-backed gathering content, custom Oraxen resources, and future progression systems can be added without reinventing the foundation.
🧠 Configuration Philosophy
RunestoneSkills is designed to be:
- config-first
- module-gated
- safe by default
- anti-abuse aware
- performance-conscious
- built for long-term expansion
📚 Documentation
Separate docs in the module include:
- Architecture
- Configuration
- Building
- API
- Forestry / Tree Capitator validation notes
🧯 Support & Reporting
If something looks off, the most helpful info is:
- server version (
/version) - RunestoneCore + RunestoneSkills versions
- the relevant skill YAML section
- the exact console stacktrace (if any)
- clear reproduction steps
Information
| Category | Gameplay |
|---|---|
| Published on | March 4, 2026 |
| License | Proprietary License |
| Downloads | 3 |
| Stars | 0 |
| Watchers | 0 |