AccessPass

A simple PaperMC plugin that blocks players from crossing custom world borders (X/Z) unless they have permission. Includes language auto-detection (RU/EN), config reload, block interaction protection, and customizable messages.

131

AccessPass

AccessPass 2.0 - Advanced Access Control System

<div align="center">

🚀 Powerful access control plugin for Minecraft servers

</div>

---

✨ Features

🔒 Core Access Control

- Sound & Visual Effects: Restrict player access to specific coordinates - Sound & Visual Effects: Russian and English with auto-detection - Sound & Visual Effects: Granular permissions for different access levels - Sound & Visual Effects: Customizable notifications and feedback

🆕 New in Version 2.0

🎫 Temporary Passes

- Issue time-limited access passes to players - Flexible duration system (seconds, minutes, hours, days) - Automatic cleanup of expired passes - JSON database for persistent storage

🗺️ Zone Management

- Create multiple custom zones with different settings - Priority-based zone system - Override global boundaries with specific zones - Easy zone creation and management

🖥️ GUI Interface

- User-friendly management interface - Real-time statistics and monitoring - Quick access to all plugin features - Visual zone and pass management

🔌 Developer API

- Full API for other plugins - Easy integration with existing systems - Comprehensive documentation - Example implementations

---

🛠️ Installation

Requirements

- Java: 1.8.9 - 1.21.8 - Java: Paper, Spigot, or Folia - Java: 17 or higher

Quick Setup

1. Download the JAR file 2. Place it in your `plugins/` folder 3. Start/restart your server 4. Configure in `plugins/AccessPass/config.yml`

---

📋 Commands

Basic Commands

| Command | Description | Permission | |---------|-------------|------------| | `/accesspass reload` | Reload configuration | `accesspass.admin` | | `/accesspass setlimit <X> <Z> <minX> <minZ>` | Set global boundaries | `accesspass.admin` | | `/accesspass info` | Plugin information | `accesspass.admin` |

New Commands (v2.0)

| Command | Description | Permission | |---------|-------------|------------| | `/accesspass gui` | Open management GUI | `accesspass.gui` | | `/accesspass temp <player> <time>` | Grant temporary pass | `accesspass.temp` | | `/accesspass zone <name> <x1> <z1> <x2> <z2>` | Create zone | `accesspass.zone` |

Usage Examples

```bash

Grant 1-hour temporary pass

/accesspass temp Player123 1h

Grant 30-minute temporary pass

/accesspass temp Player123 30m

Create spawn zone

/accesspass zone spawn -100 -100 100 100

Open management GUI

/accesspass gui ```

---

🔐 Permissions

Core Permissions

- `accesspass.bypass` - Bypass all restrictions - `accesspass.admin` - Full administrative access

New Permissions (v2.0)

- `accesspass.gui` - Access management GUI - `accesspass.temp` - Grant temporary passes - `accesspass.zone` - Manage zones

---

⚙️ Configuration

Global Boundaries

```yaml limits: global: limitX: 1000 # Maximum X coordinate limitZ: 1000 # Maximum Z coordinate minX: -1000 # Minimum X coordinate minZ: -1000 # Minimum Z coordinate enabled: true # Enable global boundaries ```

Temporary Passes

```yaml temporaryPasses: enabled: true defaultDuration: 3600 # 1 hour default maxDuration: 86400 # 24 hours maximum cleanupInterval: 300 # Cleanup every 5 minutes ```

Zones

```yaml limits: zones: spawn: enabled: true x1: -100 z1: -100 x2: 100 z2: 100 priority: 1 ```

GUI Settings

```yaml gui: enabled: true title: "AccessPass Management" size: 27 updateInterval: 20 ```

---

🔌 API Usage

Basic Integration

```java // Check player access if (AccessPassAPI.hasAccess(player, location)) { // Allow action }

// Grant temporary pass AccessPassAPI.grantTemporaryPass(player.getUniqueId(), 3600);

// Create zone AccessPassAPI.createZone("myzone", -100, -100, 100, 100, 1);

// Check boundaries if (AccessPassAPI.isOutOfBounds(location)) { // Location is out of bounds } ```

Available API Methods

- `hasAccess(Player, Location)` - Check player access - `grantTemporaryPass(UUID, long)` - Grant temporary pass - `hasValidTemporaryPass(UUID)` - Check pass validity - `createZone(String, int, int, int, int, int)` - Create zone - `isOutOfBounds(Location)` - Check boundary violation - `getActivePassCount()` - Get active pass count

---

🌟 Key Features

🚀 Performance Optimized

- Efficient boundary checking algorithms - Configurable performance settings - Minimal impact on server performance - Smart caching and cleanup systems

🔧 Highly Configurable

- Extensive configuration options - Customizable messages and effects - Flexible permission system - Multiple language support

🛡️ Server Compatibility

- Legacy: Full support with modern features - Legacy: Complete compatibility - Legacy: Native multi-threading support - Legacy: Backward compatibility (1.8.9+)

📊 Monitoring & Analytics

- Real-time statistics - Performance metrics - Debug logging options - GUI monitoring interface

---

🎯 Use Cases

🏠 Spawn Protection

- Protect spawn areas from griefing - Create safe zones for new players - Manage spawn boundaries easily

🏪 Shop Areas

- Restrict access to premium areas - Create VIP zones with temporary access - Manage commercial areas

🎮 Event Management

- Temporary access for events - Zone-based event areas - Time-limited access control

🛡️ Server Security

- Prevent unauthorized access - Manage player permissions - Control territory access

---

🤝 Support

📞 Getting Help

- Suggestions: Report bugs on GitHub - Suggestions: Ask in discussions - Suggestions: Submit feature requests

📚 Resources

- Webpage: Webpage - Webpage: %%MD1%% ---

<div align="center">

Made with ❤️ by Sqrilizz

</div>

ADS