diff --git a/logo.png b/logo.png new file mode 100644 index 0000000..9687d2b Binary files /dev/null and b/logo.png differ diff --git a/readme.md b/readme.md index e094981..f3278ec 100644 --- a/readme.md +++ b/readme.md @@ -1,15 +1,71 @@ -# plugin hider for minecraft v1.21.5 +# PlugHide Logo PlugHide 🔌🛡️ -this plugin hides commands such as +**PlugHide** is a Kotlin-based Minecraft plugin designed to enhance server security by blocking sensitive or administrative commands from non-OP players. It prevents command abuse, tab-completion leaks, and provides operator alerts when unauthorized access is attempted. + +![Kotlin](https://img.shields.io/badge/kotlin-%237F52FF.svg?style=for-the-badge&logo=kotlin&logoColor=white) +![Gitea](https://img.shields.io/badge/Gitea-34495E?style=for-the-badge&logo=gitea&logoColor=5D9425) +![IntelliJ IDEA](https://img.shields.io/badge/IntelliJIDEA-000000.svg?style=for-the-badge&logo=intellij-idea&logoColor=white) +--- + +## ✨ Features + +- 🚫 Blocks default plugin-discovering commands (`/pl`, `/plugins`, `/version`, etc.) +- ⚠️ Notifies OPs when blocked commands are attempted +- 🔍 Filters tab-completion to prevent exposing server plugins +- ✅ Fully configurable and lightweight +- 🧩 Built using Bukkit/Spigot API + +--- + +## 📦 Installation + +1. Download the latest release `.jar` file +2. Place it in your server's `plugins` folder +3. Restart or reload your server +4. You're all set — no configuration needed! + +--- + +## 🧠 How It Works + +- **Command Blocking**: Intercepts `PlayerCommandPreprocessEvent` to cancel and report blocked commands +- **Tab Filtering**: Modifies `TabCompleteEvent` to hide suspicious completions +- **OP Notifications**: Sends styled messages to online OPs when non-OPs attempt forbidden actions + +--- + +## ⚙️ Customization (Coming Soon!) + +Future updates will include: +- Customizable blocked command list +- Toggleable plugin features +- Custom OP notification messages + +--- + +## 👨‍💻 Developer Info ```kotlin -private val blockedCommands = listOf( - "/pl", "/plugins", "/plugin", "/bukkit:pl", "/bukkit:plugins", "/bukkit:plugin", - "/minecraft:pl", "/minecraft:plugins", "/minecraft:plugin", - "/ver", "/version", "/bukkit:ver", "/bukkit:version", - "/minecraft:ver", "/minecraft:version", - "/about", "/bukkit:about", "/minecraft:about", - "/help", "/bukkit:help", "/minecraft:help", - "/?", "/bukkit:?", "/minecraft:?" - ) -``` \ No newline at end of file +class PlugHide : JavaPlugin(), Listener { + override fun onEnable() { + logger.info("PlugHide has been enabled!") + server.pluginManager.registerEvents(this, this) + } +} +``` + +Built with ❤️ in Kotlin. + +--- + +## 📃 License + +MIT License — do whatever you want with it, just give credit if you build on it. + +--- + +## 🤝 Contributions + +Feel free to submit issues or pull requests on GitHub. Suggestions and improvements are always welcome! + +--- \ No newline at end of file