मैंने यथार्थवादी भौतिकी वाले वाहनों के साथ कोई भी MMO खेल नहीं देखा है और वह उच्च गति प्राप्त कर सकता है, क्यों? क्या यह नेटवर्क बैंडविड्थ सीमाओं के कारण है?
सेकंड लाइफ में वाहन हैं, लेकिन भौतिकी खराब है और अधिकतम गति दयनीय है।
मैंने यथार्थवादी भौतिकी वाले वाहनों के साथ कोई भी MMO खेल नहीं देखा है और वह उच्च गति प्राप्त कर सकता है, क्यों? क्या यह नेटवर्क बैंडविड्थ सीमाओं के कारण है?
सेकंड लाइफ में वाहन हैं, लेकिन भौतिकी खराब है और अधिकतम गति दयनीय है।
जवाबों:
हां और नहीं (लेकिन ज्यादातर, नहीं)।
किसी भी MMO गेम में कई सीमाएँ होती हैं जो इसके भौतिकी को प्रभावित करती हैं। इनमें से सबसे महत्वपूर्ण विलंबता है । लेटेंसी वह समय है जिसमें सर्वर को रिक्वेस्ट भेजने और वापस आंसर प्राप्त करने में क्लाइंट को लगता है। बहुत अच्छी परिस्थितियों में भी, यह समय लगभग 50-100 मिलीसेकंड है। वास्तविक दुनिया में, यह 500 एमएस जितना हो सकता है। इसका मतलब यह है कि, जब भी कोई खिलाड़ी कुछ करता है - जैसे, कहते हैं, अपनी कार का पहिया बदल देता है - वह खेल को केवल 100-500 एमएस पर बाद में देख सकता है।
100 एमएस वास्तव में काफी है। किसी भी खेल में जितनी अधिक विलंबता होती है, वह अनुत्तरदायी महसूस करेगा, और 500 ms सर्वथा अप्राप्य लगता है। यही कारण है कि गेम क्लाइंट इस विलंबता को नाकाम करने के लिए बहुत सारी तरकीबें लगाते हैं। उदाहरण के लिए, खिलाड़ी की कार उस पल को मोड़ना शुरू कर सकती है, जो वह बिना ड्राइवर का इंतजार किए, पहिया को मोड़ देता है। हालांकि, ये तरकीबें केवल विलंबता का मुखौटा लगाती हैं, और वास्तव में इसे कभी कम नहीं कर सकती हैं।
उदाहरण के लिए, मान लीजिए कि हमारे पास कारों के दो खिलाड़ी हैं जो एक साथ एक दूसरे की ओर बढ़ते हैं। प्रत्येक ग्राहक तुरंत अपनी कार मोड़ना शुरू कर देगा ; लेकिन दूसरे खिलाड़ी की कार नहीं बदलेगी - क्योंकि इसके बदलने की सूचना अभी तक क्लाइंट तक नहीं पहुंची है, क्योंकि विलंबता की वजह से। दोनों खिलाड़ी ख़ुशी-ख़ुशी अपनी कार चलाते हैं, और फिर बैम! - सर्वर ने नोटिस किया कि वे वास्तव में एक दूसरे में दुर्घटनाग्रस्त हो गए थे।
इस तरह की स्थितियों को रोका नहीं जा सकता। इससे कोई फर्क नहीं पड़ता कि हम किन चतुर योजनाओं का उपयोग करते हैं, जहां अन्य खिलाड़ी हैं, हमेशा चीजों को गलत करने का मौका होता है। किसी भी MMO खेल में, लगभग आधा सेकंड जो आपने अभी देखा है वह वास्तव में अभी तक नहीं हुआ है , और किसी भी क्षण बदल सकता है। अब, पारंपरिक MMORPG की तरह धीमी गति से चलने वाले खेलों में, आधा सेकंड वास्तव में इतना लंबा नहीं है। वर्ण केवल इस दौरान शायद एक या दो मीटर चलते हैं। हालांकि, अगर हम तेज गति वाली कार रेस के बारे में बात कर रहे हैं, तो आधा सेकंड वास्तव में लंबा समय है! आप आधे सेकंड (-8) में तीन बार, जैसे दुर्घटनाग्रस्त हो सकते हैं
दरअसल, एक तेज-तर्रार खेल इन सीमाओं के साथ भी काम कर सकता है। इसमें कुछ अप्रिय क्षण होंगे, लेकिन जब तक सभी खिलाड़ियों के अच्छे संबंध हैं, तब तक यह खेलने योग्य होगा। इस तरह मल्टीप्लेयर रेसिंग गेम्स काम करते हैं। हालाँकि, एक और MMO सीमा है: एन-स्क्वेर्ड अपडेट काउंट।
सोचिए 10 खिलाड़ी एक साथ खेल रहे हों। उनके लिए एक दूसरे को देखने के लिए, सर्वर को हर खिलाड़ी को हर दूसरे खिलाड़ी के बारे में जानकारी भेजनी होगी। इसका मतलब है, हमारे उदाहरण में, तैयार करने और भेजने के लिए जानकारी के 10x10 = 100 टुकड़े। यह चुकता खिलाड़ियों की संख्या है, इसलिए "एन-स्क्वॉयर" है। यह संख्या काफी तेजी से बढ़ती है, और यहां तक कि पारंपरिक MMORPG भी तब शुरू होते हैं जब एक ही क्षेत्र में बहुत सारे खिलाड़ी होते हैं। कारों के साथ हमारे काल्पनिक तेज़-गति वाले गेम के लिए, जानकारी के इन टुकड़ों को धीमे खेल की तुलना में बहुत तेज़ी से भेजा जाना है। और वे शायद अपने आप में बड़े हैं - आपने न केवल पदों को भेजा है, बल्कि वेग, त्वरण, कोणीय वेग आदि। इसका मतलब है कि किसी भी तेज मल्टी-प्लेयर गेम में सीमित संख्या में ही खिलाड़ी हो सकते हैं।
उपरोक्त दोनों समस्याएं सिद्धांत रूप में सॉफ्टवेयर द्वारा हल नहीं की जा सकती हैं, केवल कुछ हद तक नकाबपोश हैं। खिलाड़ियों की संख्या को सीमित करके उन्हें थोड़ा कम किया जा सकता है - इसलिए, उदाहरण के लिए, एक गेम जहां तेजी से कारों का उपयोग केवल सीमित संख्या में खिलाड़ियों के साथ किया जाता है, संभवतः संभव है। मेरा मानना है कि एपीबी ने यही किया है। लेकिन तेजी से कारों के साथ एक पूर्ण खुली दुनिया MMO खेल बस होने वाला नहीं है। तब तक नहीं जब तक कि हमारे पास क्वांटम-उलझाव नेटवर्क इंटरफेस या कुछ और न हो।
हाँ।
आपको नेटवर्क लेटेंसी से निपटना होगा और पूरे नेटवर्क में गेम स्टेट को सिंक करना होगा। जितनी तेज़ी से कारें चलती हैं, उतना ही उल्लेखनीय नेटवर्क विलंबता बन जाती है। खिलाड़ी एक दीवार में दुर्घटनाग्रस्त हो सकते हैं, क्योंकि उनका गेम क्लाइंट नेटवर्क मुद्दों के कारण सर्वर पर गेम स्थिति को अपडेट करने में विफल रहता है। खिलाड़ियों को वॉक गति पर ले जाने पर कोई समस्या नहीं है; ;-)
एक MMO सर्वर में अधिक लोड होता है। मल्टीप्लेयर रेसिंग गेम जुड़ा हुआ 10 लोगों के साथ ठीक चल सकता है, लेकिन अगर सैकड़ों उपयोगकर्ताओं से भारी भार के तहत सर्वर अनुत्तरदायी हो जाता है तो दुर्घटनाग्रस्त हो जाएगा और जल जाएगा।
दूसरे जीवन के वाहन भौतिकी को बुरी तरह से लागू किया गया है। (क्या यह अभी भी जीवित है?)
गैरी की मॉड बहुत सारे भौतिकी है। मुझे नहीं लगता कि यह एक MMO के रूप में गिना जाता है - हालांकि यह प्रति सर्वर 32 खिलाड़ियों का समर्थन करेगा - और मेरे पास सबसे यथार्थवादी भौतिकी है (मैंने सिर्फ वाहन नहीं देखा है)।
मुझे लगता है कि भौतिकी को ध्यान में रखते हुए डिज़ाइन नहीं किया गया है।
उन्होंने एक गेम की एक बड़ी असफलता में इसे पूरा करने की कोशिश की, जिसे सभी अंक बुलेटिन कहा जाता है। खैर अवधारणा महान था निष्पादन इतना अधिक नहीं है। रैंडम कारें कहीं से भी बाहर दिखाई देंगी। आप गाड़ी चला रहे होंगे और बस एक दीवार से टकराएंगे जो फिर कार में बदल जाएगी। मैं इसे अगले पांच वर्षों में किसी भी तरह से किया जा सकता हूं, हालांकि अधिक सीपीयू कम जीपीयू।
आइए पहले आपके संदर्भ को देखें।
GTA को मल्टीप्लेयर के साथ कुछ समस्याएं हैं, लेकिन यह उम्मीद की जानी है। एक उदाहरण है जब विलंबता आपकी कार का पीछा एक दुःस्वप्न में बदल जाती है। कभी-कभी खिलाड़ी विलंब के कारण एक-दूसरे को मार देते हैं।
लेकिन विलंबता एकमात्र समस्या नहीं है, आप केवल ग्राहकों के साथ एक MMO नहीं चला सकते हैं, आपको सर्वर की आवश्यकता होती है और इन सर्वरों को सबसे अधिक प्रबंधन करना पड़ता है यदि सभी भौतिकी के लिए धोखा देने से बचने के लिए नहीं।
तो हजारों खिलाड़ियों के साथ दौड़ने की कल्पना कीजिए। भौतिकी गहन गतिविधियों के दौरान सीपीयू पर तनाव की भी कल्पना करें। आप समर्पित GPUs को तनाव का एक हिस्सा भरपाई कर सकते हैं । बुलेट फिजिक्स में एक कार्यान्वयन है जो सीपीयू पर चलता है।
लेकिन एक सर्वर में अधिभार से बचने के लिए आपको खिलाड़ियों के घनत्व के आधार पर गतिशील ज़ोन पुनर्परिभाषितों को संभालने के लिए एक तंत्र को लागू करना होगा। यह अन्य MMOs की तुलना में उस मामले में बहुत अधिक महत्वपूर्ण है।
यह करने योग्य है। यहां मुद्दा यह है कि अधिक खिलाड़ियों को संभालने के लिए गेम को स्केल करने और सर्वर में वितरित गेम के मुख्य उदाहरण को चलाने की आवश्यकता है।
यदि आप अपनी भौतिकी को अनुकूलित करने का प्रबंधन करते हैं, तो वस्तुओं को सर्वरों पर जल्दी और कुशलता से स्थानांतरित करें और मेगा भीड़ (उदाहरण के लिए उदाहरण) से बचने का एक तरीका खोजें, फिर आप इसे अपने संदर्भ के रूप में समान सीमाओं के साथ और कुछ अन्य लोगों के साथ कर सकते हैं, जो कि MMO प्रकृति के कारण हैं गेम का।
याद रखें कि आपको हर समय सभी खिलाड़ियों को सभी खेल राज्य अपडेट नहीं भेजना है, बस खिलाड़ी को तुरंत प्रासंगिक होने वाले बदलावों को लगातार भेजा जाना चाहिए, बाकी को कम दर पर भेजा जा सकता है।