Setup - AshleyThew/Bank GitHub Wiki
Setup
Overview
This page is the admin installation and first-run checklist. Use it to get Bank running safely before deeper tuning.
How It Works
Bank loads dependency components, then creates runtime config files under plugins/Bank/ on first boot.
After files exist, you tune config and restart or reload based on what changed.
Configuration
Initial install steps
- Place the Bank jar in
plugins/. - Start server once to generate
plugins/Bank/files. - Stop server.
- Edit
plugins/Bank/config.ymland backend files. - Start server and validate startup logs.
Storage subsystem setup
Bank.Save.TypeselectsSQLITE,MYSQL, orMONGODB.- For MySQL, complete
plugins/Bank/mysql.ymlbefore switching save type. - For MongoDB, complete
plugins/Bank/mongo.ymland ensure loader dependency is present.
Reference files:
Bank:
Save:
Type: MYSQL
Access-mode subsystem setup
Bank.Type.Sign.Enabled: allows sign interaction access.Bank.Type.Block.Enabled: allows registered block access.Bank.Type.Citizens.Enabled: allows NPC trait entry.
Open subset subsystem setup
Bank.Opentype.Subset is a full subsystem that controls what open targets are allowed:
Bank.Opentype.Subset.Enabled: master switch.Bank.Opentype.Subset.Command.*: command open restrictions.Bank.Opentype.Subset.Citizens.*: NPC open restrictions.Bank.Opentype.Subset.Sign.*: sign open restrictions.
When this subsystem is enabled, configure each channel explicitly to avoid users being routed to unexpected menus.
Reference file:
Bank:
Opentype:
Subset:
Enabled: true
Command:
Enabled: true
Citizens:
Enabled: true
Sign:
Enabled: true
Commands
/bank/bank admin reload/bank admin save
Permissions
Core access and command permissions are documented in Commands and Permissions. For initial setup, confirm players have open and money/exp permissions that match your enabled modes.
Data and Storage
Default save type is SQLITE.
Player accounts and transactions are persisted separately from command and GUI config files.
Examples
MySQL production setup:
- Set
Bank.Save.Type: MYSQLinconfig.yml. - Fill
mysql.ymlcredentials. - Restart server.
Recommended mysql.yml baseline:
Mysql:
IP: 127.0.0.1
Port: 3306
Database: bank
Username: bank_user
Password: change_me
Restricted open setup with subset subsystem:
- Set
Bank.Opentype.Subset.Enabled: true. - Enable only the channels you want under
Bank.Opentype.Subset.Command.Enabled,Bank.Opentype.Subset.Citizens.Enabled, andBank.Opentype.Subset.Sign.Enabled. - Control specific open actions with command permissions from
conf/commands.yml.
Citizens setup:
- Install Citizens.
- Create NPC and add trait
bank-trait.
Troubleshooting
- If startup reports missing Core, verify dependency installation and restart.
- If
/bank open ...commands do not match expected menu, reviewBank.Opentype.Subset.*first. - If save backend fails, Bank may fall back to SQLite; verify startup logs before going live.