MissverstÀndnisse der Spieler bei der Bewertung von Risiken. Steuerung des Zufallszahlengenerators in Entwicklung

Das menschliche Gehirn ist von Natur aus sehr schlecht darin, die Wahrscheinlichkeit des Auftretens zufÀlliger Ereignisse basierend auf einer gegebenen numerischen Bewertung zu bewerten. Und ziemlich gut basierend auf QualitÀtsbewertungen. Und das alles, weil eine Person die numerischen Wahrscheinlichkeiten mental in qualitative SchÀtzungen umwandelt und dies sehr subjektiv tut:

  • 80% eines Schusses im Spiel - nun, dies ist ein fast garantierter Treffer.
  • 80% der Tatsache, dass Ihr Kamerad zumindest eines Tages eine Schuld zurĂŒckzahlt, ist nein-nein-nein, es wird nicht funktionieren, dies ist zu viel Risiko;
  • 5% haben kritischen Schaden erlitten, er ist der NPC des Feindes - es ist unwahrscheinlich, dass das Risiko ignoriert werden kann;
  • 1% Risiko, dass Eiszapfen herunterfallen, wenn Sie mit tropfenden, meterhohen Eiszapfen unter das Dach gehen - was sonst ist es besser, sich auf der anderen Seite des BĂŒrgersteigs fortzubewegen;
  • 51% Chance, ein Minispiel in einem großen Rollenspiel zu gewinnen - Sie können erwarten, dass ich nach 20 Wetten ein wenig gewinne oder zumindest bei meinen eigenen bleibe ... nach 20 Wetten ... wie konnte das passieren, dass ich die HĂ€lfte meiner verloren habe? Gold? Hier ist der Zufallsgenerator deutlich kaputt!


Die folgenden Fragen werden im Artikel berĂŒcksichtigt:

  • falsche Annahmen bei der SchĂ€tzung von Wahrscheinlichkeiten;
  • spezifische Beispiele fĂŒr falsche Vorstellungen der Spieler und tatsĂ€chliche Wahrscheinlichkeiten „seltener“ Ereignisse;
  • Zufallszahlengenerator (im Allgemeinen pseudozufĂ€llig);
  • frĂŒhe einfache Pseudozufallszahlengeneratoren am Beispiel von Final Fantasy I;
  • AnsĂ€tze zur Implementierung von zufĂ€lligen Ereignissen mit und ohne Reproduzierbarkeit;
  • Beispiele fĂŒr erfolgreich implementierte verschiedene AnsĂ€tze und Manipulationen in Fire Emblem.

I. Fehlerhafte Annahmen bei der SchÀtzung von Wahrscheinlichkeiten


Im Verlauf der Evolution lernte das menschliche Gehirn, mit qualitativen Bewertungen von Ereignissen und Bildern seiner Erfahrung sehr gut zu arbeiten. Eine Person hat vor relativ kurzer Zeit Zahlen und eine abstrakte numerische SchĂ€tzung der Wahrscheinlichkeit „zufĂ€lliger“ Ereignisse erstellt [ 1 ]. Trotzdem werden die Menschen in ihren SchĂ€tzungen diese Zahlen immer noch in qualitative Darstellungen umwandeln: ein bisschen, ein bisschen, viel, gefĂ€hrlich, sicher, genug. Diese Bewertungen hĂ€ngen immer vom Kontext und der subjektiven Einstellung zu diesem Kontext ab. Dies ist genau die Hauptursache fĂŒr fehlerhafte numerische Annahmen.

Als Beispiel wird das rundenbasierte Spiel Disciples 2 [ 2 ] betrachtet. In diesem Teil des Artikels wird die QualitĂ€t der Zufallszahlengenerierung speziell in diesem Spiel nicht berĂŒcksichtigt. Im zweiten Teil des Artikels werden genĂŒgend Daten zu ihrer Erzeugung enthalten sein.

SchĂŒler 2 - Typisches FrĂ€ulein [ 2 ]

