Tietoa 123DiceRoller-sivustosta

123DiceRoller on ilmainen nopanheitin netissä: se heittää realistisia 3D-noppia suoraan selaimessasi. Se on tehty reiluksi, nopeaksi ja yksityiseksi: tulokset tulevat kryptografisesti turvallisesta satunnaislukugeneraattorista, nopat heitetään oikealla fysiikalla, eikä mitään sinusta tai heitoistasi lähetetä palvelimelle.

Näin heitto toimii vaihe vaiheelta

  1. Luvut arvotaan ensin. Selaimesi Web Crypto API (crypto.getRandomValues) antaa jokaiselle nopalle satunnaisen 32-bittisen luvun. Se muunnetaan nopan sivuksi hylkäysotannalla (rejection sampling) – arvonnat, jotka tekisivät pienistä sivuista hiukan todennäköisempiä, hylätään – joten N-sivuisen nopan jokaisella sivulla on tasan todennäköisyys 1/N.
  2. Heitto simuloidaan. Jäykän kappaleen fysiikkamoottori (cannon-es) heittää nopat pöydälle painovoiman, kitkan, kimpoilun ja noppien välisten törmäysten kanssa. Koko heitto lasketaan sekunnin murto-osassa, ennen kuin se näytetään.
  3. Nopat käännetään vastaamaan tulosta. Jokainen noppamuoto on symmetrinen: d20:n voi kiertää 60 eri asentoon niin, että se näyttää täsmälleen samalta. Nopanheitin valitsee sen yhden kierron, joka tuo arvotun luvun sinne, mihin fysiikka toi ylimmän sivun, ja käyttää sitä aivan ensimmäisestä kuvaruudusta alkaen. Liike on aitoa; luku oli jo päätetty, reilusti.
  4. Vinoon jääneet nopat heitetään uudelleen. Jos jokin noppa jäisi nojaamaan toiseen, heitto tehdään näkymättömästi uudelleen, aivan kuten oikean pöydän ääressä heitettäisiin uudelleen.
  5. Heitto toistetaan varjoineen, heijastuksineen ja jokaiseen iskuun ajoitettuine äänineen.

Miksei fysiikka saa valita lukua?

Koska simulaatio ei ole reilu satunnaisuuden lähde. Pienet yksityiskohdat aloitusasennossa, aika-askeleessa ja pyöristyksissä voivat saada jotkin sivut tulemaan useammin kuin toiset, eikä kukaan voi todistaa, ettei niin käy. Kryptografinen generaattori on suunniteltu ja testattu olemaan ennustamaton ja tasainen. Kun nämä kaksi erotetaan, saat molempien parhaat puolet: heiton, joka näyttää ja kuulostaa aidolta, ja tuloksen, johon voit luottaa.

Tarkat todennäköisyydet

Jokaisen heiton todennäköisyydet lasketaan, niitä ei arvata. Summat lasketaan konvoluutiolla noppa kerrallaan, ja pidä- tai pudota-heitot, kuten etu, käymällä läpi jokainen erilainen lopputulos. Noppien todennäköisyyslaskuri selittää menetelmän.

Tekniikka

  • three.js 3D-grafiikkaan (MIT-lisenssi)
  • cannon-es fysiikkaan (MIT-lisenssi)
  • Palvelimella pelkkä PHP – ei tietokantaa, ei käyttäjätilejä eikä seurantaa

Molemmat kirjastot tulevat tältä sivustolta eivätkä kolmannen osapuolen CDN:stä, joten sivu ei koskaan lataa koodia mistään muualta.

Osa 123-perhettä

123DiceRoller kuuluu samaan perheeseen kuin 123Calculator ja muut ilmaiset työkalumme, jotka eivät vaadi rekisteröitymistä. Kysyttävää, ideoita tai bugi ilmoitettavana? Lähetä sähköpostia osoitteeseen hello@123diceroller.com.

Päivitetty viimeksi