अंतिम गेम में अतिरिक्त संपत्ति क्यों बची है?


28

मैं सिर्फ नो मैन्स स्काई के लिए फाइलों में जो खोजा गया था, उसके बारे में पढ़ रहा था, बहुत सारी चीजें जो खेल के लिए उपयोग नहीं की गई थीं या प्रासंगिक थीं। मैंने थोड़ी देर पहले ई 3 सेटिंग्स को वॉच डॉग्स फाइलों में छोड़े जाने के बारे में भी पढ़ा। गेम डेवलपर्स अंतिम गेम में पुरानी और अप्रयुक्त फ़ाइलों को क्यों छोड़ते हैं?

निश्चित रूप से यह सिर्फ एक डिस्क पर अतिरिक्त स्थान लेता है और यदि आप गेम डाउनलोड करते हैं तो अधिक डेटा डाउनलोड करना होगा?

इसके अलावा, क्या डेवलपर्स को डर नहीं है कि लोग क्या ढूंढ सकते हैं?


7
आम तौर पर इसे हटाने के लिए पर्याप्त डेटा का उपयोग नहीं किया जाएगा। और कभी-कभी इस "अप्रयुक्त" फ़ाइलों को हटाने से वास्तव में अन्य गेम ऑब्जेक्ट्स के लिए समस्या हो सकती है जो "अप्रयुक्त" फ़ाइलों के कुछ हिस्सों का उपयोग करते हैं। मुझे लगता है कि यह सिर्फ समय सीमा पूरी करने के लिए आता है, और इस तथ्य को पूरा किया जा सकता है कि अंतिम क्षण में सामग्री में कटौती की जा सकती है।
रयान व्हाइट

10
साइड नोट के रूप में, कटिंग रूम का फर्श इसके उदाहरणों से भरा है। tcrf.net/The_Cutting_Room_Floor
drawoc

2
1) उन्हें हटाने के लिए किसी को याद नहीं किया गया। 2) हां। 3) नंबर
user253751

एक अन्य उदाहरण Dota2 है। न केवल डेवलपर्स कुछ संपत्ति छोड़ देते हैं, वे संभावित भविष्य के रिलीज के लिए अपूर्ण सुविधाओं को भी शामिल करते हैं। जैसे नए पात्र, आइटम या कौशल। तो बाइनरी को असम्बद्ध करने वाले लोग खेल के बारे में कम से कम कुछ संभावित भविष्य की खबरें देखने में सक्षम हैं (उल्लेखनीय उदाहरण: कुछ वर्षों पहले कोड लॉर्ड में देखे गए गड्ढे के स्वामी / अंडरवर्ड चरित्र को आधिकारिक रूप से घोषित किया गया है)।
बकुरीउ

जवाबों:


35

प्रमुख खेल एक निर्माण पाइपलाइन नामक कुछ का उपयोग करते हैं। यह उन उपकरणों के एक और सेट की तरह है जो सभी अलग-अलग वितरणों के लिए खेल सामग्री के निर्माण का काम करता है। मल्टी-प्लेटफ़ॉर्म गेम जैसे कि नो मैन्स स्काई और वॉच_डॉग सबसे निश्चित रूप से विभिन्न प्लेटफार्मों के लिए अलग-अलग संपत्ति का उपयोग करते हैं। तो जिस तरह से मैं इसे देखता हूं वहां आपके प्रश्न के दो संभावित उत्तर हैं।

  1. देवता पाइपलाइन से कुछ परिसंपत्तियों को निकालना भूल गए और वे वास्तविक गेम से जुड़ गए।

  2. खेल में जानबूझकर कुछ "अप्रयुक्त" परिसंपत्तियों को खेल में बाद में एक पैच या अपडेट के दौरान उपयोग के लिए छोड़ दिया, क्योंकि वे समय सीमा को पूरा करने में असमर्थ थे। उदाहरण द क्राइकर 3 से डेविल्स पिट।


16
इसके अलावा, 3. जानबूझकर "अप्रयुक्त संपत्तियों" को रखा गया है ताकि आगामी रिलीज पर चुपके peeks के लिए मोडर्स / पॉवरसुसर उन्हें ढूंढ सकें। # 2 के समान, उस विशिष्ट शीर्षक या भविष्य के पैच में भी सामग्री का उपयोग नहीं किया जा सकता है।
क्रोल्टन

