Bir slot makinesi için uygun bir ödeme oranını nasıl sağlayabilirim?


11

Slot makineleri, makara durdurma hesaplamaları ve kullanıcıya fiziksel olarak kazanmada iyi bir şans vermek için rasgele sayı üreteçleri üzerine çok fazla araştırma yaptım.

Anlayamadığım şey, makinenin% 95'lik bir ödeme derecesine sahip olacağından nasıl emin olacağınızdır.

Yani, üzerinde 22 boşluk bulunan bir makara var. 16 farklı sembolle dolu.

Rastgele numaramı aldığımda, mod 64'e bölüp geri kalanını elde ettiğimde, sanal durağın makara pozisyonuyla nasıl ilişkili olduğunu görmek için bir döngü tablosuna atlarım.

Artık makaraların nasıl duracağını bildiğime göre, ödeme oranının doğru olduğundan emin miyim? Koydukları her dolar için, makinenin .95 sent ödeyeceğinden nasıl emin olabilirim?

Fikirler için teşekkürler.

Eğer dil sorunlarına yardımcı oluyorsa, actioncript'te çalışıyorum, ancak genel olarak sadece teori arıyorum.

Düzenleme: Sadece daha fazla oynamak için daha fazla jeton satın alabilirsiniz gerçeğiyle ilgili gerçek para var. Gerçekte herhangi bir ödeme çizgisini vuracaklarsa, kişiye gerçek para ödenmeyecektir.


2
Bu kritik işletme kodu mu? Kullanıcılarınız gerçek para kazanıyor mu?
Dave O.

Yanıtlar:


9

Sorduğunuz şey olasılık teorisi ile ilgilidir . Bir makara ile çalışmak ve daha sonra nasıl çalıştığını anladıktan sonra birden fazla makaraya uzatmak en kolay yoldur.

Bir makaraya sahipseniz, duraklara atamak istediğiniz bazı sembolleriniz olduğunu düşünün. Makaradaki daha fazla sembol nihai sonuçlar üzerinde daha fazla kontrole neden olur, ancak oyuncu için daha rastgele hissedilir. Amaç, sembol ve durma sayısını dengelemek, böylece makine oyuncuya daha az rastgele geliyor ve daha fazla şansa sahip gibi.

10 sembolünüz ve 10 durağınız varsa, her sembolün her 10 saniyede bir görünme şansı olacaktır. Sembollerin hangi sırada olduğu önemli değildir (teorik olarak, oyunun rastgele olması sadece rastgele sayı üreteciniz kadar iyidir). Başka bir deyişle, 10 döndürmede 10 farklı sembol veya her dönüşte farklı bir sembol görmeyi bekleyebilirsiniz. Belirli bir sembol elde etme şansı 10'da 1'dir. Bu nedenle, her 10 dönüş için, her bir sembolü bir kez görmeyi bekleyebilirsiniz. "Kazanan" sembol olarak 1 sembol seçtiyseniz, oyuncu kazanmadan önce 10 kez oynamak zorundadır. Bu bilgilerle, ödemeyi çözmek oldukça basittir. Her spin için 1 $ talep ederseniz, kazanana inmeden önce 10 $ harcamak zorunda kalacaklar. Beklenen puanınız% 95 ise, hesaplama 10 x 95% = 9.50 dolar. Başka bir deyişle, beklenen kazancın% 95 olması için "kazanan" sembolü üzerine iniş ödülü $ 9.50 olmalıdır. Şimdi bunların hepsinin ortalamayı temel aldığını unutmayın. Sembolün tam olarak 10 dönüşte görüneceğine dair bir garanti yoktur, 100 veya 1000 dönüş alabilir veya sadece 1 dönüş görünebilir. Yeterince uzun bir süre geçtikten sonra makine ortalama olarak doğru miktarı ödeyecektir.

