Implementieren Sie ein Programm oder eine Funktion, die gängige Würfel für Rollenspiele simuliert. Es sollte mindestens mit d6 und d20 umgehen, den beiden häufigsten Würfeln.
Es sollte jedoch so funktionieren, wie es stereotype Spieler erwarten, dass sie funktionieren, und nicht wie echte Würfel.
Es ist ein Scherz zwischen Spielern, dass man einen besonders glücklichen Würfel für einen sehr sehr wichtigen Wurf haben kann, indem man vorher viele Würfel wirft, diejenigen auswählt, die zu einer "1" geführt haben, und sie dann erneut wirft, bis man sie bekommt einige, die mehrmals eine "1" gewürfelt haben. Sie bewahren sie dann sorgfältig auf, da sie mehrmals hintereinander eine 1 gewürfelt haben. Daher sollte die Wahrscheinlichkeit, beim nächsten Mal eine 1 zu würfeln, äußerst gering sein.
Natürlich funktionieren Würfel im wirklichen Leben nicht so , weil die Würfe statistisch unabhängig sind.
Ihre simulierten Würfel müssen frühere Würfe berücksichtigen und ähnlich funktionieren, wie es der Spieler im Irrtum des Spielers erwartet. Wenn zum Beispiel viele niedrige Zahlen gewürfelt wurden, sollte die Wahrscheinlichkeit, eine höhere Zahl zu würfeln, erhöht werden.
Da dies jedoch Betrug ist, müssen Sie es gut verstecken . Dies bedeutet, dass ein gelegentlicher Blick auf das Programm nicht zeigen sollte, dass Sie betrogen haben. Dies bedeutet, dass es zu verdächtig wäre, die vorherigen Ergebnisse explizit zu speichern und sie bei jedem Wurf zu lesen. Sie müssen diese "Eigenschaft" Ihrer Würfel und Bonuspunkte verstecken, wenn Sie sie plausibel leugnen und als ehrlichen Fehler tarnen. (Zum Beispiel erstellen Sie Ihr eigenes RNG mit einem "unbeabsichtigten" Fehler.)
Wähler, bitte berücksichtigen Sie, wie gut dieser "Fehler" versteckt ist.
Die Programme sollten klar und nicht verschleiert sein. Es ist zu einfach, bösen Code in einem verschleierten Programm zu verstecken.
getRandomBetween(1,d)
würde mich veranlassen, tiefer in die Sprache zu schauen.