İçeriğe geç
Muhammet Şafak
en
Kapak görseli — koyu zeminde duran altıgen bir strateji tahtası; karolarda orman, dağ ve şehir işaretleri, üstünde gri ve mor iki tarafın taşları dağılmış
Oyun & simülasyon Ürün oldu

Bir oturumda biten 4X: kapsamı kısıt seçti

480 altıgende 60 turda biten, tarayıcıda çevrimdışı çalışan zarsız strateji oyunu çekirdeği; Regnarium olarak yayına çıktı.

Şu an ne yapıyor

480 altıgenlik haritada azami 60 turda biten bir 4X eli yürütüyor; kurallar, harita üretimi ve rakip yapay zekâ tek bir saf TypeScript çekirdeğinde, savaş zarsız. Elinde yarım saati olan ve strateji oynamak isteyen herkes tarayıcıdan açabilir.

Başlangıç
Eylül 2026 — Eylül 2026
Labs’tan çıkış

Tür

Web uygulaması

Teknolojiler

TypeScript Next.js React Vitest MDX

Bu iş ürüne dönüştü:

Regnarium

Strateji oyunları benim on binlerce saat gömdüğüm tek tür. Ama o türün alışılmış oturumu bir akşamı yiyor, ve elinde bir akşam olmayan oyuncu için kimse bir şey yapmıyordu.

Tek oturum, kapanan bir el

Denenen şey, 4X’in dört fiilini — keşfet, genişle, üret, alt et — yarım saate sığdırmaktı. Bunun tek gerçek yolu, oyunun kendini bitirmesi: el azami altmış turda kapanıyor, fetih tamamlanmadıysa kazananı puan belirliyor. Süre bir uyarı değil, kuralın parçası.

Kapsam da aynı kısıttan türedi. Tek kişilik bir iş büyük yapımların içerik hacmiyle yarışamaz; yarışmaya çalışırsa hiçbir sistemi bitiremez. O yüzden liste bilinçli olarak kısa tutuldu ve her kaydın tahtada ayırt edilebilir bir işi var — iş görmeyen bir birim eklemek, listeyi uzatıp oyunu zenginleştirmiyor.

Sürpriz yok, pişmanlık var

İkinci karar savaşta. Zar atan bir savaş sistemi, kaybedilen her eli sisteme yıkma imkânı verir; oyuncu kendi kararını sorgulamak yerine talihi suçlar. Burada saldırıdan önce gördüğünüz önizleme hesabın kendisi: aynı sayı, aynı fonksiyon. Ayrı bir “tahmin” fonksiyonu yazmak, önizleme ile sonucun ayrışabileceği tek kapıyı açardı; o kapı hiç açılmadı.

Rastgelelik tamamen yok değil — harita tohumlu bir üreticiden geliyor — ama oynanışın içine sızmıyor. Aynı tohum ve aynı komut dizisi her zaman aynı eli veriyor, rakibin kararları dâhil.

Sunucusuz olmanın getirdiği kayıt biçimi

Oyunun çevrimdışı ve hesapsız çalışması, kaydın nerede duracağını da belirledi. Kayıt tam bir durum kopyası değil: tohum, kurulum ve o ana kadar verilen komutların listesi. Yükleme bu listeyi yeniden oynatarak durumu kuruyor — ve geri alma da aynı mekanizmayı kullanıyor, kaydı bir komut kısaltıp eli baştan oynatıyor. Ayrı bir geri-alma durumu hiç tutulmuyor.

Bunun bir bedeli var ve açıkça ödendi: kurallar değişince eski kayıt yeniden oynatıldığında başka bir el üretiyor, dolayısıyla bir göç yolu yazılamıyor. Kayıt sürümü artıyor ve eski kayıt sessizce atılıyor. Tek oturumluk bir oyunda bu kabul edilebilir bir kayıp; uzun kampanyalı bir oyunda olmazdı.

Kısıtı makineye söyletmek

Mekanikleri ve mimariyi ben tasarladım, kodun büyük kısmını yapay zekâ yazdı; benim işim mimarinin korunmasıydı. Ama bir kuralı gözle korumak ölçeklenmiyor, o yüzden kısıtların çoğu makineye devredildi: kural çekirdeği tarayıcıya, saate ve ağa erişemiyor — bunlar lint kapısında yasaklı — ve kapının gerçekten tuttuğu, kasıtlı olarak hatalı yazılmış dosyaların denetlenmesiyle ayrıca sınanıyor.

Oyun yayında ve oynanabilir durumda; geliştirme sürüyor, açık maddeler kendi kayıtlarında duruyor. Ürün tarafının ayrıntısı portfolyoda.

Etiketler: #oyun#determinizm#cevrimdisi#typescript
Paylaş:

Diğer Kayıtlar

Tüm kayıtlar

Her araç marka-modelinin kendi kulübü olduğu, ICE ile EV'yi aynı çatıda tutan Reddit-benzeri topluluk platformu; API, web ve mobil paralel yürüyor.

Şu an ne yapıyor

Her araç marka-modelinin kendi kulübü olduğu topluluk platformu; kimlik, içerik, bildirim ve moderasyon akışları tek şemalı API üzerinde yürüyor, web ve mobil istemciler aynı şemayı paylaşıyor. Aracının modeline özel bir topluluk arayan kullanıcı bugün katılabilir.

Web uygulaması Mobil uygulama Laravel PHP PostgreSQL +6 daha
Temmuz 2026 — Devam ediyor

Kaydırmalı doğru/yanlış bilgi yarışması; asıl mesele oyun değil, istemcinin ürettiği skoru imzayla doğrulanabilir kılmak.

Şu an ne yapıyor

Kaydırmalı doğru/yanlış bilgi yarışması bir mobil uygulama olarak çekirdek döngüsüyle uçtan uca çalışıyor; skoru istemci üretse de server_nonce ve HMAC imzasıyla sunucu tarafında doğrulanıyor. swipenor.com uygulamanın tanıtım sayfasıdır, oyunun kendisi değil.

Mobil uygulama Laravel PHP PostgreSQL +6 daha
Temmuz 2026 — Devam ediyor

Yazılım ve AI haberini yerel Ollama ile eleyip üst katmanlarda büyük modellere devreden, TR/EN sentezini uçtan uca üretip yayınlayan içerik hattı.

Şu an ne yapıyor

Yazılım ve AI haberini yerel Ollama ile eleyip üst katmanlarda büyük modellere devrediyor, TR/EN sentezi kendi üretip yayınlıyor; web ve App Store sürümü canlı. Günlük geliştirici haberini tek akıştan takip etmek isteyen okuyabilir.

Web uygulaması Mobil uygulama TypeScript Node.js Prisma +8 daha
Haziran 2026 — Devam ediyor

Sitede Ara

Yazı, proje ve sayfalarda arama yapmak için yazmaya başlayın.

Esc ile kapat Pagefind ile güçlendirildi