Ein normaler Nahkampfangriff hat eine Trefferchance von 80%. Normalerweise wird diese Chance vom Spieler als " fast immer " wahrgenommen, und das Risiko eines Fehlschlags ist " gelegentlich / gelegentlich ". Die Chance, zwei Mal hintereinander mit zwei Angriffen zu verfehlen, betrĂ€gt 4%. Der Spieler sieht dieses Risiko als " fast nie / dies wird extrem selten passieren ". Und wenn dies passiert, sind die Spieler empört ĂŒber die "zufĂ€llige Kurve": [ 3 ]; [ 4 ].

In Situationen mit zwei aufeinander folgenden Fehlern und einer Risikobewertung von 4% hat eine schnelle Bewertung durch den Spieler mehrere falsche Annahmen:

1. 4% ist nicht " fast nie ". Dies ist ein Ereignis, das (durchschnittlich) in jedem 25. unabhÀngigen Experiment stattfinden wird.

2. Die Bewertung erfolgt im falschen Zeitintervall . Das minimale Angriffsmessintervall von 80% sollte nicht 2 Angriffe umfassen, sondern alle Angriffe derselben Klasse (~ 80%) wÀhrend des GedÀchtnisses des "vorsichtigen" Spielers. Meistens können Sie wÀhrend dieser Zeit eine lange Spielsitzung oder das gesamte Spiel im Allgemeinen absolvieren. Dies hÀngt alles von der Art des Spiels, dem GedÀchtnis des Spielers und den Vorlieben des Spielers ab.

Da ich keine wirklichen Statistiken ĂŒber die Verwendung dieses Spiels habe, gehe ich davon aus, dass eine lange Spielsitzung in Disciples 2 3 Stunden dauert und wĂ€hrend dieser Zeit ungefĂ€hr 250 Angriffe mit einer Genauigkeit von ~ 80% ausgefĂŒhrt werden. Es ist erwĂ€hnenswert, dass feindliche Fehler ignoriert werden sollten, weil Ihre Fehler Der Spieler ist nicht böse und er erinnert sich selten an sie.

Daher sollte die Situation bewertet werden: "Bei allen 250 Angriffen werden niemals 2 FehlschĂŒsse hintereinander auftreten."
Um die Wahrscheinlichkeit der Wahrheit dieses Ereignisses zu berechnen, wurde die Wiederholungsformel verwendet: P1 (n) = 0,8 * P1 (n-1) + 0,16 * P1 (n-2). Bei der Ableitung dieser Formel habe ich die Hilfe der Community genutzt. Ein Zitat aus den Berechnungen, Details und dem Ergebnis ist unten angegeben.
Sie können versuchen, Induktion zu verwenden. Wir fĂŒhren eine Notation ein. Die Wahrscheinlichkeit, die Pfote nach dem n-ten Ausflug zurĂŒckzuhalten, wird mit P (n) bezeichnet. Wir stellen diese Wahrscheinlichkeit als die Summe zweier Wahrscheinlichkeiten dar
P (n) = P1 (n) + P2 (n), wobei P1 (n) die Wahrscheinlichkeit ist, mit der sich der extreme n-te Ausflug als erfolgreich herausstellte, und P2 (n) - erfolglos.

Es mag scheinen, dass P1 und P2 proportional zu 0,8 und 0,2 sind, aber das ist nicht so. Aufgrund der Tatsache, dass wir keine möglichen Ergebnisse in Betracht ziehen, sondern nur diejenigen, die die WaschbÀrpfote gerettet haben.
Versuchen wir nun, eine Wiederholungsformel abzuleiten
P1 (n) = 0,8 * (P1 (n-1) + P2 (n-1))
P2 (n) = 0,2 · P1 (n-1)
Setzen Sie P2 in die Formel fĂŒr P1 ein, die wir erhalten
P1 (n) = 0,8 · P1 (n-1) + 0,16 · P1 (n-2)
Weitere Lösung von Wiederholungsrelationen [5]
Zitat des Benutzers Serbbit [ 6 ]

Um das Problem zu lösen, wurde anstelle der Methoden zum Lösen von Wiederholungsrelationen ein kleiner Javascript-Code fĂŒr die Browserkonsole geschrieben und das Ergebnis berechnet.