Bunun birden fazla makara üzerinde çalışmasını sağlamak için her bir makarada kazanma olasılığını çarpmanız gerekir. Bir önceki örnekte olduğu gibi, her makarada 10 sembol ve her makarada 1 kazanan sembol olan 3 makara örneğini düşünün. Diyelim ki oyuncunun sadece üç makara da aynı anda kazanan sembolü gösterdiğinde kazanmasını istersiniz. Bunu yapmak için, her makara için olasılığı bulmanız ve olasılıkları birlikte çoğaltmanız gerekir. Önceki örnekten olasılığın 10'da 1 olduğunu biliyoruz. Bu, 1/10 veya 0.1 olarak da yazılabilir. Üç çarkın hepsinin kazanan simgeye aynı anda inme olasılığı 1000'de 1/10 x 1/10 x 1/10 veya 0,1 x 0,1 x 0,1 veya 0,001 veya 1'dir. Çok fazla olduğunu görüyoruz. aynı anda her üç çarkta da kazanma sembolünün görülme olasılığı düşüktür. Oyuncunun kazanmadan önce ortalama 1000 kez dönmesi gerekir. Her spin 1 $ olsaydı, kazanmak için 1000 $ harcamak zorunda kalacaklardı. Kazanan yüzde için hesaplama şu şekildedir: 1000 x 95% ** = 950,00 dolar.

Kısaca bu teori. Gerisi, oyunu daha ilginç göstermek için farklı olasılıkları dengeliyor.

Sizin durumunuzda, 22 durak ve 16 sembolünüz varsa. Bu, en az bir diğer sembolle aynı olan 6 sembolünüz olacağı anlamına gelir. Herhangi bir sembolün ortaya çıkma olasılığı, o sembolün makaradaki toplam tekrarlama sayısına bağlıdır. Her bir makarada her sembolün kaç tanesi size kalmış.

Örnek olarak, 15 benzersiz sembolünüz olduğunu ve bunların hepsinin yinelendiğini 7 olduğunu varsayalım. Kopyalardan herhangi birinin görünme şansı 22'de 7 veya 7/22 veya% 32'dir. 1 makaraya sahip olsaydınız, 1 $ 'a kadar, oyuncu 100 dönüşte 32 kez kopyalardan birine inerdi. Ödeme, (1 / (32/100)) x% 95 x $ maliyet olarak hesaplanır. Bu yüzden, spin başına 1 $ 'a mal olsaydı, kopyalardan biri her göründüğünde oyuncuya 2,97 $ ödersiniz.

Başka bir örnek olarak, 3 bobininiz varsa ve spin başına 2 $ 'a mal olsaydı, ödemeyi şu şekilde çözersiniz: (1 / (32/100 x 32/100 x 32/100)) x 0.95 x $ maliyet = 30.5 x% 95 x 2 $ = 57,95 dolar ödeme. Diğer kopya olmayanların olasılıklarını şu şekilde hesaplayabilirsiniz: (1 / (1/22 x 1/22 x 1/22)) x 0.95 x $ maliyet = 10648 x 0.95 x $ 2 = 20231.20 $. Bu oldukça büyük bir sayıdır, ancak daha sonra kazanan dizilerin herhangi birinin olasılığı oldukça düşüktür (kabaca 9x10 ^ -5).

Son örneklerde farklar oldukça aşırıdır, oyuncu ya çok sık 58 $ kazanır ya da neredeyse hiç 20231 dolar kazanır, aralarında hiçbir değişiklik olmaz. Oyunu ilgi çekici hale getirme sanatı, değişen miktarlarda kazanmak için daha fazla fırsat yaratmaktır. Bu genellikle makaraları farklı olasılıklarla karıştırarak gerçekleştirilir. Yani her makara yerine
her sembolün aynı sayısı, bir makarada daha fazla sembol olabilir veya bir sembol türünden daha fazlası olabilir. Olasılığı hesaplamak için formül öncekiyle aynıdır, sadece her makara için doğru oranları kullanmayı unutmayın. Örneğin, bir sembolün 22 duraklı ve 3 tekrarlı makarası A, 26 duraklı ve 2 sembollü makara B ve 20 duraklı ve sembolün 5 örneği olan makara C'niz varsa, formül şöyle görünür: (1 / (3/22 x 2/26 x 5/20)) x% 95 x $ maliyet.

Ve hepsi bu kadar. Umarım örneklerde çok fazla hata yapmadım, bu yüzden hala yararlı bulabilirsin: P

** Gösterimle ilgili bir not olan% 95, 0.95 ile aynıdır. 32/100 0,32 ile aynıdır, 7/22 0,31818 ile aynıdır vb.


İnanılmaz. Bana çok fazla iş kazandın. Yuvaların nasıl çalışması gerektiğine dair birçok dokümanı okudum, ancak bu cevap gerçekten layman açısından bana sattı. Teşekkürler!
Stephen

7

Beklenen değerin .95 olmasını istiyorsunuz . Basit bir ifadeyle, bu probability * payouther bir devletin toplamıdır .

