# Trigger Spawn A Spigot 26.2 plugin providing progression-gated, safe teleportation to each world's spawn area. The behavior under development 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/`. On first startup, the plugin creates `plugins/TriggerSpawn/config.yml`. Its cooldown defaults are: ```yaml cooldowns: one-kill-seconds: 28800 two-kill-seconds: 14400 three-kill-seconds: 3600 ``` Durable player and per-world state is stored in `plugins/TriggerSpawn/state.yml`. Each world initially uses its native spawn and a 20-block circular radius. An operator can configure the current world with: ```text /spawnadmin set /spawnadmin distance /spawnadmin info /spawnadmin grant /spawnadmin remove /spawnadmin access [page] /spawnadmin ban /spawnadmin unban /spawnadmin bans [page] ``` Grant durations support friendly units and combinations such as `30m`, `2h`, `1d`, or `1h30m`. For a local versioned build: ```bash ./gradlew clean check jar -PreleaseVersion=1.2.3 ``` ## Releases Gitea Actions checks every push and pull request and stores a development JAR as a workflow artifact. Pull requests also validate conventional commits. Pushes to `main` run semantic-release. A release-causing conventional commit builds a versioned JAR and attaches it to the corresponding public Gitea release. The repository must define a `RELEASE_TOKEN` secret with repository contents write permission.