var P1 = []; P1[0] = 1; P1[1] = 1; for (var n=2; n<=250; n++) { P1[n] = 0.8 * P1[n-1] + 0.16 * P1[n-2]; console.log(n + ') ' + P1[n]); } // : 250) 0.0001666846271670716 

Die Antwort lautet: 0,0001666846271670716
Oder 0,0167%

Diese Antwort stimmt mit der Antwort eines anderen Autors ĂŒberein, Kojiec9: 0,000166684627177505 [ 6 ], der seine entwickelte Methode mit einem FĂŒnf-Dezimal-Zahlensystem verwendete und das Ergebnis anhand seiner Formel in Pascal berechnete. Kleinere Unterschiede in den Antworten werden anscheinend durch Runden von Float-Zahlen erklĂ€rt.

In 3 Stunden nach dem Spielen von Disciples 2 hat ein Spieler die Chance, einen doppelten Fehler mit einer Genauigkeit von 80% bei nur 0,0167% zu vermeiden. Das ist wirklich sehr unwahrscheinlich. (und die Wahrscheinlichkeit eines mindestens doppelten Fehlschlags betrÀgt 99,9833% ).

Eine Zunahme der Wahrscheinlichkeit von mindestens einem Doppelfehler mit einer Zunahme der Anzahl von Experimenten

Über die Unvollkommenheit und Verzerrung des menschlichen GedĂ€chtnisses existieren ĂŒbrigens im Allgemeinen ganze Studien und BĂŒcher: „Illusionen des Gehirns. Kognitive Verzerrungen aufgrund eines Überflusses an Informationen “[ 7 ]; „Glauben Sie Ihrem Gehirn nicht“ [ 8 ]. Wenn Sie sich fĂŒr dieses Thema interessieren, empfehle ich Ihnen, sich mit diesen Artikeln vertraut zu machen.

3. Die dritte falsche Annahme ist die Erwartung der AbhÀngigkeit in voneinander unabhÀngigen Experimenten .

Das heißt, nach dem ersten Fehlschlag denkt der Spieler:

„Der Charakter hat also mit einer Genauigkeit von 80% gefehlt. Jetzt wird er definitiv treffen, denn das Risiko eines doppelten Fehlschlags betrĂ€gt nur 4%. "

Aber nein. Nach dem ersten Fehlschlag betrĂ€gt das Risiko eines weiteren Fehlschlags ebenfalls 20%. Immerhin hat der vergangene Angriff bereits stattgefunden und hat keinen Einfluss auf den zukĂŒnftigen Schuss. Wenn vor dem ersten Angriff die Wahrscheinlichkeit eines doppelten Fehlschlags 4% betrug, betrĂ€gt die Wahrscheinlichkeit eines doppelten Fehlschlags nach dem ersten Fehlschlag bereits 20%, dh im VerhĂ€ltnis zu den Erwartungen des Spielers steigt das Risiko nur.

Dieses Merkmal des menschlichen Gehirns ist besonders attraktiv fĂŒr Manipulationen durch das Casino (und dergleichen) beim GlĂŒcksspiel (mehr ĂŒber das GerĂ€t von Spielautomaten des Herstellers [ 9 ]).
Weitere interessante Beispiele fĂŒr die Wahnvorstellungen des menschlichen Gehirns finden sich in Artikeln ĂŒber das Gleichgewicht von Jan Schreiber, „Stufe 5: Wahrscheinlichkeit und ZufĂ€lligkeit sind schrecklich falsch geworden“ ( Stufe 5. Wahrscheinlichkeit und ZufĂ€lligkeit wurden gehandelt ) [ 10 ].

II. Zufallszahlengenerator


Der in Spielen verwendete Begriff „Zufallszahlengenerator“ (RNG / Zufallszahlengenerator) bedeutet fast immer „Pseudozufallszahlengenerator“ [ 11 ]. Das Hauptmerkmal dieses Generators ist seine Reproduzierbarkeit. Reproduzierbarkeit bedeutet, dass bei Kenntnis des anfĂ€nglich erzeugenden Elements (oder Keims ) immer dieselbe Folge von Zufallszahlen ( Pseudozufallszahlen ) erhalten wird. In einigen Spielen manifestiert sich dieser Effekt in der Tatsache, dass nach dem Neustart des Spiels die Reihenfolge der Treffer und Fehler unverĂ€ndert bleibt. Aber in anderen Spielen bleibt das nicht gleich.

