Skip to content

Setup

This page walks you through installing LoriTime on a Paper/Folia server or a Velocity proxy network.

PlatformJar
Paper or Folialoritimepaper
Velocityloritimevelocity

Install the Paper/Folia jar on every backend server that should run LoriTime. Install the Velocity jar on the proxy only when LoriTime should run on the proxy.

SetupUse whenmultiSetup.mode
Single Paper/Folia serverOne server owns its own storage.standalone
Paper/Folia without a proxyEach server is independent.standalone
Standalone Velocity proxyThe proxy tracks playtime by backend server without Paper/Folia backend coordination.standalone
Velocity proxy with Paper/Folia backendsThe proxy owns canonical storage and backends report local context.Proxy: master; backends: slave

LoriTime does not support multi-proxy setups.

  1. Put the matching LoriTime jar in the server or proxy plugins directory.
  2. Start and stop the server or proxy once so LoriTime can create its files.
  3. Edit config.yml, commands.yml, and language files as needed.
  4. Start the server or proxy again.
  5. Check the startup logs for storage, migration, and update messages.

LoriTime 2 no longer uses yml as a regular storage mode. If the migrated configuration selects storageMethod: sqlite, LoriTime imports legacy data/names.yml or data/time.yml files into SQLite and renames the old files with a .migrated suffix after a successful import. If storageMethod is mysql or mariadb, LoriTime migrates the configured SQL database and backs up local legacy flat files without importing them.

Back up your LoriTime data folder and SQL database before updating an existing production setup.

Use multi-setup when a Velocity proxy should own canonical storage for the whole network while Paper/Folia backend servers report player world context, PlaceholderAPI cache data, or AFK state to the proxy.

You usually do not need multi-setup when:

  • You run a single Paper/Folia server without a proxy.
  • You run only LoriTime on Velocity and do not need Paper/Folia backend reporting.
  • Each backend server should keep independent LoriTime data.
  • You do not need proxy-owned storage or cross-backend time.

A standalone Velocity proxy can use multiSetup.mode: standalone. In that mode LoriTime can track time by Velocity backend server, but it cannot track Bukkit worlds and it does not provide PlaceholderAPI placeholders.

Use multi-setup when:

  • You want one shared playtime store across a Velocity network.
  • You want PlaceholderAPI values on Paper/Folia backends while the proxy owns storage.
  • You want AFK detection on Paper/Folia backends with proxy-owned AFK effects.
  1. Install the loritimepaper jar in the Paper/Folia plugins directory.
  2. Start and stop the server once.
  3. Keep multiSetup.mode set to standalone.
  4. Configure storage, commands, localization, AFK, and integrations as needed.
  5. Start the server again.
multiSetup:
mode: 'standalone'
  1. Install the loritimevelocity jar in the Velocity proxy plugins directory.
  2. Install the loritimepaper jar in every Paper/Folia backend plugins directory.
  3. Start and stop the proxy and backend servers once.
  4. Set the Velocity proxy multiSetup.mode to master.
  5. Set every Paper/Folia backend multiSetup.mode to slave.
  6. Start the proxy and backend servers again.

The proxy backend server name is used for canonical session rows. A Paper/Folia slave server.name is not used for canonical server entries in this setup.

Velocity proxy config.yml
multiSetup:
mode: 'master'
Paper/Folia backend config.yml
multiSetup:
mode: 'slave'
server:
# Used only when this Paper/Folia instance owns local session rows.
# In proxy slave mode, the proxy backend name is canonical instead.
name: 'survival-1'