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

हाइपरियन एक माइनक्राफ्ट गेम इंजन है जो Rust में Bevy ECS और flecs का उपयोग करके बनाया गया है, जिसका लक्ष्य बड़े कस्टम इवेंट्स के साथ PvP गिनीज वर्ल्ड रिकॉर्ड तोड़ना है। यह वर्टिकल मल्टी-थ्रेडिंग और हॉरिजॉन्टल प्रॉक्सी स्केलिंग के माध्यम से एक ही दुनिया में 10,000+ खिलाड़ियों का समर्थन करता है। **मुख्य विशेषताएं:** - Bevy और flecs के साथ मल्टी-थ्रेडेड ECS आर्किटेक्चर - क्षेत्रीय मल्टीकास्टिंग के साथ हॉरिजॉन्टल स्केलिंग के लिए प्रॉक्सी लेयर - Tracy प्रोफाइलर का उपयोग करके परफॉर्मेंस ट्रेसिंग - बेसिक एंटी-चीट और मॉडरेटर टूल्स (WIP) - एक्सटेंसिबिलिटी के लिए प्लगइन API (जैसे, bedwars इवेंट) - मुख्य मैकेनिक्स: फिजिक्स के साथ ब्लॉक तोड़ना/रखना, एंटिटी कोलिजन, डायनामिक लाइटिंग, वर्ल्ड बॉर्डर, ब्लॉक एडिट API, PvP कॉम्बैट, इन्वेंटरी सिस्टम, रेकास्टिंग - प्लेयर अनुभव: पार्टिकल इफेक्ट्स, चैट सिस्टम (ग्लोबल और प्रॉक्सिमिटी), कस्टम कमांड, Simple Voice Chat के माध्यम से प्रॉक्सिमिटी वॉइस - Velocity प्रॉक्सी के साथ माइनक्राफ्ट 1.20.1 समर्थन **बेंचमार्क:** - 1 खिलाड़ी: 0.24ms टिक टाइम, 4.3% कोर उपयोग - 1000 खिलाड़ी: 0.40ms टिक टाइम, 15.3% कोर उपयोग - 5000 खिलाड़ी: 1.42ms टिक टाइम, 35.6% कोर उपयोग **आर्किटेक्चर:** - गेम सर्वर Tokio async I/O के साथ सभी गेम लॉजिक चलाता है - प्रॉक्सी लेयर खिलाड़ी कनेक्शन और क्षेत्रीय मल्टीकास्टिंग को संभालती है - Velocity + ViaVersion के माध्यम से ऑथेंटिकेशन - गेम सर्वर और प्रॉक्सी के बीच mTLS एन्क्रिप्टेड कनेक्शन **चलाना:** - Nix की आवश्यकता है; गेम सर्वर के लिए `nix run github:hyperion-mc/hyperion#bedwars` और प्रॉक्सी के लिए `nix run github:hyperion-mc/hyperion#hyperion-proxy` चलाएं - डेवलपमेंट कमांड में certs जनरेशन, bots, CI, lint, test, और e2e टेस्टिंग शामिल हैं **डेवलपमेंट:** - सभी कमांड flake ऐप्स हैं, केवल Nix की आवश्यकता है - CI गेट्स, लिंटिंग, टेस्टिंग, डॉक्यूमेंटेशन, और एंड-टू-एंड टेस्ट शामिल हैं - मॉड्यूलर डिज़ाइन कस्टम मैकेनिक्स और इवेंट इम्प्लीमेंटेशन की अनुमति देता है **अनुमानित अधिकतम खिलाड़ी संख्या:** ~176,056