Installation
Getting DupeTrace running on your server is easier than teaching a villager to trade fairly. Let's do this!
What You'll Need
Before we start, make sure you've got:
β A PaperMC 1.21+ server (Spigot won't cut it, sorry!)
β Java 21 installed
β A PostgreSQL database (local or remote β we're flexible)
β About 5 minutes of your time
Why PostgreSQL? Simple: speed and scalability. We track a lot of items, and Postgres handles it like a champ. SQLite would cry. MySQL would probably work but... why settle?
Step 1: Download the Plugin
Head over to our Releases page and grab the latest DupeTrace-x.x.x-paper.jar file.
β οΈ Important: Download the file ending in
-paper.jar, NOT the one with-dev.jar. The dev version is missing dependencies and will throw a tantrum on your server.
Step 2: Drop It In
Move the downloaded .jar file into your server's plugins/ folder. You know the drill.
your-server/
βββ plugins/
β βββ DupeTrace-1.2.0-paper.jar β Right here!
β βββ (your other plugins)
βββ server.jar
βββ ...Step 3: Set Up PostgreSQL
You'll need a PostgreSQL database ready to go. If you don't have one yet:
Option A: Local Database (Quick & Dirty)
Install PostgreSQL on your server
Create a database called
dupe_trace:Note down your username and password (default is usually
postgres/postgres)
Option B: Remote Database (Fancy & Recommended)
Use a hosting provider like:
AWS RDS
DigitalOcean Managed Databases
ElephantSQL (free tier available!)
Grab your connection URL, username, and password from your provider's dashboard.
Step 4: Start Your Server
Fire up your server for the first time with DupeTrace installed:
The plugin will create a default config.yml file at plugins/DupeTrace/config.yml and then probably complain that it can't connect to the database. That's expected β we haven't told it where to connect yet!
Step 5: Configure the Database
Stop your server and open plugins/DupeTrace/config.yml in your favorite text editor.
Find the database section and fill in your details:
Connection URL Format
The URL follows this pattern:
Examples:
Local:
jdbc:postgresql://localhost:5432/dupe_traceRemote:
jdbc:postgresql://db.example.com:5432/dupe_traceWith IP:
jdbc:postgresql://192.168.1.100:5432/dupe_trace
π‘ Pro Tip: If your database host doesn't use the default port (5432), make sure to change it in the URL!
Step 6: Restart and Verify
Start your server again:
Look for this happy message in your console:
If you see that, congratulations! π You're all set.
Troubleshooting
"Missing runtime dependency" Error
Problem: You downloaded the -dev.jar file instead of the -paper.jar file.
Solution: Download the correct file from the releases page and replace the plugin jar.
"Could not connect to database" Error
Problem: Your database credentials are wrong, or DupeTrace can't reach your database.
Solution:
Double-check your
url,user, andpasswordinconfig.ymlMake sure PostgreSQL is running
If using a remote database, check your firewall rules
Test the connection manually using
psqlor a database client
Plugin Loads But Nothing Happens
Problem: Configuration might be invalid.
Solution: Check your server logs for warnings. DupeTrace validates config values on startup and will log any issues it finds.
What's Next?
Now that DupeTrace is installed and connected, you'll probably want to:
Configure the plugin β Tweak detection sensitivity and behavior
Learn the commands β Test the system and investigate dupes
Set up permissions β Control who gets alerts
Happy dupe hunting! π―
Last updated