> ## Documentation Index
> Fetch the complete documentation index at: https://docs.mycryptocasino.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Crash adilliği

> Neyin taahhüt edildiği, sonucun ne zaman sabitlendiği, formül ve şemanın sınırları.

Bir Crash turunun çarpanı bahisler kapanmadan önce belirlenir ve sonradan değiştirilemez. Backend, bahisler açılmadan önce rastgele bir gizli değerin SHA-256 hash'ini zincir üstünde yayımlar; program tur başladığında işin içine bir Solana slot hash'i katar; gizli değer ise sonuçlandırmada açıklanır. Böylece herkes crash noktasını yeniden hesaplayıp kontrol edebilir.

Bu sayfa her [Crash](/tr/docs/games/crash) turunun ardındaki mekanizmayı tam olarak anlatır: neyin taahhüt edildiği, sonucun ne zaman sabitlendiği, formülün tam hâli ve şemanın dürüstçe ifade edilmiş sınırları. Henüz okumadıysanız önce [Kanıtlanabilir adilliğe genel bakış](/tr/docs/provably-fair/overview) sayfasını okuyun; orada commit-reveal sade bir dille açıklanıyor.

<h2 id="the-life-of-a-round">
  Bir Crash turu sırasında zincir üstünde neler olur?
</h2>

Her Crash turu, bu sırayla üç zincir üstü işlemden oluşur:

