README.md aktualisiert
This commit is contained in:
215
README.md
215
README.md
@@ -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.
|
||||
Reference in New Issue
Block a user