4
क्रोल्टन के # 3 के लिए +1। IIRC द विचर 3 में अप्रयुक्त सामग्री में छिपे एक ईस्टर अंडे का उदाहरण है। कुछ गुप्त क्षेत्र थे जो आपको गेम को मॉडिफाई करने के लिए आवश्यक थे जिसमें देवताओं की फोटो या ऐसा कुछ था।
दूध

3
"हटाने के लिए भूल गया" यह वर्णन करने का एक बहुत अच्छा तरीका नहीं है। देवता जान सकते हैं कि उन्होंने अपनी संपत्ति का उपयोग हटा दिया है। लेकिन इसकी संभावित दूसरी टीम ने संपत्ति का उपयोग करना शुरू कर दिया है। ऐसे मामले में, हटाने की संभावित लागत (पूरी तरह से एक गेम को तोड़ना) दूर करने के लाभ से आगे निकल जाती है।
एरॉन

33

यह मुश्किल हो सकता है कि आप एक बड़े खेल में सभी संदर्भित सामग्री को खोजने के लिए सोचते हैं जो कई लोगों द्वारा काम किया जाता है। यहां तक ​​कि जब मदद करने के लिए स्पष्ट उपकरण होते हैं (हमने एरेनेट पर ऐसे उपकरण बनाए, जो कोई भी अवास्तविक उपयोग करता है, उन उपकरणों के अवास्तविक संस्करण तक पहुंच है, बुंगी के पास ऐसे उपकरण हैं जो एक ही काम करते हैं और यहां तक ​​कि उनके बारे में एक बात भी बताई गई है, et cetera)

ऐसे कई तरीके हैं जिनसे सामग्री को संदर्भित किया जा सकता है जो ऐसी प्रणालियों को हरा सकती है, आमतौर पर सामग्री को किसी ऐसी चीज़ से संदर्भित करके जिसे सिस्टम ट्रैक नहीं कर सकता (जैसे कि कुछ संपत्ति में कोड में एक अंतर्निहित या हार्ड-कोडित संदर्भ बनाना)।

यहां तक ​​कि यह मानते हुए कि आपने सभी सामग्री अंतर-संदर्भों को खोजने की समस्या को हल किया है, आपको यह बताने में सक्षम नहीं होने की समस्या है कि क्या वास्तव में कुछ का उपयोग किया जाता है । हो सकता है कि किसी संपत्ति को कहीं लिपि में संदर्भित किया गया हो, लेकिन उस स्क्रिप्ट के लिए ट्रिगर वॉल्यूम गलत तरीके से एक दीवार के अंदर रखा गया है और सामग्री इस प्रकार कभी-कभी खेल में नहीं जा सकती है। यह पूरी तरह से परीक्षण करना काफी कठिन है।

जब अप्रयुक्त सामग्री का पता लगाने और फ़िल्टर करने के लिए स्वचालित (या स्वचालित सक्षम ) तरीके विफल हो जाते हैं, तो आपको पुराने ढंग से छोड़ दिया जाता है: मानव हस्तक्षेप। मनुष्य गलतियाँ करते हैं, बुरी धारणाएँ (वे सोच सकते हैं कि एक फाइल अभी भी उपयोग की जाती है, भले ही ऐसा इसलिए नहीं है क्योंकि किसी और ने बदलाव किया है), और हाँ कभी-कभी जानबूझकर ईस्टर अंडे के रूप में खेल में अप्रासंगिक सामग्री को छोड़ना भी चुनता है। यह सिर्फ प्राकृतिक मानवीय पतन है जो इस ओर ले जाता है।

यह आमतौर पर लोड या फ़ाइल आकार अनुकूलन के लिए सुई को वास्तव में स्थानांतरित करने के लिए पर्याप्त मात्रा में सामग्री नहीं है। किसी भी बड़ी बिल्ड चेन या इंजन में सबसे बड़ी या सबसे धीमी संपत्ति की रिपोर्ट करने के लिए भी उपकरण हैं, लेकिन वहां ध्यान प्रमुख अपराधियों के प्रभाव को कम करने और हर एक बर्बाद बाइट को खोजने और खोजने में नहीं है। आम तौर पर।


उदाहरण के लिए एक अप्रयुक्त फ़ाइल के लिए अर्कडे पर ईस्टर अंडे के रूप में: अंडरडेल में 'सॉन्ग दैट प्ले प्ले देयर यू फाइट सैंस' कहां दिखाई देता है?
फिलिप

