
The GUI Actions & Objectives Update
release9 апреля 2026 г.Changes in Quest Objectives:
INTERACT_BLOCK- Now counts only 1 time per block. If it's the same block that was already counted - it simply won't count, unless the player has thequestborn.antiabuse.bypasspermission to bypass this.HARVEST_CROP- Now correctly counts the harvesting of nether wart.STRIP_LOG- Fixed false progress counting when a shield is in the off-hand and an axe in the main hand.FILL_FUEL- Now counts the amount of item deposited as progress, not the number of times.TRAVEL_DISTANCE- Now does not count the distance traveled along the Y-axis.SPRINT_DISTANCE- Now does not count the distance traveled along the Y-axis.CONDUIT_ACTIVATE- Fixed constant progress counting when the player activated it only 1 time.REACH_LOCATION- Now functional (previously it was not working at all).ENTER_REGION- Now functional (previously it was not working at all).LEAVE_REGION- Now functional (previously it was not working at all).
New Quest Objectives:
BURN_FUEL- Counts progress when the player burns the specified items in different furnaces.VILLAGER_BUY_ITEM- Counts progress when the player buys the specified item from a Villager.VILLAGER_SELL_ITEM- Counts progress when the player sells the specified item to a Villager.REACH_BIOME- Counts progress when the player visits the specified biome.
Removed Quest Objectives:
TELEPORT- Fully removed. (If you need the player to teleport to a specified world, useCHANGE_DIMENSION).TRADE_WITH_VILLAGER- Fully removed. (Replaced by 2 new types:VILLAGER_BUY_ITEMandVILLAGER_SELL_ITEM).
menus.yml Update: Actions are now supported when clicking on an item. Example:
menus:
main:
items:
close_btn:
slot: 44
material: IRON_DOOR
name: "<#ff8888>✖ Close Menu"
lore:
- "<#cccccc>Click to exit"
- "<#cccccc>main menu"
actions:
- "[close]"
website_btn:
slot: 36
material: COMPASS
name: "<#aaffaa>🌐 Our Website"
lore:
- "<#cccccc>Discover news and"
- "<#cccccc>updates on our site!"
- ""
- "<#ffffff>» Click to open"
actions:
- "[close]"
- "[player] website"
Other Minor Updates:
- The progress bar in ActionBar / BossBar / Scoreboard will momentarily fill completely when the player receives the final progress, before the specified effects are played.
- When typing commands, commands starting with
questborn:will no longer be highlighted. - Fixed an issue where the number of pages in the GUI could sometimes show more than there actually were.
Localization Update:
- Added key
gui.details.objective.villager-sell-item - Added key
gui.details.objective.villager-buy-item - Added key
gui.details.objective.reach-biome - Added key
quest.icons.villager-sell-item - Added key
quest.icons.villager-buy-item - Added key
quest.icons.reach-biome - Removed key
quest.icons.teleport - Removed key
quest.icons.trade-with-villager - Removed key
gui.details.objective.trade-with-villager - Removed key
gui.details.objective.teleport - Removed keys
gui.details.objective.cause.*
Enjoy using the update!
ROTATION Engine & Global Database Update
release12 марта 2026 г.🚨 Make a full backup of the Questborn plugin folder (especially player data and configs) before updating!
The New ROTATION Engine Introducing the completely new ROTATION engine! It is perfect for creating daily, weekly, or other cyclical quests:
- Quest Pools: Automatic and randomized quest generation from pre-configured pools.
- Reset Timers: Flexible configuration for progress resets (daily, every few days, or at a specific time).
- Individual Generation: You can now configure it so every player gets their own unique set of quests from a pool, or keep it the same for everyone.
- GUI Display: Full support for configuring specific slots where selected quests will appear for each type (rotation-slots).
- Built-in Quests Updated: The default daily and weekly quests have been completely rewritten to utilize the new ROTATION engine features!
This is how it looks now (daily.yml):
# Unique identifier for this quest type
id: daily
# Directory where quests of this type are stored
folder: quests/daily
# Display name in the GUI
display-name: "<#fffb99>☀ Daily Quests"
# Optional: Overrides the default GUI title for this quest type.
# gui-type-title: "<#fffb99>☀ Daily Quests &8| &f{page}/{total}"
# Optional: Overrides the default quest details GUI title.
# gui-quest-title: "<#fffb99>☀ Daily - {quest}"
# Optional: Overrides the default item transfer GUI title.
# gui-transfer-title: "<#fffb99>☀ Transfer - {quest}"
# Lore displayed in the GUI
lore:
- "<#cccccc>Fresh tasks available every day."
- "<#cccccc>Complete them to earn"
- "<#cccccc>useful rewards."
- ""
- "<#fffb99>Today's Progress:"
- " <#a7ff99>✔ <#ffffff>{cooldown}/{total} <#cccccc>completed"
- ""
- "<#7dd3ff>Click to open"
# Icon material in the GUI
material: CREEPER_SPAWN_EGG
# Slot position in the Main Menu GUI
slot: 20
# Quest engine operation mode
# Choose how quests in this category behave:
# - DEFAULT: All quests are always available, handled individually.
# - CHAIN: Players unlock the next quest only after finishing the previous one.
# - ROTATION: Players get N random quests that reset periodically.
engine: ROTATION
# Number of quests from each pool to include in the rotation
# If not specified, a 'default' pool is created matching the number of rotation-slots
rotation-pools:
common: 3
rare: 2
# GUI slots where assigned quests will appear
rotation-slots:
- 20
- 21
- 22
- 23
- 24
# Reset every 1 day
reset-period: "1d"
# Optional: Set a specific time of day for global reset
reset-time: "00:00"
# Optional: 1=Mon, 2=Tue...7=Sun. Anchor day for global reset.
# reset-anchor-day: 1
# Optional: Requirements to unlock this quest type
# requirements:
# permission: "questborn.type.daily"
# quest-completed: "starter_chain_01_wood_call"
# type-completed: "starter_chain"
# Optional: Description of requirements displayed in GUI when locked
# requirements-lore:
# - "<#ff5555>Requires completion of:"
# - " <#ff5555>• <#ffffff>Starter Chain"
# Set to false to completely disable this quest type (it won't be loaded by the plugin)
enabled: true
Global Database Update The progress storage system has been written entirely from scratch to provide better performance and stability.
- Supported Databases: The plugin now supports H2, SQLite, MySQL, PostgreSQL, MongoDB, and YAML.
- New Standard: The default database type is now H2. This guarantees much faster, more stable, and reliable saves compared to regular
.ymlfiles. - Automatic Migration: Don't worry about your old data! On the first launch of version 1.5.0, your old
playerdata.ymlfile will be automatically recognized, and all player data will be seamlessly migrated to the new H2 format.
This is how it looks now (config.yml):
# ------------------------------
# STORAGE
# ------------------------------
storage:
# Storage backend to use for player data.
# Options:
# H2 - H2 file-based database (fast alternative to SQLite, recommended default)
# YAML - Individual YAML files per player (legacy)
# MYSQL - MySQL / MariaDB database (recommended for networks with multiple servers)
# POSTGRESQL - PostgreSQL database (alternative to MySQL)
# SQLITE - SQLite file-based database (good middle-ground for single servers)
# MONGODB - MongoDB via official driver (requires internet or local server)
type: H2
# MySQL / MariaDB settings (used only when type: mysql)
mysql:
host: localhost
port: 3306
database: questborn
username: root
password: ""
# Connection pool size
pool-size: 5
# Connection timeout in milliseconds
connection-timeout: 30000
# Use SSL for connection
use-ssl: false
# PostgreSQL settings (used only when type: postgresql)
postgresql:
host: localhost
port: 5432
database: questborn
username: postgres
password: ""
# Connection pool size
pool-size: 5
# Use SSL for connection
use-ssl: false
# MongoDB settings (used only when type: mongodb)
mongodb:
uri: "mongodb://localhost:27017"
database: questborn
collection: player_data
# Timeouts in milliseconds
connect-timeout: 5000
read-timeout: 5000
# SQLite settings (used only when type: sqlite)
# The database file is located in the plugin's data folder.
sqlite:
file: questborn.db
Enjoy using the update!
Display & Integrations
release22 февраля 2026 г.IMPORTANT - BEFORE UPDATING:
- Make a full backup of the Questborn plugin folder (especially configs, player progress data, and player files) before updating!
- After the update, delete the old config.yml file — the plugin will automatically create a new one with all the latest settings.
- The old top.yml file is no longer used and can be completely deleted — everything has been moved to the new menus.yml.
New features and changes:
📦 New integration with ItemsAdder Added the ability to use custom ItemsAdder items in quests. Usage example:
objectives: type: ITEM_FISH amount: 6 target-materials: - "itemsadder:iasurvival:blue_parrotfish"
🔗 Full integration with PlaceholderAPI Added complete PlaceholderAPI support. Now you can display quest information in holograms, chat, tab list, Scoreboard, etc. Available placeholders:
%questborn_quests_completed% - total number of quests completed by the player
%questborn_status_
🎯 Quest display (Scoreboard & BossBar) Added convenient display of the current quest on screen via Scoreboard and BossBar. Fully configurable in config.yml. Configuration example:
bossbar: enabled: true title: "&e{quest_name} &7[{progress}/{target}]" color: AUTO mode: "STATIC" style: SOLID scoreboard: enabled: true lines: - "&fQuest:" - "{quest_name}" - "{objective_details}"
https://i.ibb.co/27hCNJ4h/Scoreboard-1.png https://i.ibb.co/DD6qf4FZ/Boss-Bar-1.png
🎨 New menu configuration system (menus.yml) The old top.yml file has been merged into a single menus.yml. Now you can freely customize the GUI size and exact element placement in each menu. Example for Top menu:
menus: top: rows: 5 slots: players: - "10-16" - "19-25" - "28-34" mask: - "0-9" - "17, 18, 26, 27, 35, 36" - "36-44" rank-styles: 1: prefix: "<#FFAA00>♛ " footer: "<#FFAA00>🏆 TOP 1 LEADER 🏆"
👤 Integration with SkinsRestorer Added small integration to improve skin display in the player leaderboard.
⚙️ Technical improvements
- Updated and optimized configuration structure
- Minor code refactoring and performance optimization
Enjoy using the update!
Small fix
release16 февраля 2026 г.Updated library that caused ActionBar to not work on version 1.21.11
NPC Integration & Versions Support
release16 февраля 2026 г.!!! IMPORTANT NOTE !!! Before using this version of the plugin, make a backup of your plugin data. Also, delete the existing configuration file, localization files, and effect presets so the plugin can generate fresh, updated versions of these files.
Update Log
New NPC Integration (Citizens & FancyNPCs)
Added full support for NPCs from the Citizens and FancyNPCs plugins!
- Players can now accept and complete quests by interacting with NPCs.
- An indicator above the NPC's head displays the status of available quests.
New supported versions
- 1.16
- 1.17
- 1.18
- 1.19
- 1.20
New settings in config.yml
Integration
integration:
enabled: false # Enable or disable NPC integration
npc-plugin: FANCYNPCS # Choose plugin: CITIZENS or FANCYNPCS
mode: MIXED # Modes:
# MIXED – both commands and NPCs work
# NPC_ONLY – only NPCs (commands disabled)
# MENU_ONLY – only commands (NPCs disabled)
interaction-button: RIGHT # Button used to interact with NPC (LEFT / RIGHT)
Indicators above NPC head
npc-indicators:
enabled: true
view-distance: 20.0
offset-y: 0.6
icons:
available: "&6&l!"
in-progress: "&a&l▣"
completed: "<#00ff94>&l✔"
cooldown: "&b⏳"
locked: "&c&l"
reward-available: "<#00ff66>&l"
Other new settings
gameplay:
allowed-gamemodes: # Game modes allowed for quest progression
- SURVIVAL
- ADVENTURE
chat:
show-details: true # Show detailed info (objectives + clickable link) in activation/stage messages
rewards:
# If true, rewards are automatically given upon quest completion (bypassing NPC claim).
# If false, player must claim rewards (via NPC interaction or GUI).
auto-claim: false
New commands
-
/quest npc link
– link a quest type to an NPC Examples: • FancyNPCs: /quest npc link daily joe • Citizens: /quest npc link daily 1 -
/quest npc unlink
– unlink a quest type from an NPC Examples: • FancyNPCs: /quest npc unlink daily joe • Citizens: /quest npc unlink daily 1 -
/quest details – open detailed view of the currently active quest
Note: Before linking an NPC, create it in Citizens or FancyNPCs and note its ID (for Citizens – numeric ID, for FancyNPCs – name).
Improved quest details menu The quest details interface has been completely redesigned – all elements are now arranged conveniently, beautifully, and informatively.
Updated documentation Documentation has been updated to reflect the current plugin version: https://questborn.gitbook.io/docs/
Thank you for using QuestBorn!