Metanje kovanca in kolo sreče — brezplačno
Vrzite virtualni kovan, zavrtite prilagodljivo kolo ali naključno izberite iz seznama možnosti. Uporablja kriptografsko varno naključnost vašega brskalnika — ni javno preverljiva sorta, zato se izogibajte reguliranim tekmovanjem.
🔒 Vsi trije uporabljajo kriptografsko varno naključno število vašega brskalnika: rezultat se najprej izbere, nato se animira — kovan je pravi 50/50, kolo se vrti na že izbrani rezultat, izbira pa je nepristranska. Nič ne zapusti vaše napravo. To je pošteno za običajno uporabo, vendar ni javno preverljiva sorta, zato se izogibajte reguliranim tekmovanjem ali odločitvam z visoko vrednostjo.
Pogosta področja uporabe
- Vrzite kovanec za odločitveUporabite pošten virtualni met kovanca za hitre, nepristranske odločitve, ko ste obtičali med dvema možnostma.
- Zavrtite kolo za naključne dodelitve ekipeUporabite prilagodljivo kolo za naključno dodelitev članov ekipe na naloge, vloge ali skupine.
- Naključni izbor učencev za učilniceUporabite kolo ali izbor možnosti za naključno klicanje učencev, dodelitev skupin ali izbor prostovoljcev.
- Virtualni met kovanca za športVrzite pošten kovanec, da določite strani ekipe, prvo posest, vrstni red servisa ali druge športne odločitve.
- Naključni izbor za podarjanjaIzberite naključnega zmagovalca iz seznama vnosov z izborom možnosti — transparenten in pošten.
Kako deluje
Vsi trije načini — met kovanca, vrtenje kolesa in izbirnik možnosti — uporabljajo vgrajen Web Crypto API brskalnika (crypto.getRandomValues) za ustvarjanje zmagovalnega izida, nato animacijo v celoti vodijo na odjemalski strani s CSS transformacijami in requestAnimationFrame. Strežnik ni vpleten na nobeni točki.
- 1Web Crypto izbere zmagovalcaPreden se katera koli animacija začne, crypto.getRandomValues napolni Uint32Array s kriptografsko naključnim 32-bitnim celim številom. Operacija modulo ga preslika na število možnosti (2 za glavo/rep, N za kolo ali izbirnik), tako da ima vsak izid natanko enako verjetnost.
- 2Kot vrtenja se izračuna tako, da pristane na rezultatuZa kovanec koda izračuna najkrajše dodatno vrtenje (poleg trenutnega kumulativnega kota), ki se konča s pravilno stranjo navzgor — glava pri 0°, rep pri 180° — nato doda 5 polnih vrtljajev, da izgleda kot pravo mečkanje. Kolo naredi enako: najde kotni odmik, ki pripelje zmagovalni izsek pod kazalec, doda 6 polnih vrtljajev in uporabi majhno naključno odstopanje, tako da kazalec ne obstane vedno natanko na sredini izseka.
- 3CSS prehodi in requestAnimationFrame vodijo animacijoKovanec in kolo se animirata prek CSS transform s krivuljo glajenja cubic-bezier, uporabljeno na eno kumulativno vrednost vrtenja — po nastavitvi kota ni potreben JavaScript za vsako sličico. Izbirnik možnosti namesto tega uporablja requestAnimationFrame: pri vsaki sličici kvadratno naraščajoč interval določi, ali naj se poudarek premakne, kar ustvarja pojemanje v slogu igralnega avtomata, ki se vedno ustavi na vnaprej določenem zmagovalcu.
- 4Rezultat se razkrije in zabeleži v zgodovino sejesetTimeout se sproži, ko se animacija konča (1,3 s za kovanec, 4,3 s za kolo), in zapiše rezultat v stanje. Način kovanca vodi tekočo zgodovino seje do 24 metov s štetjem glave/rep. Uporabniki z vklopljeno možnostjo prefers-reduced-motion animacijo v celoti preskočijo in rezultat vidijo takoj.
Sorodna orodja
Vrtiljak
Vnesite seznam imen ali možnosti, zavrtite kolo in naj naključno izbere eno, s tikajočim zvokom, konfeti in možnostjo odstranitve vsakega izbranca.
Generator naključnih številk
Ustvarite naključne številke v katerem koli obsegu, ustvarite edinstvene sezname številk ali mečite kocke. Uporablja kriptografsko varno naključnost.
Generator naključnih ekip
Razdelite seznam imen v uravnotežene naključne ekipe — po številu ekip ali velikosti ekipe. Kriptografsko pošteno mešanje, takojšnje premešavanje.