Domino oyun kaynak kodu: kurallar, bilgisayar rakipler ve 58 test
Pip Club Dominoes paketinde neler var, hangi kurallarla oynanıyor, metinler ve taşlar nerede değişiyor ve neler dışarıda kalıyor.

Domino oyun kaynak kodu, uç durumlara bakana kadar basit görünür. Kimsenin elinde çift taş yoksa kim başlar? Pazar boşaldığında ve iki oyuncu da pas geçtiğinde ne olur? Kilitlenen bir elin sonunda puan nasıl hesaplanır? Bu soruları kodda yanıtlayan ve bunu testlerle kanıtlayan bir şablon, daha güzel taşları olan bir şablondan daha değerlidir. Düşeş-altı şablonumuz Pip Club Dominoes; kuralları, bilgisayar rakibi, masa düzenini, kaydı ve 14 çeviriyi kapsayan 58 otomatik testle geliyor.
Bu rehber oyunun hangi kurallarla oynandığını, paketin nasıl düzenlendiğini, metin editörüyle neyi değiştirebileceğinizi ve neyin yeniden derleme gerektirdiğini, nasıl barındırılacağını ve lisansın neye izin verdiğini anlatıyor. Dosya adları ürünle birlikte gelen görselli alıcı kılavuzundan alındı.
Her şeyden önce bilinmesi gereken bir nokta: Pip Club bilgisayara karşı oynanır. Çevrimiçi modu ve tek cihazda iki oyunculu modu yoktur.
Bu domino oyun kaynak kodunun oynattığı kurallar
Domino şablonları en çok kurallarda ayrışır; bu yüzden onları oyuncularınızın beklentisiyle karşılaştırın. Pip Club, bir oyuncunun bir bilgisayar rakibe karşı oynadığı klasik düşeş-altı blok oyununu oynatır.
- 0'dan 6'ya 28 taş. Her oyuncu 7 taş alır, kalan 14 taş pazarda kalır.
- En yüksek çift taş açar. Çift yoksa toplamı en yüksek taş açar; eşitlikte en yüksek yarım belirler.
- Masanın her zaman iki ucu vardır, A ve B. Taş bir uca uymalıdır; sıfır sıfırla eşleşir.
- Çift taşlar çapraz konabilir, ama asla dallanmaz ve ek hamle vermez.
- Uyan taş yoksa oynayabilene kadar teker teker taş çekilir. Pazar boşsa ve uyan taş yoksa pas geçilir.
- Domino: elini ilk bitiren, rakibin elinde kalan toplamı puan olarak alır.
- Kilit: pazar boşken üst üste iki pas masayı kilitler. Toplamı düşük olan farkı kazanır; toplamlar eşitse berabere biter.
Quick Round tek elden sonra biter. Points Match, biri 50 ya da 100 puana ulaşana kadar el oynatır. Kampanyada 3 bölümde 9 karşılaşma var, her mekân için bir bölüm; her galibiyet bir mühür kazandırır.
Pakette neler var
Oyuncular kendine has kişiliği olan üç bilgisayar rakiple karşılaşır: DJ rakun Rico, kaykaycı tilki Faísca ve sanatçı kedi Nix; her biri Easy, Normal ve Hard seviyelerinde. Oynanabilir taşlar parlar, masa taşın nereye ineceğini önceden gösterir ve bir ipucu hamle önerir. Üç mekân (Rooftop, Skate Park ve Midnight Arcade), toplanabilir altı taş seti, kampanya mühürleri ve istatistikler var. Fare, dokunmatik ve klavye çalışır.
- game/: barındırmaya hazır derleme; index.html, pip.config.js, modules/, lib/, assets/ ve licenses/ ile.
- game/lib/phaser.js: okunaklı Phaser 3.90.0, MIT lisansıyla.
- source/: düzenlenebilir TypeScript, görseller, müzik, çeviriler ve otomatik testler.
- documentation/index.html ve DOCUMENTATION.html: 14 dilde, çevrimdışı açılan alıcı kılavuzu.
- THIRD-PARTY-LICENSES/: Phaser ve Barlow Condensed yazı tipi için bildirimler.
Görseller ve müzik ürünün özgün varlıklarıdır ve ürünle birlikte alıcıya lisanslanır. Arayüz 14 dilde gelir ve tarayıcı dilini izler; kayıtlı ses olmadığı için rakiplerin tüm repliklerini seçilen dilde okursunuz.
Pip Club Dominoes'u inceleyin: demo, kılavuz ve fiyat
Yeniden derlemeden değiştirin: pip.config.js
index.html'in yanında pip.config.js durur. Herhangi bir metin editöründe açın, bir değeri değiştirin, dosyayı yükleyin ve sayfayı yenileyin. Orada üç ayar var.
- title: tarayıcı sekmesinin başlığı.
- saveKey: kaydın saklandığı ad. Varsayılan değer pip-club.
- defaultLanguage: başlangıç dili. Boş bırakılırsa oyun tarayıcıyı izler.
Yayındaki bir sitede saveKey'i değiştirmeyin. Farklı bir anahtar, oyunun mevcut ilerlemeyi yok sayıp yeni bir kayıt başlatmasına yol açar; ikinci bir kopya için işe yarar, bir güncelleme için acı verir.
Kaynakta metinler, görseller ve taşlar nerede
- Metinler ve çeviriler: source/src/ui/i18n.ts ve source/src/ui/locales/.
- Karakter görselleri, sahneler ve logo: source/src/assets/club/.
- Müzik: source/src/assets/music/.
- Taş renkleri: source/src/art/palette.ts ve source/src/art/tileArt.ts.
- Testler: source/tests/.
Tipik bir markalama işi şu sırayla ilerler: assets/club/ içindeki logo ve sahne görselleri, sonra taş paleti, sonra locales içindeki ifadeler. Beyaz etiket serbest; markanız bizimkinin yerini alabilir. Bilgisayarın oyununu ya da bir kuralı değiştirmek daha derin bir iş; testleri önce ve sonra çalıştırın, çünkü ikisini de kapsıyorlar.
Küçük bir masa oyunları kataloğu kuruyorsanız iki şablonumuz daha bunun yanına iyi oturur.
Ludo Cats: kedili Ludo, üç seviyede bilgisayar ya da tek cihazda arkadaşlar
Boba Club: 12 dağıtımlık kampanyalı Klondike solitaire
TypeScript'i düzenledikten sonra yeniden derlemek
game/ klasörü zaten derlenmiş olduğundan oyunu kurmak için Node.js gerekmez. Ona yalnızca kaynağı değiştirdikten sonra ihtiyaç duyarsınız.
- Node.js 22.12 veya daha yenisini kurun (kılavuz 22.23 ile test edildi). npm onunla birlikte gelir.
- package.json ve package-lock.json'ın bulunduğu source/ klasöründe bir terminal açın.
- npm ci çalıştırın. Phaser, Vite, Vitest ve TypeScript'in kilitli sürümlerini birebir kurar.
- npm test (58 test) ve npm run typecheck çalıştırın. Derlemeden önce hataları düzeltin.
- npm run build çalıştırın. Çıktı source/dist-static/ klasörüdür; index.html, modules/, lib/, assets/ ve licenses/ içerir.
- Barındırılan oyunu yedekleyin, sonra dist-static/ içeriğini tam olarak game/ gibi yükleyin.
Kılavuz npm audit fix ve npm update komutlarına karşı uyarıyor, çünkü test edilmiş sürümleri değiştiriyorlar. Bir paket sorunu çıkarsa, gelen package.json ve package-lock.json ikilisini geri yükleyin.
Sitenizde barındırmak
Yalnızca game/ içeriğini yükleyin; index.html doğrudan hedef klasörde dursun, örneğin public_html/games/pip-club/. assets/, lib/, modules/, licenses/ ve pip.config.js'i yanında tutun ve her adın büyük/küçük harfini koruyun. source/, documentation/ ya da ZIP dosyasını yüklemeyin.
- Oyun göreli yollar kullandığı için herhangi bir statik HTTP(S) sunucusu, herhangi bir alan adının herhangi bir alt klasöründe çalışır.
- Oynamak için veritabanı, PHP ya da Node.js hizmeti gerekmez.
- index.html'i bilgisayarınızdan açmak (file://) desteklenmez.
- Sunucu .js, .webp, .woff2 ve .mp3 dosyalarını normal türleriyle sunmalı.
- Oyun analitik, sıralama, ödeme ya da reklam çağrısı yapmaz.
Kayıtlar oyuncunun tarayıcısında, IndexedDB ya da localStorage içinde kalır ve cihazlar arasında senkronize olmaz. Güncellemek için yeni game/ klasörünü eskisinin üzerine yükleyin, pip.config.js'i ve saveKey'ini koruyun; eski sürüm hâlâ görünüyorsa site verilerini değil, önbelleğe alınmış dosyaları temizleyin.
Dahil olmayanlar ve lisans
Bu sürümde çevrimiçi ya da yerel iki oyunculu mod, bulut kaydı, çevrimiçi sıralama, gerçek parayla satın alma ve reklam SDK'sı yok. Yerel uygulamalar, barındırma ve özel geliştirme de paketin dışında. Reklam, mağaza ya da senkronizasyon eklemek; kendi hesaplarınız ve onaylarınızla yapılacak bir geliştirici işidir.
Pip Club'ın liste fiyatı 49 $; 30 Kasım 2026'ya kadar Black Friday kampanyasıyla 41,65 $ oluyor. İki veya daha fazla şablonu birlikte aldığınızda %5 ile %20 arası paket indirimi uygulanır. Lisans süresiz ve münhasır değil; size ya da bir müşterinize ait tek bir son ürün için geçerli. Kodu, görselleri ve sesleri değiştirebilir, üzerine markanızı koyabilir ve oyuncuları ücretsiz ya da reklamlı oynatabilirsiniz; ancak şablonu veya kodunu tek başına yeniden satamazsınız. Destek altı ay, uzatmayla on iki ay sürer; kurulum ve hata düzeltme dışındaki her iş için fiyat verilir.
Lisans ve destek koşullarını okuyun
Sıkça sorulan sorular
Domino oyun kaynak kodu TypeScript mi, JavaScript mi?
Kaynak, küçültülmemiş ve okunaklı TypeScript. Barındırmaya hazır game/ klasörü derlenmiş JavaScript; TypeScript araçlarına yalnızca oyunu değiştirmek için ihtiyaç duyarsınız.
İki kişi birbirine karşı oynayabilir mi?
Hayır. Oyuncular tek cihazda bilgisayar rakiplere karşı oynar. Çevrimiçi ya da yerel iki oyunculu mod yok.
Hangi domino varyantını oynatıyor?
Klasik düşeş-altı, bire bir; pazardan çekme, pas ve kilit kuralıyla. Domino, rakibin kalan toplamını puan olarak verir; kilitlenen masada toplamı düşük olan kazanır.
Yeniden derlemeden neyi değiştirebilirim?
pip.config.js tarayıcı başlığını, kayıt anahtarını ve başlangıç dilini belirler. Kurallar, görseller, metinler ve müzik kaynakta değişir ve yeniden derleme gerektirir.
Çevrimdışı çalışır mı?
Hiçbir harici hizmeti çağırmaz, ama yüklenebilir bir çevrimdışı uygulama değildir. Oyuncuların oyunu yüklemek için web adresinize erişmesi gerekir.
İhtiyacınız olan domino temeli bu mu?
Pip Club; her yaşa uygun klasik bir masa oyunu isteyen site ve portallara, tek bir müşteri için markalı domino oyunu hazırlayan stüdyolara ve bilgisayar rakibi ile gerçek birim testleri olan okunaklı TypeScript isteyen geliştiricilere uyar. İnsanların çevrimiçi ya da aynı ekranda birbirine karşı oynaması gereken bir projeye uymaz; bu baştan özel bir iştir.
Pip Club demosunu oynayın ve lisansı satın alın
Farklı bir kural seti ya da birden çok lisans mı lazım? Teklif isteyin
