Skip to content

Team Switch Limit and Queue System Implemented – API Token Authentication Upgrade

Choose a tag to compare

@bumseb1ene bumseb1ene released this 10 Oct 20:26
· 7 commits to main since this release

Changelog


English Version

1. Team Player Limit for Switching

  • New Feature: Implemented a restriction that only allows players to switch teams if the target team has fewer than 50 players.
  • Details:
    • Integrated the get_gamestate API to check the current number of players on both teams.
    • Updated the bot to verify the player count on the target team before allowing a switch.

2. Queue System for Full Teams

  • New Feature: Added a queue system for players attempting to switch when the target team is full (50 players).
  • Details:
    • Players are added to a queue if the target team is at capacity.
    • The bot checks every 10 seconds if space is available and switches the first player in the queue when possible.

3. API Token Authentication

  • Improvement: Removed the need for username and password in the API authentication process, relying solely on the API token.
  • Details:
    • Removed username and password from configuration and authentication.
    • The bot now uses only the API token to authenticate requests.

4. Switched to Using get_detailed_players API

  • Enhancement: Replaced get_players with get_detailed_players to obtain more detailed player information, including team affiliation and roles.
  • Details:
    • This allows for more accurate team and player tracking during switches.

5. Refactor of Discord.py Code

  • Code Update: Refactored parts of the code to follow best practices with discord.py version 2.x.
  • Details:
    • Moved background task handling (process_switch_queue) to the setup_hook method to align with new discord.py event handling.
    • Ensured the bot remains compatible with the latest versions of discord.py.

6. Updated Translations

  • Enhancement: Added English translations for international support and updated existing messages in the translations.json file.
  • Details:
    • Provided translations for new features such as queue notifications and API initialization.

Deutsche Version

1. Spielerbegrenzung beim Teamwechsel

  • Neue Funktion: Implementierung einer Begrenzung, die es Spielern nur erlaubt, das Team zu wechseln, wenn das Zielteam weniger als 50 Spieler hat.
  • Details:
    • Integration des API-Endpunkts get_gamestate, um die aktuellen Spielerzahlen auf beiden Teams zu überprüfen.
    • Der Bot prüft nun die Spieleranzahl auf dem Zielteam, bevor ein Wechsel erlaubt wird.

2. Warteschlangensystem für volle Teams

  • Neue Funktion: Hinzufügen eines Warteschlangensystems für Spieler, die das Team wechseln möchten, wenn das Zielteam voll ist (50 Spieler).
  • Details:
    • Spieler werden zur Warteschlange hinzugefügt, wenn das Zielteam die maximale Spieleranzahl erreicht hat.
    • Der Bot überprüft alle 10 Sekunden, ob Platz verfügbar ist, und wechselt den ersten Spieler in der Warteschlange, sobald dies möglich ist.

3. API-Token-Authentifizierung

  • Verbesserung: Entfernung der Notwendigkeit von Benutzername und Passwort in der API-Authentifizierung, wobei jetzt nur noch der API-Token verwendet wird.
  • Details:
    • Benutzername und Passwort wurden aus der Konfiguration und Authentifizierung entfernt.
    • Der Bot verwendet nun ausschließlich den API-Token zur Authentifizierung der Anfragen.

4. Wechsel zu get_detailed_players API

  • Erweiterung: Ersetzung von get_players durch get_detailed_players, um detaillierte Spielerinformationen einschließlich Teamzugehörigkeit und Rollen zu erhalten.
  • Details:
    • Dies ermöglicht eine genauere Verfolgung der Teams und Spieler während des Wechsels.

5. Refactoring des Discord.py-Codes

  • Code-Update: Teile des Codes wurden refaktoriert, um den Best Practices von discord.py Version 2.x zu folgen.
  • Details:
    • Die Hintergrundaufgabe (process_switch_queue) wurde in die Methode setup_hook verschoben, um die neue Ereignisverwaltung von discord.py zu unterstützen.
    • Sicherstellung der Kompatibilität des Bots mit den neuesten Versionen von discord.py.

6. Aktualisierte Übersetzungen

  • Verbesserung: Hinzufügen englischer Übersetzungen für internationale Unterstützung und Aktualisierung bestehender Nachrichten in der Datei translations.json.
  • Details:
    • Bereitstellung von Übersetzungen für neue Funktionen wie Warteschlangenbenachrichtigungen und API-Initialisierung.