Und die Sache ist, wie dieser Pseudozufallszahlengenerator verwendet wird und welche Designziele der Entwickler verfolgt.

Um das Funktionsprinzip des Pseudozufallszahlengenerators besser zu verstehen, können wir die Art und Weise betrachten, wie er in den ersten klassischen Spielen implementiert wird, als die Ressourcen von Computern (und Konsolen) besonders stark eingeschrĂ€nkt waren. (Eine ausfĂŒhrliche Beschreibung der Beispiele und ihrer Funktionen finden Sie im Artikel „Wie klassische Spiele die Zufallszahlengenerierung intelligent nutzen“ [ 12 ]. )

Wie klassische Spiele die Erzeugung von Zufallszahlen intelligent nutzen [ 12 ]

Final Fantasy Ich habe mehrere Tabellen mit vordefinierten festen Zahlen mit 256 Werten in jeder Tabelle verwendet:

  • Um zufĂ€llige Schlachten mit jedem Schritt in der Spielkarte zu berechnen, bewegte sich der Algorithmus um den Tisch, Ă€nderte den Index um jeweils 1 und scrollte so schrittweise durch alle möglichen Werte - sowohl die Tatsache der Kollision als auch eine mögliche Gruppe von Gegnern hingen davon ab.
  • Um die Ergebnisse des Kampfes zu berechnen, wurde auch eine Ă€hnliche Tabelle mit 256 festen Werten verwendet, die sich jedoch nicht nur bei jeder nachfolgenden Verwendung der Pseudozufallszahl, sondern auch alle 2 Frames bewegte. Das heißt, alle 2 Frames hat der Algorithmus die Tabelle im Leerlauf mit Zahlen gescrollt, wodurch das Risiko vorhergesagter identischer Sequenzen verringert wurde. Die Quelle der Entropie war hier die Ungewissheit, wie lange der Spieler nachdenken wĂŒrde, bevor er die nĂ€chste Mannschaft auswĂ€hlt.

Final Fantasy I verwendet die Seriennummer (Index) eines festen Werts in der Tabelle als Körnung (Generatrix). Das heißt, wenn man den Ort kennt, von dem aus Zufallszahlen weiter ausgewĂ€hlt werden, kann man genau vorhersagen, welche Zufallszahl nach 1000 ÜberprĂŒfungen ausgegeben wird. In komplexeren Algorithmen zur Erzeugung von Pseudozufallszahlen ist Korn nicht so einfach zu verwenden, aber das Grundprinzip und der Effekt bleiben erhalten.

FĂŒr die Erzeugung von Pseudozufallszahlen werden nun hauptsĂ€chlich Standardbibliotheken der verwendeten Programmiersprachen verwendet. Die aktuelle Systemzeit wird am hĂ€ufigsten als Entropiequelle verwendet. FĂŒr die BedĂŒrfnisse der Spielebranche reichen normalerweise die Eigenschaften von Standardbibliotheken aus. Die Nachteile des Generators und der Entropiequelle werden von den Spielern aufgrund der KomplexitĂ€t ihrer Berechnung und Manipulation selten genutzt. Normalerweise bleibt dies die Menge der Speedraner-Programmierer ( zum Beispiel das Hacken der Logik von Pokemon Colosseum [ 13 ] ), was bedeutet, dass Entwickler klĂŒger sind, solche Feinheiten zu ignorieren.

III. Verschiedene AnsÀtze zur Verwendung des Generators


1. Das Getreide ist zum Zeitpunkt des Beginns der Mission oder der Spielkampagne festgelegt.

Konsequenzen fĂŒr den Spieler : Das erneute Laden des Spiels Ă€ndert nichts an der Tatsache, dass der Charakter einen Fehler gemacht hat (nennen wir ihn verrĂŒckt Fidel ), selbst wenn die Wahrscheinlichkeit seines Treffers 99% betrĂ€gt. Vor dem Versuch, einen Treffer zu erzielen, kann der Spieler jedoch eine andere Aktion ausfĂŒhren, bei der eine Zufallszahl verwendet wird. Beispielsweise Ă€hnelt sie einem anderen Charakter - dem kahlen Mick . Infolgedessen wird die unglĂŒckliche Zufallszahl vom kahlen Mick verwendet, und die nĂ€chste Zufallszahl in der Sequenz wird fĂŒr den verrĂŒckten Fidel verwendet - dann wird er wahrscheinlich fallen.

