Ich habe viel über Zufallszahlengeneratoren für Spielautomaten, Rollenstopp-Berechnungen und wie man dem Benutzer physisch eine gute Gewinnchance gibt, recherchiert.
Was ich nicht herausfinden kann, ist, wie ich richtig versichern kann, dass die Maschine eine Auszahlungsrate von (sagen wir) 95% haben wird.
Also habe ich eine Rolle mit 22 Feldern eingerichtet. Gefüllt mit 16 verschiedenen Symbolen.
Wenn ich meine Zufallszahl bekomme, mod durch 64 dividiere und den Rest bekomme, hüpfe ich zu einer Loop-Up-Tabelle, um zu sehen, wie sich der virtuelle Stopp auf die Rollenposition bezieht.
Vergewissere ich mich, dass die Auszahlungsquote korrekt ist, nachdem ich weiß, wie die Rollen anhalten werden? Wie kann ich für jeden eingezahlten Dollar sicherstellen, dass die Maschine 0,95 Cent auszahlt?
Danke für die Ideen.
Ich arbeite in Actionscript, wenn das bei Sprachproblemen hilft, aber im Allgemeinen suche ich nur nach Theorie.
Bearbeiten: Es gibt echtes Geld nur in der Tatsache, dass sie mehr Token kaufen können, um mehr zu spielen. Es wird kein echtes Geld an die Person ausgezahlt, wenn sie tatsächlich eine der Gewinnlinien erreicht.
quelle
Antworten:
Was Sie fragen, hängt damit zusammen Wahrscheinlichkeitstheorie zusammen . Es ist am einfachsten, mit einer Rolle zu arbeiten und sie dann auf mehrere Rollen zu erweitern, sobald Sie verstanden haben, wie sie funktioniert.
Wenn Sie eine Rolle hatten, haben Sie einige Symbole, die Sie den Stopps zuweisen möchten. Mehr Symbole auf einer Rolle führen zu einer besseren Kontrolle über die Endergebnisse, fühlen sich jedoch für den Spieler zufälliger an. Das Ziel ist es, die Anzahl der Symbole und Stopps auszugleichen, damit sich die Maschine für den Spieler weniger zufällig anfühlt und eine größere Chance hat.
Wenn Sie 10 Symbole und 10 Stopps hätten, hätte jedes Symbol eine 1: 10-Chance zu erscheinen. Es spielt keine Rolle, in welcher Reihenfolge sich die Symbole befinden (theoretisch ist die Zufälligkeit des Spiels in der Praxis nur so gut wie bei Ihrem Zufallszahlengenerator). Mit anderen Worten, Sie können erwarten, 10 verschiedene Symbole in 10 Drehungen oder ein anderes Symbol bei jeder Drehung zu sehen. Die Chance, ein bestimmtes Symbol zu erhalten, beträgt 1 zu 10. Für jeweils 10 Drehungen können Sie also erwarten, dass jedes einzelne Symbol einmal angezeigt wird. Wenn Sie 1 Symbol als "Gewinnsymbol" ausgewählt hätten, müsste der Spieler 10 Mal spielen, bevor er gewinnt. Mit diesen Informationen ist es ganz einfach, die Auszahlung zu berechnen. Wenn Sie ihnen 1 $ für jede Drehung berechnen, müssen sie 10 $ ausgeben, bevor sie einen Gewinn erzielen. Wenn Ihre erwartete Bewertung 95% beträgt, beträgt die Berechnung 10 x 95% = 9,50 USD. Mit anderen Worten, Der Preis für die Landung auf dem "Gewinn" -Symbol muss 9,50 USD betragen, um eine erwartete Auszahlung von 95% zu erreichen. Denken Sie jetzt daran, dass dies alles auf dem Durchschnitt basiert. Es gibt keine Garantie dafür, dass das Symbol in genau 10 Drehungen angezeigt wird. Es kann 100 oder 1000 Drehungen oder sogar nur 1 Drehung dauern. Über einen ausreichend langen Zeitraum hinweg zahlt die Maschine im Durchschnitt den richtigen Betrag.
Damit dies auf mehreren Walzen funktioniert, müssen Sie die Gewinnwahrscheinlichkeit jeder Walze multiplizieren. Betrachten Sie ein Beispiel für 3 Rollen mit 10 Symbolen auf jeder Rolle und 1 Gewinnsymbol auf jeder Rolle wie im vorherigen Beispiel. Nehmen wir an, Sie wollten, dass der Spieler nur gewinnt, wenn alle drei Walzen gleichzeitig das Gewinnsymbol zeigen. Dazu müssen Sie die Wahrscheinlichkeit für jede Rolle berechnen und dann die Wahrscheinlichkeiten miteinander multiplizieren. Wir wissen aus dem vorherigen Beispiel, dass die Wahrscheinlichkeit 1 zu 10 ist. Dies kann auch als 1/10 oder 0,1 geschrieben werden. Die Wahrscheinlichkeit, dass alle drei Walzen gleichzeitig auf dem Gewinnsymbol landen, beträgt 1/10 x 1/10 x 1/10 oder 0,1 x 0,1 x 0,1 oder 0,001 oder 1 zu 1000. Wir sehen, dass es viel gibt geringere Wahrscheinlichkeit, dass das Gewinnsymbol gleichzeitig auf allen drei Walzen erscheint. Der Spieler müsste durchschnittlich 1000 Mal drehen, bevor er gewinnt. Wenn jeder Spin 1 $ wäre, müssten sie 1000 $ ausgeben, um zu gewinnen. Die Berechnung für den Gewinnprozentsatz lautet dann: $ 1000 x 95% ** = $ 950,00.
Das ist die Theorie auf den Punkt gebracht. Der Rest ist das Ausbalancieren der verschiedenen Wahrscheinlichkeiten, um das Spiel interessanter erscheinen zu lassen.
In Ihrem Fall, wenn Sie 22 Stopps und 16 Symbole haben. Dies bedeutet, dass Sie 6 Symbole haben, die mit mindestens einem anderen Symbol identisch sind. Die genaue Wahrscheinlichkeit, mit der ein bestimmtes Symbol erscheint, hängt von der Gesamtzahl der Vorkommen dieses Symbols auf der Rolle ab. Wie viele Symbole sich auf jeder Rolle befinden, liegt ganz bei Ihnen.
Nehmen wir als Beispiel an, Sie haben 15 eindeutige Symbole und 7, die alle Duplikate sind. Die Wahrscheinlichkeit, dass eines der Duplikate erscheint, beträgt 7 zu 22 oder 7/22 oder 32%. Wenn Sie 1 Rolle bei 1 $ pro Drehung hätten, würde der Spieler 32 Mal in 100 Drehungen auf einem der Duplikate landen. Die Auszahlung wird berechnet als (1 / (32/100)) x 95% x $ Kosten. Wenn es also 1 $ pro Runde kostet, zahlen Sie dem Spieler jedes Mal 2,97 $, wenn eines der Duplikate erscheint.
Wenn Sie als weiteres Beispiel 3 Walzen hätten und diese 2 USD pro Runde kosten würden, würden Sie die Auszahlung wie folgt berechnen: (1 / (32/100 x 32/100 x 32/100)) x 0,95 x $ Kosten = 30,5 x 95% x $ 2 = $ 57,95 Auszahlung. Sie können die Wahrscheinlichkeiten der anderen Nicht-Duplikate wie folgt berechnen: (1 / (1/22 x 1/22 x 1/22)) x 0,95 x $ cost = 10648 x 0,95 x $ 2 = $ 20231,20. Das ist eine ziemlich große Zahl, aber dann ist die Wahrscheinlichkeit, dass eine der Gewinnsequenzen erscheint, ziemlich gering (sie beträgt ungefähr 9x10 ^ -5).
In den letzten Beispielen sind die Unterschiede ziemlich extrem. Der Spieler gewinnt entweder sehr oft $ 58 oder $ 20231 fast nie, ohne dazwischen zu variieren. Die Kunst, das Spiel spannend zu gestalten, besteht darin, mehr Gewinnmöglichkeiten mit unterschiedlichen Beträgen zu schaffen. Dies wird häufig durch Mischen von Rollen mit unterschiedlichen Wahrscheinlichkeiten erreicht. Also anstatt jede Rolle zu haben
Bei der gleichen Anzahl jedes Symbols kann eine Rolle mehr Symbole oder mehr von einem Symboltyp usw. enthalten. Die Formel zur Berechnung der Wahrscheinlichkeit ist dieselbe wie zuvor. Denken Sie jedoch daran, für jede Rolle die richtigen Verhältnisse zu verwenden. Wenn Sie beispielsweise Rolle A mit 22 Stopps und 3 Vorkommen eines Symbols, Rolle B mit 26 Stopps und 2 Vorkommen des Symbols und Rolle C mit 20 Stopps und 5 Vorkommen des Symbols haben, sieht die Formel folgendermaßen aus: (1 / (3/22 x 2/26 x 5/20)) x 95% x $ Kosten.
Und das ist alles. Hoffentlich habe ich in den Beispielen nicht zu viele Fehler gemacht, damit Sie es trotzdem nützlich finden: P.
** Ein Hinweis zur Notation, 95% ist identisch mit 0,95. 32/100 ist identisch mit 0,32, 7/22 ist identisch mit 0,31818 .. usw.
quelle
Sie möchten, dass der erwartete Wert 0,95 beträgt . In einfachen Worten ist dies die Summe
probability * payout
für jeden Zustand.Eine Brute-Force-Methode wäre, alle 22 ^ 3 Zustände zu durchlaufen (vorausgesetzt, Sie haben 3 Walzen), die Auszahlung zu addieren und die Summe durch 22 ^ 3 zu teilen. Da die meisten Staaten jedoch wahrscheinlich nichts auszahlen, ist es möglicherweise einfacher, alle Staaten zu ermitteln, die stattdessen auszahlen.
Wenn Sie zum Beispiel 1 Bell-Sybol pro Rolle hatten, dann ist die Wahrscheinlichkeit von
wäre 1/22 ^ 3. Und wenn Sie 2 Kirschen pro Rolle hatten, dann die Wahrscheinlichkeit von
wäre 1/11 ^ 2.
BEARBEITEN: Oben erfahren Sie nur, wie Sie überprüfen können, ob die Auszahlungen die gewünschte Rücklaufquote ergeben. Betrachten wir als einfaches Beispiel ein Spiel, bei dem Sie 1 $ bezahlen, um 2 Münzen zu werfen. Hier sind drei Auszahlungsschemata, die alle eine Rücklaufquote von 0,95 ergeben:
Welches ist mehr "Spaß"? Du sagst es mir...
quelle
Der einfachere und zuverlässigere Weg, dies zu tun, besteht nicht darin, Walzen zu simulieren, sondern einen internen Würfel zu haben, der auswählt, was der Spieler gewinnt, und dann die Walze nur prozedural zu füllen (oder einen großen Satz davon irgendwo zu speichern, aber das wird wahrscheinlich länger dauern machen).
quelle
Die anderen haben dieses Stück nicht berührt:
Wenn Sie vollständig zufällige Zahlen verwenden, können Sie nicht sicher sein. Sie können jedoch Statistiken über die Auszahlungen führen und die Wahrscheinlichkeit einer Auszahlung zur Laufzeit mithilfe einer Rückkopplungsschleife anpassen .
Wenn es seit einiger Zeit keine Auszahlung mehr gibt, erhöhen Sie die Wahrscheinlichkeit, dass Sie gewinnen, und umgekehrt.
Sie können Simulationen der Läufe ausführen (ein paar Milliarden Iterationen sollten ausreichen), um sicherzustellen, dass Ihre Rückkopplungsschleife wie beabsichtigt funktioniert.
quelle
Beachten Sie, dass alle Antworten bisher davon ausgehen, dass Sie ein perfektes RNG haben, mit dem Sie arbeiten können. Ein reines Software-RNG ist eigentlich ein Pseudo-RNG, kurz PRNG, da der gleiche Eingabewert (Startwert) immer die gleiche Folge von Zufallszahlen erzeugt, sodass ein PRNG von Natur aus vorhersehbar ist.
Natürlich ist es ein schwieriges Problem, auf Kundenseite "echte" von "Pseudo" -RNGs zu unterscheiden, insbesondere bei einer kleinen Stichprobengröße, aber es gibt einen Unterschied - bei einer Anwendung, bei der es um Geld und rechtliche Haftung geht, würde ich dies nicht tun Chancen ergreifen. Wenn Sie ein RNG benötigen, ist das einzige, was schlimmer ist als kein RNG, ein defektes RNG zu haben, ohne es zu wissen. Dies ist also ein Bereich, in dem Ihr Unternehmen niemals Abstriche machen oder spontan lernen sollte.
Es gibt gute PRNG-Algorithmen, aber sie werden niemals mit einer physikalischen Entropiequelle übereinstimmen. Damit die Mathematik sowohl in der Praxis als auch in der Theorie funktioniert, stellen Sie sicher, dass Sie das bestmögliche RNG verwenden - dies ist sowohl rechtlich als auch finanziell im besten Interesse Ihres Unternehmens.
quelle
Ein sehr einfacher Ansatz könnte darin bestehen, alle möglichen Spin-Ergebnisse zu durchlaufen und die kombinierten Gewinne im Vergleich zu den insgesamt gesammelten Geldern zu addieren.
Beginnen Sie mit der Erstellung der Radlayouts und lassen Sie bei Bedarf doppelte Symbole zu. Bestimmen Sie die gewünschten Gewinnmuster und Auszahlungen. Führen Sie das Radmuster durch einen Algorithmus, um die Gesamtauszahlung zu bestimmen, dividiert durch das gesammelte Geld. Dies ist Ihre Auszahlungsquote.
Wenn es zu hoch ist, fügen Sie mehr Leerzeichen oder weniger bezahlte Symbole hinzu ODER senken Sie die Musterauszahlung (dh drei einzelne Balken können 10 USD oder 5 USD betragen). Führen Sie den Algorithmus erneut aus, bis die gewünschte Auszahlungsquote ermittelt ist.
Auf diese Weise können Sie gleichmäßige Auszahlungen beibehalten (nicht 4,58 USD für ein Gewinnmuster, sondern 5 USD). Möglicherweise können Sie keine genaue Auszahlung von beispielsweise 95% erzielen, aber mit Optimierungen können Sie sich dem nähern.
Hier ist ein Beispielalgorithmus zum Bestimmen des Lohnverhältnisses eines Radlayouts:
quelle