Scrap Baron
Telefon ve tarayıcı için piksel sanat hurdalık tycoon oyunu

Genel bakış
Scrap Baron, İstanbul’un sanayi bölgelerindeki hurda ticaretinde geçen, dikey ekranlı ve piksel sanat bir tycoon oyunu. Sokak toplayıcıları kapınıza bakır, demir, karton ve plastik çuvalları getiriyor. Siz tartıyor, kontrol ediyor ve pazarlık ediyorsunuz; malı toptancılara satıp küçük bir mahalle hurdalığını geri dönüşüm tesisine büyütüyorsunuz.
Oyun tarayıcıda yüklenebilir bir web uygulaması olarak ve native iOS ile Android uygulamaları olarak çalışıyor. Tarayıcı sürümü şu an oynanabiliyor; mobil sürümler App Store ve Google Play yayınına hazırlanıyor. Oyun ücretsiz; satın alma, reklam, hesap ya da analitik yok. Türkçe ve İngilizce oynanabiliyor.
Oynanış
- Dört aşamalı bir gün: Sabah alış fiyatlarınızı belirliyorsunuz, gün boyu kantardaki sırayla ilgileniyorsunuz, akşam toptancıya satıp giderleri ödüyorsunuz, sonra günün raporunu okuyorsunuz.
- On saniyelik kararlar: Her çuvalı tartıyor, kontrol ediyor ve en fazla iki turluk pazarlıkla teklif veriyorsunuz; bu sırada kuyruktakilerin sabrı tükeniyor.
- Yakalanacak hileler: Islatılmış karton, çuvala saklanmış taşlar ve karışık metaller. Bunları dikkatle bakarak, mıknatıs kullanarak ya da çuvalı boşaltarak yakalıyorsunuz.
- İşletme yönetimi: Ekipman, personel, kooperatif kredileri ve çekler, karşılıksız çıkabilen tonaj sözleşmeleri, ruhsat, komşu şikâyetleri, zabıta denetimleri ve rakiplerle fiyat savaşları.
- Üç kademe: Mahalle hurdalığı, ayrıştırma tesisi ve ergitme fırını, granül hattı, ihracat ve belediye ihaleleriyle geri dönüşüm tesisi. Son kademe Hurda Baronu unvanıyla bitiyor ve ardından sonsuz modu açıyor.
- Ekstralar: 25 başarım, hurdalık için 18 kozmetik ve bir usta karakterle senaryolu ilk gün.
Nasıl yapıldı
- Oyun motoru yok. Sahne Canvas 2D ile oyun çözünürlüğündeki bir tampona çiziliyor ve tam sayı katıyla büyütülüyor; böylece pikseller keskin kalıyor. Tüm görseller kodla çiziliyor, arayüz ise piksel sanat çerçeveli HTML. Oyunun boyutu gzip ile yaklaşık 160 KB.
- Deterministik simülasyon. Simülasyon DOM’a, zamanlayıcılara, saate ya da
Math.random’a hiç dokunmuyor. Durumu kayda yazılan, seed’li bir rastgele sayı üreteci kullanıyor; böylece geri yüklenen bir kayıt tam kaldığı yerden devam ediyor. Para, ağırlık ve zaman tam sayı olarak tutuluyor. - Sentezlenen sesler. Tüm sesler Web Audio API ile üretiliyor; hiç ses dosyası yok.
- Sunucusuz kayıt. Oyun cihazda otomatik kaydediliyor; sıkıştırılmış bir kayıt kodu oyunu cihazlar arasında taşıyor.
- Pil dostu. Çizim saniyede 30 kareyle sınırlı; piksel sanat için bu yeterli.
- Katmanlı mimari. ESLint kuralları simülasyon, görsel ve çekirdek kodunu arayüz katmanlarından bağımsız tutuyor.
- Araçlar. Botlar dengeyi ölçmek için seed’li çok sayıda oyun oynuyor; mağaza ekran görüntülerini Playwright gerçek oyunu oynatarak üretiyor.
Teknolojiler
- TypeScript, Vite, Canvas 2D, Web Audio API
- Çevrimdışı da çalışan, yüklenebilir web uygulaması (PWA); Cloudflare Workers üzerinde yayında
- iOS ve Android uygulamaları için Capacitor
Kalite
- Yaklaşık 330 Vitest birim testi ve telefon boyutunda bir ekranda çalışan 28 uçtan uca Playwright testi
- GitHub Actions CI commit mesajlarını, biçimlendirmeyi, lint ve tip kontrollerini denetliyor, birim testlerini çalıştırıyor ve oyunu derliyor
