niso.moe
  • Projects
  • Posts
  • Contact

© 2026 niso.moe

  • Imprint
  • Privacy
  1. projects
  2. /
  3. papermc-plugin

PaperMC Plugin

Visit siteSource
Date
16 Mar 2025
Author
NINikki Sophie 🌸
Stack
Java, PaperMC, PostgreSQL, Maven
Tags
Back-EndMinecraft

Pictures

Overview

Instead of running a Minecraft server on a dozen separate plugins, I wrote one core plugin for my survival server. NisoPlugin covers the everyday commands players and moderators need, gives the server a consistent look from the server list to the chat, and keeps itself up to date.

Features

  • Homes and warps stored in PostgreSQL, with commands to set, list, delete and teleport to them.
  • Teleport asks: /tpa and /tphere, which the other player accepts or denies.
  • Utility commands: fly, vanish, repair, trash, a portable ender chest and workbench, feed, heal and god mode.
  • Invsee to view and edit another player's inventory, armor and offhand included.
  • Autocomplete for homes, warps and more.
  • The server's look: a custom server list message, join and leave messages, chat format and tablist, all written in MiniMessage with PlaceholderAPI placeholders and LuckPerms prefixes.
  • A resource pack server built into the plugin, so the server can hand out its own resource pack without a separate web host.

Keeping itself healthy

Automatic updates. The plugin looks for new releases off the main thread and downloads them into the server's update folder, so the next restart applies them. Operators are told when an update is waiting.

A config health check. After an update, settings that are missing get added, invalid values are replaced with their defaults and a warning, and the comments in the config are kept in line with the bundled one.

Releases from a tag. Pushing a version tag builds the plugin and publishes the release that servers then download.

Edge cases

A plugin like this is mostly about edge cases. A vanished player has to stay hidden from everyone already online and everyone who joins later, get no join or leave message, and still be vanished after a restart, which is why vanish lives in the database now instead of the config.

Stack

Java, Maven, the PaperMC API, PostgreSQL, PlaceholderAPI, LuckPerms and MiniMessage.

On this page

  1. Overview
  2. Features
  3. Keeping itself healthy
  4. Edge cases
  5. Stack
Back to top
Newer projectProfile ShowcaseMy own soft, pastel corner of the internet: a personal page instead of a link-in-bio service, with my profile, what I'm up to right now, a photo gallery and every place you can…15 Jul 2026 · Next.js · TypeScript · Tailwind CSS