Dominoes game source code: नियम, CPU विरोधी और 58 टेस्ट का विवरण
Pip Club Dominoes पैकेज में क्या है, कौन से नियम चलते हैं, टेक्स्ट और टाइलें कहाँ बदलें, और इसमें क्या नहीं है।

Dominoes game source code सरल लगता है, जब तक आप किनारे के मामले न जाँचें। जब किसी के पास डबल न हो तो कौन शुरू करता है? जब बोनयार्ड (बची हुई टाइलों का ढेर) खाली हो और दोनों खिलाड़ी पास करें तो क्या होता है? ब्लॉक्ड राउंड के अंत में स्कोर कैसे चलता है? ऐसा टेम्पलेट जो उन सवालों का जवाब कोड में दे और टेस्ट से साबित करे, उन टाइलों से ज़्यादा कीमती है जो ज़्यादा सुंदर दिखती हैं। Pip Club Dominoes, हमारा डबल-सिक्स टेम्पलेट, 58 स्वचालित टेस्ट के साथ आता है, जो नियमों, कंप्यूटर विरोधी, टेबल लेआउट, सेव और 14 अनुवादों को कवर करते हैं।
यह गाइड बताती है कि गेम कौन से नियम चलाता है, पैकेज कैसे व्यवस्थित है, टेक्स्ट एडिटर से क्या बदल सकते हैं और किसके लिए रीबिल्ड चाहिए, इसे कैसे होस्ट करें, और लाइसेंस क्या अनुमति देता है। फ़ाइलों के नाम आइटम के साथ आने वाली चित्रित खरीदार गाइड से लिए गए हैं।
कुछ भी आगे जानने से पहले एक बात: Pip Club कंप्यूटर के खिलाफ़ खेला जाता है। इसमें कोई ऑनलाइन मोड नहीं है, और एक डिवाइस पर दो-खिलाड़ी मोड भी नहीं है।
इस dominoes game source code के नियम
डोमिनोज़ टेम्पलेट सबसे ज़्यादा नियमों में अलग होते हैं, इसलिए उन्हें अपने खिलाड़ियों की अपेक्षा से मिलाकर देखें। Pip Club एक क्लासिक डबल-सिक्स ब्लॉक गेम खेलता है, एक खिलाड़ी बनाम एक कंप्यूटर विरोधी।
- 0 से 6 तक 28 टाइलें। हर खिलाड़ी को 7 मिलती हैं और बाकी 14 बोनयार्ड में रहती हैं।
- सबसे ऊँचा डबल शुरू करता है। डबल न हो तो सबसे ऊँचा कुल योग शुरू करता है, और बराबरी पर सबसे ऊँचा हिस्सा।
- टेबल के हमेशा दो सिरे होते हैं, A और B। टाइल किसी सिरे से मिलनी चाहिए, और शून्य शून्य से मिलता है।
- डबल आड़े रखे जा सकते हैं, पर वे कभी शाखा नहीं बनाते और कभी अतिरिक्त बारी नहीं देते।
- मिलान न हो तो एक-एक टाइल तब तक ड्रॉ करें जब तक खेल न सकें। बोनयार्ड खाली हो और मिलान न हो, तो पास करें।
- Domino: जो अपना हाथ खाली करे, वह विरोधी के हाथ में बचे कुल योग को स्कोर करता है।
- Lock: खाली बोनयार्ड के साथ लगातार दो पास टेबल को लॉक कर देते हैं। कम कुल योग वाला अंतर जीतता है, और बराबर योग हो तो बराबरी।
Quick Round (तेज़ राउंड) एक राउंड के बाद खत्म होता है। Points Match (पॉइंट्स मैच) तब तक राउंड खेलता है जब तक कोई 50 या 100 तक न पहुँचे। Campaign (कैंपेन) में 3 चैप्टर में 9 मुकाबले हैं, हर हैंगआउट के लिए एक चैप्टर, और हर जीत एक सील देती है।
पैकेज में क्या आता है
खिलाड़ियों का सामना तीन कंप्यूटर विरोधियों से होता है, जिनका अपना व्यक्तित्व है: DJ रैकून Rico, स्केटर लोमड़ी Faísca और आर्टिस्ट बिल्ली Nix, हर एक Easy (आसान), Normal (सामान्य) या Hard (कठिन) स्तर पर। खेलने योग्य टाइलें चमकती हैं, टेबल दिखाती है कि टाइल कहाँ लगेगी, और एक हिंट चाल सुझाता है। तीन हैंगआउट हैं: Rooftop (छत), Skate Park (स्केट पार्क) और Midnight Arcade (मिडनाइट आर्केड), छह संग्रहणीय टाइल सेट, कैंपेन सील और आँकड़े। माउस, टच और कीबोर्ड तीनों काम करते हैं।
- game/: होस्ट होने के लिए तैयार बिल्ड, जिसमें index.html, pip.config.js, modules/, lib/, assets/ और licenses/ हैं।
- game/lib/phaser.js: Phaser 3.90.0, पढ़ा जा सकने वाला, MIT लाइसेंस के तहत।
- source/: संपादन योग्य TypeScript, कला, संगीत, अनुवाद और स्वचालित टेस्ट।
- documentation/index.html और DOCUMENTATION.html: 14 भाषाओं में खरीदार गाइड, जो ऑफ़लाइन खुलती है।
- THIRD-PARTY-LICENSES/: Phaser और Barlow Condensed फ़ॉन्ट की सूचनाएँ।
कलाकृति और संगीत उत्पाद की अपनी मूल संपत्तियाँ हैं, जो आइटम के साथ खरीदार को लाइसेंस की गई हैं। इंटरफ़ेस 14 भाषाओं में आता है और ब्राउज़र की भाषा का पालन करता है; कोई रिकॉर्ड की गई आवाज़ नहीं है, इसलिए हर विरोधी की पंक्ति चुनी गई भाषा में आती है।
Pip Club Dominoes देखें: डेमो, गाइड और कीमत
रीबिल्ड के बिना बदलें: pip.config.js
index.html के बगल में pip.config.js है। उसे किसी भी टेक्स्ट एडिटर में खोलें, एक मान बदलें, फ़ाइल अपलोड करें और रीलोड करें। वहाँ तीन सेटिंग्स हैं।
- title: ब्राउज़र टैब का शीर्षक।
- saveKey: वह नाम जिसके तहत सेव स्टोर होता है। डिफ़ॉल्ट pip-club है।
- defaultLanguage: शुरुआती भाषा। खाली छोड़ने पर गेम ब्राउज़र का पालन करता है।
लाइव साइट पर saveKey वही रखें। अलग key से गेम मौजूदा प्रगति को अनदेखा करके नया सेव शुरू करता है, जो दूसरी कॉपी के लिए काम का है और अपडेट के लिए दर्दनाक।
टेक्स्ट, कला और टाइलें सोर्स में कहाँ हैं
- टेक्स्ट और अनुवाद: source/src/ui/i18n.ts और source/src/ui/locales/।
- किरदारों की कला, दृश्य और लोगो: source/src/assets/club/।
- संगीत: source/src/assets/music/।
- टाइल के रंग: source/src/art/palette.ts और source/src/art/tileArt.ts।
- टेस्ट: source/tests/।
आम ब्रांडिंग का काम इस क्रम में होता है: assets/club/ में लोगो और दृश्य की कला, फिर टाइल पैलेट, फिर locales में शब्द। White label की अनुमति है, इसलिए आपका ब्रांड हमारी जगह ले सकता है। कंप्यूटर की चाल या कोई नियम बदलना गहरा काम है; बदलने से पहले और बाद में टेस्ट चलाएँ, क्योंकि वे दोनों को कवर करते हैं।
अगर आप टेबल गेम्स का एक छोटा कैटलॉग बना रहे हैं, तो हमारे दो और टेम्पलेट इसके साथ फ़िट होते हैं।
Ludo Cats: बिल्ली के बच्चों वाला लूडो, तीन स्तरों पर CPU या एक डिवाइस पर दोस्त
Boba Club: 12 डील के कैंपेन वाला Klondike सॉलिटेयर
TypeScript बदलने के बाद रीबिल्ड
game/ फ़ोल्डर पहले से बना हुआ है, इसलिए गेम इंस्टॉल करने के लिए Node.js नहीं चाहिए। यह सिर्फ़ सोर्स बदलने के बाद चाहिए।
- Node.js 22.12 या नया इंस्टॉल करें (गाइड 22.23 पर टेस्ट हुई थी)। npm उसके साथ आता है।
- source/ में एक टर्मिनल खोलें, जहाँ package.json और package-lock.json हैं।
- npm ci चलाएँ। यह Phaser, Vite, Vitest और TypeScript के लॉक किए गए सटीक संस्करण इंस्टॉल करता है।
- npm test (58 टेस्ट) और npm run typecheck चलाएँ। बिल्ड से पहले त्रुटियाँ ठीक करें।
- npm run build चलाएँ। आउटपुट source/dist-static/ में होता है, जिसमें index.html, modules/, lib/, assets/ और licenses/ हैं।
- होस्ट किए गए गेम का बैकअप लें, फिर dist-static/ की सामग्री को ठीक game/ की तरह अपलोड करें।
गाइड npm audit fix और npm update के खिलाफ़ चेतावनी देती है, क्योंकि वे टेस्ट किए गए संस्करण बदल देते हैं। कोई पैकेज समस्या आए, तो भेजे गए package.json और package-lock.json की जोड़ी वापस रखें।
अपनी साइट पर होस्ट करना
सिर्फ़ game/ की सामग्री अपलोड करें, ताकि index.html सीधे लक्ष्य फ़ोल्डर में रहे, जैसे public_html/games/pip-club/। assets/, lib/, modules/, licenses/ और pip.config.js उसके बगल में रखें, और हर नाम के अक्षरों का आकार (letter case) वही रखें। source/, documentation/ या ZIP अपलोड न करें।
- कोई भी स्टैटिक HTTP(S) होस्ट किसी भी डोमेन के किसी भी सबफ़ोल्डर में काम करता है, क्योंकि गेम रिलेटिव पाथ इस्तेमाल करता है।
- खेलने के लिए कोई डेटाबेस, PHP या Node.js सेवा नहीं चाहिए।
- अपने कंप्यूटर से index.html खोलना (file://) समर्थित नहीं है।
- होस्ट को .js, .webp, .woff2 और .mp3 सामान्य प्रकारों के साथ परोसना होगा।
- गेम कोई एनालिटिक्स, रैंकिंग, भुगतान या विज्ञापन कॉल नहीं करता।
सेव खिलाड़ी के ब्राउज़र में, IndexedDB या localStorage में रहते हैं, और डिवाइसों के बीच सिंक नहीं होते। अपडेट के लिए नए game/ को पुराने के ऊपर अपलोड करें, pip.config.js और उसकी saveKey रखें, और अगर पुराना संस्करण दिखता रहे तो साइट डेटा नहीं, कैश की फ़ाइलें साफ़ करें।
इसमें क्या शामिल नहीं है, और लाइसेंस
इस संस्करण में कोई ऑनलाइन या लोकल दो-खिलाड़ी मोड नहीं, कोई क्लाउड सेव नहीं, कोई ऑनलाइन रैंकिंग नहीं, कोई असली पैसे की खरीदारी नहीं और कोई विज्ञापन SDK नहीं है। नेटिव ऐप, होस्टिंग और कस्टम डेवलपमेंट भी पैकेज से बाहर हैं। विज्ञापन, स्टोर या सिंक जोड़ना डेवलपर का काम है, जिसके लिए आपके अपने अकाउंट और मंज़ूरियाँ चाहिए।
Pip Club की सूची कीमत $49 है, जो 30 नवंबर 2026 तक Black Friday प्रमोशन के साथ $41.65 हो जाती है; दो या अधिक टेम्पलेट एक साथ खरीदने पर 5% से 20% तक बंडल छूट लगती है। लाइसेंस स्थायी और गैर-exclusive है, एक अंतिम उत्पाद के लिए, आपके या एक ग्राहक के लिए। आप कोड, कला और ऑडियो बदल सकते हैं, उस पर अपना ब्रांड लगा सकते हैं, और खिलाड़ियों को मुफ़्त में या विज्ञापनों के साथ खेलने दे सकते हैं, पर टेम्पलेट या उसके कोड को अकेले दोबारा नहीं बेच सकते। सपोर्ट छह महीने चलता है, या एक्सटेंशन के साथ बारह महीने; इंस्टॉल करने और दोष ठीक करने से आगे का काम कोट होता है।
लाइसेंस और सपोर्ट की शर्तें पढ़ें
अक्सर पूछे जाने वाले प्रश्न
क्या dominoes game source code TypeScript है या JavaScript?
सोर्स पढ़ा जा सकने वाला, बिना मिनिफ़ाई किया TypeScript है। होस्ट होने के लिए तैयार game/ फ़ोल्डर बनाया हुआ JavaScript है, इसलिए गेम बदलने के लिए ही TypeScript टूल चाहिए।
क्या दो लोग एक-दूसरे के खिलाफ़ खेल सकते हैं?
नहीं। खिलाड़ी एक डिवाइस पर कंप्यूटर विरोधियों के खिलाफ़ खेलते हैं। कोई ऑनलाइन या लोकल दो-खिलाड़ी मोड नहीं है।
यह कौन सा डोमिनोज़ वेरिएंट खेलता है?
क्लासिक डबल-सिक्स, एक बनाम एक, बोनयार्ड से ड्रॉ, पास और लॉक नियम के साथ। Domino विरोधी का बचा हुआ कुल योग स्कोर करता है, और लॉक हुई टेबल का अंतर कम कुल योग वाले को मिलता है।
बिना रीबिल्ड के क्या बदल सकते हैं?
pip.config.js ब्राउज़र शीर्षक, सेव key और शुरुआती भाषा तय करता है। नियम, कला, टेक्स्ट और संगीत सोर्स में बदले जाते हैं और उनके लिए रीबिल्ड चाहिए।
क्या यह ऑफ़लाइन चलता है?
यह कोई बाहरी सेवा कॉल नहीं करता, पर यह इंस्टॉल होने वाला ऑफ़लाइन ऐप नहीं है। खिलाड़ियों को उसे लोड करने के लिए आपके वेब पते तक पहुँचना होगा।
क्या यही डोमिनोज़ बेस आपको चाहिए?
Pip Club उस साइट या पोर्टल के लिए ठीक है जो सभी उम्र के लिए क्लासिक टेबल गेम चाहती है, उस स्टूडियो के लिए जो एक ग्राहक के लिए ब्रांडेड डोमिनोज़ बना रहा है, और उस डेवलपर के लिए जो पढ़े जा सकने वाले TypeScript के साथ कंप्यूटर विरोधी और असली यूनिट टेस्ट चाहता है। यह उस प्रोजेक्ट के लिए ठीक नहीं जिसे लोगों को एक-दूसरे के खिलाफ़ खेलना हो, ऑनलाइन या एक स्क्रीन पर; उसका काम शुरू से कस्टम होगा।
