KoraQuest
KoraQuest is a modern and highly configurable quest system designed for Paper and Folia servers.Create Daily, Weekly, Monthly and Seasonal quests with advanced objectives, secure reward delivery, anti-exploit protection, Java and Bedrock interfaces, PlaceholderAPI support and powerful administration tools.
KoraQuest is suitable for Survival, Skyblock, Prison, RPG, SMP and multi-server networks.
Open-Source and API: https://github.com/Ipsecuz/KoraQuest
Wiki: https://ipsecuz.github.io/KoraQuest-Wiki/
Key Features
- Daily, Weekly, Monthly and Seasonal quest cycles
- Real-time reset schedules with timezone support
- Up to 15 Daily quests and 10 quests for other cycles by default
- More than 65 preconfigured quests
- Automatic GUI pagination
- Native Java inventory interface
- Native Bedrock forms through Floodgate and Cumulus
- Quest reroll system
- Daily streak and Perfect Week tracking
- Seasonal experience and levels
- Safe and persistent reward delivery
- SQLite, MySQL and MariaDB support
- Paper and Folia compatibility
- PlaceholderAPI expansion
- In-game quest editor
- Advanced developer API
Advanced Quest Objectives
KoraQuest supports many different objective types, including:- Block breaking and placing
- Mob and player killing
- Crafting and smelting
- Fishing
- Walking, sprinting, swimming and flying
- Elytra gliding
- Jumping
- Chatting and executing commands
- Player login
- Item pickup, drop and submission
- Block and entity interaction
- Damage dealt and damage taken
- Healing and player deaths
- Visiting locations, worlds and regions
- Experience and level gain
- Potion brewing
- Bucket filling
- Villager trading
- Repairing, anvils, smithing and stonecutting
- Chest looting
- Economy and external plugin objectives
- Required world
- Minimum and maximum Y level
- Required weapon
- Mob spawn reason
- Critical hit requirement
- WorldGuard region
- Island or plot ownership
- Custom item ID
- Custom entity ID
Anti-Exploit Protection
KoraQuest includes several systems designed to prevent players from farming progress unfairly.- Tracks blocks placed by players
- Prevents the same block from counting for both PLACE and BREAK quests
- Optional Creative mode progress blocking
- Configurable Silk Touch handling
- Mob spawn-reason filtering
- Custom-named mob filtering
- MythicMobs support
- Hooked entities do not count as fishing progress
- World blacklist and whitelist
- Gamemode whitelist
- WorldGuard region validation
- SuperiorSkyblock2 island validation
- BentoBox island validation
- PlotSquared plot validation
- Permission-based bypasses
Safe Reward Delivery
Quest rewards are stored before they are executed.A quest is only marked as completed after every reward has been delivered successfully.
- Persistent pending reward queue
- Unique reward claim IDs
- Duplicate reward protection
- Command execution checkpoints
- Automatic retry support
- Retry when the player reconnects
- Administrator reward retry command
- Protection against crashes and incomplete reward delivery
Multi-Cycle Quest System
Players can progress through several quest cycles at the same time.Daily Quests
Short objectives that reset every day.Weekly Quests
Larger objectives designed for long-term weekly progress.Monthly Quests
High-value challenges with larger requirements and rewards.Seasonal Quests
Event-based quests with seasonal experience and progression.Each cycle has its own:
- Quest pool
- Progress
- Reset schedule
- Permission
- Active quest limit
- Rewards
- GUI tab
- Remaining-time display
Modern Quest Interface
KoraQuest includes a clean and modern six-row inventory interface.- Cycle tabs are displayed on the first row
- Quest items are displayed only on rows three and four
- Up to 14 quests are displayed per page
- Additional pages are created automatically
- Daily, Weekly, Monthly and Seasonal tabs
- Available, Active, Ready and Completed filters
- Difficulty and progress sorting
- Quest search system
- Claim All button
- Quest reroll button
- Item submission support
- Confirmation before cancelling quests
- Individual remaining-time display for every quest cycle
- Configurable titles, icons, lore, sounds and effects
Commands
KoraQuest provides permission-based commands for players and administrators.Player Commands
/quest/quest help
/quest <daily|weekly|monthly|seasonal>
/quest active [cycle]
/quest search [cycle] <keyword>
/quest accept <quest>
/quest cancel <quest>
/quest claim <quest>
/quest reroll <quest>
/quest submit <quest> [amount]
/quest version
Players only see commands they have permission to use.
Administrator Commands
/quest admin/quest admin reload
/quest admin reset <cycle>
/quest admin progress <player> <quest> <amount>
/quest admin retryrewards [player]
/quest admin create <quest>
/quest admin validate [quest]
/quest admin clone <source> <new-id>
/quest admin preview <quest>
/quest admin testreward <player> <quest>
/quest editor
/quest update
Administrators can view the complete command list and command descriptions.
Native Bedrock Support
Bedrock players can automatically receive native Floodgate and Cumulus forms instead of Java inventory menus.- No player-head dependency
- Clear Accept, Claim, Cancel and Reroll buttons
- Text-based progress bars
- Shared quest configuration for Java and Bedrock
- Automatic Java GUI fallback when Floodgate is unavailable
Reroll System
Players can replace unwanted quests with another quest from the same cycle.- Free rerolls per cycle
- Permission-based additional rerolls
- Vault economy support
- PlayerPoints support
- Command-based currencies
- Quest reroll blacklist
- Prevents immediately receiving the same quest again
Streak and Seasonal Progression
Encourage players to return regularly.- Daily completion streaks
- Three-day, seven-day and thirty-day milestones
- Perfect Week tracking
- Catch-up tokens
- Seasonal experience
- Seasonal levels
- Configurable seasonal rewards
Storage and Network Support
KoraQuest supports:- SQLite
- MySQL
- MariaDB
- HikariCP connection pooling
- Shared quest cycles
- Cross-server progress
- Distributed cycle reset locking
- Optional Redis Pub/Sub synchronization
- Sequential player saving
- Asynchronous lazy loading
- Automatic cache unloading
Supported Integrations
KoraQuest provides integration adapters for:- PlaceholderAPI
- Vault
- PlayerPoints
- WorldGuard
- MythicMobs
- Citizens
- SuperiorSkyblock2
- BentoBox
- PlotSquared
- mcMMO
- Jobs Reborn
- ItemsAdder
- Oraxen
- Nexo
- MMOItems
- ExecutableItems
PlaceholderAPI
Examples:%koraquest_active_count%
%koraquest_completed_daily%
%koraquest_daily_total%
%koraquest_daily_remaining%
%koraquest_reset_time%
%koraquest_streak%
%koraquest_season_level%
%koraquest_quest_<id>_progress%
%koraquest_quest_<id>_required%
%koraquest_quest_<id>_percent%
%koraquest_quest_<id>_status%
Placeholders from other plugins can also be used inside:
- Quest titles
- Quest lore
- Requirements
- Reward commands
- GUI text
- Broadcast messages
Commands
Player Commands
/quest/quest help
/quest <daily|weekly|monthly|seasonal>
/quest active [cycle]
/quest search [cycle] <keyword>
/quest accept <quest>
/quest cancel <quest>
/quest claim <quest>
/quest reroll <quest>
/quest submit <quest> [amount]
/quest version
Players only see commands they have permission to use.
Administrator Commands
/quest admin/quest admin reload
/quest admin reset <cycle>
/quest admin progress <player> <quest> <amount>
/quest admin retryrewards [player]
/quest admin create <quest>
/quest admin validate [quest]
/quest admin clone <source> <new-id>
/quest admin preview <quest>
/quest admin testreward <player> <quest>
/quest editor
/quest update
Permissions
koraquest.command.openkoraquest.command.accept
koraquest.command.cancel
koraquest.command.claim
koraquest.command.reroll
koraquest.command.submit
koraquest.admin.reload
koraquest.admin.reset
koraquest.admin.editor
koraquest.admin.progress
koraquest.admin.rewardretry
koraquest.limit.3
koraquest.limit.5
koraquest.reroll.2
koraquest.booster.25
koraquest.bypass.world
koraquest.bypass.antiexploit
koraquest.update-notify
Requirements
- Java 21
- Paper or Folia
- A supported modern Minecraft version
Optional Dependencies
- PlaceholderAPI
- Vault
- PlayerPoints
- Floodgate
- WorldGuard
- MythicMobs
- SuperiorSkyblock2
- BentoBox
- PlotSquared
- Redis
Update Checker
KoraQuest includes an update checker connected to the official resource page.Administrators with the update notification permission receive a clear and clickable message when a newer version is available.
The update checker only reports available versions. It does not automatically download or replace the plugin.
Developer API
KoraQuest provides an independent API artifact and quest lifecycle events.Available events include:
- QuestAcceptEvent
- QuestCancelEvent
- QuestProgressEvent
- QuestReadyEvent
- QuestCompleteEvent
- QuestRewardEvent
- QuestCycleResetEvent
- QuestRerollEvent
Support
Found a bug or have a feature suggestion?Please use the project issue tracker or discussion page and include:
- Server software and version
- KoraQuest version
- Installed integrations
- Relevant console errors
- Steps required to reproduce the issue
