PlumDeliveryPlumDelivery
Home
Guide
  • Overview
  • Database
  • Deliveries
  • Menus
  • Categories
  • Rewards
  • Messages
Commands
Placeholders
  • Overview
  • Methods
  • Events
Database Guide
FAQ
GitHub
Home
Guide
  • Overview
  • Database
  • Deliveries
  • Menus
  • Categories
  • Rewards
  • Messages
Commands
Placeholders
  • Overview
  • Methods
  • Events
Database Guide
FAQ
GitHub
  • Configuration

    • Configuration Overview
    • Database Configuration
    • Delivery Types Configuration
    • Menu Configuration
    • Categories Configuration
    • Rewards Configuration
    • Messages Configuration

Database Configuration

Overview

PlumDelivery supports three database backends. Configure the database in the database section of config.yml.

Configuration

database:
  # Database driver: RozsDBLite, SQLite, or MySQL
  driver: RozsDBLite
  # Connection details (only needed for MySQL)
  hostname: localhost
  port: 3306
  username: root
  password: 123456
  database: PlumDelivery

Available Drivers

RozsDBLite (Default)

  • Type: File-based NoSQL
  • Setup: None — works out of the box
  • Best for: Small to medium servers
  • Data location: plugins/PlumDelivery/ directory
database:
  driver: RozsDBLite

Recommended for most servers

RozsDBLite requires zero configuration and is the simplest option. Just set the driver and you're done!

SQLite

  • Type: File-based SQL
  • Setup: None — creates database.db automatically
  • Best for: Medium servers wanting SQL features
  • Connection pool: HikariCP with 1 connection
database:
  driver: SQLite

MySQL / MariaDB

  • Type: Remote SQL server
  • Setup: Requires a running MySQL/MariaDB server
  • Best for: Large servers and networks
  • Connection pool: HikariCP with 10 max connections, 2 min idle
database:
  driver: MySQL
  hostname: localhost
  port: 3306
  username: root
  password: your_password
  database: PlumDelivery

Warning

Make sure the database specified in database already exists on your MySQL server. The plugin will create the required tables automatically.

Database Schema

For SQL backends (SQLite and MySQL), the plugin creates a plum_users table:

ColumnTypeDescription
uuidVARCHAR(36)Player UUID (Primary Key)
pointsTEXTJSON map of points per type:category
current_goalsTEXTJSON map of achieved goals per type:category

Example Data

// points column
{"daily:farm": 25, "weekly:farm": 100, "daily:combat": 42}

// current_goals column  
{"daily:farm": 25, "weekly:farm": 0}

Auto-Save

Data is automatically saved:

  • Every 10 minutes (12,000 ticks)
  • On server shutdown

No manual saving is required.

Prev
Configuration Overview
Next
Delivery Types Configuration