इस प्रोजेक्ट के बारे में

ब्लैक 8 मास्टर मोबाइल लैंडस्केप के लिए डिज़ाइन किया गया सिंगल-प्लेयर ब्लैक एट बिलियर्ड्स PWA है। वेबपेज खोलते ही खेल सकते हैं, मोबाइल होम स्क्रीन पर जोड़ सकते हैं, और पहली बार लोड होने के बाद ऑफ़लाइन चला सकते हैं। गेमप्ले में, खिलाड़ी बिलियर्ड टेबल पर उंगली स्लाइड करके क्यू की दिशा समायोजित करता है, दाईं ओर की शक्ति पट्टी से हिट की शक्ति नियंत्रित करता है, और "हिट" पर टैप करके पुष्टि करता है। पहली वैध गोल के बाद सॉलिड या स्ट्राइप गेंदें सौंपी जाती हैं, अपनी गेंद समूह खाली करने के बाद ब्लैक 8 पॉट करने पर जीत मिलती है। क्यू बॉल पॉकेट में गिरना, लक्ष्य गेंद को न छूना या पहले गलत गेंद समूह को छूना फाउल माना जाता है, प्रतिद्वंद्वी को फ्री बॉल मिलती है; खिलाड़ी को फ्री बॉल मिलने पर, बिलियर्ड टेबल पर वैध स्थान पर टैप करके क्यू बॉल को स्थानांतरित कर सकता है। सुविधाओं में, प्रोजेक्ट Matter.js का उपयोग गेंद टकराव, कुशन बाउंस, घर्षण मंदन और छह पॉकेट डिटेक्शन के लिए करता है, और सरलीकृत ब्लैक एट नियम, पूर्ण टर्न स्थिति और जीत-हार निर्धारण शामिल है। आसान, सामान्य, कठिन तीन कंप्यूटर प्रतिद्वंद्वी स्तर, तीन बिलियर्ड टेबल, क्यू और वातावरण थीम, और समायोज्य निशाना रेखा, शक्ति संवेदनशीलता, ध्वनि प्रभाव और कंपन प्रदान करता है। इंटरफ़ेस लैंडस्केप सेफ एरिया के अनुकूल है, ऑफ़लाइन कैशिंग और इंस्टॉल करने योग्य PWA का समर्थन करता है। स्थानीय विकास के लिए Node.js 22+ और pnpm आवश्यक है, pnpm install और pnpm dev चलाने के बाद, ब्राउज़र में टर्मिनल द्वारा दिखाए गए स्थानीय पते पर खोलें और मोबाइल को लैंडस्केप में घुमाएं। सत्यापन के लिए pnpm test और pnpm build चला सकते हैं, परीक्षण नियम दंड, AI वैध लक्ष्य चयन, टकराव, घर्षण, कुशन प्रतिबिंब और पॉकेट निर्धारण को कवर करते हैं। रिलीज़ प्रक्रिया में, main ब्रांच पर हर पुश पर परीक्षण और प्रोडक्शन बिल्ड चलते हैं, सभी पास होने के बाद GitHub Actions द्वारा dist को GitHub Pages पर प्रकाशित किया जाता है; पहली रिलीज़ के लिए रिपॉजिटरी Settings → Pages → Build and deployment में GitHub Actions चुनना आवश्यक है। तकनीकी स्टैक TypeScript, Vite, Phaser 3, Matter.js, Vitest और vite-plugin-pwa है।