Plugin Folder

Everything CoreJobs writes lives in plugins/CoreJobs.

Layout

plugins/
└── CoreJobs/
    ├── config.yml        server settings: storage, ranking, drops behaviour, debug
    ├── jobs.yml          the six jobs, their pay, xp curves, and prestige
    ├── drops.yml         bonus drop tables and farmpoint rules
    ├── shop.yml          what farmpoints buy
    ├── rewards.yml       one-off rewards for reaching a level
    ├── menus.yml         every menu layout, slot, and icon
    ├── styles.yml        colour tags reused across all messages
    ├── data.db           player data, created on first start with SQLite
    └── lang/
        ├── en.yml        English
        ├── fr.yml        French
        └── es.yml        Spanish

Which file do I edit

I want to change File Page
How much a job pays jobs.yml jobs.yml
How fast players level jobs.yml Levels & Prestige
Bonus drops and farmpoints from blocks drops.yml drops.yml
Shop items and prices shop.yml shop.yml
Rewards for hitting a level rewards.yml rewards.yml
Menu slots, icons, and lore menus.yml menus.yml
Wording of a message lang/<code>.yml Messages & Styles
The colours behind <info> and friends styles.yml Messages & Styles
Database, ranking, time zone, debug config.yml config.yml

The version key at the top of every yml

Each file opens with its own tracker: config-version, jobs-version, menus-version, and so on. The updater reads it to migrate your file when the plugin updates, adding new keys with their defaults and leaving your values alone.

Leave those keys alone

Editing a version key by hand makes the updater skip or repeat a migration. If you want to start a file over, delete the whole file and restart instead.

Comments are refreshed, values are not

On every start each key that also exists in the bundled file gets the bundled comment back, so a reworded explanation reaches a file you already have instead of only a fresh install. Your values are untouched, and a key you added yourself keeps the comment you wrote. A comment you edited on a bundled key is the one thing that gets replaced.

Player data

SQLite
MySQL

data.db in the plugin folder. Nothing to set up, and it is the file to back up.

Tables in your database, prefixed with table-prefix from config.yml. Good when several servers share one set of job levels.

Levels, xp, prestige counts, farmpoint balances, ranking points, and unclaimed rewards all live there. See Storage.

The ranking reset does not touch balances

A monthly reset zeroes the ranking points only. Player farmpoint balances carry over.