1
स्टारबॉनल में वर्तमान में एक मुद्दा है जहां आप "पका हुआ टेंटकल" प्राप्त नहीं कर सकते हैं क्योंकि बिट जो आपको सिखाता है वह नुस्खा हटा दिया गया है। इस बीच संपत्ति और परिभाषा की फाइलें वहीं बैठती हैं जैसे वे काम कर रहे हों। इस बात पर विचार करते हुए कि आप अक्सर एक ही घटक (कुछ भी खाने के लिए) से बने कुछ अलग-अलग आइटम बनाने / लेने के लिए एक नुस्खा सीखते हैं, यह देखना आसान है कि कैसे गलती से खेल से बिट्स को बाहर रखा जा सकता है।
StarWeaver

1
यहां तक ​​कि अगर कोई ऐसी सभी सामग्री पा सकता है, जो डिस्क पर शामिल किए गए खेल से अप्रयुक्त है, तो कुछ गेम उपयोगकर्ताओं को अतिरिक्त-लागत वाले ऐड-ऑन मॉड्यूल को डाउनलोड करने की अनुमति देने के लिए डिज़ाइन किए गए हैं जो डिस्क के निर्माण के बाद विक्रेता द्वारा उत्पादित किए जा सकते हैं। । यदि डिस्क में दस मेगाबाइट की बनावट शामिल है, जो डिस्क पर गेम में उपयोग नहीं की जाती है, लेकिन डाउनलोड संस्करण में उपयोगी होगी, तो हो सकता है कि डाउनलोड का आकार दस मेगाबाइट तक कम हो।
सुपरकैट

1
एक पुराना उदाहरण जहां शिप किए गए गेम में बहुत अधिक अप्रयुक्त संपत्ति थी, मेककमेंडर 2 थी। जब Microsoft ने इस पर अपने नए XNA बिल्ड टूल्स का परीक्षण किया, तो यह पता चला कि खेल के 40% बनावट अप्रयुक्त थे। blogs.msdn.microsoft.com/briankel/2006/01/24/…
रॉस रिज

बस एक नोट: ट्यूरिंग-पूर्ण भाषाओं (और सबसे उपयोगी वाले हैं) के लिए, यह पता लगाना कि क्या कोड की एक पंक्ति को कभी निष्पादित किया जाता है या नहीं, वह असम्भव है (Halting Problem)। यदि आप ऐसा करने का प्रबंधन करते हैं, तो आप खेल को खोद सकते हैं और इसके बजाय अपना नोबेल पुरस्कार एकत्र कर सकते हैं।
क्रमांक

9

अन्य उत्तरों में जो बात याद आ रही है वह यह है कि इसका खेलों से कोई लेना-देना नहीं है। यह सभी अनुप्रयोगों को प्रभावित करता है।

हमेशा फाइलें होती हैं, और कोड जो किसी भी जटिल कार्यक्रम में उपयोग नहीं किया जा रहा है। यह निम्न 2 चीजों के कारण होता है:

  • समय के साथ कार्यक्रम विकसित होते हैं।
  • यह पता लगाने के लिए प्रयास की आवश्यकता है कि क्या कुछ कोड या कुछ फ़ाइल का उपयोग नहीं किया जा रहा है।
    • यदि आपने कहा प्रयास किए बिना खर्च को हटा दिया है, तो आवेदन का व्यवहार अप्रत्याशित हो जाता है

7

करने के लिए / ehancing जोड़ना उरी पोपोव के जवाब :

  1. प्रोग्राम अद्यतन पैकेजों को स्थापित कर सकते हैं जिनमें मौजूदा परिसंपत्ति फ़ाइलों के नए, बेहतर संस्करण और स्वयं प्रोग्राम के लिए एक अपडेट शामिल है। मेरे हिस्से के लिए, मैं परिसंपत्ति फ़ाइलों के पिछले संस्करणों को अधिलेखित नहीं करता हूं, क्योंकि मैं पहले के प्रोग्राम संस्करण में एक कमबैक की अनुमति देना चाहता हूं (उदाहरण के लिए, उदाहरण के लिए, एक पूरी तरह से विनाशकारी अपडेट वितरित करने का आतंक :-))। मूल प्रोग्राम संस्करण बनावट_0.dds और अद्यतित एक बनावट_1.dds (इसलिए बनावट_0.dds की अब आवश्यकता नहीं है) का उपयोग कर सकता है। ओवरराइटिंग (केवल एक नाम का उपयोग करके) कार्यक्रम के अद्यतन को हटाने पर रोक लगाएगा, अर्थात, मूल संस्करण में गिरावट, जब तक कि पुराने लोगों के साथ नई संपत्ति फ़ाइलों को अधिलेखित करने का मुश्किल यांत्रिकी भी नहीं था। और वह ऐसी चीज नहीं है जिसका कोई समर्थन करना चाहता हो।

