78 lines
2.3 KiB
Markdown
78 lines
2.3 KiB
Markdown
# Spigot Heights
|
|
|
|
A Purpur 26.2 plugin adding craftable player-scaling potions and dispenser launch tubes for tiny players.
|
|
|
|
Approved behavior is specified in the [OKF design bundle](design/index.md).
|
|
|
|
## Requirements
|
|
|
|
- Purpur 26.2 build 2618
|
|
- Java 25 or newer
|
|
|
|
## Potions
|
|
|
|
### Potion of Shifting Stature
|
|
|
|
```text
|
|
Amethyst Shard | Chorus Fruit | Amethyst Shard
|
|
Amethyst Shard | Awkward Potion | Amethyst Shard
|
|
Amethyst Shard | Chorus Fruit | Amethyst Shard
|
|
```
|
|
|
|
Drinking it chooses a random configured scale in `0.1` increments.
|
|
|
|
### Potion of Growth
|
|
|
|
```text
|
|
Gold Ingot | Amethyst Shard | Gold Ingot
|
|
Amethyst | Potion of Shifting Stature | Amethyst
|
|
Gold Ingot | Rabbit's Foot | Gold Ingot
|
|
```
|
|
|
|
### Potion of Diminution
|
|
|
|
Use the Growth recipe with a Fermented Spider Eye instead of the Rabbit's Foot. Growth and Diminution adjust scale by one configured step and clamp at the limits.
|
|
|
|
### Potion of Restoration
|
|
|
|
```text
|
|
Gold Ingot | Amethyst Shard | Gold Ingot
|
|
Amethyst Shard | Potion of Shifting Stature | Amethyst Shard
|
|
Gold Ingot | Sugar | Gold Ingot
|
|
```
|
|
|
|
Produces one Potion of Restoration. Drinking it restores scale to exactly `1.0` (normal size), even outside configured limits. This size is saved across reconnects, respawns, and server restarts. Other saved scales are still clamped to the configured range.
|
|
|
|
## Tiny-player launchers
|
|
|
|
A player below the configured scale threshold can walk onto a hopper whose output points into a dispenser. If the block in front of that dispenser is passable, the player is moved there and launched in the direction the dispenser faces. The launcher does not require redstone.
|
|
|
|
## Configuration
|
|
|
|
Defaults are in `src/main/resources/config.yml`:
|
|
|
|
```yaml
|
|
height:
|
|
minimum: 0.4
|
|
maximum: 2.0
|
|
adjustment-step: 0.1
|
|
launcher:
|
|
maximum-player-scale-exclusive: 0.5
|
|
speed: 1.5
|
|
cooldown-ticks: 20
|
|
```
|
|
|
|
Player scales are stored by UUID in `plugins/SpigotHeights/state.yml`.
|
|
|
|
## Build
|
|
|
|
```bash
|
|
./gradlew clean check jar
|
|
```
|
|
|
|
The plugin JAR is written to `build/libs/`.
|
|
|
|
## 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.
|