Spigot Base
A Spigot 26.2 plugin providing progression-gated player bases and quality-of-life unlocks.
Players begin by breaking Survival-mode grass blocks or dirt. The progression paths provide a persistent base, navigation particles, expanding base bounds, controlled flight, personal teleportation, and visitor teleportation.
The approved behavior is specified in the OKF design bundle.
Requirements
- Spigot 26.2
- Java 17 or newer
Build
./gradlew clean check jar
The plugin JAR is written to build/libs/.
Player commands
/setbase (alias: /sethome)
/base (alias: /home)
/base upgrade (alias: /home upgrade)
/basenavigation
/baseflight
/basevisitors
/gotobase <player> (alias: /visit <player>)
/baseprogress
/baseprogress bossbar
/base has a stationary warm-up. Looking around is allowed, while movement between blocks, damage, teleportation, world changes, death, logout, and conflicting teleport commands cancel it without consuming the cooldown.
Administration
The spigotbase.admin permission is granted to server operators by default.
/baseadmin progress <player>
/baseadmin setlevel <player> <base|size|flight|warmup|cooldown> <level>
/baseadmin setprogress <player> <grass_dirt|stone|deepslate|obsidian|placements|base_breaks> <amount>
/baseadmin config <numeric-key> <value>
/baseadmin clearcooldown <player> [personal|visitor|all]
/baseadmin reset <player> <base|size|flight|warmup|cooldown>
/baseadmin reset <player> all confirm
Default thresholds and durations are documented in src/main/resources/config.yml. Durable UUID-keyed state is stored in plugins/SpigotBase/state.yml using atomic replacement where supported.
Releases
Gitea Actions checks pushes and pull requests and stores a development JAR. Pull requests validate conventional commits. Main-branch conventional commits drive semantic releases when the repository defines a RELEASE_TOKEN with contents-write permission.