Bir kaba kuvvet yöntemi, 22 ^ 3 durumun tümünü yinelemek (3 makaraya sahip olduğunuzu varsayarak), ödemeyi toplamak ve toplamı 22 ^ 3'e bölmek olacaktır. Bununla birlikte, çoğu eyalet muhtemelen hiçbir şey ödemediğinden, bunun yerine ödeme yapan tüm eyaletleri çözmek daha kolay olabilir.

Örneğin, makara başına 1 Bell sybol'unuz varsa,

[Bell] [Bell] [Bell]

1/22 ^ 3 olacaktır. Ve eğer makara başına 2 Kirazınız varsa,

[Cherry] [Cherry] [any]

1/11 ^ 2 olacaktır.


EDIT: Yukarıdaki sadece ödemelerin istenen getiri oranını sağlayıp sağlamadığını nasıl kontrol edeceğinizi gösterir. Basit bir örnek olarak, 2 jeton çevirmek için 1 $ ödediğiniz bir oyunu ele alalım. İşte hepsinin 0,95'lik bir getiri oranı veren üç ödeme şeması:

  1. İki kafa 3.80 dolar ödüyor, diğer her şey hiçbir şey ödemiyor
  2. İki kafa veya iki kuyruk 1,90 dolar ödüyor, diğer her şey hiçbir şey ödemiyor
  3. İki kafa hiçbir şey ödemez, diğer her şey 1,26 dolar öder

Hangisi daha "eğlenceli"? Sen söyle...


Bununla birlikte, son birkaç on yıl içinde yapılan hiçbir slot makinesi makaraları bu şekilde döndürmez. Eğer üç çan ikramiye öderse, fiziksel makarada kaç tane olursa olsun orantısız olarak daha az ortaya çıkarlar.

3
Ben sadece matematik işlemek - eğlenceli hale getirmek başkasının işi :)
celion

@joe - Katılıyorum, çanlar makaradaki sembollerin geri kalanından bir ton daha az olacak. @celion Henüz tam olarak anlamıyorum. Diyelim ki makaralarım var (5 tane var) ve kullanıcı oyunu oynamak için düğmeye bastı. Sonraki 5 rasgele sayıyı alıyorum, durakları bulmak için calcs yapıyorum ve sembollerin gösterilmesini sağlıyorum. Ödeme oranı rastgele sayıları ve durakları nasıl etkiler? Ödemeyi makaradaki simgeler ve makaradaki yüksek> düşük ödeme sembolleri miktarıyla ayarlayabilir miyim?
Kris.Mitchell

@ Kris-Mitchell - Belki slot makinelerinin nasıl çalıştığını yanlış anlıyorum. Her olası sonuç için ödemenin sabit olduğunu varsaydım. Makaradaki semboller her turda değişirse, matematik biraz zorlaşır, ancak yine de belirli bir durumun olasılığını (çevrimdışı, kalem ve kağıtla) çözebilmeniz gerekir. Bu size bir dizi ödemenin istenen (ortalama) getiri oranını vermesini sağlamak için bir yol sağlar; bu kısıtlamayı göz önünde bulundurarak ödemeleri atamanın sonsuz sayıda yolu vardır, bu nedenle "eğlenceli" bir ödeme seçmek size kalmıştır.
celion

@celion - Seni özlüyorum demek istemedim ve eğer başka biri bunu okuyorsa yanılıyorsam beni düzelt, ama ödeme sabittir. Makaraların her turda değiştiğine inanmıyorum. Video slot makaralarının gerçek bir mekanik slot makinesinden çok daha büyük olduğunu düşünüyorum. Bu arada, ben en çok seçenek 2 veya 3 zevk inanıyorum. İki, hala kaybedeceğinizi bilirken, para kazanabileceğiniz bir meydan okuma olacak kadar risklidir. Öte yandan üç tane daha iyi görünüyor çünkü kazanma şansınız daha fazla.
Kris.Mitchell

1

Bunu yapmanın daha kolay ve daha güvenilir yolu, makaraları simüle etmek değil, oyuncunun kazandığını seçen ve daha sonra makarayı prosedürel olarak dolduran (veya büyük bir setinin bir yere kaydettirdiği bir iç kalıpya sahip olmaktır). Yapmak).


0

Diğerleri bu parçaya dokunmadı:

Makinenin bir ödeme derecesine sahip olacağından nasıl emin olunur ..