Wie kann ein Spieler es missbrauchen : Wenn ein Schuss mit einer Genauigkeit von 50% zu einem Fehlschlag fĂŒhrt, können Sie neu starten und den Angriff mit einer etwas höheren Genauigkeit (55%) versuchen, bis er trifft. Speichern und wiederholen Sie dies nach dem Treffer mit anderen WĂŒrfen.

Positive Konsequenzen fĂŒr den Entwickler :

1) Das Spiel kann Schritt fĂŒr Schritt reproduziert werden, wenn nur der Ausgangszustand, die Körnung und die Reihenfolge der Aktionen gespeichert sind. Dank dessen ist es möglich, Wiederholungen anzuzeigen und die gespeicherten Dateien sogar sehr kompakt zu speichern. Mit dieser Methode können Sie viel Speicherplatz auf der Festplatte / im Speicher sparen.

2) Schutz des internen GlĂŒcksspiels, so dass der Spieler beim Speichern / Laden nicht alle angetroffenen NPC-Gegner bankrott machen kann.

Ein Beispiel :

Das Spiel Roguelike Brogue [ 14 ] verwendet diese Methode, beginnend mit der Generierung der Spielwelt und endend mit einer FehleinschÀtzung aller Aktionen des Spielers. Infolgedessen werden nur das Startkorn und die Reihenfolge der Spielbefehle in der Sicherungsdatei gespeichert. Ein zusÀtzlicher Bonus dieses Effekts ist, dass das Spiel mit der ausgewÀhlten Kornzahl gestartet werden kann, nachdem die interessanteste Welt in den Tabellen der generierten Brogue-Welten ausgewÀhlt wurde [ 15 ].

Brogue roguelike - Offizielle Seite [ 14 ]

2. Die Körnung wird nicht jedes Mal nach einem Neustart repariert oder aktualisiert.
Konsequenzen fĂŒr den Spieler : Jeder Neustart Ă€ndert alle Berechnungen in Bezug auf die Trefferchancen.

Wie ein Spieler es missbrauchen kann : sehr einfach - mehrere Neustarts und das unwahrscheinlichste Treffer-Szenario können RealitÀt werden.

Positive Konsequenzen fĂŒr den Entwickler :

1) Die Spieler empfinden ein solches Spiel als ehrlicher mit echter ZufÀlligkeit, einfach aufgrund mangelnder Kenntnisse der internen Mechanik.

2) Spieler erhalten einen informellen einfachen Modus, der auf Wunsch komplexe Bereiche erheblich erleichtern kann.

3) Ein Entwickler kann ein Werbegeschenk mit verschiedenen Methoden vertuschen: einem automatischen Speichern pro Spiel (dh Überschreiben von Speicherungen und dauerhaftem Tod) oder Verbot des Speicherns wĂ€hrend einer Mission (in verschiedenen Varianten). Und die empfindlichsten Bereiche (GlĂŒcksspiel-Minispiele) können auf der Grundlage einer einzigen konstanten Körnung berechnet werden, obwohl dies technisch viel schwieriger ist.

Ein Beispiel :

Die Schlacht um Wesnoth [ 16 ] verwendet nicht fixiertes Getreide mit im Wesentlichen ehrlicher ZufĂ€lligkeit. Ehrlichkeit liegt in der Tatsache, dass manchmal völlig unwahrscheinliche Folgen von Fehlern möglich sind und die Spiel-Engine sie nicht korrigiert. Das Ergebnis sind die regelmĂ€ĂŸigen verĂ€rgerten BeitrĂ€ge von verĂ€rgerten Spielern gegen Spieleentwickler.

Reddit ist eine super geschickte Meerjungfrau in Wesnoth [ 17 ]

