DUXPLIMA Documentation

Overview

What is stored, the tables, sharing one database across servers, and moving off SQLite.

The database holds plots and everything said about them. Snapshots, templates and archived builds are files under snapshots/, templates/ and archive/, not rows.

BackendFor
SQLiteOne server. The default
MySQL and MariaDBA network sharing plots
PostgreSQLThe same, on PostgreSQL

Tables

Every table starts with table-prefix (uxmplots_).

TableHolds
plot, member, ban, merge, flagPlots, their owners, names, members, bans, merges and flags
slotRoom bought with /plot slots buy
visit, rating, rating_categoryVisits and ratings
tag, featured, personality, unlockTags, pinned and sponsored rows, looks, bought catalogue entries
note, tip, follow, reportGuestbook notes, tips, following, reports
listing, sale, rent, tenancyThe market
entry, entry_builder, vote, result, result_builderContest entries, teams, votes and results
contest_result, contest_result_builderPlaces for honours and levels
archive, archive_builderThe hall of fame
changeWhat changed, for the other servers on the sql transport, swept by age (keep-minutes)
owed_rewardRewards owed to a player who was away
server_world, travel, last_seenThe network: which server has which world, players crossing, when each was last seen
schema_historyThe version the tables are at

A network

Point every server at the same database with the same table-prefix, and set network.conf so the servers hear what changed; see Network and Discord.

Keeping one server apart

local-only = true keeps one server on its own SQLite file, whatever type says: a build server that has no business in the shared database.

Moving off SQLite

  1. Create the database and a user.
  2. Set type, host, port, database, username, password, and copy-from-file = true.
  3. Restart once. The rows are copied into the empty tables, and the console says how many. Tables that already hold rows are left alone.

Related: config.conf