← Назад к ресурсам

Lock End

Lock or unlock the End globally. Blocks portals, teleports, commands. Lightweight, multilingual, and MC 26.3+ compatible.

Modrinth game-mechanics management utility

Описание

# 🔒 Lock-End **Lock-End** is a lightweight Minecraft plugin that allows server admins to globally lock or unlock access to the **End dimension** with a simple command. Perfect for survival servers, SMPs, events, or progression-based gameplay. --- ## ✨ Features * 🔐 Lock/unlock the End with `/endlock` (alias: `/lock`, `/el`) — `endlock.toggle` * 📋 Full tab completion for all commands (native Brigadier suggestions) * 🖥️ Console can toggle without permission * 🚫 Blocks player teleportation to End (portals, `/tp`, `/execute`, plugin teleports) * 📢 Broadcast system (actionbar or chat) on lock/unlock * 🕒 Restart-safe scheduled unlocks with absolute target times * 🔒 Schedule a future lock with `/endlock lockin ` or `/endlock lockat ` * 📅 Inspect and clear schedules with `/endlock schedule status` and `/endlock schedule clear` * 🛡️ Bypass rules by player name, UUID, world, or world-specific permission * 🧩 PlaceholderAPI values for status, reason, timing, blocked attempts, and schedules * 🧾 Structured audit history with pagination and JSON/CSV export * 🔍 Filter history by player or action with tab completion * 🚨 Optional evacuation: warn and move players out of the End after locking * 🔔 Optional join notifications for locked state * 📝 Logging with history tracking * 📊 bStats integration for anonymous usage statistics * ⬆️ Update checker with clickable links for Ops * 🌍 8 languages: EN, DE, FR, ES, IT, RU, ZH, JA --- ## 📜 Commands | Command | Description | Permission | | ------- | ----------- | ---------- | | `/endlock` | Toggles the End lock | `endlock.toggle` | | `/endlock lock` | Lock the End | `endlock.admin` | | `/endlock unlock` | Unlock the End | `endlock.admin` | | `/endlock status` | Show current lock status | — | | `/endlock test` | Test if portal blocking works | `endlock.admin` | | `/endlock reload` | Reload configuration and dependent components | `endlock.reload` | | `/endlock history` | View recent lock/unlock history | `endlock.history` | | `/endlock history [player|action ]` | Filter history by player or action | `endlock.history` | | `/endlock undo` | Undo the last lock/unlock action | `endlock.undo` | | `/endlock validateconfig` | Validate configuration file | `endlock.validate` | | `/endlock pause` | Pause scheduled unlock timers | `endlock.admin` | | `/endlock resume` | Resume paused scheduled unlock timers | `endlock.admin` | | `/endlock stats` | Show basic lock and block counters | *(no permission)* | | `/endlock unlockin ` | Schedule an automatic unlock | `endlock.toggle` | | `/endlock unlockin ` | Schedule an automatic unlock, e.g. `12h` or `7d` | `endlock.toggle` | | `/endlock unlockat ` | Schedule an automatic unlock at a specific time | `endlock.toggle` | | `/endlock lockin ` | Schedule an automatic lock | `endlock.toggle` | | `/endlock lockin ` | Schedule an automatic lock, e.g. `30m` or `2h` | `endlock.toggle` | | `/endlock lockat ` | Schedule an automatic lock at a specific time | `endlock.toggle` | | `/endlock lock in ` / `unlock in ` | Natural alias, e.g. `lock in 5m` | `endlock.toggle` | | `/endlock schedule status` | Show the active schedule | `endlock.admin` | | `/endlock schedule clear` | Clear the active schedule | `endlock.admin` | | `/lock` | Alias for `/endlock` | `endlock.toggle` | | `/el` | Mobile-friendly alias for `/endlock` | `endlock.toggle` | The base commands do not have a global permission in `plugin.yml`; each subcommand checks its own permission. This keeps public commands such as `status` and `stats` available while protecting administrative actions. --- ## 🧩 Permissions | Permission | Description | Default | | ---------- | ----------- | ------- | | `endlock.toggle` | Allows locking/unlocking the End | OP | | `endlock.admin` | Allows locking/unlocking the End, pausing/resuming schedules, and using the test command | OP | --- ## ⚙️ Configuration `plugins/EndLock/config.yml` ```yaml # EndLock Plugin Configuration config-version: 2 locked: false language: en # Supported: de en es fr it ja ru zh # End access scope. An empty world list means all End worlds. end: worlds: [] block-end-gateway: true block-entities: true # Also block non-player entities from entering the End # Update Checker: Notifications for available updates update-checker: enabled: true notify-ops: true notify-chat: true # Broadcast: Send alerts to all players when End is locked/unlocked broadcast: enabled: true use-actionbar: true # Send as action bar instead of chat notify-all: true # Notify all players (if false, only Ops) # Preview notifications - Warn players before automatic lock/unlock preview-notifications: enabled: false seconds: 30 # How many seconds before lock/unlock to send preview # Sound effects for access denial sound-effects: enabled: false sound: "BLOCK_ANVIL_LAND" # Enum style or namespaced key (minecraft:block.anvil.land) volume: 1.0 pitch: 1.0 # Lock reasons - Customizable reasons shown when blocking lock-reasons: default: "Maintenance" maintenance: "Maintenance in progress" event: "Event in progress" # Grace period - Delays enforcement of a new lock so players inside the # End can finish and leave safely. Access is blocked once it ends. grace-period: enabled: false duration: 10 # seconds # Whitelists - Players, UUIDs, and worlds that can bypass the lock whitelists: players: [] # Player names that can bypass the lock uuids: [] # Player UUIDs that can bypass the lock worlds: [] # End world names where players can bypass the lock # Evacuation - Optional removal of players already inside the End when locking evacuation: enabled: false warning-seconds: 10 target-world: "world" exclude-bypass: true # Logging - Audit log for lock actions and access attempts logging: enabled: true log-file: "EndLock.log" # Created in plugins/EndLock/logs/ log-attempts: true # Log attempted access to locked End rate-limit-seconds: 5 # Minimum seconds between logged attempts per player # Schedule pause/resume - Temporarily override scheduled events schedule: paused: false # Test Command: Allow /endlock test for Ops to verify blocking works test-command: enabled: true # Optional statistics collection stats: enabled: true lock-count: 0 unlock-count: 0 blocked-count: 0 evacuated-count: 0 # Lock history storage history: max-entries: 1000 # Oldest entries are dropped beyond this size retention-days: 30 # Entries older than this are removed (