# BTA (Better Than Adventure) Dynmap Configuration
# This configuration is optimized for BTA mod

# Use BTA hires template
deftemplatesuffix: hires

# BTA Seasonal Rendering
# When enabled, fullrender will create 4 tile sets (one per season)
# Frontend will automatically display tiles matching current in-game season
# Tiles are saved to: flat_spring/, flat_summer/, flat_fall/, flat_winter/
seasonal-rendering: true

# Storage configuration
storage:
  type: filetree

components:
  - class: org.dynmap.ClientConfigurationComponent
  
  - class: org.dynmap.InternalClientUpdateComponent
    sendhealth: true
    sendposition: true
    allowwebchat: true
    webchat-interval: 5
    hidewebchatip: false
    trustclientname: false
    includehiddenplayers: false
    use-name-colors: false
    use-player-login-ip: true
    require-player-login-ip: false
    block-banned-player-chat: true
    webchat-requires-login: false
    webchat-permissions: false
    chatlengthlimit: 256
    hideifsneaking: false
    protected-player-info: false
    hide-if-invisiblity-potion: true
    hidenames: false
   
  - class: org.dynmap.SimpleWebChatComponent
    allowchat: true
    allowurlname: false
  
  - class: org.dynmap.MarkersComponent
    type: markers
    showlabel: false
    enablesigns: false
    default-sign-set: markers
    showspawn: true
    spawnicon: world
    spawnlabel: "Spawn"
    showofflineplayers: false
    offlinelabel: "Offline"
    offlineicon: offlineuser
    offlinehidebydefault: true
    offlineminzoom: 0
    maxofflinetime: 30
    showspawnbeds: false
    spawnbedlabel: "Spawn Beds"
    spawnbedicon: bed
    spawnbedhidebydefault: true
    spawnbedminzoom: 0
    spawnbedformat: "%name%'s bed"
    showworldborder: false
    
  - class: org.dynmap.ClientComponent
    type: chat
    allowurlname: false
  - class: org.dynmap.ClientComponent
    type: chatballoon
    focuschatballoons: false
  - class: org.dynmap.ClientComponent
    type: chatbox
    showplayerfaces: true
    messagettl: 5
    sendbutton: false
  - class: org.dynmap.ClientComponent
    type: playermarkers
    showplayerfaces: true
    showplayerhealth: true
    showplayerbody: false
    smallplayerfaces: false
    hidebydefault: false
    layerprio: 0
    label: "Players"
    
  - class: org.dynmap.ClientComponent
    type: link
    
  - class: org.dynmap.ClientComponent
    type: timeofdayclock
    showdigitalclock: true
    showweather: false
    
  - class: org.dynmap.ClientComponent
    type: btaclock

  - class: org.dynmap.ClientComponent
    type: coord
    label: "Location"
    hidey: false
    show-mcr: false
    show-chunk: false

# Player list visibility
display-whitelist: false

# Render settings
renderinterval: 1
renderacceleratethreshold: 60
renderaccelerateinterval: 0.2
tiles-rendered-at-once: 2
usenormalthreadpriority: true
saverestorepending: true
save-pending-period: 900
zoomoutperiod: 30
initial-zoomout-validate: true
tileupdatedelay: 30
enabletilehash: true
smooth-lighting: true
use-brightness-table: true

# Image format
image-format: jpg-q90

# Texture settings for BTA
use-generated-textures: true
correct-water-lighting: true
transparent-leaves: true
ctm-support: true
custom-colors-support: true

# Player skins - using mc-heads.net for BTA compatibility
skin-url: "https://minotar.net/skin/%player%"

# Render triggers
render-triggers:
  - blockplaced
  - blockbreak
  - leavesdecay
  - blockburn
  - chunkgenerated
  - blockformed
  - blockfaded
  - blockspread
  - pistonmoved
  - explosion
  - structuregrow
  - blockgrow

# Paths
tilespath: web/tiles
webpath: web
exportpath: export

# Web server
webserver-port: 25566
max-sessions: 30
disable-webserver: false
allow-symlinks: true
login-enabled: false
login-required: false

# Performance
timesliceinterval: 0.0
maxchunkspertick: 200
progressloginterval: 100
updaterate: 2000
fullrenderplayerlimit: 0
updateplayerlimit: 0
per-tick-time-limit: 50
update-min-tps: 18.0
fullrender-min-tps: 18.0
zoomout-min-tps: 18.0

# UI settings
showplayerfacesinmenu: true
grayplayerswhenhidden: true
showlayercontrol: true
check-banned-ips: true

# Default view
defaultzoom: 0
defaultworld: world
defaultmap: flat

# Other settings
persist-ids-by-ip: true
cyrillic-support: false
round-coordinates: true

# Messages
msg:
    maptypes: "Map Types"
    players: "Players"
    chatrequireslogin: "Chat Requires Login"
    chatnotallowed: "You are not permitted to send chat messages"
    hiddennamejoin: "Player joined"
    hiddennamequit: "Player quit"

joinmessage: "%playername% joined"
quitmessage: "%playername% quit"
spammessage: "You may only chat once every %interval% seconds."
webmsgformat: "&color;2[WEB] %playername%: &color;f%message%"

# Cache settings
snapshotcachesize: 500
soft-ref-cache: true

# Debug settings
verbose: false
dump-missing-blocks: false