Tamamen rastgele sayılar kullanırsanız, emin olmanın bir yolu yoktur. Bununla birlikte, geri bildirim döngüsü kullanarak ödemelerin istatistiklerini tutabilir ve çalışma zamanında ödeme olasılığını ayarlayabilirsiniz .

Bir süredir ödeme yapılmadıysa, kazanmayı daha muhtemel hale getirin ve bunun tersi de geçerlidir.

Geri bildirim döngünüzün istendiği gibi çalıştığından emin olmak için koşuların simülasyonlarını (birkaç milyar yineleme yapmalısınız) çalıştırabilirsiniz.


1
Çözümünüz gereksiz. Mükemmel bir rasgele sayı üreteci (RNG) kesin ödeme oranına zamanla yaklaşacaktır. Varsayılan yerleşik RNG işlevinizi kullanmanın gerçekten kabul edilebilir olmadığı doğru olsa da (esas olarak öngörülebilirlik nedeniyle), doğru çözüm daha iyi bir RNG kullanmaktır, örneğin: en.wikipedia.org/wiki/Random_number_generation#Physical_methods . Ayrıca, rastgele olmayan oyun mantığı veya önerdiğiniz gibi ödeme derecelendirmesini "değiştirir" de dahil olmak üzere çoğu yerde yasadışıdır. Dikkat çekici bir web sitesi için iyi, ancak gerçek bir dünya uygulaması için toplam başlangıç ​​değil.
Luke Van

1
@lukevanin, yasal olarak başka yerlerde gereklidir, bu yüzden gerçekten bağlamı anlamak için bir durumdur.
Peter Taylor

0

Şimdiye kadar tüm cevapların çalışmak için mükemmel bir RNG'ye sahip olduğunuzu varsaydığını unutmayın. Saf bir yazılım RNG aslında bir sahte RNG veya kısaca PRNG'dir, çünkü aynı giriş değeri (tohum) her zaman aynı rastgele sayılar dizisini üretecektir, bu nedenle bir PRNG doğal olarak tahmin edilebilir.

Tabii ki, özellikle küçük bir örnek boyutu ile "gerçek" müşteri tarafında "sözde" RNGs ayırt etmek zor bir sorun, ama bir fark var - para ve yasal sorumluluk dahil bir uygulamada, ben olmaz şansını dene. Bir RNG'ye ihtiyacınız varsa, hiçbir RNG'ye sahip olmaktan daha kötü olan tek şey, bilmeden kırık bir RNG'ye sahip olmaktır, bu nedenle şirketinizin asla köşeleri kesmemesi veya anında öğrenmemesi gereken bir alandır.

İyi PRNG algoritmaları vardır, ancak asla fiziksel bir entropi kaynağıyla eşleşmezler. Dolayısıyla, matematiğin pratikte ve teoride çalışabilmesi için, mümkün olan en iyi RNG'yi kullandığınızdan emin olun - hem yasal hem de finansal olarak şirketinizin çıkarına olur.


0

Çok basit bir yaklaşım, sadece olası tüm spin sonuçları üzerinde yineleme yapmak ve toplanan toplam paralara karşılık birleşik kazançları toplamak olabilir.

Tekerlek düzenleri oluşturarak başlayın, isterseniz yinelenen sembollere izin verin. İstediğiniz kazanan modelleri ve ödemeleri belirleyin. Toplam ödemeyi belirlemek için bir algoritma üzerinden tekerlek desenini çalıştırın, toplanan paraya bölün, bu ödeme oranınızdır.

Çok yüksekse, daha fazla boş alan veya daha az ödeme sembolü ekleyin VEYA desen ödemesini düşürün (örn. Üç tek çubuk 10 ABD doları veya 5 ABD doları olabilir). İstenen ödeme oranı belirlenene kadar algoritmayı yeniden çalıştırın.

Bu, değer ödemelerini eşit tutmanıza olanak tanır (kazanan bir desen için 4,58 $ değil, 5 $ kullanabilirsiniz). % 95 gibi tam bir ödeme yapamayabilirsiniz, ancak tweaking ile yaklaşabilirsiniz.

Bir tekerlek düzeninin ödeme oranını belirlemek için örnek bir algoritma:

payout = 0.0
collected = 0.0
ratio = 0.0
bet = 1.0
FOREACH symbol1 IN wheel1
  FOREACH symbol2 IN wheel2
    FOREACH symbol3 IN wheel3
      payout = payout + DetermineWinnings(symbol1, symbol2, symbol3, bet)
      collected = collected + bet
    NEXT
  NEXT
NEXT
ratio = payout / collected
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.