Zum Hauptinhalt springen

Alliances

Allianzverwaltungssystem für die Dark War Survival Community. Befehle sind unter dem Präfix /alliance gruppiert.

Ranghierarchie

Das Allianzsystem verwendet Ränge R1–R5:

  • R5 — Anführer (einer pro Allianz, volle Berechtigungen)
  • R4 — Offizier (einladen, R1–R3 kicken)
  • R3–R1 — Mitglieder (keine Verwaltungsberechtigungen)

Befehle

/alliance create

Erstellt eine neue Allianz mit angegebenem Namen, Tag und Farbe. Erstellt automatisch eine Discord-Rolle im Format [TAG] Name.

ParameterTypErforderlichBeschreibung
namestringJaAllianzname (2–32 Zeichen: Buchstaben, Ziffern, Leerzeichen, Bindestriche)
tagstringJaKurztag (1–5 alphanumerische Zeichen, z.B. KNS)
colorstringNeinRollenfarbe im Hex-Format (Standard #5865F2)

Berechtigungen: Server-Administrator, Management Roles oder R5 in einer beliebigen Allianz

Beispiel: /alliance create name:Knights tag:KNS color:#E74C3C

Erfolg: Erstellt Allianz, Discord-Rolle [KNS] Knights, fügt Ersteller als R5 hinzu, weist Rolle zu, fügt optional zu Reaction Roles hinzu
Fehler:

  • Keine Berechtigungen
  • Ungültiger Name (unerlaubte Zeichen oder Länge)
  • Ungültiger Tag (nicht 1–5 alphanumerisch)
  • Ungültiges Farbformat (nicht #XXXXXX)
  • Allianz-Limit erreicht (Standard 10)
  • Allianz mit diesem Namen existiert bereits
  • Tag bereits von anderer Allianz belegt
  • Bot kann keine Rolle erstellen (fehlende manage_roles-Berechtigung)
Tag-Format

Der Benutzer gibt KNS ein, das System speichert als [KNS] und erstellt die Rolle [KNS] Knights.


/alliance delete

Löscht eine Allianz — entfernt den Datenbankeintrag, löscht die Discord-Rolle von allen Mitgliedern, bereinigt Verknüpfungen.

ParameterTypErforderlichBeschreibung
namestringJaName der zu löschenden Allianz

Berechtigungen: Server-Administrator (ausschließlich)

Beispiel: /alliance delete name:Knights

Erfolg: Löscht Allianz, Rolle, Mitglieder aus der Datenbank, aktualisiert Reaction Roles
Fehler:

  • Keine Administrator-Berechtigung
  • Allianz nicht gefunden
  • Datenbankfehler

/alliance invite

Lädt einen Benutzer in Ihre Allianz ein. Fügt ihn als R1 hinzu und weist die Discord-Rolle zu.

ParameterTypErforderlichBeschreibung
memberMemberJaEinzuladender Benutzer

Berechtigungen: R4 oder R5 in der eigenen Allianz

Beispiel: /alliance invite member:@NeuerSpieler

Erfolg: Fügt Mitglied als R1 hinzu, weist Allianzrolle zu
Fehler:

  • Sie sind in keiner Allianz
  • Ihr Rang ist unter R4
  • Ziel ist bereits in Ihrer Allianz
  • Ziel ist in einer anderen Allianz (muss zuerst verlassen)
  • Allianz hat Mitgliederlimit erreicht (Standard 50)

/alliance kick

Wirft ein Mitglied aus Ihrer Allianz. Entfernt aus der Datenbank und entzieht die Discord-Rolle.

ParameterTypErforderlichBeschreibung
memberMemberJaZu entfernendes Mitglied

Berechtigungen: R4 oder R5 in der eigenen Allianz

Beispiel: /alliance kick member:@InaktiverSpieler

Erfolg: Entfernt Mitglied, entzieht Rolle
Fehler:

  • Sie sind in keiner Allianz
  • Ihr Rang ist unter R4
  • Ziel ist nicht in Ihrer Allianz
  • R4 versucht R4 oder höher zu kicken (nicht erlaubt)
  • Versuch sich selbst zu kicken (verwenden Sie /alliance leave)
R4-Einschränkungen

R4 kann nur Mitglieder mit Rang R1–R3 kicken. R5 kann alle außer sich selbst kicken.


/alliance leave

Verlässt Ihre aktuelle Allianz. Entzieht die Discord-Rolle.

ParameterTypErforderlichBeschreibung
(keine)

Berechtigungen: Jedes Allianzmitglied (außer R5)

Beispiel: /alliance leave

Erfolg: Entfernt Sie aus der Allianz, entzieht Rolle
Fehler:

  • Sie sind in keiner Allianz
  • Sie sind R5 — müssen zuerst die Führung übertragen (/alliance transfer)

/alliance promote

Befördert ein Allianzmitglied um einen Rang (max bis R4).

ParameterTypErforderlichBeschreibung
memberMemberJaZu beförderndes Mitglied

Berechtigungen: R5 (nur Anführer)

Beispiel: /alliance promote member:@AktiverSpieler

Erfolg: Erhöht Rang um 1 (z.B. R2 → R3)
Fehler:

  • Sie sind in keiner Allianz
  • Sie haben nicht Rang R5
  • Ziel ist nicht in Ihrer Allianz
  • Ziel ist bereits R4 (maximale Beförderung — R5 kann nur übertragen werden)

/alliance demote

Degradiert ein Allianzmitglied um einen Rang (min R1).

ParameterTypErforderlichBeschreibung
memberMemberJaZu degradierendes Mitglied

Berechtigungen: R5 (nur Anführer)

Beispiel: /alliance demote member:@Spieler

Erfolg: Verringert Rang um 1 (z.B. R3 → R2)
Fehler:

  • Sie sind in keiner Allianz
  • Sie haben nicht Rang R5
  • Ziel ist nicht in Ihrer Allianz
  • Ziel ist bereits R1 (niedrigster Rang)

/alliance transfer

Übergibt die Führung (R5) an ein anderes Allianzmitglied. Sie werden R4.

ParameterTypErforderlichBeschreibung
memberMemberJaNeuer Anführer

Berechtigungen: R5 (nur aktueller Anführer)

Beispiel: /alliance transfer member:@NeuerAnführer

Erfolg: Ziel → R5, Sie → R4 (atomare Transaktion)
Fehler:

  • Sie sind in keiner Allianz
  • Sie haben nicht Rang R5
  • Versuch an sich selbst zu übertragen
  • Ziel ist nicht in Ihrer Allianz

/alliance info

Zeigt Allianzdetails: Mitgliederliste gruppiert nach Rängen, Erstellungsdatum, Rolle.

ParameterTypErforderlichBeschreibung
namestringNeinAllianzname (wenn leer — zeigt Ihre Allianz)

Berechtigungen: Jeder (Everyone)

Beispiel: /alliance info oder /alliance info name:Knights

Erfolg: Embed mit Allianzdaten (Farbe, Datum, Rolle, Mitgliederliste R5→R1)
Fehler:

  • Kein Name angegeben und Sie sind in keiner Allianz
  • Allianz nicht gefunden

/alliance list

Zeigt die Liste aller aktiven Allianzen auf dem Server.

ParameterTypErforderlichBeschreibung
(keine)

Berechtigungen: Jeder (Everyone)

Beispiel: /alliance list

Erfolg: Embed mit Allianzliste (Name, Mitgliederzahl, Anführer)
Fehler:

  • Keine Allianzen auf dem Server (Information)

Automatische Verhaltensweisen

Auto-Sukzession

Wenn der Anführer (R5) den Server verlässt:

  • Wenn andere Mitglieder vorhanden → der höchstrangige (dann nach Dienstalter) wird automatisch R5
  • Wenn er das einzige Mitglied war → Allianz wird als inaktiv markiert

Integration mit Reaction Roles

Wenn auto_reaction_role in der Konfiguration aktiviert ist:

  • Allianzerstellung → Rolle wird zum Reaction-Roles-Panel hinzugefügt
  • Allianzlöschung → Rolle wird aus dem Panel entfernt
  • Rollenzuweisung über Reaction Role → automatischer Beitritt zur Allianz als R1
  • Rollenentfernung → automatisches Verlassen der Allianz
  • Versuch einer zweiten Allianz über Reaction Role beizutreten → Rolle wird automatisch entfernt (Ablehnung)

Serververlassen

Wenn ein Allianzmitglied den Server verlässt, wird es automatisch aus der Allianz entfernt. Wenn es R5 war, wird die Auto-Sukzession ausgelöst.


Konfiguration

OptionBeschreibungStandardwert
max_alliancesMaximale Allianzanzahl pro Server10
max_membersMaximale Mitgliederzahl pro Allianz50
auto_reaction_roleIntegration mit Reaction-Roles-Panelfalse
reaction_role_indexIndex des zu synchronisierenden RR-Panelsnull (erstes)
management_rolesRollen, die Allianzen erstellen/verwalten könnenkeine