Adapters and compatibility

Run /migrate adapters and /migrate compatibility on the server before every migration. The table below describes Migrate 1.0.0; a plugin version outside an adapter's expected range is reported as unverified or unsupported instead of being silently accepted.

Capabilities #

R = read, W = write, RB = rollback of records written by Migrate.

Source or targetHomesWarpsEconomyPunishmentsStorage
EssentialsXR W RBR W RBR W RB—YAML user data, warps and user map
HuskHomesR W RBR W RB——SQLite only
PlayerPoints——R W RB—SQLite only
AdvancedBan———R W RBMariaDB or MySQL
LiteBans———RMariaDB or MySQL; read only
Vanilla ban lists———Rbanned-players.json and banned-ips.json; read only
Exchange filesR W RBR W RBR W RBR W RBVersioned JSON Lines files

Any readable adapter can feed a writable adapter in the same domain. Reading may occur while the source plugin runs. Writing requires the target plugin to be disabled and the server restarted so cached plugin state cannot overwrite migrated data.

Verified versions #

The following routes were exercised with real plugin-generated or server-generated data during the 1.0.0 verification:

  • EssentialsX 2.21.0: homes and warps read and written; balances read.
  • HuskHomes 4.9.10 and 4.11: homes and warps through SQLite.
  • PlayerPoints 3.3.5: balances through SQLite.
  • AdvancedBan 2.3.0: punishments through MariaDB 11.8.9.
  • LiteBans 2.18.7: punishments read from MariaDB as a black-box compatibility test.
  • Paper 1.21.11 vanilla player and IP ban lists.
  • Exchange files for homes, warps, economy and punishments.

LiteBans remains labelled unverified in the plugin because it is closed source and its database layout is not a public compatibility contract. Review its dry run carefully.

Unsupported storage and directions #

  • H2 and HSQLDB punishment databases.
  • Remote MySQL, MariaDB or PostgreSQL storage for HuskHomes.
  • MySQL storage for PlayerPoints.
  • Writing into LiteBans.
  • Creating EssentialsX user files for players who do not already have one.

The adapters refuse unsupported storage instead of attempting a best-effort conversion.

Platform notes #

Migrate is built against Spigot API 1.20.6 and has been run on Spigot, Paper, Purpur, CraftBukkit and Folia. On Folia, routes requiring another plugin's live API or world access are disabled; file and database routes remain available. Always rely on the live compatibility command for the server you are about to migrate.