README.md aktualisiert

This commit is contained in:
2026-06-03 19:37:28 +00:00
parent 7756f4ef17
commit 67902077a2

215
README.md
View File

@@ -1,2 +1,215 @@
# SudoPlugin # 🔧 SudoPlugin
> Führe Befehle als andere Spieler aus — mit Cooldown, Logging, Sicherheitsfiltern und vollständig anpassbaren Nachrichten.
**Minecraft:** Paper / Spigot 1.20+
**Java:** 17+
**Permission:** `sudoplugin.use` (Standard: nur OPs)
---
## Inhalt
- [Installation](#installation)
- [Benutzung](#benutzung)
- [config.yml](#configyml)
- [commands.yml](#commandsyml)
- [Permissions](#permissions)
---
## Installation
1. Die fertige `.jar` in den `plugins/`-Ordner deines Servers legen.
2. Server starten oder `/reload confirm` ausführen.
3. Beim ersten Start werden automatisch erstellt:
- `plugins/SudoPlugin/config.yml`
- `plugins/SudoPlugin/commands.yml`
---
## Benutzung
### Befehl
```
/sudo <Spielername> <Befehl> [Argumente...]
```
### Beispiele
```
/sudo Steve msg Alex Hallo!
/sudo Steve gamemode creative
/sudo Steve tp Alex
/sudo Steve fly
```
### Konfiguration neu laden
```
/sudo reload
```
Lädt sowohl `config.yml` als auch `commands.yml` neu — kein Server-Neustart nötig.
### Tab-Completion
| Argument | Vorschläge |
|----------|-----------|
| 1. Argument | Alle Online-Spieler |
| 2. Argument | Befehle aus `commands.yml` (gesperrte ausgeblendet) |
| 3. Argument | Kontextsensitiv: Spieler, Spielmodi, oder leer |
---
## config.yml
### Benachrichtigungen
```yaml
notifications:
# Zielspieler informieren wenn ein Befehl als er ausgeführt wird
notify-target: false
notify-message: "&eEin Admin hat einen Befehl als du ausgeführt."
# Bestätigung an den Ausführer anzeigen
notify-sender: true
# Jeden sudo-Befehl in der Konsole loggen
log-to-console: true
# Jeden sudo-Befehl in plugins/SudoPlugin/sudo.log schreiben
log-to-file: false
```
### Sicherheit
```yaml
security:
# /sudo auf sich selbst erlauben
allow-self-sudo: false
# /sudo auf andere OPs erlauben (nur für Nicht-OPs relevant)
allow-sudo-on-op: false
# /sudo von der Konsole aus erlauben
allow-console: true
# Befehle die niemals ausgeführt werden dürfen
# Diese werden auch in der Tab-Completion ausgeblendet
blocked-commands: []
# Beispiel:
# blocked-commands:
# - op
# - deop
# - stop
```
### Cooldown
```yaml
cooldown:
# Wartezeit in Sekunden zwischen zwei /sudo-Nutzungen (0 = deaktiviert)
seconds: 0
# true = Cooldown gilt pro Zielspieler (jeder Spieler hat eigenen Timer)
# false = Cooldown gilt global pro Ausführer
per-target: false
# Spieler mit dieser Permission ignorieren den Cooldown
bypass-permission: sudoplugin.cooldown.bypass
```
### Nachrichten
Alle Nachrichten unterstützen `&`-Farbcodes und Platzhalter.
| Platzhalter | Beschreibung |
|-------------|-------------|
| `{player}` | Name des Zielspielers |
| `{cmd}` | Ausgeführter Befehl |
| `{seconds}` | Verbleibende Cooldown-Zeit |
```yaml
messages:
prefix: "&8[&cSudo&8] &r"
no-permission: "&cDu hast keine Berechtigung."
player-not-found: "&cSpieler '{player}' ist nicht online."
usage: "&cVerwendung: /sudo <spieler> <befehl> [argumente...]"
success: "&aBefehl &f/{cmd} &awurde als &f{player} &aausgeführt."
self-sudo-denied: "&cDu kannst /sudo nicht auf dich selbst anwenden."
op-sudo-denied: "&cDu kannst /sudo nicht auf einen OP anwenden."
command-blocked: "&cDieser Befehl ist in der Konfiguration gesperrt."
cooldown-active: "&cBitte warte noch &f{seconds}s &cbevor du /sudo erneut nutzt."
reload-success: "&aKonfiguration erfolgreich neu geladen."
```
---
## commands.yml
Hier werden alle Befehle definiert die in der Tab-Completion erscheinen sollen.
Gesperrte Befehle aus `security.blocked-commands` werden automatisch ausgeblendet.
### Format
```yaml
commands:
- name: <befehlsname> # Befehlsname ohne /
args: <typ> # Typ für das 3. Argument (siehe unten)
```
### Argument-Typen (`args`)
| Wert | Beschreibung |
|------|-------------|
| `player` | Schlägt Online-Spieler vor |
| `gamemode` | Schlägt survival / creative / adventure / spectator vor |
| `""` | Keine Completion für das 3. Argument |
### Beispiel
```yaml
commands:
- name: msg
args: player
- name: tp
args: player
- name: gamemode
args: gamemode
- name: fly
args: ""
- name: meineigenerbefehl
args: ""
```
---
## Permissions
| Permission | Beschreibung | Standard |
|-----------|-------------|----------|
| `sudoplugin.use` | Erlaubt die Nutzung von `/sudo` und `/sudo reload` | OP |
| `sudoplugin.cooldown.bypass` | Umgeht den konfigurierten Cooldown | — |
### Beispiel mit LuckPerms
```
/lp user <Spieler> permission set sudoplugin.use true
/lp group <Gruppe> permission set sudoplugin.cooldown.bypass true
```
---
## ⚠️ Urheberrecht & Nutzungsbedingungen
SudoPlugin ist urheberrechtlich geschützt. © M_Viper Alle Rechte vorbehalten.
- ❌ Die Weitergabe dieses Plugins an Dritte ist strengstens untersagt
- ❌ Das Verändern, Dekompilieren oder Bearbeiten des Codes ist nicht erlaubt
- ❌ Eine Veröffentlichung auch in veränderter Form ist verboten
- ❌ Der Verkauf oder die kommerzielle Nutzung ist nicht gestattet
- ✅ Die Nutzung ist ausschließlich für den privaten Serverbetrieb erlaubt
Wer gegen diese Bedingungen verstößt, macht sich strafbar und kann rechtlich belangt werden.