AZNetherPortal

by BeeAZ-pm-pl

Optimized vanilla-like Nether Portal system for PocketMine-MP 5

version 1.0.0

13 downloads ยท 0 stars

Published 2 Jul 2026 from BeeAZ-pm-pl/AZNetherPortal at 90c552bf8436d716c2f42de085b0eb6529245739, after moderator review.

Plugin description

๐ŸŒ‹ AZNetherPortal

AZNetherPortal Icon

A lightweight, robust, and highly optimized Nether Portal plugin for PocketMine-MP 5 that accurately recreates vanilla Bedrock and Java Nether portal behavior while maintaining excellent server performance and stability.


โœจ Features

  • ๐Ÿ”— Bidirectional Portal Linking
    Seamlessly links Overworld and Nether portals. Entering any registered portal block teleports players back to the exact paired location.

  • ๐Ÿ  Fallback Lobby Support
    Unlinked Nether portals safely return players to a configurable fallback world.

  • โšก Asynchronous Chunk Generation
    Automatically pre-generates surrounding destination chunks asynchronously before teleportation for maximum stability.

  • ๐Ÿ’พ Asynchronous SQLite Database
    All database operations run in AsyncTasks to avoid TPS drops and main-thread lag.

  • ๐Ÿงต Thread-Safe PM5 Architecture
    Designed specifically for PocketMine-MP 5 multi-threading requirements using safe serialization techniques.

  • ๐Ÿงฑ Advanced 3D Portal Detection
    Robust 3x3x3 scanning detects complete portal structures even when players enter off-center.

  • โณ Teleport Delay & Cooldown System
    Fully configurable portal warmup delays and cooldown timers to prevent teleport loops.

  • ๐ŸŒ Multi-World Support
    Easily supports survival servers using separate Overworld, Nether, and lobby worlds.


๐Ÿ“‚ Directory Structure

AZNetherPortal/
โ”œโ”€โ”€ resources/
โ”‚   โ””โ”€โ”€ config.yml
โ”œโ”€โ”€ src/BeeAZ/AZNetherPortal/
โ”‚   โ”œโ”€โ”€ Main.php
โ”‚   โ”œโ”€โ”€ listener/
โ”‚   โ”‚   โ””โ”€โ”€ EventListener.php
โ”‚   โ”œโ”€โ”€ manager/
โ”‚   โ”‚   โ”œโ”€โ”€ PortalManager.php
โ”‚   โ”‚   โ””โ”€โ”€ PortalTeleporter.php
โ”‚   โ””โ”€โ”€ task/
โ”‚       โ””โ”€โ”€ PortalSaveTask.php
โ””โ”€โ”€ plugin.yml

โš™๏ธ Configuration

# Nether world folder
nether_world: "nether"

# Fallback world when portal link is missing
fallback_world: "lobby"

# Random teleport area in Nether
rtp_min_x: -1000
rtp_max_x: 1000
rtp_min_z: -1000
rtp_max_z: 1000

# Seconds players must stand in portal
teleport_delay: 3

# Cooldown between teleportations
cooldown_time: 5

๐Ÿง  How It Works

1๏ธโƒฃ Portal Ignition

Lighting a valid Obsidian frame automatically creates a Nether Portal structure.

2๏ธโƒฃ Teleport Countdown

Players standing inside the portal trigger a configurable teleport timer.

3๏ธโƒฃ Async Chunk Preparation

Destination chunks are asynchronously loaded and generated before teleportation occurs.

4๏ธโƒฃ Portal Linking

  • Existing linked portals are reused automatically.
  • Missing links generate new paired portals safely.

5๏ธโƒฃ Database Synchronization

Broken or destroyed portals are automatically removed from cache and database asynchronously.


๐Ÿš€ Performance Focus

AZNetherPortal is designed with performance as the highest priority:

  • Minimal TPS impact
  • Fully asynchronous database handling
  • Safe teleportation logic
  • Optimized chunk preparation
  • Lightweight caching system
  • PM5 thread-safe design

๐Ÿ“ฆ Requirements

  • PocketMine-MP 5.x
  • PHP 8.1+

๐Ÿ“„ License

Licensed under the MIT License.


โค๏ธ Support

If you find bugs or have feature suggestions, feel free to open an issue on GitHub.

โญ Star the repository if you enjoy the project!

Installing it

Drop the phar into plugins/ and restart the server. If the API version below does not match your server, the plugin will refuse to load, which is the check working as intended.

Installing plugins

Releases

VersionAPIBuilt
1.0.05.0.02 Jul 2026 ยท 10 KB

SHA-256 of 1.0.0893e348b4f136cba8885ebd59a8196f0f9ef6ef00aa511f4fe1506650cdf83a8

Reviewed by a moderator before publishing. Built from BeeAZ-pm-pl/AZNetherPortal at 90c552bf8436d716c2f42de085b0eb6529245739. Nobody reviews plugin code here: read the source before running it on a server you care about.

Comments

Sign in with GitHub to star this plugin or leave a comment.

No comments yet.