config.yml 参考
文档/dominion-protect/config.yml 参考

config.yml 参考

DominionProtect 主要配置键、默认值与调整建议。

基础与数据库

language: zh_cn
debug: false

database:
  host: localhost
  port: 3306
  database: dominion_protect
  username: dominion_protect
  password: ""
  poolSize: 10
  optimizeStorageOnStartup: true
  storageOptimizationDelaySeconds: 60
  storageMigrationBatchDelayMs: 25
  payloadCompressionThresholdBytes: 512
  compactRecordIds: true
  compactIdMinimumLifetimeYears: 10
  dropUnusedActionIndex: false
  dropUnusedDestinationIndex: false
  indexObservationMinDays: 7

数据库用户需要建表、临时表、删表、插入、查询、更新、删除和 ALTER 权限。生产环境不要使用 root

记录、查询与回滚

recording:
  flushIntervalSeconds: 5
  batchSize: 1000
  retryLimit: 3
  disabledActions:
    - block-from-to
    - block-spread
  enabledActions: []

query:
  inspectDefaultTime: 24h
  pageSize: 10

rollback:
  maxRecords: 50000
  batchSize: 200
  batchIntervalTicks: 2
  confirmTimeoutSeconds: 30
  previewEnabled: true
  previewTimeoutSeconds: 60
  previewMaxBlocks: 10000

enabledActions 非空时只记录白名单内动作;disabledActions 会优先于白名单。预览只影响客户端显示,不会把真实方块提前写入世界。

订阅方案

subscription:
  vaultUnavailableStrategy: disable
  defaultPlanId: ""
  plans:
    - id: basic
      name: Basic Plan
      period-days: 30
      price: 1000.0
      record-limit: 100000
      material: IRON_INGOT
      quota-full-strategy: stop
      description: Basic protection plan
    - id: premium
      name: Premium Plan
      period-days: 30
      price: 5000.0
      record-limit: -1
      material: GOLD_INGOT
      quota-full-strategy: evict
      description: Premium protection plan
  • stop:达到记录上限后停止写入新记录;
  • evict:达到上限后删除最旧记录,为新记录腾出空间;
  • defaultPlanId 为空时,新领地不会自动获得方案;填写有效 ID 后,新领地会免费获得一次该方案;
  • material 只影响 GUI 显示,必须是服务端支持的 Bukkit Material 名称。

清理

cleanup:
  gracePeriodDays: 7
  maxRetentionDays: 60
  batchSize: 5000
  purgeDelayMs: 100
  cycleIntervalHours: 6
  rollbackLogRetentionDays: 90
  failedRecordRetentionDays: 30
  failedRecordMaxTotalMiB: 100
  reclaimFreeSpacePercent: 30
  reclaimStartHour: 4

maxRetentionDays: 0rollbackLogRetentionDays: 0failedRecordRetentionDays: 0 表示对应内容不限期;reclaimFreeSpacePercent: 0 关闭清理后的空间回收。