config.yml
(Questborn/config.yml)
# ------------------------------
# LANGUAGE & SYSTEM
# ------------------------------
# Available languages: en_us, uk_ua, de_de, es_es, fr_fr, pt_br, pl_pl, ru_ru, kk_kz, tr_tr
language: en_us
# Update Checker
# Checks for updates on plugin startup
update-check:
notify-console: true
notify-admin: true
# ------------------------------
# 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
# ------------------------------
# GAMEPLAY & MECHANICS
# ------------------------------
gameplay:
# Allowed game modes for quest progress
# Options: SURVIVAL, CREATIVE, ADVENTURE, SPECTATOR
allowed-gamemodes:
- SURVIVAL
- ADVENTURE
activation:
# BLOCK - Prevent new quest activation while another quest is active
# REPLACE - Automatically cancel current quest and activate new one
# CHANGE / CONFIRM - Request player confirmation before replacing current quest
conflict-mode: "CHANGE"
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
# ------------------------------
# INTEGRATIONS
# ------------------------------
integration:
# NPC Integration Settings
npc:
enabled: false
# Which NPC plugin to use?
# Options: CITIZENS, FANCYNPCS
plugin: FANCYNPCS
# Mode of interaction: MIXED, NPC_ONLY, MENU_ONLY
mode: MIXED
# Button to interact with NPC: RIGHT, LEFT, ANY
interaction-button: RIGHT
# ItemsAdder Integration (Custom Items & Blocks)
itemsadder:
enabled: false
# SkinsRestorer Integration (Skins in GUI)
skinsrestorer:
enabled: true
# Vault Integration (Economy Rewards & Requirements)
vault:
enabled: true
# WorldGuard Integration (Region Requirements)
worldguard:
enabled: false
# PlaceholderAPI Integration (Placeholders for other plugins)
placeholderapi:
enabled: true
# ------------------------------
# VISUALS - WORLD
# ------------------------------
npc-indicators:
enabled: true
view-distance: 20.0 # Distance to see indicators
offset-y: 0.6 # Height above NPC head
icons:
available: "&6&l!"
in-progress: "&a&l▣"
completed: "<#00ff94>&l✔"
cooldown: "&b⏳"
locked: "&c&l🔒"
reward-available: "<#00ff66>&l🎁"
# ------------------------------
# VISUALS - HUD
# ------------------------------
# Top System Settings
top:
# Update interval for the leaderboard cache
# In ticks (20 ticks = 1 second)
# Default: 6000 (5 minutes)
update-interval-ticks: 6000
# Progress Bar Settings (Used by BossBar, Scoreboard, ActionBar)
progress-bar:
length: 10
filled-symbol: "■"
current-symbol: "■"
empty-symbol: "□"
filled-color: "&a"
current-color: "&e"
empty-color: "&7"
# BossBar Settings
bossbar:
enabled: true
# Title format
# Supports placeholders: {quest_name}, {progress}, {target}, {stage}, {total_stages}
title: "&e{quest_name} &7[{progress}/{target}]"
# BossBar style
# Colors: BLUE, GREEN, PINK, PURPLE, RED, WHITE, YELLOW, AUTO
# AUTO - Color is determined by the quest name's formatting
color: AUTO
# Display modes:
# ON_PROGRESS_CHANGE - Show only when quest progress changes
# STATIC - Display continuously during active quest
mode: "STATIC"
# Update interval for STATIC mode
# In ticks (20 ticks = 1 second)
update-interval-ticks: 20
# Styles: SOLID, SEGMENTED_6, SEGMENTED_10, SEGMENTED_12, SEGMENTED_20
style: SOLID
# Scoreboard Settings
scoreboard:
enabled: true
# Display modes:
# ON_PROGRESS_CHANGE - Show only when quest progress changes
# STATIC - Display continuously during active quest
mode: "STATIC"
# Whether scores (red numbers) on server versions 1.20.3 or newer should be hidden
hide-scores: true
# Update interval for STATIC mode
# In ticks (20 ticks = 1 second)
update-interval-ticks: 20
# Time to keep Scoreboard visible in ON_PROGRESS_CHANGE mode
# In ticks (20 ticks = 1 second)
hide-delay-ticks: 60
# Scoreboard title
title: "&6&lQUESTBORN"
# Scoreboard lines
# Supports placeholders: {quest_name}, {progress}, {target}, {stage}, {total_stages}, {progressbar}
lines:
- "&7&m------------------"
- "&fQuest:"
- "{quest_name}"
- ""
- "&fStage:"
- "&e{stage}/{total_stages}"
- ""
- "{objective_details}"
- ""
- "&fProgress:"
- "{progressbar} &f{progress}&7/&f{target}"
- "&7&m------------------"
# Action Bar Settings
actionbar:
enabled: true
# Display modes:
# ON_PROGRESS_CHANGE - Show only when quest progress changes
# STATIC - Display continuously during active quest
mode: "STATIC"
# Update interval for STATIC mode
# In ticks (20 ticks = 1 second)
update-interval-ticks: 20
# Formats
formats:
stage: "{quest_name}&7: &f{progress}&7/&f{target} &7| &fStage: {stage}/{total_stages} {progressbar}"
default: "{quest_name}&7: &f{progress}&7/&f{target} {progressbar}"
materials: "{quest_name}&7: &fDeliver items &7| &fStage: {stage}/{total_stages}"
legacy-materials: "{quest_name}&7: &fDeliver items"
# Disable action bar for quest types with frequent updates
disabled-for-types:
- ELYTRA_FLY
# ------------------------------
# VISUALS - GUI & CHAT
# ------------------------------
gui:
# Quest details display formatting
details:
lore-format:
blocks: "<#a8ff80> ▪ {value}" # {value} = localized block name
entities: "<#8280ff> ▪ {value}" # {raw} = EntityType, {value} = localized name
items: "<#b3ff66> ▪ {value}" # {value} = localized item name
location: "<#ffa666> ➤ <#ffb580>{value}" # {value} = X:150 Y:70 Z:-20
fluids: "<#55aaff> ▪ {value}" # Fluid/mob related objectives
cause: "<#ff7777> ▪ {value}" # Teleport/damage cause (objective dependent)
time: "<#cc66ff> ▪ {value}" # Time-based objectives (e.g., PLAY_TIME, HOLD_ITEM)
default: "<#44ff44> ▪ {value}" # Fallback formatting
# Quest details progress bar
progress-bar:
enabled: true
chat:
# Show detailed info (objectives, clickable link) in activation/stage messages
show-details: true
# ------------------------------
# AUDIO
# ------------------------------
sounds:
# GUI interaction sound
gui-click:
sound: "UI_BUTTON_CLICK"
volume: 0.4
pitch: 1.1
# ------------------------------
# OPTIMIZATION
# ------------------------------
optimization:
# Distance-based quest optimization
distance-quests:
enabled: true
min-save-blocks: 1 # Save only whole blocks (no partial progress)
# Movement handling optimization
move-handling:
cooldown-ms: 50 # Process movement every 50ms (20 times per second)
min-move-distance: 0.2 # Minimum movement distance to process
# Auto-save configuration
auto-save:
enabled: true
interval-seconds: 600 # Auto-save interval in seconds
# Debug logging
debug:
auto-save-log: false # Enable/disable auto-save logging in console
Last updated