# 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](design/index.md). ## Requirements - Spigot 26.2 - Java 17 or newer ## Build ```bash ./gradlew clean check jar ``` The plugin JAR is written to `build/libs/`. ## Player commands ```text /setbase (alias: /sethome) /base (alias: /home) /gotobase (alias: /visit ) /basesettings (alias: /homesettings) /basesettings status /basesettings upgrade /basesettings visitors /basesettings navigation /basesettings flight /basesettings border /basesettings 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. `/homeadmin` aliases `/baseadmin`. ```text /baseadmin status /baseadmin setlevel /baseadmin setprogress /baseadmin config /baseadmin clearcooldown [personal|visitor|all] /baseadmin reset /baseadmin reset 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.