From d0846a68cf9541c6f25940fc090af4bac0a1e50e Mon Sep 17 00:00:00 2001 From: Felix Koppe Date: Tue, 12 Nov 2024 14:19:38 +0000 Subject: [PATCH] Update BPMN --- Designphase/BPMN.md | 35 ++++++++++++++++++++++++++++++++++- 1 file changed, 34 insertions(+), 1 deletion(-) diff --git a/Designphase/BPMN.md b/Designphase/BPMN.md index 1d863b8..b8a0d67 100644 --- a/Designphase/BPMN.md +++ b/Designphase/BPMN.md @@ -40,4 +40,37 @@ Auf dieser Seite finden Sie die BPMN Diagramme für das Projekt. ## Turn_BPMN_v0.3.1 -![Turn_BPMN_v0.3.1](BPMN/Turn_BPMN_v0.3.1.png) \ No newline at end of file +![Turn_BPMN_v0.3.1](BPMN/Turn_BPMN_v0.3.1.png) + + +## Ablauf des Lobbyauswahl- und Spielstartprozesses + +### Verbindungsaufbau und Lobbysuche +- Der Prozess startet mit der Anzeige eines Dialogs im Client und Host ("StartDialog"), in dem der Spieler nach einem passenden Spiel sucht. +- Der Client und der Host verbinden sich mit dem Server, dargestellt durch die "connect"-Schritte, um die Lobbyauswahl anzuzeigen. + +### Beitritt zur Lobby +- Nach der Verbindungsherstellung geht der Prozess in den **Joining**-Schritt über, in dem der Host, Server und Client den Beitritt des Spielers zur Lobby koordinieren. +- Der Server sendet eine **JoinServerMessage** an den Host und den Client, die den Beitritt zur Lobby bestätigt. +- Anschließend erhält der Client vom Server eine **LobbyAcceptMessage**, die den erfolgreichen Beitritt zur Lobby signalisiert. + +### Lobby-Status-Updates und Tischauswahl +- Der Server aktualisiert die Lobby-Informationen und sendet **TskUpdateMessages** an den Host und den Client, um den aktuellen Status der Lobby anzuzeigen. +- Der Client zeigt die verfügbaren Tsk`s an, und der Spieler kann einen Tisch auswählen, um daran teilzunehmen. Diese Auswahl wird durch die **SelectTskMessage** an den Server übermittelt. + +### Start des Spiels +- Sobald die Tsk-Auswahl abgeschlossen ist und alle Spieler bereit sind (d.h eine entsprechende Nachricht gesendet haben), sendet der Server eine **GameStartMessage** an den Host und den Client, um das Spiel zu starten. +- Der Host und der Client empfangen diese Nachricht und bereiten den Übergang in das Spiel vor. + +### Würfelwurf zur Bestimmung der Startreihenfolge +- Der Server fordert Client und Host per **DiceNowMessage** auf zu wuerfeln +- Zur Bestimmung der Spielerreihenfolge wird ein Würfelwurf durchgeführt. Der Host und Client fordern einen Würfelwurf vom Server an, indem sie eine **RequestDiceMessage** senden. +- Der Server führt den Würfelwurf durch und sendet das Ergebnis als **DiceMessage** an den Host und Client, die das Ergebnis anzeigen. + +### Rangbestimmung und Übergang in das Spiel +- Basierend auf den Würfelergebnissen bestimmt der Server die Startreihenfolge und sendet eine **RankingResponseMessage** an den Host und den Client. +- Diese Nachricht gibt die endgültige Spielerreihenfolge an, und der Prozess wechselt in den Spielzustand, dargestellt durch den Übergang in den **Turn**-Prozess. + + +## Lobby_BPMN_v0.1.0 +![Lobby_BPMN_v0.1.0](BPMN/Lobby_BPMN_v0.1.0.png) \ No newline at end of file