1. **Commit**: bahisler açılmadan önce backend rastgele 32 baytlık bir gizli değer üretir ve SHA-256 hash'ini zincir üstünde yayımlar (`start_new_round` talimatı). Taahhüt budur: bu andan itibaren turu yalnızca o gizli değerin kendisi sonuçlandırabilir. Taahhüt, işlemin `CrashRoundPrepared` olayında herkese açıktır.
2. **Bahisler**: oyuncular bahislerini yapar. Gizli değer saklı kalır; taahhüt, değiştirilemeyeceğini garanti eder.
3. **Tur başlangıcı / entropinin yakalanması**: tur başladığında (`start_game` talimatı) program, Solana'nın `SlotHashes` sysvar'ından **en son slot hash'ini** okur ve tura kaydeder. Uygulama bu değere turun *blok hash'i* der. **Crash noktası artık tamamen belirlenmiştir** (kaydedilen slot hash'inin ve taahhüt edilen gizli değerin saf bir fonksiyonudur), ancak gizli değeri bilmeyen hiç kimse onu henüz hesaplayamaz. Bu değer `CrashGameStarted` olayında herkese açıktır.
4. **Tur oynanır**: çarpan yükselir ve oyuncular kazançlarını alır.
5. **Reveal**: backend gizli değeri gönderir (`crash` talimatı). Program, `sha256(secret)` değerinin taahhüde eşit olduğunu **zincir üstünde doğrular** (eşleşmezse işlem başarısız olur), ardından crash noktasını bizzat hesaplar ve turu kesinleştirir. `CrashRoundFinalized` olayı gizli değeri, slot hash'ini ve nihai crash noktasını yayımlar.

<h2 id="the-exact-formula">
  Crash noktası formülünün tam hâli nedir?
</h2>

Crash noktası tam olarak şöyle türetilir (zincir üstü programın yürüttüğü aritmetik budur: tamsayı matematiği, sürpriz yuvarlama yok):

```text theme={null}
girdiler
  blockhash   32 bayt    tur başında kaydedilen Solana slot hash'i
  secret      32 bayt    sonda açıklanan operatör gizli değeri (sha256(secret) olarak taahhüt edilir)
  edge_bps    tamsayı    baz puan cinsinden kasa avantajı (bkz. Ücretler ve limitler; 150 = %1,5)

türetme
  hash  = sha256( blockhash ‖ secret )        // 64 baytlık girdi: önce blockhash, sonra secret
  X     = u32_be( hash[0..4] )                // hash'in ilk 4 baytı, big-endian işaretsiz 32 bit
  X'    = min( X, 2^32 − 1000 )               // güvenlik sınırı: aşağıdaki payda asla 1000'in altına inmez

  crash_bps = max( 10000, floor( (10000 − edge_bps) × 2^32 / (2^32 − X') ) )

sonuç
  crash çarpanı = crash_bps / 10000           // örn. 29948 → 2.9948x
```

Yeniden hesaplarken önemli olan ayrıntılar:

* Birleştirme sırası **önce blockhash, sonra secret** şeklindedir.
* `X`, SHA-256 çıktısının **ilk 4 baytından** **big-endian** olarak okunur.
* Bölmeler **aşağı yuvarlamalı** (tamsayı) bölmelerdir.
* `max(10000, …)` alt sınırı, çarpanın asla 1.00x'in altına düşmeyeceği anlamına gelir; `X` üzerindeki sınır ise paydanın astronomik derecede küçülmesini önler.

### Örnek hesaplama

`X = 0xABCD1234` (2.882.343.476) ve mevcut %1,5 kasa avantajı (`edge_bps = 150`) ile:

```text theme={null}
payda       = 2^32 − 2882343476 = 1412623820
crash_bps   = floor( 9850 × 2^32 / 1412623820 ) = 29948
crash       = 2.9948x
```

### Dağılım nasıl görünür

Formül, düzgün dağılımlı bir `X` değerini klasik crash eğrisine dönüştürür. Bir turun en az `m` çarpanına ulaşma olasılığı yaklaşık olarak şudur:

```text theme={null}
P(crash ≥ m) ≈ (1 − kasa avantajı) / m
```

Mevcut %1,5 kasa avantajıyla: turların yaklaşık %49,25'i 2.00x'e, yaklaşık %9,85'i 10x'e ulaşır ve turların yaklaşık %1,5'i anında 1.00x'te çöker (kasa avantajı tam da buradadır). Her tura uygulanan kasa avantajı, reveal anında zincir üstünde yapılandırılmış değerdir; güncel değer [Ücretler ve limitler](/tr/docs/fees-and-limits) sayfasında listelenir.

## Neler garanti edilir, neler edilmez

**Program tarafından zorunlu kılınanlar:**

* Taahhüt zincire yazıldıktan sonra operatör turun gizli değerini değiştiremez: hash'i eşleşmeyen herhangi bir gizli değerle reveal işlemi başarısız olur.
* Tur başladıktan (slot hash'i kaydedildikten) sonra **crash noktası sabitlenmiştir**. Kazancı erken, geç ya da topluca almak hiçbir şeyi değiştirmez: sonuç, çarpan yükselmeye başlamadan önce belirlenmiştir.
* Crash noktasını backend bildirmez, program hesaplar. Yanlış bir değer zincire yazılamaz.
* Doğrulama için gereken her şey (taahhüt, slot hash'i, gizli değer, nihai crash noktası) zincir üstü olaylarda kalıcı olarak yayımlanır.

**Dürüst çekinceler** (bu bir VRF değil, commit-reveal'dır):

* **Başlangıç zamanlaması.** Operatör gizli değeri tur başlamadan önce bilir ve backend'i tur başlangıç işleminin ne zaman gönderileceğine karar verir. Son slot hash'leri herkese açık olduğundan, ilke olarak aday slot'lar için olası çarpanı önceden hesaplayıp başlangıcı hangi slot hash'inin yakalanacağını etkileyecek şekilde zamanlayabilir. Şema bunu engellemez; gözlemlenebilir kılar: tur başlangıç zamanlaması herkese açıktır ve sistematik bir sapma, herkesin toplu olarak yeniden hesaplayabileceği yayımlanmış crash noktalarının istatistiklerinde ortaya çıkar.
* **İptaller.** Tur başladıktan sonra operatör sonucu oyunculardan önce bilir ve reveal yapmak yerine aleyhine olan bir turu iptal edebilir. Burada iki kesin sınır vardır: iptal **tüm bahis tutarlarını eksiksiz iade eder** (programın el koyma yolu yoktur) ve her iptal herkese açık bir olay yayar; iptal sıklığı zincir üstündeki ele veren işarettir. İptal, kaybolan bir gizli değer (örneğin commit ile reveal arasında backend'in çökmesi) için bir kurtarma yolu olarak vardır ve pratikte neredeyse hiç kullanılmaması beklenir.

<h2 id="verify-a-round">
  Bir Crash turu nasıl doğrulanır?
</h2>

Uygulamada tamamlanan her turun ayrıntıları, açıklanan gizli değeri ve blok hash'ini gösterir; üç işlemin tamamına ve çarpanı sizin için yeniden hesaplayan bir adillik aracına bağlantı verir. Crash noktasını kendiniz yeniden hesaplamanız için küçük bir betik de içeren adım adım anlatım için [Bir turu doğrulayın](/tr/docs/provably-fair/verify-a-round) sayfasına bakın.

Oyunun kendisinin nasıl oynandığı (kazancı alma, bahis pencereleri, limitler) için [Crash oyun rehberi](/tr/docs/games/crash) sayfasına bakın.
