▶️ ЗАБЕРИ СВОИ 8 ПОДАРКОВ 🎁 ПРИ СОЗДАНИИ СВОЕГО МАЙНКРАФТ СЕРВЕРА
Плагины/ServerTimeLock
ServerTimeLock

ServerTimeLock

Lightweight & Highly Configurable Time Based Server Access Control, Control when players can join your Minecraft server with precision and flexibility

74
1

🕒 ServerTimeLock 🕒

Lightweight & Highly Configurable Time-Based Server Access Control

Paper 1.21.5 Java 17+ License

Control when players can join your Minecraft server with precision and flexibility


✨ Features

🎯 Advanced Scheduling System

  • Global Schedule: Set the same hours for every day with a simple configuration
  • Per-Day Schedule: Define unique time windows for each day of the week
  • Multiple Time Windows: Allow multiple access periods per day (e.g., morning and evening sessions)
  • Midnight-Crossing Support: Seamlessly handle time windows that span across midnight
  • Timezone Aware: Full support for any timezone (Europe/Warsaw, UTC, America/New_York, etc.)

🔐 Flexible Permission System

  • Bypass Permission: Grant specific players access at any time with servertime.bypass
  • OP Bypass Toggle: Choose whether OPs can bypass restrictions
  • Per-Permission Control: Separate permissions for status, reload, and force commands
  • Fully Configurable: Enable or disable bypass systems as needed

📢 Multi-Channel Alert System

  • Unlimited Alerts: Set as many warning alerts as you need before server closing
  • Multiple Output Types:
    • 💬 Chat - Traditional chat messages
    • 📊 Action Bar - Persistent top-of-screen notifications
    • 📈 Boss Bar - Full-width progress bar alerts
    • 🎬 Title - Large center-screen announcements
  • Multi-Type Alerts: Combine multiple output types for maximum visibility
  • MiniMessage Support: Full rich text formatting with gradients, colors, and styles
  • Smart Placeholders: Dynamic content with <minutes>, <next_window>, and <current_time>

🔒 Soft-Lock Mode

  • Player-Friendly: Allow currently online players to finish their session
  • New Join Prevention: Block new players from joining after closing time
  • Automatic Cleanup: Reset on server opening for fresh sessions

⚙️ Powerful Commands

  • /servertime status - View detailed server status with time information
  • /servertime reload - Hot-reload configuration without restart
  • /servertime forceopen - Manually override schedule to open server
  • /servertime forceclose - Manually override schedule to close server
  • Smart Tab Completion: Full tab completion support for all commands
  • Auto-Revert: Force commands automatically revert on next schedule change

📝 Comprehensive Logging

  • Schedule activation and transitions
  • Player kicks with reasons
  • Bypass permission usage
  • Force command execution
  • Configurable verbosity levels

🎨 Rich Messaging

  • MiniMessage Format: Modern text formatting with colors, gradients, and styles
  • Fully Customizable: Every message is configurable in config.yml
  • Dynamic Placeholders: Real-time information in all messages
  • Beautiful Default Messages: Production-ready out of the box

📦 Installation

  1. Download the latest ServerTimeLock.jar from releases
  2. Place the jar file in your server's plugins/ folder
  3. Start your server to generate the default configuration
  4. Configure plugins/ServerTimeLock/config.yml to your needs
  5. Reload with /servertime reload or restart your server

🚀 Quick Start

Simple Global Schedule

Perfect for servers with consistent daily hours:

timezone: "Europe/Warsaw"
use-global-schedule: true
use-per-day-schedule: false

global-schedule:
  time-windows:
    - start: "09:00"
      end: "23:00"

Advanced Per-Day Schedule

Ideal for servers with varying weekday/weekend hours:

timezone: "America/New_York"
use-global-schedule: false
use-per-day-schedule: true

per-day-schedule:
  monday:
    - start: "15:00"
      end: "22:00"
  friday:
    - start: "15:00"
      end: "23:59"
  saturday:
    - start: "00:00"
      end: "23:59"  # Open all day
  sunday:
    - start: "10:00"
      end: "22:00"

