Links
Tags
Creators
Details
XConomy-Paper-2.26.9
Compatibility
Changes
Added
- Added PostgreSQL as a supported storage type, including configuration, bundled JDBC driver, and cross-database SQL handling.
- Rewrote
/xconomy migrateto move complete economy data between SQLite, MySQL, MariaDB, and PostgreSQL. Player balances, non-player accounts, UUID mappings, transaction records, and login data are all migrated, and the target database is written only after every table succeeds. - Added amount abbreviations for every command that takes an amount:
k,m, andbare accepted in either case, so/pay Notch 10kand/money give Notch 1.3mboth work. Controlled bySettings.amount-abbreviations. - Replaced per-field configuration migration with template-based merging. Missing entries in an existing
config.ymlordatabase.ymlare now filled in automatically from the bundled templates, and existing values are never overwritten.
Fixed
- Fixed PostgreSQL failing to start on Paper with
No suitable driverby setting the driver class explicitly, since the shaded jar filters JDBC service registrations. - Fixed offline pay tips querying the transaction table while
transaction-recordwas disabled. - Fixed the connection pool state not being reset on reload, and stopped treating remote databases as SQLite when deciding on async access and transaction tracking.
- Fixed
CConfig(URL)being unable to read templates bundled inside the plugin jar. - Fixed data import mode being unusable on Paper. The
/xconomyimport command is now registered through the command map instead of relying on aplugin.ymldeclaration. - Import data is now keyed by UUID instead of player name, so renames and duplicate names in offline mode no longer read the wrong balance. Existing name-keyed
data.ymlfiles are still read. - Fixed imported balances being unreadable for names containing a dot, and skipped profiles without a valid UUID instead of writing a
nullentry. - Import now reports how many entries were imported, skipped, and failed, and refuses to start a second import while one is running.
Importing balances from another economy plugin
Import mode reads balances through Vault from the economy plugin currently
providing the service, and stores them in XConomy/importdata/data.yml.
Vault and a working economy provider are required.
- Back up the
XConomyplugin folder, and the database if it is stored elsewhere. - Set
Importdata-mode: trueinXConomy/config.yml. - Restart the server. XConomy loads in import mode only and does not take over
the economy. The log should show
Convertion mode enable. - Run
/xconomyas an operator. The import reports how many entries were imported, skipped, and failed. - Check
XConomy/importdata/data.ymlagainst the source plugin. - Set
Importdata-mode: falseand restart. XConomy now takes over the economy.
Balances are not written to the database in bulk. Each player's balance is
restored from data.yml when their account is created on first join, so keep
the file until every player has logged in at least once. Only players present in
the server's offline player data are exported; players who never joined this
server are not included.
If the log shows Conversion mode enable error, Vault could not find a
registered economy provider, and no data was exported.
Projects on Modrinth are automatically available through a Maven repository for use with JVM build tools such as Gradle. To learn more about the Modrinth Maven API, click here.
Note: When available, you should use the creator's maven repo instead as it will have transitive dependency information that the Modrinth Maven API does not. You may also end up with duplicate dependencies if you use a mix of Modrinth and non-Modrinth Maven repositories for your dependencies, because the group identifier will be different when served through the Modrinth Maven API.
Maven coordinates:
Version ID:
build.gradle:
repositories {
exclusiveContent {
forRepository {
maven {
name = "Modrinth"
url = "https://api.modrinth.com/maven"
}
}
// forRepositories(fg.repository) // Uncomment when using ForgeGradle
filter {
includeGroup "maven.modrinth"
}
}
}
// Standard Gradle dependency
dependencies {
implementation "maven.modrinth:UdMN9hv5:C3upq9LK"
}
// Legacy Loom dependency
dependencies {
modImplementation "maven.modrinth:UdMN9hv5:C3upq9LK"
}

