Skip to content

Configuration

HeadDB generates configuration files in plugins/HeadDB/.

FilePurpose
config.ymlCore plugin behavior, cache, storage, messages, player heads, GUI runtime, and updater settings.
economy.ymlOptional Vault economy pricing.
gui.ymlGUI filler and icon configuration.
messages/<locale>.ymlMessage text and localization files.

Use /hdb reload after editing most configuration files. Restart after replacing the plugin JAR.

config.yml

Remote

KeyDescription
remote.manifest-urlPublic database manifest source. Normal servers should leave this unchanged.
remote.preferred-mirror-idPreferred source mirror ID. If unavailable, HeadDB falls back automatically.

These settings are public plugin configuration, not a server-owner database management interface.

Cache

yaml
cache:
  directory: cache
  item:
    enabled: true
    max-size: 4096

cache.directory stores verified public database cache files. Item caching improves GUI and command performance by reusing generated item prototypes.

Refresh

yaml
refresh:
  load-cache-on-startup: true
  refresh-on-startup: true

Startup cache loading lets HeadDB become usable from the last verified data while refresh is running or if remote refresh fails.

HTTP

KeyDescription
http.connect-timeout-secondsHTTP connect timeout.
http.read-timeout-secondsHTTP read timeout.

Increase read timeout only if your server network is slow.

Storage

yaml
storage:
  sqlite:
    file: storage/headdb.db

This file stores local data such as favorites, More Heads, local overrides, and More Categories. Do not delete it unless you intentionally want to remove local data.

Feature toggles

KeyDescription
remote-overrides.enabledEnables local metadata overrides for public heads.
custom-heads.enabledEnables More Heads.
player-heads.enabledEnables Player Heads.

Player heads

yaml
player-heads:
  enabled: true
  cache-ttl-hours: 12
  failed-cache-ttl-minutes: 10
  allow-external-lookup: true

Disable external lookup if you only want HeadDB to use local or known player profiles.

Messages

KeyDescription
messages.directoryDirectory for locale files.
messages.default-localeDefault player locale.
messages.console-localeConsole locale.

GUI runtime

gui.open-main-command controls whether /hdb opens the main GUI for players with permission.

Updates

yaml
update-checker:
  enabled: true
  check-on-startup: true
  notify-console: true
  notify-admins: true
  include-prereleases: true
  include-builds: true

auto-updater:
  install-updates: false

Recommended production behavior is update checking enabled and automatic installation disabled.

gui.yml

gui.yml controls filler items and common GUI icons.

FieldDescription
typeHEAD or ITEM.
head-idHeadDB head ID used when type: HEAD.
materialBukkit material fallback or item material.
nameMiniMessage-style display name.
loreMiniMessage-style lore lines.

Safe editing workflow

  1. Back up the file.
  2. Edit YAML with spaces, not tabs.
  3. Run /hdb reload or restart.
  4. Check console for warnings.
  5. Test the affected command or GUI.

Released by SilentDevelopment.