▶️ ЗАБЕРИ СВОИ 8 ПОДАРКОВ 🎁 ПРИ СОЗДАНИИ СВОЕГО МАЙНКРАФТ СЕРВЕРА
Моды/PokeNotify
PokeNotify

PokeNotify

Lightweight and fun player interaction plugin — send friendly pokes, alerts, and notifications across your Minecraft server.

79
4
Все версииPokeNotify 3.0

PokeNotify 3.0

Release5 мес. назад

Список изменений

PokePlugin v3 - The Ultimate Player Interaction & Privacy Update

🧩 Platform Support

Paper Spigot Purpur Bukkit Folia


Release Date: 20 October 2025
Maintained by: AlanTheDev
Public Brand Name: PokeNotify


🚀 Version Overview

PokePlugin v3 is a major technical refinement release focused on performance, thread safety, and reliability.
This version rebuilds the plugin core for faster initialization, platform-accurate scheduling, stronger privacy enforcement, and better cross-platform support — all while remaining lightweight and stable across Folia, Paper, Spigot, Purpur, and Bukkit servers.


🔹 Core System Changes

⚡ Database Initialization

  • Converted async initialization to synchronous during plugin startup.
  • Prevents server hang and ensures faster boot times (<1 second).
  • Auto-disables the plugin if database creation or connection fails.
  • Enhanced error reporting and recovery handling.

🧠 Scheduler System

  • Implemented Platform-Aware Execution Model:
    • Folia: Uses player.getScheduler().run() (region-safe).
    • Others: Uses Bukkit.getScheduler().runTask().
  • Database operations remain fully async-safe.
  • GUI operations are automatically routed to the correct scheduler.
  • Centralized utility ensures uniform task dispatching across all server types.

🔒 Privacy & Interaction Enhancements

✅ Poke Validation Improvements

  • Verifies target’s privacy mode before sending a poke.
  • Prevents poking blocked players or those who disabled pokes.
  • Improved error messages for blocked/disabled targets.
  • Admin command /poke @a bypasses all restrictions for announcements.

🧩 Enhanced Command System

  • Added context-aware tab completion for:
    • /poke settings
    • /poke allow
    • /poke disable
    • /poke block <player>
    • /poke unblock <player>
  • Autocompletes @a for admins.
  • Sorted alphabetically for cleaner UX.

🎨 GUI & Event System

🪟 GUI Click Handling

  • GUI interactions now use platform-specific thread handling.
  • Fixed async inventory creation causing GUI not to open.
  • Improved color code stripping for reliable item title detection.
  • Separated logic paths for Folia vs Bukkit-based servers.
  • Optional debug logs for developer builds.

🧭 Player GUI Experience

  • Smooth transitions between settings and blocked players list.
  • Dynamic sizing (auto-resizes up to 54 players).
  • Fully thread-safe GUI operations.

🧱 Technical Stability Fixes

🛠 Server Hang on Startup

  • Eliminated blocking .join() calls.
  • Database operations no longer freeze the main thread.
  • Startup initialization time: under 1 second on Folia.

⚙️ Cross-Platform Compatibility

  • Fixed Folia scheduler conflicts and Paper async issues.
  • Corrected Bukkit main-thread violations.
  • Fully tested on 1.20.x – 1.21.4 versions.

💾 Database Thread Safety

  • All SQLite calls are fully asynchronous.
  • Prevents concurrent modification and threading issues.
  • Uses PreparedStatements for SQL injection protection.
  • UUID validation and malformed data filtering added.

✨ Message & Localization Updates

  • Fixed placeholder replacements (%poke_status%, %poke_privacy%) across all message contexts.
  • Corrected color formatting (now supports & and § codes).
  • Added multi-line message support for cleaner formatting.
  • Hot-reload compatible with /poke reload.

🔐 Security & Permissions

  • Players can now block unwanted pokes with full privacy enforcement.
  • Blocked players cannot detect their status (hidden protection).
  • Permission validation for all commands:
    • pokeplugin.settings – Access to player settings GUI (default: true)
    • pokeplugin.admin – Use /poke @a (default: op)
  • Database hardened with safe query execution and data filtering.

📊 Performance & Metrics

  • Fully integrated bStats (Plugin ID: 27606).
  • Tracks installations, Minecraft versions, and platforms.
  • Automatically relocates metrics package to com.alan.pokePlugin.metrics.
  • Lightweight — adds <5KB overhead to plugin size.

🧩 Configuration Overview

privacy:
  default-mode: ALLOW_ALL  # Default privacy for new players

database:
  type: sqlite
  file: data/pokedata.db

placeholders:
  enabled: true

gui:
  enabled: true
  title: "&aPoke Settings"
  size: 27

metrics:
  enabled: true

debug: false  # Enable detailed debug logging

Файлы

PokeNotify-3.0.jar(12.99 MiB)
Основной
Скачать

Метаданные

Канал релиза

Release

Номер версии

3.0

Загрузчики

Bukkit
Folia
Paper
Purpur
Spigot

Версии игры

1.20–1.21.10

Загрузок

36

Дата публикации

5 мес. назад

Загрузил

ID версии

Главная