TESSERA

start 04

Configuration

config.yml is created on first start. Content is not configured here: items, blocks, furniture, recipes, glyphs and HUD elements live in their own folders. Reload with /tessera reload.

Sections

SectionPurpose
corePrefix, language, debug and startup flags.
packPack metadata, the embedded HTTP server, protection, player protection, sounds, importer.
welcomeFirst join and returning join sequences.
items, blocks, furniture, recipes, glyphs, hudModule folders and module defaults.
guiCatalog title, rows, border materials and sounds.
hooksFlags for WorldGuard, GriefPrevention, Towny, PlaceholderAPI, Vault and LuckPerms.
performanceAsync hashing, chunk cleanup, furniture caps, packet rate limit.
messagesMessage templates.

Keys the plugin reads

This is the full list of config.yml keys read by the code in 2.0.0. Anything else in the file is inert for now, including the whole of gui, hooks, performance, items, blocks, furniture, recipes and glyphs.

core.language

pack.meta.pack_format
pack.server.enabled          pack.server.host
pack.server.port             pack.server.domain
pack.server.external_url     pack.server.required
pack.server.kick_on_decline  pack.server.kick_on_fail
pack.server.auto_apply.enabled
pack.server.auto_apply.delay_ticks
pack.server.rate_limit.enabled
pack.server.rate_limit.max_requests_per_ip
pack.server.rate_limit.cooldown_minutes
pack.protection.protect_from_unzip
pack.protection.level
pack.protect_player.enabled
pack.protect_player.lock_movement
pack.protect_player.blindness
pack.sounds.on_loaded
pack.importer.auto_watch
pack.importer.watch_interval_seconds
hud.pause_banner
hud.top_banner.enabled       hud.top_banner.title
hud.top_banner.color         hud.top_banner.hide_bar

messages.pack.prompt         messages.pack.loading_title
messages.pack.loading_subtitle
messages.pack.loaded_actionbar
messages.pack.loaded_chat
messages.pack.kick_declined  messages.pack.kick_failed
messages.pack.declined_warning
messages.pack.failed_warning

welcome.enabled              welcome.delay_ticks
welcome.first_join.*         welcome.regular_join.*

Older configs that put these under pack.pack_format and pack.messages still work.

core

core:
  prefix: "<gradient:#00c6ff:#0072ff><bold>Tessera</bold></gradient> <dark_gray>»</dark_gray> "
  language: "en"          # en, uk, de, es, or your own file in lang/
  debug: false
  verbose_startup: true
  version_check: true
  metrics: true
  io_timeout_ms: 5000
  server_name: "Tessera Network"

core.language selects the file loaded from lang/. A missing file falls back to en.yml with a warning. The language files are loaded but the command messages in 2.0.0 are written into the code, so translating them does not change what commands print yet.

pack

The long one. See Resource pack for what each part does.

pack:
  meta:
    description: "<gradient:#00c6ff:#0072ff>Official Tessera Server Resource Pack</gradient>"
    pack_format: 34
    auto_generate: true
    compression_level: 6
  server:
    enabled: true
    host: "0.0.0.0"
    port: 8085
    domain: "localhost:8085"   # set this to a host players can reach
    external_url: ""           # non-empty: players download from here instead
    required: true
    kick_on_decline: true
    kick_on_fail: false
    auto_apply:
      enabled: true
      delay_ticks: 10
    rate_limit:
      enabled: true
      max_requests_per_ip: 5
      cooldown_minutes: 15
  protection:
    protect_from_unzip: true
    level: 2                   # 1, 2 or 3
  protect_player:
    enabled: true
    lock_movement: true
    blindness: true
  sounds:
    on_loaded: "ENTITY_PLAYER_LEVELUP"
  importer:
    folder: "imports"
    auto_watch: true
    watch_interval_seconds: 15

hud

hud:
  enabled: true
  update_interval_ticks: 2
  folder: "hud"
  pause_banner: true
  top_banner:
    enabled: false
    title: "<white>:top_banner:</white>"
    color: "BLUE"
    hide_bar: true
    style: "PROGRESS"

Only pause_banner and the top_banner keys are read. The HUD ticker always runs every 2 ticks and cannot be disabled from the config in 2.0.0. Players toggle their own HUD with /tessera hud. See Glyphs and HUD for both banners.

hooks

hooks:
  worldguard:
    enabled: true
    respect_build_flag: true
  griefprevention:
    enabled: true
  towny:
    enabled: true
  placeholderapi:
    enabled: true
  vault:
    enabled: true
  luckperms:
    enabled: true

These flags are inert in 2.0.0. The six plugins are listed as soft dependencies in plugin.yml, but there is no integration code, so region and claim checks are not applied to custom blocks or furniture, and PlaceholderAPI placeholders are not parsed in HUD or welcome text. Use the placeholders built into the HUD instead.

Language files

lang/ ships with en.yml, uk.yml, de.yml and es.yml. Add your own file and point core.language at its name without the extension.