Außerdem bietet das Spiel vor dem Angriff detaillierte Berechnungen der Wahrscheinlichkeiten der möglichen Ergebnisse des Angriffs: des verursachten Schadens, des erlittenen Schadens und der Wahrscheinlichkeit des Todes eines der Gegner. Die Schlussfolgerung dieser Wahrscheinlichkeiten erhöht nur die Wut der "erfolglos Ă€hnlichen", weil Um gute Angriffschancen zu gewĂ€hrleisten, ist es schwierig, ein Ergebnis mit einer Punktzahl von 1 zu 1000 zu erzielen.

3. Das Korn ist nicht fixiert und die Ergebnisse selbst werden zusÀtzlichen Manipulationen unterzogen.

Mit Manipulationen meine ich solche dynamischen Anpassungen, wodurch das GefĂŒhl der korrekten ( fairen ) ZufĂ€lligkeit aufgrund des Verlusts der realen PseudozufĂ€lligkeit in den resultierenden Zahlen zunimmt.

Konsequenzen fĂŒr den Spieler : Ähnlich wie bei Spielen mit nicht fixiertem Korn können Sie beim Nachladen die Ergebnisse nachzĂ€hlen.

Wie ein Spieler es missbrauchen kann : Mit Hilfe von Save Scamming können Sie eine gĂŒnstige Kombination von Angriffen auswĂ€hlen, die jedoch weitgehend von der Implementierungsmethode und der VerfĂŒgbarkeit von Schutzmechanismen seitens des Entwicklers abhĂ€ngt.

Positive Konsequenzen fĂŒr den Entwickler : Der Entwickler kann die Seltenheit unerwĂŒnschter Ergebnisse kontrollieren, den Anschein eines „ ehrlichen Zufalls “ erwecken, die KomplexitĂ€t des Spiels erhöhen und verringern. Wenn der Entwickler bei der Berechnung der Trefferchance die Auslösung fĂŒr jedes Team speichert und separat berĂŒcksichtigt, kann er den Missbrauch von sicherem Betrug erheblich reduzieren und sicherstellen, dass der Spieler weiterhin seinen arithmetischen mittleren Teil des Schadens erhĂ€lt.

Beispiele :

Der Entwickler Carsten Germer nutzt die Funktion der kontrollierten ZufĂ€lligkeit fĂŒr seltene und nicht nur fĂŒr Ereignisse [ 18 ]. Um beispielsweise den periodischen Verlust eines besonders seltenen Bonus mit einer Chance von 1 zu 10.000 zu gewĂ€hrleisten, erhöht sich nach jedem „Fehlschlag“ die Wahrscheinlichkeit in der Reihenfolge: 1 zu 9.900; 1 bis 9800; 1 bis 9700 ... und so weiter, bis das Ereignis aufgezeichnet wird. Und um das Fehlen hĂ€ufiger RaritĂ€ten zu gewĂ€hrleisten, fĂŒhrte er eine zusĂ€tzliche Variable ein, die die Operation wĂ€hrend der nĂ€chsten 10 ÜberprĂŒfungen nach der letzten Operation um 100% blockiert.

In meinem Bagel Grue the Monster [ 19 ] habe ich auch zufĂ€llige Manipulationen angewendet. Wenn Sie Opfer jagen, sollte sich der Charakter des Spielers normalerweise hinter ihnen verstecken und darauf warten, dass sie einen Schritt zurĂŒcktreten und in seine Pfoten fallen. Normalerweise betrĂ€gt diese Chance 1/6 im offenen Raum (1/2 in den Korridoren und 1/1 in den Sackgassen), aber um die störende Wirkung besonders unglĂŒcklicher Situationen zu verringern, wurde ihr vor jeder ÜberprĂŒfung des Bewegungsverlaufs des Opfers in 15% der FĂ€lle garantiert, dass sie in Richtung Gro geht .

