123DiceRoller, gerçekçi 3D zarları tarayıcında atan ücretsiz bir online zar atma aracıdır. Adil, hızlı ve gizliliğe saygılı olacak şekilde tasarlandı: sonuçlar kriptografik olarak güvenli bir rastgele sayı üretecinden gelir, zarlar gerçek fizikle atılır ve seninle ya da atışlarınla ilgili hiçbir şey sunucuya gönderilmez.
Bir atış adım adım nasıl çalışır?
- Önce sayılar çekilir. Her zar için tarayıcının Web Crypto API’si (
crypto.getRandomValues) rastgele bir 32 bitlik sayı sağlar. Bu sayı reddetme örneklemesiyle bir yüze indirgenir: düşük yüzleri çok az da olsa daha olası kılacak çekilişler yok sayılır. Böylece N yüzlü bir zarın her yüzünün olasılığı tam olarak N’de 1 olur. - Atış simüle edilir. Bir katı cisim fizik motoru (cannon-es) zarları yerçekimi, sürtünme, sekme ve zarlar arasındaki çarpışmalarla masaya fırlatır. Atışın tamamı, gösterilmeden önce saniyenin küçük bir kesrinde hesaplanır.
- Zarlar sonuca uyacak şekilde döndürülür. Her zar şekli simetriktir: bir d20, 60 farklı şekilde döndürülebilir ve her seferinde aynı görünür. Araç, çekilen sayıyı fiziğin üst yüzü getirdiği konuma taşıyan tek dönüşü seçer ve bunu daha ilk kareden uygular. Hareket gerçektir; sayı ise önceden ve adil biçimde belirlenmiştir.
- Kırık zarlar yeniden atılır. Bir zar başka bir zara yaslanarak duracak olursa, gerçek bir masada da yeniden atış gerekeceği gibi, atış görünmeden yeniden yapılır.
- Son olarak atış oynatılır; gölgeler, yansımalar ve her çarpmaya denk gelen seslerle birlikte.
Sayıyı neden fizik belirlemiyor?
Çünkü bir simülasyon adil bir rastgelelik kaynağı değildir. Başlangıç konumundaki, zaman adımındaki ve yuvarlamadaki küçük ayrıntılar bazı yüzlerin diğerlerinden daha sık gelmesine yol açabilir ve kimse bunun olmadığını kanıtlayamaz. Kriptografik bir üreteç ise öngörülemez ve düzgün dağılımlı olacak şekilde tasarlanır ve test edilir. İkisini ayırmak sana her ikisinin de en iyisini verir: gerçek gibi görünen ve gerçek gibi ses çıkaran bir atış ve güvenebileceğin bir sonuç.
Kesin olasılıklar
Her atış için gösterilen olasılıklar tahmin edilmez, hesaplanır. Toplamlar konvolüsyonla, her seferinde bir zar olmak üzere hesaplanır; avantaj gibi tutma ya da eleme atışları ise her farklı sonuç tek tek sayılarak bulunur. Yöntem, zar olasılık hesaplama sayfasında anlatılıyor.
Kullanılan teknolojiler
- 3D görüntü için three.js (MIT lisansı)
- Fizik için cannon-es (MIT lisansı)
- Sunucuda veritabanı, hesap ve takip olmadan, sade PHP
Her iki kütüphane de üçüncü taraf bir CDN yerine bu siteden sunulur; böylece sayfa hiçbir zaman başka bir yerden kod yüklemez.
123 ailesinin bir parçası
123DiceRoller, 123Calculator ve diğer ücretsiz, üyelik gerektirmeyen araçlarımızla aynı ailenin üyesidir. Soruların, fikirlerin ya da bildirmek istediğin bir hata mı var? hello@123diceroller.com adresine e-posta gönder.
Son güncelleme: