# ----------------------------------------------
# --------------   LunaticChat   ---------------
# ----------------------------------------------
#
#  Docs: https://lc.m1sk9.dev
#  GitHub: https://github.com/m1sk9/LunaticChat
#
#  This configuration file is for customizing LunaticChat's behavior.
#  Please specify appropriate values to ensure LunaticChat functions correctly.
#
#  For detailed configuration options, please refer to the documentation:
#       Japanese: https://lc.m1sk9.dev/guide/admin/configuration
#       English:  https://lc.m1sk9.dev/en/guide/admin/configuration
# ----------------------------------------------

# If enabled, Activate LunaticChat's debug mode, which provides detailed logging for troubleshooting.
debug: false

# Path to the YAML file storing player settings
userSettingsFilePath: "player-settings.yaml"

# If enabled, LunaticChat will check for updates on startup.
checkForUpdates: true

# Plugin Configuration Language. This setting applies only to player feedback and does not affect plugin logs or similar outputs.
language: "en"

# ----------------------------------------------
# -----------   Features Settings   ------------
# ----------------------------------------------

features:
  quickReplies:
    # If enabled, the quick reply feature via the /reply command will be activated.
    enabled: true
  japaneseConversion:
    # If enabled, enables the conversion function from Roman letters to hiragana.
    enabled: false
    cache:
      # Specifies the maximum number of entries to store in the Romanization conversion cache.
      maxEntries: 500
      # Specify the interval (in seconds) for saving the Romanization conversion cache to disk.
      saveIntervalSeconds: 300
      # Specify the file path where the cache for Romanization conversion is saved.
      filePath: "conversion_cache.json"
    api:
      # Specify the timeout duration (in milliseconds) for API requests to the Romanization conversion service.
      timeout: 3000
      # Specify the number of retry attempts for failed API requests to the Romanization conversion service.
      retryAttempts: 2
  channelChat:
    # If enabled, channel-based chat functionality will be activated.
    enabled: false
    # Maximum number of channels that can be created per server. Set to 0 for unlimited.
    maxChannelsPerServer: 0
    # Maximum number of members allowed in a single channel. Set to 0 for unlimited.
    maxMembersPerChannel: 0
    # Maximum number of channels a single player can join. Set to 0 for unlimited.
    maxMembershipPerPlayer: 0
    # Channel message logging configuration
    messageLogging:
      # If enabled, all channel messages will be logged to NDJSON files for analysis and archival.
      enabled: true
      # Number of days to retain log files. Set to 0 to keep logs indefinitely.
      retentionDays: 30
      # Maximum size of a single log file in megabytes. Files exceeding this size will stop accepting new entries.
      maxFileSizeMB: 100

# ----------------------------------------------
# ---------   Message Format Settings   --------
# ----------------------------------------------
#
# Customize the format of various chat messages here.
# You can use placeholders such as {sender}, {message}, etc.
#
# {sender} - The name of the message sender
# {recipient} - The name of the message recipient
# {message} - The content of the message
# {channel} - The name of the chat channel (only for channel chat)
# ----------------------------------------------

messageFormat:
  # Configure the format for direct messages sent via /tell or /msg
  directMessageFormat: "§7[§e{sender} §7>> §e{recipient}§7] §f{message}"
  # Configure the format for messages sent in channel chat
  channelMessageFormat: "§7[§b#{channel}§7] §e{sender}: §f{message}"

