
Rehberler / Perde arkası
Idle Oyun Nasıl Tasarlanır: Dört Oyundan Formüller ve Dersler
Idle ilerlemeli dört mobil oyunu tasarlarken ve düzeltirken öğrendiklerimiz: onları yürüten eğriler, çevrimdışı süre ve devasa sayılarla nasıl başa çıkılacağı, prestijin nasıl kârlı hale getirileceği ve ancak yüzlerce aşama sonra ortaya çıkan hatalar. Kodumuzdan gerçek formüller.
Dışarıdan bakınca bir idle oyun basit görünür: sayılar artar. Altında ise birbiriyle yarışan birkaç eğri, bir saat ve bir sıfırlama vardır. Bu temel üzerine kurulu dört oyun yayınladık: Idle Ronin, Idle Summoner, Idle AI Factory ve Block Brain'deki Brain seviyeleri. Yüzlerce saatlik oyundan sonra ortaya çıkan hataları da düzelttik. İlk gün kendimize söyleyeceğimiz şeyler bunlar, kodumuzdaki gerçek formüllerle.
Temel döngü: kazan, harca, daha hızlı kazan
Her idle oyun aynı döngüyle çalışır. Oyuncu bir kaynak kazanır, onu kazanç hızını artıran bir şeye harcar ve daha hızlı kazanır. Bu döngüyü ilginç tutan üç baskı vardır: gelirden hızlı artan maliyetler, oyuncuyu durduran bosslar gibi duvarlar ve ilerlemeyi kalıcı bir çarpanla takas eden bir sıfırlama. Idle oyunlar hakkındaki kapsamlı rehberimiz döngüyü oyuncunun gözünden anlatır. Burada ise arkasındaki sayılara bakıyoruz.
Maliyet eğrileri: üstel ama sonsuza dek aynı değil
Idle oyunlarda yükseltme maliyetleri üstel olarak artar: her seviye bir öncekinden sabit bir çarpan kadar pahalıdır. Idle Ronin'de bir birimin seviye maliyeti 300. seviyeye kadar seviye başına %14, ardından 1000. seviyeye kadar %12,5 ve sonrasında %11,5 artar; yani kişi oynadıkça eğri biraz yumuşar. Idle AI Factory her fabrika seviyesi için 1,8 kat daha fazla jeton ister, Idle Summoner'da ise çağırma zincirinin her basamağı bir öncekinin yaklaşık 1,87 katıdır: 56, 105, 196, 367 altın ve böyle devam eder.
Tek başına üstel maliyetler her yükseltmeyi aynı hissettirir. Bu tekdüzeliği iki araç kırar:
- Kilometre taşları. Idle AI Factory bir katın üretimini kat seviyesi 10, 25, 50, 75 ve 100'de ikiye katlar; böylece 100. seviyedeki bir kat, 9. seviyedeyken ürettiğinin 32 katını üretir. Oyuncunun her zaman görünür bir hedefi olur.
- Görünür sıçramalar. Idle Summoner'daki her canavar bir öncekinden yaklaşık 1,7 kat daha sert vurur; böylece yeni bir canavar +%3 gibi değil, bir sıçrama gibi hissettirir.
Idle oyunlarda ilerleme yazımız bu eğrileri başka oyunlarla karşılaştırır.
Duvarlar: karşılık veren eğri
Oyuncunun gücü yükseltmelerle, oyunun zorluğu ise aşamalarla artar. İki eğri arasındaki fark senin temponu belirler. Idle Ronin'de düşmanların canı başta aşama başına %40 ile %57 arasında artar, ardından 140. aşamadan sonra aşama başına %14,5, 500. aşamadan sonra %15,5 ve 1000. aşamadan sonra %15 artar. Her aşamanın sonundaki bossun canı normalin 6 katıdır; 14. aşamadan itibaren 4 veya 9 ile biten aşamalarda ise 10 katıdır. Böylece her beşinci aşama küçük bir duvardır.
Duvarlar, oyuncuların yükseltmeye, sıfırlamaya ya da telefonu bırakmaya karar verdiği yerlerdir; bu yüzden onları net bir cevabın olduğu yerlere koy. Idle Ronin'de cevap her zaman el altındadır: bir boss için 30 saniye vardır ve başarısız bir deneme oyuncuyu en başa değil, farm yapmaya geri gönderir.
İlk günden büyük sayılara hazırlan

