Visible-Border
𝗦𝗼𝗳𝘁𝘄𝗮𝗿𝗲: PocketMine-MP
𝗡𝗮𝗺𝗲: BuyLand
𝗔𝘂𝘁𝗵𝗼𝗿: MadoxMC
𝗔𝗣𝗜: 5.0.0
𝗗𝗲𝘀𝗰𝗿𝗶𝗽𝘁𝗶𝗼𝗻: VisibleBorder adds a fully visible, physical world border to your PocketMine-MP server. Players can see exactly where the play area ends — no more guessing, no more accidental wall-hacking through an invisible boundary. Solid or damage-based, fully configurable, multi-border support included.
VisibleBorder renders a real, visible wall of entities around your world’s boundary — in a striking {COLOR} finish — so players instantly know where they can and can’t go. No plugin-side “invisible wall” confusion, no support tickets asking “why did I take damage, there’s nothing here?”
✨ Key Features
• Fully visible border — a real in-world structure, not an invisible barrier
• Solid or damage mode — physically block players, or let them cross at the cost of damage + knockback (fully configurable amount, delay, and distance)
• Multiple borders per world — create as many independent zones as you like in a single world (arenas, safe zones, event areas…), each with its own size, position, and settings
• Simple, precise commands — create, resize, recenter, or rename any border in seconds, with smart auto-detection of the border you’re standing in
• Lightweight — pure entity-based rendering, no client-side mods or resource pack fiddling required beyond the one bundled pack
Commandes — /visibleborder (alias /vb)
Create an new border.
/vb create [id] <size> (optional) <color>
Set center to the border inside an existing border.
/vb center
Resize an existing border. Without an ID, targets the one you’re standing in.
/vb size [id] <size>
Rename the ID of the border you’re currently standing in.
/vb id <newId>
Remove a border. Without an ID, targets the one you’re standing in.
/vb remove [id]
Centre a border. With no arguments, centres the border you’re standing in on your current position.
/vb center [id] [x] [z]
Make a border solid (blocks players) or non-solid (damage/knockback on crossing).
/vb solid [id] (true/false)
Configure damage dealt when crossing a non-solid border.
/vb damage [id] (amount/distance/delay) [value]
Configure knockback applied when crossing a non-solid border.
/vb knockback [id] (power/distance/delay) [value]
Teleport to the centre of a border.
/vb middle [id]
Show a border’s details (size, centre, solid state, damage, knockback…).
/vb info [id]
Show all borders again in the current world.
/vb on
Hide all borders in the current world.
/vb off
Change a border’s colour. Multicolor edition only.
/vb color [id] <colour>
Set the default colour for new borders created in this world. Multicolor edition only.
/vb worldcolor <colour>
Open the help menu (4 pages on Multicolor, 3 on single-colour editions).
/vb help [1-4]
VisibleBorder API (madoxmc\api\BorderAPI)
Creates or resizes a border to the given size.
setBorder(string $worldName, int $size, string $borderId = "1"): bool
Returns the current size of a border.
getBorderSize(string $worldName, string $borderId = "1"): ?int
Checks whether a border exists.
borderExists(string $worldName, string $borderId = "1"): bool
Removes a border.
removeBorder(string $worldName, string $borderId = "1"): bool
Moves a border's centre to the given coordinates.
centerBorder(string $worldName, int $x, int $z, string $borderId = "1"): bool
Returns a border's centre X coordinate.
getCenterX(string $worldName, string $borderId = "1"): ?int
Returns a border's centre Z coordinate.
getCenterZ(string $worldName, string $borderId = "1"): ?int
Sets whether a border is solid (blocks players) or not (damage/knockback).
setSolid(string $worldName, bool $solid, string $borderId = "1"): bool
Returns whether a border is currently solid.
getSolid(string $worldName, string $borderId = "1"): ?bool
Sets the damage dealt when crossing a non-solid border.
setDamageAmount(string $worldName, int $amount, string $borderId = "1"): bool
Returns the current damage amount.
getDamageAmount(string $worldName, string $borderId = "1"): ?int
Sets the safe distance before damage triggers on a non-solid border.
setDamageDistance(string $worldName, int $distance, string $borderId = "1"): bool
Returns the current damage distance.
getDamageDistance(string $worldName, string $borderId = "1"): ?int
Sets the delay between damage applications.
setDamageDelay(string $worldName, int $delay, string $borderId = "1"): bool
Returns the current damage delay.
getDamageDelay(string $worldName, string $borderId = "1"): ?int
Sets the knockback power applied when crossing a non-solid border.
setKnockbackPower(string $worldName, int $power, string $borderId = "1"): bool
Returns the current knockback power.
getKnockbackPower(string $worldName, string $borderId = "1"): ?int
Sets the safe distance before knockback triggers.
setKnockbackDistance(string $worldName, int $distance, string $borderId = "1"): bool
Returns the current knockback distance.
getKnockbackDistance(string $worldName, string $borderId = "1"): ?int
Sets the delay between knockback applications.
setKnockbackDelay(string $worldName, int $delay, string $borderId = "1"): bool
Returns the current knockback delay.
getKnockbackDelay(string $worldName, string $borderId = "1"): ?int
Changes a border's colour. Multicolor edition only — returns `false` harmlessly on single-colour editions.
setBorderColor(string $worldName, string $color, string $borderId = "1"): bool
Shows all borders in the player's current world.
setBorderOn(Player $player): void
Hides all borders in the player's current world.
setBorderOff(Player $player): void
⚖️ License Notice
By purchasing this plugin, you waive your right of withdrawal and accept our End User License Agreement (EULA), No-Refund, and the plugin’s included license.