This repository has been archived on 2025-06-18. You can view files and clone it, but you cannot make any changes to its state, such as pushing and creating new issues, pull requests or comments.
casino/projektdokumentation/Inhalt/Dice.tex
Phan Huy Tran 01b99c04c6
All checks were successful
CI / Get Changed Files (pull_request) Successful in 14s
CI / eslint (pull_request) Has been skipped
Label PRs based on size / Check PR size (pull_request) Successful in 13s
CI / oxlint (pull_request) Has been skipped
CI / Backend Tests (pull_request) Has been skipped
CI / prettier (pull_request) Has been skipped
CI / Checkstyle Main (pull_request) Has been skipped
CI / test-build (pull_request) Has been skipped
Pull Request Labeler / labeler (pull_request_target) Successful in 8s
CI / Docker frontend validation (pull_request) Has been skipped
CI / Docker backend validation (pull_request) Has been skipped
CI / Playwright (pull_request) Has been skipped
Build docs / build-docs (pull_request) Successful in 26s
Claude PR Review / claude-code (pull_request) Successful in 4m32s
docs: clean up, remove clearpages
2025-06-12 20:27:23 +02:00

43 lines
2.5 KiB
TeX

\section{Dice}
\subsection{Was ist Dice?}
Das Würfelspiel 'Dice' ist ein originelles Spiel der Casinoplattform Stake.com\footnote{Stake.com ist eine bekannte Online-Glücksspielplattform, die eine Vielzahl von Casinospielen und Sportwetten anbietet.}. Das Spiel dreht sich um einen virtuellen 100-seitigen Würfel,
bei dem Spieler die Parameter ihrer Wette beeinflussen können. Im Kern geht es darum,
einen zuvor festgelegten 'Roll Over'- oder 'Roll Under'-Betrag zu unter- oder überschreiten,
um eine Runde zu gewinnen. Spieler haben die Kontrolle über den Multiplikator und ihre Gewinnchancen:
Durch die Anpassung des Zielwerts können sie das Verhältnis
von Risiko und potenzieller Auszahlung steuern. Ein höherer Multiplikator verspricht zwar größere Gewinne,
reduziert jedoch gleichzeitig die Wahrscheinlichkeit eines erfolgreichen Würfelwurfs.
\subsubsection{Zufallszahlengenerierung}
Zur Generierung des Würfelwurfs verwendet diese Implementierung die Standardklasse java.util.Random.
Sie erzeugt eine pseudo-zufällige Zahl zwischen 1 und 100 (inklusive),
die das Ergebnis des virtuellen 100-seitigen Würfels darstellt.
\subsubsection{Spielablauf und Datenfluss}
Der zentrale Controller steuert den Spielablauf und empfängt die Anfragen vom Frontend. Jede Anfrage enthält die Eckdaten des gewünschten Würfelwurfs:
\begin{itemize}
\item \textbf{Einsatz:} Der gesetzte Münzbetrag.
\item \textbf{Wettart:} Soll der Würfel ``über'' oder ``unter'' einen Wert fallen?
\item \textbf{Zielwert:} Der vom Spieler festgelegte Referenzwert (1-100).
\end{itemize}
Zuerst prüft der Controller das Guthaben des Spielers. Bei unzureichenden Mitteln wird der Vorgang abgelehnt. Andernfalls übergibt er die weitere Ausführung an die Dienstklasse.
Die Dienstklasse übernimmt die eigentliche Logik des Würfelspiels:
\begin{enumerate}
\item Zieht den Einsatz vom Spielerkonto ab.
\item Erzeugt einen zufälligen Würfelwurf (Wert zwischen 1 und 100).
\item Prüft, ob der Wurf die Gewinnbedingung erfüllt (entsprechend Wettart und Zielwert).
\item Berechnet die Gewinnwahrscheinlichkeit und den sich daraus ergebenden Multiplikator.
\item Schreibt bei einem Gewinn den entsprechenden Betrag (Einsatz $\times$ Multiplikator) dem Spielerkonto gut.
\end{enumerate}
Das Ergebnis des Spiels wird an das Frontend zurückgesendet und enthält:
\begin{itemize}
\item Gewinnstatus (gewonnen/verloren)
\item Auszahlungsbetrag
\item Gewürfelten Wert
\end{itemize}