Async per player file saving: Made Easy!
Everything is in the docs folder:
- Getting Started: add PUUIDs to your project and connect your plugin.
- Storing Data and Reading Data: the core API.
- How Saving Works: read this before building anything that updates values often.
- API Reference: every method on one page.
- Server Owners: config, commands and permissions.
Add the repository and dependency. Use provided scope, since PUUIDs is already installed on the server:
<repository>
<id>zachduda</id>
<url>https://maven.zachduda.com/releases</url>
</repository><dependency>
<groupId>com.zachduda</groupId>
<artifactId>puuids</artifactId>
<version>4.0.1</version>
<scope>provided</scope>
</dependency>Gradle users can add maven("https://maven.zachduda.com/releases") and compileOnly("com.zachduda:puuids:4.0.1").
Declare PUUIDs in your plugin.yml, using depend if your plugin needs it or softdepend if it's optional:
depend: [PUUIDs]Then connect in onEnable, and start saving:
@Override
public void onEnable() {
PUUIDS.connect(this, PUUIDS.APIVersion.V4);
}
public void saveTitle(Player player, String title) {
PUUIDS.set(this, player.getUniqueId().toString(), "Title", title);
}PUUIDs is a Spigot plugin for Minecraft 1.13 and newer, and also runs on Paper and Folia. It requires Java 21. Check out the Spigot Page for downloads.
This project is licensed under Creative Commons (CC-BY-NC-4). You can do whatever you'd like: just give credit and make sure it's non-commercial.
Feel free to join the developer discord server and ask me for help with PUUIDs! I'd be happy to answer any questions you might have or implement any functionality you feel would assist you with your projects: https://zachduda.com/discord
If you have any questions or inquiries, you can reach me at https://zachduda.com/contact
