Skip to content

Configuration Overview

ArcPass uses a modular configuration design with different features configured in separate files.

File Structure

plugins/ArcPass/
├── config.yml          # Main config
├── database.yml        # Database config
├── license.yml         # License config
├── lang/               # Language files
│   ├── en_US.yml
│   └── zh_CN.yml
├── passes/             # Pass configs
│   ├── default.yml
│   └── ...
├── quests/             # Quest configs
│   ├── daily/
│   ├── weekly/
│   └── seasonal/
├── rewards/            # Reward configs
│   └── default.yml
└── gui/                # GUI configs
    ├── main-menu.yml
    ├── quests.yml
    └── rewards.yml

Main Configuration Files

config.yml

yaml
# Config version (DO NOT MODIFY)
config-version: 2

# Debug mode - enables verbose logging
debug: false

# Locale settings
locale:
  # Default language for new players
  default: en_US
  # Allow players to change their language
  allow-change: true

# Pass settings
pass:
  # Maximum level (1-100 recommended)
  max-level: 100
  # Base experience for level 1
  base-experience: 100
  # Experience multiplier per level (1.1 = 10% increase each level)
  experience-multiplier: 1.1

# Quest settings
quests:
  # Daily quest reset time (24-hour format, server timezone)
  daily-reset-hour: 4
  # Weekly quest reset day (1=Monday, 7=Sunday)
  weekly-reset-day: 1

# Notification settings
notifications:
  # Notify players when they level up
  level-up: true
  # Notify players when they complete a quest
  quest-complete: true
  # Notify players when rewards are available
  rewards-available: true
  # Sound effects
  sounds:
    level-up: ENTITY_PLAYER_LEVELUP
    quest-complete: ENTITY_EXPERIENCE_ORB_PICKUP
    reward-claim: BLOCK_NOTE_BLOCK_PLING

# GUI settings
gui:
  # Update interval for animated elements (ticks)
  update-interval: 20
  # Close GUI when clicking outside
  close-on-outside-click: true

# Performance settings
performance:
  # Data save interval (seconds)
  save-interval: 300
  # Cache expiry time (minutes)
  cache-expiry: 30

database.yml

yaml
# Config version (DO NOT MODIFY)
config-version: 2

# Storage type: sqlite or mysql
type: sqlite

# SQLite settings (when type: sqlite)
sqlite:
  # Database file name (in plugin folder)
  file: data.db

# MySQL settings (when type: mysql)
mysql:
  host: localhost
  port: 3306
  database: arcpass
  username: root
  password: ""
  # Connection pool size
  pool-size: 10
  # Additional connection properties
  properties:
    useSSL: false
    autoReconnect: true
    allowPublicKeyRetrieval: true

# Cross-Server (Network) Settings
network:
  # standalone | shared-db | redis
  mode: standalone
  server-id: "server-1"
  redis:
    host: localhost
    port: 6379
    password: ""
    database: 0
    pool-size: 8
    cache-ttl: 10
    migration-lock-timeout: 5000
  sync:
    quit-save-mode: blocking
    join-lock-wait: 3000

Professional License Required

Cross-server support (shared-db and redis modes) requires a Professional license. Standard license users will always run in standalone mode. Upgrade at the License Center.

Hot Reload

Most configurations support hot reload:

/arcpass admin reload

Note

These changes require a server restart:

  • Database type switch
  • License key change

Configuration Validation

ArcPass validates config files on load:

  • Syntax errors shown in console
  • Invalid values use defaults with warnings
  • Missing required configs prevent startup

Detailed Guides

Example Configurations

The docs/examples-en/ folder in the plugin directory contains complete configuration examples.