İçeriğe atla

Case study / Çok oyunculu tarayıcı oyunları

Çok oyunculu oyunları tek tarayıcıdan test etmek

Kısa cevapYerel botlar mevcut oyun kurallarıyla hamle yapıyor; gece 45 saniye sonunda sonuçlanıyor. Böylece oylama akışını tek ekrandan inceleyebiliyorum.

Word Imposter ve Vampir Köylü’de oy verme akışını tek başıma deneyebilmek istedim. Oda sayfasını açmak yeterli değildi; oyun başlamadan önce başka katılımcılar gerekiyor, bazı hamleler de yalnız belirli oyuncuların sırasında yapılabiliyordu. Geliştirme sırasında bu katılımcıları her seferinde elle yönetmek yerine yerel bir simülasyon ekledim.

Amacım yapay zekâyla iyi oyun oynayan rakipler üretmek değildi. İhtiyacım, kendi ekranımdan oyunun belirli bir aşamasına ulaşabilmek ve o aşamadaki davranışı incelemekti. Bu yüzden LLM kullanmayan, geçerli hedefler arasından basit kurallarla seçim yapan botları tercih ettim.

Botları aynı oyun kurallarından geçirmek

Botlar normal katılım işlemiyle odaya giriyor. Oy verirken veya gece rolünü kullanırken mevcut oyun servislerini çağırıyorlar. Simülatör doğrudan sonuç yazmıyor; oyuncu sayısı, geçerli hedef ve rol kısıtları oyunun kendi kurallarında kalıyor.

Word Imposter’da botların oyları sırayla ilerliyor, insan oyuncunun sırasında bekleniyor. Vampir Köylü’de mevcut aşamaya göre gece oyu, doktor koruması veya dedektif sorgusu çalışıyor; gerektiğinde avcının son atışı da aynı kurallardan geçiyor. Bot eklemek, yapılandırılmış rollerin sayısını kendiliğinden değiştirmiyor.

  1. Oda sahibiYerel panelden bot hamlesini ister
  2. Sunucu kontrolüOrtamı, oturumu ve bot kaydını doğrular
  3. Mevcut oyun servisiHamleyi normal kurallarla işler
  4. Oyuncu görünümüGizli bilgileri ayıklanmış durumu gösterir
Simülasyon, oyuncu hamlesi ile oyun kuralı arasındaki mevcut sınırı kullanıyor.

Otomatik hamle ile aşama kararını ayırmak

Otomatik mod, açık oda sayfasının mevcut Livewire yenilemelerinde uygun botları oynatıyor. Ayrı bir arka plan süreci kurmadım; sekme kapandığında simülasyon devam etmiyor. Oyunu başlatmak ve oylama sonuçlarını açıklamak hâlâ oda sahibinin kararı. Gece ise oyunun kendi 45 saniyelik zamanlayıcısıyla otomatik sonuçlanıyor.

Aynı uygun hedef kümesinde seçim kararlı tutuluyor. Bu, bir hamleyi incelerken tercihin rastgele değişmesini önlüyor; rol dağıtımının veya bütün oyunun tekrar üretilebilir olduğu anlamına gelmiyor. Tamamlanan hamleler ayrıca kaydediliyor; çift tıklama ya da eşzamanlı yenileme aynı bot işlemini yeniden üretmemeli.

Yerel araçta da yetki ve gizlilik sınırı

Paneli gizlemekle yetinmedim. Sunucu her işlemde yerel veya test ortamını ve oturumdaki oyuncunun güncel oda sahibi olduğunu kontrol ediyor. Bot kimlikleri yalnız sunucudaki oda kaydından seçiliyor. İstemciye rol sırları ya da bot kayıtları taşınmıyor; mevcut oyuncu görünümlerinin gizlilik sınırı korunuyor.

Bu araç oyun akışını incelemek için. Gerçek tarayıcı oturumlarını, ağ gecikmesini veya insanın blöf davranışını temsil etmiyor.

Her bot için ayrı tarayıcı açmak istemci davranışlarını da kapsayabilirdi; bunun karşılığında oturum yönetimi gerektirecekti. Burada servis çağrılarını seçtim. Bağlantı kopması veya farklı ekranların eşzamanlı davranışı sorulduğunda, bu simülasyonun dışında gerçek istemcilerle doğrulama gerekiyor.

Canlı Word Imposter ve Vampir Köylü sayfalarından gerçek oyuncularla oda açılabilir. Bot paneli yalnız yerel geliştirme ortamında görünür.

Birlikte çalışalım

Benzer bir proje mi düşünüyorsun?

Projeni anlat