संपादित करें:

मूल प्रश्न के लिए एक टिप्पणी पर प्रतिक्रिया,

उन्हें हटाने के लिए किसी ने याद नहीं किया

  1. मैं कहूंगा कि किसी ने भी उन्हें हटाने की हिम्मत नहीं की । यदि गेम के लोडिंग पॉइंट (अब गायब) फ़ाइल X पर गेम में पर्याप्त त्रुटि ट्रैपिंग (गलती से, अज्ञानता, त्रुटि, कुंजी-व्यक्ति कंपनी आदि को छोड़ दिया जाता है) का अभाव होता है, और गहन परीक्षण के बावजूद समस्या को अनदेखा किया गया था? कहें कि लोडिंग केवल "प्रत्येक 3 जी समय" पर होती है, केवल 36 के स्तर 35 पर, जो आप केवल 4 सप्ताह के गहन गेमिंग :-) तक पहुंचते हैं। दुर्घटनाग्रस्त सॉफ्टवेयर द्वारा खोई प्रतिष्ठा एक क्रूर घटना है, और यह एक दिवालिया कंपनी में सबसे खराब स्थिति में हो सकती है। बेहतर है कि फ़ाइल को स्पर्श न करें :-)।

4
+1 के लिए "किसी को हटाने की हिम्मत नहीं हुई"। अप्रयुक्त संपत्ति को नहीं हटाने पर अक्सर केवल एक छोटे से डिस्क स्थान की लागत होती है। यदि आपकी टीम पर कोई अन्य व्यक्ति अभी भी उपयोग कर रहा है, तो उसे हटाने से आपकी कंपनी को बहुत प्रतिष्ठा मिल सकती है यदि वह बड़े बैंगनी चेकबोर्ड छोड़ता है या क्रैश का कारण बनता है।
पैट्रिक एम

2

गेम डेवलपर्स अंतिम गेम में पुरानी और अप्रयुक्त फ़ाइलों को क्यों छोड़ते हैं?

निश्चित रूप से यह सिर्फ एक डिस्क पर अतिरिक्त स्थान लेता है और यदि आप गेम डाउनलोड करते हैं तो अधिक डेटा डाउनलोड करना होगा?

इसके अलावा, क्या डेवलपर्स को डर नहीं है कि लोग क्या ढूंढ सकते हैं?

गेम डेवलपर्स अंतिम गेम में अप्रयुक्त फ़ाइलों को छोड़ देते हैं क्योंकि वे सभी अप्रयुक्त फ़ाइलों को खोजने और निकालने के प्रयास को खर्च नहीं करना चाहते हैं। सभी खेलों के बाद थोड़ा अतिरिक्त सामग्री के साथ ठीक चलता है और समय पैसा है। सफाई से लागत बढ़ती है (यह कैसे स्वचालित होता है इसके आधार पर)।

हालांकि यह अतिरिक्त जगह लेता है और इसका मतलब है कि अधिक डेटा डाउनलोड करना होगा, यह आमतौर पर डेवलपर्स की समस्या नहीं है और यहां तक ​​कि ग्राहक आमतौर पर थोड़ा बड़े डाउनलोड आकारों के बारे में ज्यादा परवाह नहीं करते हैं।

सुनिश्चित नहीं हैं कि अगर डेवलपर्स को उन लोगों से डरने की ज़रूरत है जो लोग पा सकते हैं? उन्हें क्यों करना चाहिए? जब तक अतिरिक्त फ़ाइलों (वास्तव में खराब कलाकृति, उनके मालिकों या ग्राहकों के बारे में चुटकुले, ...) में कोई समझौता नहीं होता है, तब तक वे शायद ज्यादा परवाह नहीं करते हैं। हालांकि कुछ मामलों में वे वास्तव में डरते हैं कि खिलाड़ी परिसंपत्तियों में क्या पहचान सकते हैं।


