⚔️ Features (Complete)
RunestoneCore is the foundation plugin for RunestoneMMO — a modular MMO core for Paper 1.21.11 servers that replaces stacks of disconnected plugins with one cohesive, server-ready system. Subsystems are config-gated, share a unified data model, and are designed to work together out of the box.
✅ Paper 1.21.11
✅ Java 21
✅ Subsystem architecture (enable only what you want)
✅ Centralized TaskRegistry + ListenerRegistry for clean startup/shutdown
🧩 Core Engine & Operations
- Deterministic subsystem boot order (clean init + clean shutdown)
- Central task scheduler (TaskRegistry) with automatic cancellation on shutdown
- Central listener manager (ListenerRegistry) to prevent event leaks
- Performance monitor hooks and optional periodic reporting
- Data maintenance:
- autosave / flush routines
- persistence-safe subsystem save flow
- configurable logging/report controls for cleaner production console output
- Messaging utilities and standardized formatting (
messages.ymlsupport) - Context gating layer for restricting actions/commands by player/server state (configurable)
💾 PlayerData & Persistence
- Persistent player profile storage used across core systems
- Shared player state container for economy, resources, combat XP, rewards, moderation state, homes, and more
- Runtime save/load flow built for safer persistence across restarts and jar updates
- Legacy-safe migration direction for expanding stored data without wiping existing player progress
💰 Multi-Currency Economy + Vault Provider
- Fully integrated Vault economy provider (RunestoneCore can be the server’s default economy)
- Multiple currencies supported
- Ledger system (per-player transaction history)
- Treasury system + configurable tax rules
- Bank accounts + bank interest task (configurable interval)
- Exchange rates (configurable)
- Currency persistence designed to survive normal restarts and plugin jar replacements
Commands:/balance, /bal, /baltop, /pay, /eco, /bank, /exchange, /ledger
🎁 Daily Rewards
- Calendar-day daily rewards with timezone support
- Streak + cycle logic
- Loot-table driven rewards (configurable)
- MMO-friendly progression-ready reward structure
Commands:/daily, /rdaily
⚔️ Combat, Progression & Attributes
- Combat XP listener + per-entity rewards (configurable)
- Combat scaling rules (configurable)
- Attribute system for players and mobs
- Configurable cleanup/save behavior
- MobHealth bossbar support
Commands:/skills (core skill/stat display hooks)
✨ Resources (Mana & Stamina) in development
- Mana & stamina resource pools
- Regeneration rules + delays after spending (configurable)
- Ability/teleport cost hooks (resource-based)
- Resource HUD support
Commands:/mana, /stamina, /hudresources
💬 Chat Channels & Communication
- Multi-channel chat system with configurable routing
- Global chat as the primary main server chat
- Local, party, and staff channel support
- Channel switching controls for outgoing message mode
- Global visibility direction so server-wide chat remains the main communication layer
- Broadcast/announcement support with chat + visible on-screen delivery support
Commands:/channel, /rchannel, /broadcast
🧭 Teleportation Suite
- TPA system (request, accept, deny, cancel, toggle)
- Teleport cost rules (mana-based costs supported)
- Spawn / Back / Home subsystems
- Dev/staff utility teleport support
- One-player sleep support (configurable)
Commands:/tpa, /tpahere, /tpaccept, /tpdeny, /tpacancel, /tptoggle, /spawn, /back, /sethome, /home, /delhome, /devflat
🧱 Land Claims (v1)
- Personal claims (owner UUID) + trusted list
- Square/rectangle claims (POLYGON intentionally rejected for now)
- Selection tool +
/claim createwith optional confirm/cancel flow - Claim protections (vertical column behavior: bedrock → world ceiling within X/Z bounds)
- Flags: break / place / container / redstone / explosions / pvp / mob_grief / fire_spread
- Optional integration:
/homecan require destination be inside your own claim - Optional claim costs via core economy (Vault supported)
Commands:/claim (alias: /rclaim)/claim create | confirm | cancel | delete | info | list/claim trust add/remove/list/claim flag list/claim flag set <flag> <true|false>
🏘️ Towns System
- Unified town system for player settlements and territory management
- Clean player-facing town command direction
- Town membership, invites, ranks, treasury hooks, and claim integration
- Designed for future expansion without fragmenting into separate village/town systems
Commands:/town/town create | invite | accept | leave | kick | promote | demote | info | claim | unclaim | treasury
👥 Parties / Teams
- Unified party/team direction for grouping players together
- Shared membership flow for communication and team play
- Party chat integration tied into the channel system
- Built to support MMO grouping without splitting chat and team membership into separate systems
Commands:/party (and/or configured team aliases)/channel party
🖥️ UI & Overlays
- Actionbar UI utilities
- Bossbar UI utilities
- Resource HUD overlays
- MobHealth bossbar
- Scoreboard system:
- multiple layouts
- automatic updates
- configurable reporting/debug behavior
- performance-conscious update handling
- Hologram engine (floating labels + leaderboard-style support)
Commands:/scoreboard, /rsb toggle, /holo
📦 Items & Drop Systems
- Items subsystem (custom item definitions, config-driven)
- Drop tables subsystem (config-driven)
- Registry-driven content support for future expansion
- Hooks for future professions/crafting/world systems
Commands:/item, /drops
🏪 Player Shops, Auction House & Market
- Player-owned shops with GUI management + editor tools
- Market dashboard support
- Auction house with listings + expiry task
- Persistent data storage
- Safety handling for invalid config/data states
Commands:/shop, /ah, /auction, /market
If market/shop data is invalid, the affected subsystem can disable itself until corrected (safety feature).
🌍 World Rules & Dev World Support
- Region/world rule framework (configurable)
- Listener-driven enforcement
- Dev/staff utility world support
- Devflat support with automatic creative-mode handling
- Fire spread control for dev worlds
Commands:/worldrule, /devflat
🛡️ Moderation & Admin Tools
- Reports system
- Jail system
- Vanish
- God mode
- Maintenance mode
- Chat control tools
- Broadcast tools
- Freeze / unfreeze
- Inventory viewing (invsee)
- Teleportation tools + moderation command group
- Staff chat support
Commands:/chatcontrol, /maintenance, /broadcast, /freeze, /unfreeze, /jail, /pardon, /invsee, /vanish, /god, /tp, /mod
🧰 Utility Commands
/playtime/perms/runestone(core admin command; includes reload)/channel,/rchannel
🟢 Designed for Stability
RunestoneCore initializes all enabled subsystems automatically and reports their status on startup. If the console prints:
- “All subsystems initialized successfully”
- “RunestoneCore initialized successfully!”
…then the engine is fully operational.