Idle oyunların sayıları sıradan sayı türlerini aşar. 32 bitlik bir float en fazla yaklaşık 3,4 x 10^38'e çıkar. Idle Ronin'de düşman canı 140. aşama civarında 10^28'i geçer ve eski kod eğriyi float ile hesaplıyordu; bu da 316. aşamada sonsuza taşıyordu. Sonraki aşamalarda can sıfıra çöküyor, daha yukarıda ise hesap NaN veriyor ve ilerlemeyi 1000. aşama civarında donduruyordu.
Çözüm, eğrinin tamamını double ile hesaplamak ve 1000. aşamanın üzerinde kendi büyük sayı türümüze geçmekti. Bu tür bir değeri ve ayrı bir üssü saklar, sayıların kuvvetini logaritma uzayında alır; böylece 1,15^9000'in maliyeti 1,15^2 ile aynıdır. Bir double yaklaşık 1,8 x 10^308'e kadar çıkar ve bu eğri onu ancak 4.750. aşama civarında geçerdi, ama kendi türümüz bu soruyu tamamen ortadan kaldırır.
Ders: yayından önce tüm eğrini taşıyabilecek bir sayı türü seç ve 50. aşamada değil, 1000. aşamada test et. Bu sayıların nasıl gösterileceği ayrı bir tasarım sorunudur ve idle oyunlarda sayı gösterimi rehberimizde ele alınır.
Çevrimdışı ilerleme: ölç, sınırla, dizginle
Çevrimdışı kazanç türün temel vaadidir ve onu üç karar şekillendirir:
- Süreyi doğru ölç. Idle AI Factory'nin ilk kodu, uzakta geçen süreyi yalnızca uygulama arka plandan döndüğünde doldurulan bir alandan okuyordu. Gerçek bir yeniden başlatmadan sonra 1 saniye sayıyordu; yani oyunu tamamen kapatan oyuncular neredeyse hiçbir şey almıyordu. Artık süre her açılışta kaydedilen çıkış zamanından ölçülüyor.
- Üst sınır koy. Idle Ronin 8 saate kadar sayar, Idle AI Factory 2 saatle başlar ve araştırma bunu 8 saate çıkarır, Idle Summoner'ın hoş geldin ödülü ise 24 saate kadar sayar. Üst sınır, oyuncuları ne sıklıkla geri çağırdığını belirler.
- Hızı dizginle. Idle AI Factory çevrimdışı hızını son kamyon seferinden alıyordu: o seferin kârı bölü süresi. Hız takviyeler, dokunuşlar ve kısa seferlerle fırlıyordu; bu yüzden takviye sırasında ayrılan bir oyuncu döndüğünde bir servetle karşılaşıyordu. Artık hız yavaş bir sefer, yani her 20 saniyede mevcut seviyenin jetonlarının %5'i ile hızlı bir sefer, yani her 8 saniyede %15 arasında tutuluyor.
Çok kısa araları da yok say. Idle Ronin de Idle AI Factory de bir şey saymadan önce 3 dakikalık yokluk ister; böylece uygulamalar arasında geçiş yapmak bir ödül ekranı açmaz. Çevrimdışı kazanç rehberimiz birçok oyunun kurallarını karşılaştırır.
Ödülleri zamana göre değil, ilerlemeye göre ayarla
Giriş bonusları, görevler, etkinlik yolları ve dronlar gibi ücretsiz ödüllerin 1. seviyeden 300. seviyeye kadar adil kalan bir büyüklüğe ihtiyacı vardır. Idle AI Factory başta bunları belirli sayıda saniyelik gelir olarak veriyordu. Her fabrika seviyesi bir öncekinin 1,8 katı olduğu için 40 dakikalık gelir yaklaşık 16 seviye değerinde olabiliyor, tek bir hafta sonu etkinliği ödülü milyarlar dağıtabiliyordu.
Artık her ücretsiz jeton ödülü, mevcut seviyenin ihtiyaç duyduğu jetonların bir payı; 1,0 oyunun her aşamasında yaklaşık on kamyon seferine denk geliyor ve düğmedeki miktar tam olarak oyuncunun aldığı miktar. Ödüllerin zamanla ölçülüyorsa, o sürenin en yüksek seviyende ne kadar ettiğini kontrol et.
Prestij: oyuncunun ne kadar ilerlediğine göre öde
Bir sıfırlama ancak açıkça kârlıysa işe yarar. Bizim üç versiyonumuz:
- Idle AI Factory: 40. seviyeden itibaren bir Fabrika Sıfırlama, AI Çekirdeği = (2 x (seviye - 30)^1,35 + 2 x yıldız) x fabrikaya göre 1, 1,5 veya 2 çarpanı kadar ödül verir. 1,35'lik üs, daha ileri gitmeyi kârlı kılar ama geç bir sıfırlamayı zorunlu hale getirmez.
- Idle Summoner: 50. aşamadan itibaren yeniden doğuş, aşamanı oyuncu seviyelerine çevirir; her biri kalıcı olarak +%1 hasar değerindedir ve yüksek seviyeler çağırma şansını artıran sınıf rütbeleri getirir.
- Idle Ronin: yeniden doğuş, aşamanla birlikte artan jetonlar verir ve oyun, 50. aşamaya ulaştığın anda yeniden doğuş düğmesini işaretler; çünkü ilk sıfırlama, karar vermesi en zor olanıdır.
Zamanlama ve formüller hakkında daha fazlası prestij rehberimizde.
Güvenlik ağlı şans
Rastgele ödüller heyecan verir, uzun şanssızlık serileri ise oyuncuları bıraktıran şeydir. Rastgele sistemlerimizin her birinin bir korkuluğu vardır:
- Idle Summoner'ın çağırma zinciri basamak başına %98'den %6'ya düşer, ama oyuncu bir canavarı yerleştirene ya da satana kadar her başarısızlık sonraki dokunuşlara %1 ekler, en fazla +%20'ye kadar.
- Idle Ronin'de öne çıkan birimin Birim Çekirdeği başına şansı %12'dir ve 30 çekirdek içinde garantidir.
- Idle AI Factory'deki robot sandıkları yalnızca kazanılır, asla satılmaz ve şansları kodda sabittir.
Düşme oranları ve pity rehberimiz bu garantileri oyuncunun gözünden açıklar.
Eğrileri gerçek bir takvime göre ayarla
Bir eğriyi, insanların onu nasıl oynayacağından geriye doğru tasarla. Block Brain'deki Brain seviyeleri toplamda round(19,7 x seviye^2,3) XP ister. İki sabit bir hedeften çıktı: günde yaklaşık sekiz oyun oynayan biri ilk gün 5. seviyeye, yaklaşık iki hafta sonra 15. seviyeye, yaklaşık iki ay sonra 30. seviyeye ve yaklaşık yarım yıl sonra 50. seviyeye ulaşmalı. Önce takvimi belirlemek, “bu çok mu yavaş?” sorusunu cevaplanabilir bir soruya dönüştürür.
Uzun kuyruğu test et
Idle oyunlara en çok zarar veren hatalar, test edenlerin nadiren ulaştığı yerlerde durur:
- Yüzlerce aşama ileride, sayıların taştığı yerde.
- Gerçek bir yeniden başlatmadan sonra, çevrimdışı sayacın sıfırdan başladığı yerde.
- Başka dillerdeki telefonlarda. Ondalık bir sayıyı telefonun kendi ayarlarıyla yazan kod, Avrupa'nın büyük bölümünde 7392.58 yerine 7392,58 yazar. Şu anda geliştirdiğimiz bir oyunda bu tek virgül bir kayıt dizesini böldü ve ardından gelen her değeri kaydırdı. Sayı biçimini değişmez kültüre sabitlemek sorunu çözdü.
- Çalıştığını varsaydığın özelliklerde. Idle Summoner'ı yeniden elden geçirirken bulut kaydının kapalı olduğunu fark ettik: veriler toplanıp sonra atılıyordu, bu yüzden Kaydet ve Yükle düğmeleri hiçbir şey yapmıyordu. Bunu ancak düğmeye basıp sonucu kontrol etmek gösterir.
Oyun çalışırken 1000. aşamaya atlayan, bir haftalık yokluğu taklit eden ve dili değiştiren hata ayıklama araçları yap. İlk hatada kendilerini amorti ederler.
Yayından önce kontrol listesi
- Arayüzü kurmadan önce maliyet, güç ve zorluk eğrilerini formül olarak yaz.
- Oyuncuya birkaç dakikada bir kilometre taşı ya da görünür bir sıçrama ver.
- En yüksek aşamanı kaldırabilecek bir sayı türü seç ve orada test et.
- Çevrimdışı süreyi kaydedilmiş bir zaman damgasından ölç, sınırla ve hızı dizginle.
- Ücretsiz ödülleri zamana göre değil, mevcut ilerlemeye göre ayarla.
- İlk prestiji erken ve açıkça kârlı yap.
- Her rastgele sisteme bir pity kuralı ver.
- Hedef bir takvime göre ayarla, sonra onun çok ötesinde test et.
Bu sistemlerin hepsini Idle Ronin, Idle Summoner, Idle AI Factory ve Block Brain içinde iş başında görebilirsin; hepsi Google Play'de ücretsiz.
Kaynaklar
- ONI Games oyun kodu, Eylül 2026: Idle Ronin (PlayerDatabase.cs, Medal.cs, double_evrac.cs), Idle Summoner (monster_script.cs, cloudsave_script.cs), Idle AI Factory (Balance.cs, Economy.cs, SaveManager.cs), Block Brain (BrainProgress.cs).
- Anthony Pecorella, The Math of Idle Games, Part I, Kongregate / Game Developer, 2016.