Der interessanteste Fall: Im Spiel Fire Emblem: The Binding Blade [ 20 ] wurden die verborgenen Mechanismen zur Bestimmung von Treffern wĂ€hrend Angriffen [ 21 ] implementiert. Traditionell fĂŒr die Serie wird die Trefferwahrscheinlichkeit vom Spiel als Prozentsatz von 0 bis 100% angezeigt. In frĂŒheren Spielen der Serie wurde die Tatsache eines Treffers durch eine Zufallszahl von 1 bis 100 bestimmt: Wenn die Ausfallzahl (z. B. 61) kleiner oder gleich der Wahrscheinlichkeit eines Treffers (z. B. 75) ist, wird ein Treffer gezĂ€hlt, wenn mehr, dann ein Fehlschlag.

Feueremblem: Die Bindungsklinge [ 20 ]

In diesem Teil wurde ein Sparsystem eingefĂŒhrt: Anstelle einer Zufallszahl wurde der Durchschnitt von zwei Zufallszahlen genommen und dieser Durchschnitt mit dem Genauigkeitswert verglichen. Das heißt, eine Zufallszahl tendiert in grĂ¶ĂŸerem Maße zu einem Wert von 50. Dies fĂŒhrt zu einer Verzerrung des linearen Effekts der ZufĂ€lligkeit von Treffern: KĂ€mpfer mit einem Treffer von mehr als 50% treffen hĂ€ufiger als in 50% der FĂ€lle und mit einem Treffer von weniger als 50% viel seltener. Und da im Spiel die ĂŒberwiegende Mehrheit der Charaktere des Spielers genauer ist und die meisten Feinde weniger, erhĂ€lt der Spieler einen sehr ernsthaften versteckten Vorteil [ 21 ]. Unten sehen Sie eine grafische Darstellung dieses Effekts, wobei die blauen Linien die HĂ€ufigkeit der Treffer im alten System und die rote HĂ€ufigkeit der Treffer im neuen System in AbhĂ€ngigkeit vom Prozentsatz der Genauigkeit des Angreifers anzeigen. Bei einer angezeigten Wahrscheinlichkeit von 90% betrĂ€gt die tatsĂ€chliche Wahrscheinlichkeit beispielsweise 98,1%, bei 80% - 92,2% und bei 10% - nur 1,9%!

Verzerrung der Trefferchance. Auf der y-Achse die tatsÀchliche Wahrscheinlichkeit, auf der x-Achse - dem Spieler angezeigt

Dies sind natĂŒrlich nicht die einzigen Beispiele fĂŒr Manipulationen mit Zufallszahlen und Gleichgewicht, aber es ist sehr schwierig, sie zu finden. Daher ist die Community-Hilfe hier besonders wertvoll.

Ich möchte darauf hinweisen, dass ich die prozedurale Generierung nicht der manipulierten ZufĂ€lligkeit als solcher zuschreibe. Beispiel: Ein Bagel hat ein zufĂ€lliges Level mit einer zufĂ€lligen Anzahl von Feinden, Fallen, Mauern und Sackgassen erzeugt. Wenn gleichzeitig ein Level erstellt wurde, das nicht zu bestehen ist, dann ein Beispiel fĂŒr eine Entwicklungskurve, ein unzureichend durchdachtes Design oder schwache Tests. Der Entwickler muss mindestens die grundlegenden Probleme der zufĂ€lligen Generierung prozedural ĂŒberprĂŒfen:

  • Der Durchgang zum Ausgang muss immer mindestens im Singular sein. Alle Pfadfindungsalgorithmen helfen hier;
  • Eine Reihe von Fallen sollte umgehen können. Wenn sich zu viele an einem Ort befinden, muss der Algorithmus ihre Dichte berechnen und unnötige entfernen.
  • Zu mĂ€chtige Feinde mĂŒssen mindestens eine der verfĂŒgbaren Möglichkeiten bieten, um sie zu â€žĂŒberholen“: rohe Gewalt; Schriftrollen und TrĂ€nke; spezielle Artefakte oder die FĂ€higkeit, einfach vor ihnen wegzulaufen.

Ein solcher Eingriff in zufĂ€llige Ergebnisse ist keine Manipulation, sondern lediglich die Regel eines minimal kompetenten Entwicklungsansatzes. Diese PrĂŒfungen werden bei allen Methoden zur Erzeugung von Pseudozufallszahlen verwendet.

4. Entfernen Sie im Allgemeinen das Element der ZufÀlligkeit aus der Spielmechanik.

