Glücksspielsystem
Das Glücksspielsystem fügt EliteMobs ein vollwertiges Casino hinzu. Spieler können ihre Elite-Münzen in vier verschiedenen Minispielen einsetzen, Schulden machen, wenn ihnen das Geld ausgeht, und die Konsequenzen tragen, wenn der Schuldeneintreiber an die Tür klopft. Serveradministratoren können jeden Aspekt des Systems konfigurieren, von den Auszahlungsmultiplikatoren bis zu den Schuldengrenzen.
Einrichtung
Auf das Glücksspielsystem wird über speziell konfigurierte NPCs zugegriffen. Jedes Spiel und jede Anzeige hat ihren eigenen NPC-Interaktionstyp.
Um einen Glücksspiel-NPC einzurichten, erstelle eine NPC-Konfigurationsdatei und setze interactionType auf einen der folgenden Werte:
| Interaktionstyp | Beschreibung |
|---|---|
GAMBLING_BLACKJACK | Öffnet das Einsatzmenü für Blackjack |
GAMBLING_COINFLIP | Öffnet das Einsatzmenü für Münzwurf |
GAMBLING_SLOTS | Öffnet das Einsatzmenü für den Spielautomaten |
GAMBLING_HIGHERLOWER | Öffnet das Einsatzmenü für Höher oder Tiefer |
Der NPC des Spielhöllenbesitzers verwendet keinen speziellen Interaktionstyp. Um ihn einzurichten, erstelle einen NPC mit dem Dateinamen gambling_den_owner.yml. Die Anzeige der Hauseinnahmen erscheint anhand dieses Dateinamens automatisch über dem NPC.
Spiele
Blackjack
Es gelten die üblichen Blackjack-Regeln. Ziel ist es, so nah wie möglich an 21 heranzukommen, ohne sie zu überschreiten.
Regeln
- Sowohl Spieler als auch Dealer erhalten zwei Karten.
- Die zweite Karte des Dealers bleibt verdeckt, bis der Spieler passt.
- Asse zählen als 11 oder 1 (wird automatisch angepasst, um ein Überkaufen nach Möglichkeit zu vermeiden).
- Bildkarten (Bube, Dame, König) zählen als 10.
- Der Dealer bleibt bei 17 stehen.
- Spieler können bis zu 5 Karten halten.
Aktionen
| Aktion | Beschreibung |
|---|---|
| Hit | Eine weitere Karte ziehen. |
| Stand | Aktuelles Blatt behalten; anschließend ist der Dealer am Zug. |
| Double Down | Verdopple deinen Einsatz, ziehe genau eine Karte und passe anschließend automatisch. Nur bei deiner ersten Aktion verfügbar (wenn du 2 Karten hast) und nur, wenn du dir die Verdopplung deines Einsatzes leisten kannst. |
Auszahlungen
| Ergebnis | Standardmultiplikator |
|---|---|
| Normaler Gewinn (Spielersumme schlägt den Dealer oder Dealer überkauft sich) | 2.0x |
| Blackjack (21 mit den ersten beiden Karten) | 2.5x |
| Push (Unentschieden) | 1.0x (Einsatz wird zurückgezahlt) |
| Niederlage (Spieler überkauft sich oder Dealer hat die höhere Summe) | 0x (Einsatz verloren) |
Das Menü schließen
Schließt ein Spieler das Menü während des Dealer-Zugs, wird das Blatt des Dealers automatisch ausgespielt und das Ergebnis ermittelt. Schließt ein Spieler das Menü, bevor er passt, verfällt der Einsatz.
Münzwurf
Ein einfaches 50/50-Spiel. Wähle Kopf oder Zahl, und die Münze entscheidet über dein Schicksal.
So wird gespielt
- Das Spiel öffnet sich mit einer Kopf- und einer Zahl-Schaltfläche.
- Klicke auf eine der beiden, um deine Wahl zu treffen.
- Eine Münzwurf-Animation wird abgespielt.
- Das Ergebnis wird angezeigt.
Auszahlungen
| Ergebnis | Standardmultiplikator |
|---|---|
| Richtig geraten | 1.9x |
| Kante (Münze landet auf der Kante) | 5.0x |
| Falsch geraten | 0x (Einsatz verloren) |
Das Kanten-Ergebnis
Es besteht eine Wahrscheinlichkeit von 1 %, dass die Münze auf der Kante landet statt auf Kopf oder Zahl. Tritt dies ein, gewinnt der Spieler unabhängig von seiner Wahl immer und erhält eine 5-fache Auszahlung auf seinen Einsatz. Für dieses seltene Ereignis werden eine besondere Chatnachricht und eine besondere visuelle Darstellung gezeigt.
Das Menü schließen
Schließt ein Spieler das Menü, bevor er eine Wahl trifft, verfällt der Einsatz.
Spielautomat
Drehe drei Walzen und bringe Symbole in Reihe, um zu gewinnen. Seltenere Symbole zahlen mehr aus.
So wird gespielt
- Das Spiel öffnet sich mit einem 3x3-Walzenraster und einer Dreh-Schaltfläche.
- Klicke auf Drehen, um die Walzen zu starten.
- Jede Walze bleibt nacheinander mit einer Animation stehen.
- Die mittlere Reihe (Gewinnlinie) bestimmt das Ergebnis.
Symbole und Auszahlungen
Jedes Symbol hat eine Gewichtung, die bestimmt, wie oft es erscheint. Der Auszahlungsmultiplikator für drei gleiche Symbole wird mit 100 / weight berechnet. Zwei übereinstimmende Symbole zahlen 25 % der Dreier-Auszahlung des jeweiligen Symbols.
| Symbol | Gewichtung | Chance | Auszahlung bei 3 gleichen | Auszahlung bei 2 gleichen |
|---|---|---|---|---|
| Kirsche | 35 | 35% | 2.86x | 0.71x |
| Zitrone | 28 | 28% | 3.57x | 0.89x |
| Orange | 20 | 20% | 5.0x | 1.25x |
| Goldene Glocke | 10 | 10% | 10.0x | 2.5x |
| Silberbarren | 5 | 5% | 20.0x | 5.0x |
| Glücks-7 | 2 | 2% | 50.0x | 12.5x |
Drei Glücks-7en sind der Jackpot und lösen einen besonderen Bild- und Soundeffekt aus.
Das Menü schließen
Schließt ein Spieler das Menü vor dem Drehen, verfällt der Einsatz.
Höher oder Tiefer
Ein Kartenspiel auf Serienbasis. Rate, ob die nächste Karte höher oder tiefer als die aktuelle ist, und baue einen Multiplikator auf. Lass dir jederzeit auszahlen oder setze alles aufs Spiel.
So wird gespielt
- Eine Karte wird gezogen und angezeigt (Werte reichen von 2 bis 14, wobei Ass = 14).
- Rate, ob die nächste Karte höher oder tiefer als die aktuelle Karte ist.
- Rätst du richtig, steigt dein Multiplikator und die aufgedeckte Karte wird zur neuen aktuellen Karte.
- Nach mindestens einem richtigen Tipp kannst du dir jederzeit auszahlen lassen.
- Rätst du falsch, verlierst du deinen gesamten Einsatz.
- Ist die nächste Karte gleichwertig zur aktuellen Karte, gilt das als Niederlage.
Serienmultiplikator
Jeder richtige Tipp multipliziert deinen Gewinn mit dem konfigurierten Multiplikator (standardmäßig 1.3x). Der Multiplikator stapelt sich:
| Serie | Multiplikator (Standard) | Auszahlung bei 100 Münzen Einsatz |
|---|---|---|
| 1 | 1.3x | 130 |
| 2 | 1.69x | 169 |
| 3 | 2.197x | 219.7 |
| 4 | 2.856x | 285.6 |
| 5 | 3.713x | 371.3 |
| ... | ... | ... |
| 12 | ~23.3x | ~2,330 |
Maximale Serie und automatische Auszahlung
Die maximale Serie beträgt 12. Erreicht ein Spieler 12 richtige Tipps, wird ihm automatisch ausgezahlt und sein Gewinn gutgeschrieben. Das verhindert außer Kontrolle geratene Multiplikatoren.
Das Menü schließen
Schließt ein Spieler das Menü, während er eine Gewinnserie hat, wird ihm automatisch ausgezahlt und er erhält seinen aktuellen Gewinn. Schließt er es, bevor er einen Tipp abgegeben hat, verfällt der Einsatz.
Einsätze
Vor Beginn eines Spiels wird dem Spieler ein Einsatzmenü angezeigt, in dem er seinen Wetteinsatz wählt.
Einsatzgrenzen
| Einstellung | Standardwert |
|---|---|
| Mindesteinsatz | 10 |
Es gibt keinen konfigurierbaren Höchsteinsatz. Spieler können so viel setzen, wie sie sich leisten können (einschließlich Kredit aus dem Schuldensystem).
Steuerelemente des Einsatzmenüs
Das Einsatzmenü bietet mehrere Steuerelemente:
- Schrittschaltflächen -- Drei Größen von Erhöhungs- und Verringerungsschaltflächen. Hat der Spieler mindestens 100 Münzen und keine Schulden, sind die Schritte prozentual (5 %, 10 %, 25 % des Guthabens). Andernfalls werden feste Beträge von 10, 50 und 100 verwendet.
- All In -- Setzt den Einsatz auf das Maximum, das sich der Spieler leisten kann (einschließlich verfügbarem Kredit).
- Reset -- Setzt den Einsatz auf das Minimum zurück.
- Play -- Startet das Spiel mit dem aktuellen Einsatz. Nur aktiv, wenn sich der Spieler den Einsatz leisten kann.
- Cancel -- Schließt das Menü, ohne zu setzen.
Das Menü zeigt das aktuelle Guthaben des Spielers, etwaige bestehende Schulden und den verfügbaren Kredit an.
Schuldensystem
Spieler können über ihr Guthaben hinaus setzen, indem sie Schulden machen. Das Casino gewährt Kredit bis zu einer konfigurierbaren Grenze.
So funktionieren Schulden
- Setzt ein Spieler einen Einsatz, der sein Guthaben übersteigt, wird der Restbetrag als Spielschuld verbucht.
- Die maximale Schuld, die ein Spieler anhäufen kann, beträgt standardmäßig 500 Münzen.
- Spieler können keine Einsätze tätigen, die ihre Schulden über das Maximum hinaus treiben würden.
- Gewinnt ein Spieler, werden seine Gewinne zuerst zur Tilgung der Schulden verwendet, bevor sie seinem Guthaben gutgeschrieben werden.
Verfügbarer Kredit
Der verfügbare Kredit eines Spielers berechnet sich als: maxDebt - currentDebt. Er wird im Einsatzmenü angezeigt.
Schuldenwarnung
Gerät ein Spieler in die Schulden, erhält er eine Warnmeldung. Der Schuldeneintreiber kann ihn aufsuchen, solange er offene Schulden mit sich herumträgt.
Der Schuldeneintreiber-Boss
Der Schuldeneintreiber ist ein benutzerdefinierter Boss, der spawnt, um Spieler mit Spielschulden zu jagen.
Spawn-Bedingungen
- Der Spieler muss offene Spielschulden haben.
- Eine regelmäßige Prüfung läuft alle 60 Minuten (konfigurierbar) für alle Online-Spieler.
- Jede Prüfung hat eine Chance von 50 % (konfigurierbar), den Schuldeneintreiber für einen infrage kommenden Spieler zu spawnen.
- Pro Spieler kann jeweils nur ein Schuldeneintreiber aktiv sein.
- Der Schuldeneintreiber verwendet die Datei für benutzerdefinierte Bosse
debt_collector.yml.
Level-Skalierung
Das Level des Schuldeneintreibers richtet sich nach dem Kampflevel des Zielspielers. Seine Werte (Leben, Schaden usw.) werden durch die Konfigurationsdatei debt_collector.yml für benutzerdefinierte Bosse bestimmt und folgen denselben Regeln wie bei jedem anderen benutzerdefinierten Boss in EliteMobs.
Verhalten
- Der Schuldeneintreiber spawnt 5 bis 10 Blöcke vom Spieler entfernt.
- Er nimmt sofort den Spieler ins Visier, für den er gespawnt wurde.
- Er hat standardmäßig ein Zeitlimit von 600 Sekunden (10 Minuten). Wird er in dieser Zeit nicht getötet, verschwindet er und warnt den Spieler, dass er zurückkehren wird.
Ergebnisse
| Ergebnis | Auswirkung |
|---|---|
| Spieler tötet den Schuldeneintreiber | Der Boss verschwindet. Die Schulden des Spielers werden nicht verringert, aber er erhält die Nachricht, dass der Boss zurückkehren wird. |
| Schuldeneintreiber tötet den Spieler | Die Schulden des Spielers werden um 50 Münzen (konfigurierbar) verringert. Werden die Schulden dadurch vollständig getilgt, wird der Spieler benachrichtigt. Der Schuldeneintreiber verschwindet nach 5 Sekunden. |
| Zeitlimit (nicht rechtzeitig getötet) | Der Schuldeneintreiber verschwindet und sendet eine Warnmeldung. Er versucht bei der nächsten Prüfung erneut zu spawnen. |
Spielhöllenbesitzer
Der Spielhöllenbesitzer ist ein besonderer NPC, der die Hauseinnahmen als schwebende Textanzeige über seinem Kopf darstellt. Sie zeigt den gesamten Gewinn oder Verlust, den das Haus durch sämtliche Glücksspielaktivitäten angehäuft hat.
- Positive Einnahmen werden in Grün angezeigt (z. B.
+1234.56). - Negative Einnahmen (Spieler gewinnen mehr, als sie verlieren) werden in Rot angezeigt (z. B.
-567.89). - Die Anzeige aktualisiert sich jede Sekunde.
- Die Hauseinnahmen werden in
house_earnings.ymlgespeichert und überstehen Serverneustarts.
Konfiguration
Alle Glücksspieleinstellungen werden in GamblingSettings.yml gespeichert. Nachfolgend die wichtigsten spielrelevanten Einstellungen.
Allgemeine Einstellungen
| Schlüssel | Beschreibung | Standard |
|---|---|---|
gamblingEnabled | Aktiviert oder deaktiviert das gesamte Glücksspielsystem. Ist es deaktiviert, funktionieren Glücksspiel-NPCs nicht und der Schuldeneintreiber spawnt nicht. | true |
minBet | Mindesteinsatzbetrag für alle Glücksspiele. | 10 |
Hinweis: Die maximale Schuld (500.0) ist fest im Code hinterlegt und nicht konfigurierbar.
Auszahlungsmultiplikatoren
| Schlüssel | Beschreibung | Standard |
|---|---|---|
payouts.blackjack.normal | Auszahlungsmultiplikator für einen normalen Blackjack-Gewinn. | 2.0 |
payouts.blackjack.blackjack | Auszahlungsmultiplikator für einen natürlichen Blackjack (21 mit den ersten beiden Karten). | 2.5 |
payouts.coinFlip | Auszahlungsmultiplikator für einen gewonnenen Münzwurf. Setze ihn unter 2.0 für einen Hausvorteil (1.9 = 5 % Hausvorteil). | 1.9 |
payouts.coinFlip.edgeChance | Chance (0.0 bis 1.0), dass die Münze auf der Kante landet (Bonusgewinn). Auf 0.0 setzen, um dies zu deaktivieren. | 0.01 |
payouts.coinFlip.edgePayout | Auszahlungsmultiplikator, wenn die Münze auf der Kante landet. | 5.0 |
payouts.higherLower.multiplierV2 | Multiplikator, der bei Höher/Tiefer pro richtigem Tipp angewendet wird. Stapelt sich multiplikativ. | 1.3 |
Auszahlungen des Spielautomaten
Die Auszahlungen des Spielautomaten sind nicht konfigurierbar. Sie werden automatisch aus den Symbolgewichtungen nach der Formel 100 / weight berechnet:
| Symbol | Gewichtung | Auszahlung bei 3 gleichen | Auszahlung bei 2 gleichen |
|---|---|---|---|
| Kirsche | 35 | 2.86x | 0.71x |
| Zitrone | 28 | 3.57x | 0.89x |
| Orange | 20 | 5.0x | 1.25x |
| Glocke | 10 | 10.0x | 2.50x |
| Barren | 5 | 20.0x | 5.00x |
| Glücks-7 | 2 | 50.0x | 12.50x |
Es gibt in GamblingSettings.yml überhaupt keine payouts.slots.*-Schlüssel — die einzigen Spielautomaten-Einträge in der Datei sind die slots.*-Oberflächentexte (Schaltflächennamen, Beschriftungen, Ergebnistitel). Die Auszahlungen werden immer aus den fest hinterlegten Symbolgewichtungen abgeleitet.
Einstellungen des Schuldeneintreibers
| Schlüssel | Beschreibung | Standard |
|---|---|---|
debtCollector.spawnChance | Chance (0.0 bis 1.0), dass der Schuldeneintreiber bei jeder Prüfung spawnt. | 0.5 |
debtCollector.checkIntervalMinutes | Wie oft (in Minuten) geprüft wird, ob der Schuldeneintreiber für verschuldete Spieler spawnen soll. | 60 |
debtCollector.timeoutSeconds | Wie lange (in Sekunden) es dauert, bis der Schuldeneintreiber verschwindet, wenn er nicht getötet wird. | 600 |
debtCollector.debtReductionOnPlayerDeath | Betrag, um den die Schulden verringert werden, wenn der Schuldeneintreiber den Spieler tötet. | 50.0 |
Sicherheit der Wirtschaft
Das Glücksspielsystem verwendet ein Transaktionsmodell nach dem Prinzip "Sicherheit zuerst". Alle Einsätze werden abgezogen und die Ergebnisse finanziell abgerechnet, bevor irgendwelche Animationen abgespielt werden. Das verhindert Exploits, bei denen ein Spieler sich mitten in der Animation trennen könnte, um eine Niederlage zu vermeiden oder einen Gewinn zu vervielfachen. Trennt sich ein Spieler zu irgendeinem Zeitpunkt während oder nach einer Animation, ist sein finanzieller Status bereits korrekt.