Not sure if developers need to be afraid of anything people might find?कारण पढ़ें कि Titanfall 2 का तकनीकी परीक्षण PC में क्यों नहीं आ रहा है, वे असहमत हैं: P।
टीएमएच

@ टोमार्ट आप सही कह रहे हैं। इस मामले में वे डरते थे। अन्य मामलों में जैसे सवाल में उल्लेख किया गया है कि वे अतिरिक्त संपत्ति शामिल नहीं थे। मुझे लगता है कि डरने का स्तर डेवलपर्स के बीच भिन्न होता है।
ट्रिलियनियन

1

यह संकेत दिया गया है, लेकिन यह अन्य उत्तरों पर पूरी तरह से छुआ नहीं गया है: यह सभी लागतों के लिए उबलता है, और कुछ लागतें आपके विचार से अधिक पेचीदा हैं।

सबसे स्पष्ट लागत यह है कि किसी को उन्हें हटाना होगा। अब आप केवल मामले पर इंटर्न रख सकते हैं और उसे फाइलों के माध्यम से खोज कर सकते हैं और उन लोगों को हटाने के लिए जो वास्तविक गेम में आवश्यक नहीं हैं। लेकिन फिर भी, आपको इसके लिए भुगतान करना होगा और, भले ही आप न करें (क्योंकि आप एक राक्षस हैं जो इंटर्न का भुगतान नहीं करते हैं) आप अभी भी उस इंटर्न को देव टीम के लिए पिज्जा ऑर्डर करने जैसे उपयोगी कुछ कर सकते थे, इसलिए यह अभी भी आप की लागत।

कम स्पष्ट लागत यह है कि आप जिस संसाधन को निकालने वाले हैं उसे एक कारण के लिए रखा गया था: क्या आप पूरी तरह से सुनिश्चित हैं कि कारण अप्रचलित है? ज़रूर, आपने इस कोड को डेमो के लिए लिखा है और अब इसकी आवश्यकता नहीं है, लेकिन क्या यह पूरी तरह से सच है? क्या आपने एक उपयोगी फ़ंक्शन लिखा था जिसे आप अन्य पुस्तकालयों में स्थानांतरित करना भूल गए थे? क्या स्टेसी ने वास्तविक गेम में समाप्त हुए डेमो के लिए वास्तव में अच्छा ग्राफिक बनाया? क्या एक आंतरिक सिम्युलेटर अभी भी उस पुराने स्तर का उपयोग करता है जिसे आपने परीक्षण के लिए उपयोग किया था?

खेल बनाना एक व्यवसाय है। भले ही यह पैसा कमाने वाला व्यवसाय न हो, फिर भी यह सीमित संसाधनों वाला व्यवसाय है। प्रत्येक निर्णय के लिए लागत-लाभ विश्लेषण की आवश्यकता होती है, भले ही आप प्रत्येक के लिए व्यावसायिक मामले नहीं लिखते हों। और सरल तथ्य यह है कि खेल में उन परिसंपत्तियों को छोड़ने की लागत थोड़ी बड़ी है, और रिलीज से पहले लाभ कुछ कम होने का काफी कम जोखिम है।

"कम स्पष्ट" पैराग्राफ में वे सभी प्रश्न चिह्न अनिश्चितता का प्रतिनिधित्व करते हैं। आपको अभी पता नहीं है। और जब आप एक व्यवसाय चला रहे हों, तो आपको ज्ञात के लिए अपने अज्ञात व्यापार करना होगा। और जो ज्ञात है वह यह है कि आपने जो पैकेज बनाया है, वह परीक्षण में उत्तीर्ण है, भले ही उसके पास थोड़ा ब्लोट हो।

अन्य संभावित लागतें जैसे कि सूचना विकास प्रक्रिया के आस-पास लीक होती है जिसका उपयोग संभवतः हैक प्राप्त करने के लिए किया जा सकता है, लेकिन आपने इसे परीक्षण प्रक्रिया के माध्यम से बनाया है-जैसा कि, आपको वास्तव में इसके बारे में चिंतित नहीं होना चाहिए।

tl; dr: कोई भी 4% बड़ा डाउनलोड नहीं देख पाएगा, लेकिन यदि आपने आवश्यक फ़ाइलों को हटाकर गेम को तोड़ दिया है तो वे नोटिस करेंगे।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.