-
Notifications
You must be signed in to change notification settings - Fork 2
Configuration System
Bank configuration is organized as multiple subsystems, each with its own file and responsibility. This page explains what each subsystem controls and when admins should edit it.
On startup, Bank loads root YAML files first, then conf/ subsystem files.
Command routing, GUI layout, permission checks, economy behavior, and integration behavior are all driven by these files.
Primary files:
config.ymlconvert.ymlupgrade.ymlmysql.ymlmongo.ymlconf/commands.ymlconf/permissions.ymlconf/inventories.ymlconf/items.ymlconf/language.ymlconf/sounds.ymlconf/itemblacklist.ymlconf/default_items.ymlconf/hiscores.yml
Controls feature toggles and global behavior:
- Save backend and lock/autosave behavior (
Bank.Save.*) - Access mode routing (
Bank.Type.*) - Open target restrictions (
Bank.Opentype.Subset.*) - Economy systems (
Bank.Money.*,Bank.Exp.*,Bank.Loans.*) - Optional integrations and implementations (
Bank.Implementation.*)
Reference file:
Bank:
Save:
Type: SQLITE
Type:
Citizens:
Enabled: false
Sign:
Enabled: falseDefines command tokens, aliases, permission nodes, and argument hints. Use this when you want to rename or disable command paths without code changes.
Reference file:
Bank:
Money:
Command: money
Permission: bank.moneyControls permission checks for behavior-level gates:
- Open mode checks
- Item slot/tab limits
- Interest and loan value-prefix limits
Reference file:
Permission:
Open:
Sign:
Check: true
Permission: bank.open.signControls menu structure, inventory buttons, titles, and item templates. Use this subsystem to tune GUI behavior without touching economy math.
Reference files:
Controls chat strings, placeholders, and sound feedback for actions.
Reference files:
Controls one-time conversion and upgrade workflows. These files should be treated as operational change controls, not daily tuning files.
Reference files:
This is a complete subsystem, not a single toggle.
Purpose:
- Restrict what users and admin channels can open directly.
- Define command/NPC/sign channel behavior consistently.
Admin checklist:
- Enable
Bank.Opentype.Subset.Enabled. - Configure channel groups (
Command,Citizens,Sign). - Validate each route with a player and an admin account.
- Keep this aligned with granted permissions to avoid confusing denials.
Bank:
Opentype:
Subset:
Enabled: true
Command:
Enabled: true
Citizens:
Enabled: true
Sign:
Enabled: trueConfiguration-adjacent admin commands:
/bank admin reload/bank admin save/bank admin permission update <name>
conf/permissions.yml defines optional check toggles for many permissioned behaviors.
Permission nodes in conf/commands.yml must remain aligned with behavior checks in conf/permissions.yml.
Config is file-backed YAML and separate from player/account persistence. Treat config files as control-plane data, and account storage as runtime state data.
- Enable advanced open subset by setting
Bank.Opentype.Subset.Enabled: trueand relevant child flags. - Enable converter from another plugin under
Bank.Converter.*.Enabledfor one migration startup.
Money-only server profile:
- Keep money subsystem enabled.
- Disable exp/loan features in
Bank.Exp.*andBank.Loans.*as needed. - Update command permissions to remove unused command branches.
- Config edits not taking effect: check file path (
conf/vs root) and restart if key is marked non-modifiable at runtime. - Conversion flags enabled accidentally: reset
Convert.ConfirmandUpgrade.*values before startup. - Players can run commands but cannot access menus: verify
Bank.Type.*andBank.Opentype.Subset.*together.
- System Architecture and Lifecycle
- Commands and Permissions
- Account and Balance Model
- Transactions and Money Flow Rules
- Storage and Persistence
- Configuration System
- GUI and Inventory Interactions
- Integrations and Access Modes
- Error Handling and Edge Cases
- Admin Operations and Troubleshooting
- Backup, Recovery, and Migration
- Version Compatibility and Known Limitations
- command_baltop.yml
- commands.yml
- config.yml
- convert.yml
- default_items.yml
- hiscores.yml
- inventories.yml
- itemblacklist.yml
- items.yml
- language.yml
- mysql.yml
- permissions.yml
- sounds.yml
- upgrade.yml
- Discord Support Config:
- command_baltop.yml
- commands.yml
- config.yml
- convert.yml
- default_items.yml
- hiscores.yml
- inventories.yml
- itemblacklist.yml
- items.yml
- language.yml
- mongo.yml
- mysql.yml
- permissions.yml
- sounds.yml Config:
- command_baltop.yml
- commands.yml
- config.yml
- convert.yml
- default_items.yml
- hiscores.yml
- inventories.yml
- itemblacklist.yml
- items.yml
- language.yml
- mongo.yml
- mysql.yml
- permissions.yml
- sounds.yml Config:
- command_baltop.yml
- commands.yml
- config.yml
- convert.yml
- default_items.yml
- hiscores.yml
- inventories.yml
- itemblacklist.yml
- items.yml
- language.yml
- mongo.yml
- mysql.yml
- permissions.yml
- sounds.yml