Multiple Time Windows

Great for servers with lunch breaks or split sessions:

global-schedule:
  time-windows:
    - start: "08:00"
      end: "12:00"
    - start: "14:00"
      end: "18:00"
    - start: "20:00"
      end: "23:00"

🎮 Usage Examples

For Server Owners

Check Server Status

/servertime status

Displays current open/closed state, time until next change, and next window.

Quick Configuration Update

/servertime reload

Apply config changes without restarting the server.

Emergency Override

/servertime forceopen
/servertime forceclose

Manually control server access. Automatically reverts on next scheduled window.

For Players

Players see beautiful, informative messages when:

  • Trying to join during closed hours
  • Receiving alerts before server closes
  • Being kicked when server closes (non-soft-lock mode)

All messages support full MiniMessage formatting with colors, gradients, and styles!


🔧 Configuration Highlights

Timezone Configuration

timezone: "Europe/Warsaw"  # Any valid IANA timezone

Bypass Settings

allow-op-bypass: true              # Let OPs bypass restrictions
enable-bypass-permission: true     # Enable servertime.bypass permission

Alert Example

alerts:
  - minutes-before: 5
    types:
      - CHAT
      - TITLE
      - ACTIONBAR
    message: "<red><bold>⚠ CLOSING IN 5 MINUTES!</bold></red>"

Soft-Lock Mode

soft-lock-enabled: true  # Let online players stay, block new joins

📋 Permissions

PermissionDescriptionDefault
servertime.bypassBypass all time restrictionsfalse
servertime.adminAccess to all commandsop
servertime.statusView server statustrue
servertime.reloadReload configurationop
servertime.forceUse force open/close commandsop

🎨 Placeholders

Use these placeholders in any message:

  • <minutes> - Minutes remaining/until opening
  • <next_window> - Next opening/closing time (HH:MM format)
  • <current_time> - Current server time

🛠️ Technical Details

  • Platform: Paper 1.21.5+ (API 1.21)
  • Java Version: 17 or higher
  • Dependencies: None (Paper API only)
  • Performance: Lightweight with efficient scheduling
  • Thread-Safe: Proper synchronization for concurrent access
  • Null-Safe: Comprehensive null checks and error handling

📖 Examples

Midnight-Crossing Window

monday:
  - start: "22:00"
    end: "02:00"  # Continues into Tuesday morning

The plugin correctly handles players online during the transition and prevents kicks during valid windows.

Weekend-Only Server

use-per-day-schedule: true
per-day-schedule:
  saturday:
    - start: "00:00"
      end: "23:59"
  sunday:
    - start: "00:00"
      end: "23:59"
  # Other days have no windows = always closed

School Schedule Server

per-day-schedule:
  monday:
    - start: "15:30"  # After school
      end: "21:00"
  tuesday:
    - start: "15:30"
      end: "21:00"
  wednesday:
    - start: "15:30"
      end: "21:00"
  thursday:
    - start: "15:30"
      end: "21:00"
  friday:
    - start: "15:30"
      end: "23:30"    # Extended Friday hours
  saturday:
    - start: "10:00"
      end: "23:30"
  sunday:
    - start: "10:00"
      end: "21:00"

Support

  • contact me on discord nickname: we_rt, only with important bug related things

🌟 Why ServerTimeLock?

Production-Ready: Clean code, comprehensive error handling, and thorough testing ✅ Highly Configurable: Every aspect is customizable without code changes ✅ User-Friendly: Beautiful messages and intuitive commands ✅ Performance Optimized: Lightweight with minimal resource usage ✅ Modern: Paper API, Java 17+, and MiniMessage support ✅ Actively Maintained: Regular updates and bug fixes


Made with ❤️ for the Minecraft community

Совместимость

Minecraft: Java Edition

1.21.x

Платформы

Поддерживаемые окружения

Сервер

Создатели

Детали

Лицензия:LicenseRef-All-Rights-Reserved
Опубликован:3 месяца назад
Обновлён:3 месяца назад
Главная