Das heißt, die Ergebnisse jedes Angriffs haben immer eine 100% ige Chance auf Treffer und festen Schaden sowie konstante Regeln fĂŒr das Auslösen zusĂ€tzlicher Effekte. Stattdessen können Sie zufĂ€llige Berechnungen fĂŒr kosmetische Zwecke verwenden: periodisches „Kauen“ von Charakteren, die darauf warten, dass sie an die Reihe kommen; Anzahl der verursachten SchĂ€den wegfliegen; Auswirkungen von Kollisionen und Explosionen. Es gibt keinen Unterschied, wie Zufallszahlen generiert werden und wie gleichmĂ€ĂŸig die Verteilung ist.

Obwohl Sie in diesem Fall die ersten drei Methoden zur Berechnung der kĂŒnstlichen Intelligenz verwenden können, können feindliche Charaktere bis zu einem gewissen Grad zufĂ€llig Ziele fĂŒr den Angriff auswĂ€hlen oder in zufĂ€lliger Reihenfolge in einem Team gehen. Dies wird jedoch fĂŒr den Spieler weniger auffĂ€llig sein und Ă€rgerliche Situationen werden viel weniger sein.

Konsequenzen fĂŒr den Player : Der Neustart wirkt sich entweder nicht oder nur geringfĂŒgig auf die Ergebnisse aus.

Wie ein Spieler es missbrauchen kann : Ein Spieler kann eine stabile dominante Strategie im Netzwerk berechnen oder finden und nur diese verwenden. Es ist erwĂ€hnenswert, dass dies fĂŒr bestimmte Gruppen von Spielern das Hauptinteresse am Spiel ist.

Positive Konsequenzen fĂŒr den Entwickler : Es ist fĂŒr den Entwickler viel einfacher, ein solches Spiel auszugleichen. Als Minus - in diesem Fall werden die aufkommenden dominanten Strategien stabil, was bedeutet, dass selbst das Pech eines Spielers ihn nicht besiegen kann, aber zum Verschwinden von Überraschungen, Langeweile und zum Entfernen des Spiels fĂŒhrt. Hochklassige Spieler gewinnen fast immer Spieler der unteren Klasse. FĂŒr verschiedene Arten von Spielen kann dies sowohl ein Vorteil als auch ein Nachteil sein.

Ein Beispiel :

Jedes Schach mit klassischen Regeln.

Hier eignen sich auch logische Roguelike. Diese Methode ist beispielsweise in Desktop Dungeons Alpha [ 22 ] sehr gut implementiert.

Desktop Dungeons Alpha [ 22 ]

Hier sind die Ergebnisse der Angriffssequenz immer gleich und werden im Voraus berechnet. Aufgrund der zufÀlligen (prozeduralen) Erzeugung von Spieldungeons und des Vorhandenseins eines Kriegsnebels erhÀlt das Spiel jedoch seine einzigartige Wiederspielbarkeit der besten Bagels.

Fazit


Der Artikel betrachtet daher zwei Unterthemen der ZufÀlligkeit in Spielen:

  • Fehlerhafte Annahmen bei der SchĂ€tzung von Wahrscheinlichkeiten . Es beschreibt die intuitiven Annahmen, die der Spieler macht und die sich aufgrund ihrer SubjektivitĂ€t oft als falsch herausstellen. Die Hauptschlussfolgerung: Wahre ZufĂ€lligkeit garantiert nicht nur nicht, dass die Benutzer zufrieden sind, sondern kann sogar zu dem gegenteiligen Effekt fĂŒhren.
  • Pseudozufallszahlengenerierung . Es werden verschiedene AnsĂ€tze zur Verwendung von ZufĂ€lligkeit beschrieben. Erfolgreiche Implementierungsbeispiele zeigen, dass das Spiel unabhĂ€ngig vom gewĂ€hlten Ansatz interessant, unerwartet und mit einem guten Grad an Wiederspielbarkeit ausfallen kann.

    Die bewusste konsequente Anwendung des gewÀhlten Ansatzes ermöglicht es Entwicklern, ihre positiven Aspekte hervorzuheben und negative zu minimieren.


Source: https://habr.com/ru/post/de432080/


All Articles