Har du mistet terningene fra et brettspill, eller trenger du en d20 midt i en rollespilløkt? Disse gratis virtuelle terningene erstatter alle terninger du ikke har for hånden. Angi hvor mange terninger du vil kaste i «Terninger» — alt fra 1 til 20 — angi hvor mange sider hver av dem har i «Sider», og trykk på «Generer». Siden åpnes med to vanlige sekssidige terninger, slik at ditt første kast bare er ett klikk unna. Hver terning vises for seg selv, og totalsummen av kastet dukker opp under, slik at et kast på 3d6 ikke krever hoderegning.
Hvert kast utføres av nettleseren din gjennom Web Crypto API (crypto.getRandomValues), som leverer kryptografisk sterke tilfeldige verdier fra systemets egen kilde til tilfeldighet, i stedet for en pseudotilfeldig JavaScript-funksjon som Math.random(). Å gjøre om en rå 32-biters verdi til et sidenummer er der digitale terninger ofte trår feil i det stille: Å ta verdien modulo antall sider er den åpenbare og skjeve tilnærmingen, for med mindre antall sider går opp i 2^32, vil de laveste sidene dukke opp litt oftere enn resten. Denne feilen kalles modulo bias, og den er målbar snarere enn teoretisk. Dette verktøyet kasserer i stedet enhver verdi utover det største eksakte multiplumet av antall sider, og trekker på nytt — en teknikk kalt rejection sampling. Det koster noen ekstra trekninger, men gir en eksakt garanti i stedet for en omtrentlig en. Ingenting sendes til en server, ingenting loggføres, og når siden først er lastet inn, vil kastene dine fortsette å fungere selv om nettilkoblingen forsvinner.
To felter gjør hele jobben, og de samsvarer direkte med den terningnotasjonen som spill allerede bruker. «Terninger» er hvor mange terninger du kaster om gangen, fra 1 til 20. «Sider» er hvor mange sider hver av dem har, fra 2 til 1000 — nok for et d2 myntkast, hele rollespillsettet med d4, d6, d8, d10, d12 og d20, prosentterningen d100, og hva enn et spill måtte finne på utover disse. Alt som skrives som NdM utgjør disse to feltene: 2d6 betyr «Terninger» 2 og «Sider» 6, en enkel d20 betyr «Terninger» 1 og «Sider» 20. Skal du kaste 3d6 for en karakteregenskap? Sett «Terninger» til 3, «Sider» til 6, trykk på «Generer», og de tre sidene lander sammen med totalsummen. To brytere endrer hvordan resultatet ser ut, snarere enn hva det er. «Animerte 3D-terninger», som er på som standard, lar en kube tumle for hver terning før den lander — slå den av, så dukker tallene umiddelbart opp som en enkel liste. «Tilfeldig farge» gir hver terning sin egen farge i stedet for den vanlige røde, og den har kun effekt så lenge «Animerte 3D-terninger» er slått på, fordi en enkel liste ikke har noen terninger å fargelegge. Prikker tegnes kun for en sekssidig terning; alle andre typer viser simpelthen tallet på siden, siden det ikke finnes noe prikkemønster for en syttensidig terning.
Under resultatet ligger linjen som sparer deg for matten: Σ er summen av hver terning i kastet, ved siden av hvor lang tid kastet tok og et notat om at det ble produsert lokalt. «Kopier alt» legger resultatet på utklippstavlen din, og «Lagre til fil» skriver det inn i et tekstdokument — begge gir deg de enkelte sidene, én per linje, i stedet for summen, slik at en logg over hva som ble kastet, forblir en logg over hva som ble kastet. «Historikk» beholder dine siste 10 kast i din egen nettleser: klikk på ett for å hente det tilbake på skjermen, inkludert totalsummen, kopier eller slett en enkelt oppføring, eller tøm hele listen når du vil. «Tøm» rensker resultatboksen og lar innstillingene dine være i fred.
Er virtuelle terninger bedre enn ekte? Når det gjelder rettferdighet, ja, og grunnen er fysisk. En vanlig støpt terning får prikkene boret ut og malt, og en boret prikk fjerner materiale. Dermed ender sekser-siden — med seks fordypninger i seg — opp med å bli marginalt lettest, og siden motsatt marginalt tyngst. Kasinoers precision dice finnes nettopp på grunn av dette: prikkene deres er fylt helt i flukt med materiale av samme tetthet, kantene er skåret rette snarere enn avrundede, de er maskinert til brøkdeler av en millimeter, og likevel tas de ut av spill etter noen få timers bruk. Terningene i en spilleske er ingen av delene, og de blir verre med tiden — et avskallet hjørne, en kant avrundet av årevis med risting, en terning som slippes ned på en dyne i stedet for å rulle over et bord, blir egentlig ikke randomisert i det hele tatt. En virtuell terning har ingen geometri som kan være feil, ingen slitasje og ingen kasteteknikk man kan krangle om, og den oppfører seg likt på det titusende kastet som på det første. Det den ikke kan, er å ligge i hånden din. Den ærlige oppsummeringen er at dette verktøyet vinner på rettferdighet, og taper på seremoni.
En rettferdig terning er ikke det samme som en rettferdig totalsum. Hver side av én terning er like sannsynlig, men i det øyeblikket du legger terninger sammen, slutter summene å være jevnt fordelt, og dette overrasker folk stadig vekk. To sekssidige terninger lander i 36 like sannsynlige kombinasjoner; seks av disse blir 7, mens nøyaktig én blir 2 og én blir 12 — så en 7 dukker opp seks ganger så ofte som en 12-er på helt rettferdige terninger. Å legge til en tredje terning strammer inn mønsteret ytterligere, noe som er grunnen til at 3d6 klumper seg rundt midten, og hvorfor spilldesignere griper til det når en verdi er ment å være ordinær oftere enn ekstrem. Én sekssidig terning snitter på 3,5, så 2d6 snitter på 7 og 3d6 snitter på 10,5, og denne regnemåten er vanligvis mer nyttig ved bordet enn noen enkeltstående sannsynlighet. Ingenting av dette er skjevhet: Det er simpelthen hva det å legge sammen terninger fører til, og det er grunnen til at et spill ber om 2d6 heller enn en d12 når de to dekker det samme spennet.
Terninger har ingen hukommelse. Fire seksere på rad gjør ikke en femte sekser mindre sannsynlig, en terning som ikke har vist en 1-er i hele kveld, har ikke dermed fortjent en, og ingen side blir noensinne «skyldig» — hvert kast er uavhengig av alle kastene før det, og terninger kan ikke vite hva de gjorde for ett minutt siden. Instinktet som påstår noe annet, er gambler's fallacy, og det er det samme instinktet som gjør oss dårlige til å finne på terningkast selv: Blir vi bedt om å skrive ned en plausibel rekke med kast, unngår vi repetisjoner, bytter mellom høye og lave, og sprer tallene langt jevnere enn tilfeldigheten noen gang gjør. Ekte tilfeldighet skaper derimot klumper, seiersrekker og lange opphold. En sekvens som ser mistenkelig ryddig ut, er fingeravtrykket til et menneske.
Hvorfor velge dette verktøyet for terningkast?
- Kastes kun i nettleseren: terningene kastes på enheten din og sendes aldri noe sted
- Web Crypto API-tilfeldighet: kryptografisk sikkert, ingen Math.random()
- Ingen modulo bias: rejection sampling holder hver side nøyaktig like sannsynlig
- Hvilken som helst terning et spill ber om: 1 til 20 terninger om gangen, fra en d2 til en d1000
- Summen regnes ut for deg: Σ legger sammen hele kastet, så 3d6 krever ingen hoderegning
- Animerte 3D-terninger, eller animasjonen avslått for en umiddelbar, enkel liste
- Én farge per terning, slik at flere terninger er enkle å skille fra hverandre med et øyekast
- «Historikk» og «Lagre til fil»: behold dokumentasjonen for et kast du kanskje må forsvare
- Ubegrenset og gratis: ingen innlogging, ingen bruksgrenser, ingenting på våre servere
Terninger dukker opp uansett hvor et spill trenger et tall ingen har valgt. Spillere av penn-og-papir-rollespill gjør — hjemme eller i en spillklubb — et angrepskast på en d20, kaster 3d6 for en karakteristikk og en d100 for en prosentsjekk, og en gruppe som har mistet halve terningposen sin, fortsetter likevel. Brettspill på hytta og ved kjøkkenbordet fungerer på samme måte når terningene har forsvunnet — sett «Sider» til 6, «Terninger» til 2, og spill videre. Spillgrupper på nett eller forum kaster på en delt skjerm, slik at alle ser de samme sidene lande. På 5. trinn kjører matematikktimen den klassiske sannsynlighetsleksjonen: kast 2d6 60 ganger, tell opp totalsummene og la klokkeformen tre frem på tavlen. Spillutviklere sjekker om en mekanikk gir like stor spredning som det føles som før noe sendes til trykken. Dessuten avgjør en mengde kast ikke annet enn hvem som starter, hvem som kjøper kaffen, eller hvilken av to planer som vinner — beslutninger basert på loddtrekning som mennesker har tatt med terninger i flere tusen år.
Dette verktøyet har noen få, ærlige begrensninger som er verdt å kjenne til. Ett kast bruker én type terning: Verdien i «Sider» gjelder for hver terning i kastet, så en d20 og en d6 sammen krever to kast i stedet for ett. Det finnes ingen modifikatorer, ingen fordel (advantage) eller ulempe (disadvantage), ingen eksploderende terninger, og ingen innskrivingsboks for notasjon — du får sider og totalsummen deres, og uansett hvilken regel som skal legges til, er det din oppgave å tilføye den. Σ teller med hver eneste terning i kastet, mens «Kopier alt» og «Lagre til fil» lagrer de individuelle sidene i stedet for summen. Animasjonen er alltid en sekssidig kube, uansett antall sider, fordi det er en dekorasjon: siden den lander på, er kastet motoren allerede har gjort. Kast skjer lokalt på enheten din, så for et spill over nett kaster én person og deler skjermen — dette verktøyet produserer et kast du kan forklare, ikke et kast en tredjepart kan sertifisere. Og en kryptografisk rettferdig terning er fortsatt bare en rettferdig terning: den har ingen tilknytning til noe lotteri eller en kasinotrekning, og gir ingen et fortrinn. Innenfor disse rammene er garantien sterk — hver side på hver terning har nøyaktig den samme sjansen, ved hvert eneste kast.