All Border

AllBorder keeps every world border in sync, punishes intruders fairly, shows stylish warning particles, and even grows the playable area automatically

67

All Border

All Border 💚

Smart world borders for ambitious survival servers

AllBorder

AllBorder keeps every world border in sync, punishes intruders fairly, shows stylish warning particles, and even grows the playable area automatically. Designed for modern Paper / Purpur / Spigot servers (1.15.x – 1.21.x), it brings quality-of-life controls for staff while protecting players from sudden void falls or laggy chunk edges.

😎 Features

🌍 Per-world border sessions

size, center, enable/disable state, and punishment rules persist across restarts.

All Worlds

🚧 Configurable punishments

choose instant teleport to spawn or gentle damage ticks, with a customizable grace margin.

Punishment

Auto-expansion

grow the world by a fixed number of blocks every interval until a defined cap.

Auto-expansion

Live visuals

particle walls (default `SPELL_WITCH`) follow players approaching the limit, with adjustable color, spread, and spacing.

Live visuals

🆎 Localization ready

drop `messages_{locale}.yml` into `plugins/AllBorder` to add any language (English + Russian included).

messages_en.yml

``` prefix: "&8[&cAllBorder&8]&7 "

errors: no-permission: "&cYou do not have permission for this command." unknown-subcommand: "&cUnknown subcommand: &f%input%&c." missing-argument: "&cMissing argument: &f%name%&c." invalid-number: "&cCould not parse number: &f%input%&c." coordinates-required: "&cConsole must provide explicit X and Z coordinates." world-missing: "&cWorld &f%world% &cis not loaded." invalid-punishment: "&cUnknown punishment mode: &f%input%&c." unknown-expanding: "&cUnknown expansion keyword: &f%input%&c." invalid-particle: "&cUnknown particle: &f%input%&c." unsupported-particle: "&cParticle &f%input% &crequires additional data and is not supported." invalid-color: "&cInvalid HEX color: &f%input%&c." unknown-visual: "&cUnknown visuals option: &f%input%&c." unknown-state: "&cUnknown state: &f%input%&c." teleport-blocked: "&cThat teleport destination is outside the border."

info: reloaded: "&aConfiguration and messages reloaded." center-updated: "&aBorder center moved to &fX:%x% Z:%z%&a." size-updated: "&aBorder size set to &f%size% &ablocks." punishment-updated: "&aPunishment mode: &f%mode%&a." punishment-damage: "&aDamage outside the border: &f%damage%❤&a." expanding-state: "&aAuto expansion: %state%&a." expanding-every: "&aExpansion step every &f%seconds%&a seconds." expanding-blocks: "&aAdds &f%blocks% &ablocks per step." expanding-maximum: "&aMaximum expansion capped at &f%maximum% &ablocks." visuals-state: "&aVisual effects: %state%&a." visuals-updated: "&a%setting% → &f%value%&a." border-state: "&aBorder state: %state%&a."

status: header: "&6AllBorder • &e%world%" lines: - "&7Border:&f %enabled%" - "&7Size:&f %size% &7blocks" - "&7Center:&f X:%centerX% Z:%centerZ%" - "&7Expansion:&f %expanding% &7(%blocks% blocks/%interval%s) → &f%maximum%" - "&7Speed:&f %speed% &7blocks/sec" - "&7Punishment:&f %punishment%" - "&7Visuals:&f %visuals%" states: expanding-on: "&aEnabled" expanding-off: "&cDisabled" visuals-on: "&aShown" visuals-off: "&7Hidden" enabled-on: "&aEnabled" enabled-off: "&cDisabled" unavailable: "&7Unavailable" punishment: tp: "&bTeleport to spawn" damage: "&cDamage %damage%❤"

help: header: "&6Available commands:" lines: - "&e/ab&7 — quick world overview." - "&e/ab help&7 — show this list." - "&e/ab state <enable|disable>&7 — toggle the border in the current world." - "&e/ab reload&7 — reload configuration, messages, and data." - "&e/ab config center [x z]&7 — move the border center (player position if omitted)." - "&e/ab config size <blocks>&7 — set the border diameter in blocks." - "&e/ab config punishment <tp|damage> [value]&7 — select punishment mode." - "&e/ab config expanding <...>&7 — manage automatic expansion (enable/every/blocks/maximum)." - "&e/ab config visuals <...>&7 — tweak particle cues shown near the border."

punishment: teleport: "&cYou reached the world border — sending you to spawn!" damage: "&cThe border burns for %damage%❤!"

visuals: labels: particle: "Particles" color: "Color" size: "Particle size" count: "Count" distance: "Offset from player" trigger: "Trigger distance" spacing: "Vertical spacing" offset: "Vertical offset" lines: "Vertical lines" spread: "Horizontal spread" vspread: "Vertical spread" speed: "Speed" ticks: "Interval (ticks)"

```

##

🛡️ Safe teleports

punishment teleports always target the top safe block at spawn to prevent suffocation.

⚙️ Console-aware config

commands from console target a configurable world, with optional pre-tracked world entries.

🧊 Cooldown-aware punishments

repeated violations respect a configurable cooldown to avoid spam.

##

🛠️ Commands

| Command | Description | Permission | | -------------------------------------------- | ---------------------------------------------------------------------------------- | ----------------------------------------- | | `/ab` | Show the current border state for your world (size, center, punishments, visuals). | `allborder.use` | | `/ab help` | Display the curated help list. | `allborder.manage` | | `/ab state <enable|disable>` | Toggle the border for the current world. | `allborder.manage` | | `/ab reload` | Reload config, messages, and stored session data. | `allborder.reload` or `allborder.manage` | | `/ab config center [x z]` | Move the border center (defaults to player location if omitted). | `allborder.manage` | | `/ab config size <blocks>` | Set the diameter in blocks. | `allborder.manage` | | `/ab config punishment <tp|damage> [value]` | Choose teleport or damage punishment and configure damage hearts. | `allborder.manage` | | `/ab config expanding <enable|disable>` | Turn automatic expansion on or off. | `allborder.manage` | | `/ab config expanding every <seconds>` | Set the interval between expansion steps. | `allborder.manage` | | `/ab config expanding blocks <amount>` | Blocks added to the diameter per step. | `allborder.manage` | | `/ab config expanding maximum <blocks>` | Hard cap for auto expansion. | `allborder.manage` | | `/ab config visuals <option> <value>` | Live-edit particle settings (particle, color, size, count, spacing, etc.). | `allborder.manage` or `allborder.visuals` |

> Tip: Most `/ab config …` subcommands read sensible defaults from `config.yml`, and any change persists to `plugins/AllBorder/border-data.yml`.

🔐 Permissions

| Node | Grants | | ------------------- | -------------------------------------------------------------------------------------------------- | | `allborder.use` | Access to `/ab` (info) for quick inspection. | | `allborder.reload` | Permission to run `/ab reload`. | | `allborder.visuals` | Allows `/ab config visuals …` tweaks without full admin rights. | | `allborder.manage` | Full management suite: `/ab help`, `/ab state`, `/ab reload`, and every `/ab config …` subcommand. |

All permissions default to OP in `plugin.yml`, so remember to delegate them explicitly if you use a permission plugin.

⚙️ Configuration Highlights

- `general.locale` – selected messages file (default `en`, ships with `messages_en.yml` and `messages_ru.yml`). - `general.punishment-margin-blocks` – how far players may step past the border before punishment visuals vanish (default `1.0`). - `defaults.*` – initial size, center, punishment, and expansion values for new worlds. - `visuals.*` – particle type (`SPELL_WITCH` by default), color, offsets, spreads, and update interval.

ADS