% AppData% के बजाय% UserProfile% \ Documents में गेम डेटा को सहेजने का एक व्यावहारिक कारण है?


33

मेरे दस्तावेज़ फ़ोल्डर विभिन्न खेलों के सबफ़ोल्डरों से भरे हुए हैं, जिनमें कुछ बहुत ही हालिया AAA शीर्षक शामिल हैं। गेमिंग उद्योग में बिना किसी अनुभव के एक पेशेवर एप्लिकेशन डेवलपर के रूप में यह सिर्फ गलत है, ये फाइलें% APPDATA% या% LOCALAPDATA% से संबंधित हैं।

मेरा सवाल यह है कि क्या इन फाइलों को कुछ विशिष्ट लाभों को प्राप्त करने के लिए% UserProfile% \ Documents में डालने के लिए एक सचेत निर्णय है, या यह केवल Windows XP के दिनों से किए गए विरासत व्यवहार है? या वहाँ भी एक बेहतर कारण है, जैसे स्टीम की आवश्यकता होती है या इसकी सिफारिश करना, या एक लोकप्रिय इंजन डिफ़ॉल्ट रूप से ऐसा कर रहा है?

संबंधित: फाइल / डेटा बचाने के लिए किस निर्देशिका में गेम लिखना है? (व्यर्थ चर्चा से बचने के लिए)



4
@ लॉरेन नहीं, एक सेव गेम एक एप्लिकेशन स्पेसिफिक फाइल / डाटा = APPDATA है। उपयोगकर्ता दस्तावेज़ उपयोगकर्ता द्वारा सचेत रूप से सहेजे गए दस्तावेज़ हैं। इस प्रकार इन स्थानों को परिभाषित किया गया है।
पीटर

1
कोई भी इस तरह से बहस कर सकता है। मुझे दस्तावेज़ों में सहेजने, AppData में कॉन्फ़िगरेशन की अपेक्षा होगी।
लोरेन Pechtel

2
खेल में अभियान "दस्तावेज़ों को सचेत रूप से कैसे बचाया जाता है" नहीं है? और फ़ोटोशॉप दस्तावेज़ (PSD) "एप्लिकेशन विशिष्ट" कैसे नहीं हैं?
डेमियन यरिक

4
इसने मुझे लंबे समय तक पेशाब किया है। दस्तावेज़ फ़ोल्डर स्वचालित रूप से फ़ाइलों को रखने के लिए एक खराब जगह है चाहे वह उनके लिए उपयुक्त स्थान है या नहीं। 'मेरे दस्तावेज़' फ़ोल्डर के लिए आरक्षित किया जाना चाहिए मेरी दस्तावेज है कि मैं स्पष्ट रूप से वहाँ डाल करने के लिए, तो मैं अपने स्वयं के व्यक्तिगत सामान का ट्रैक रख सकते चुना है। मेरे सिस्टम पर आधे सॉफ्टवेयर से संबंधित डेटा के टुकड़े नहीं। कैसी अनगढ़ गड़बड़ है! मैं अब दस्तावेज़ फ़ोल्डर का उपयोग नहीं करता हूं। मैं अपना खुद का उपयोग करता हूं, एक अलग ड्राइव पर तो मेरे पास मेरे दस्तावेज़ लाइब्रेरी में वह निर्देशिका है और डिफ़ॉल्ट को हटा दिया गया है।
फज़ी लॉजिक

जवाबों:


35

नहीं वास्तव में नहीं।

गेम डेवलपर्स पारंपरिक रूप से एक ऑपरेटिंग सिस्टम द्वारा स्थापित सम्मेलनों का सम्मान करने में महान नहीं रहे हैं। हालांकि निष्पक्ष होने के लिए, बहुत से नियमित एप्लिकेशन डेवलपर्स या तो नहीं हैं।

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

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

गेम्स कभी-कभी फाइलों को स्टोर भी करेंगे क्योंकि उन्होंने पुराने ओएस संस्करणों से प्रासंगिक कोड के व्यवहार को नहीं बदला है, जैसा कि आपको संदेह है, या बस इसलिए कि वे इस समस्या के बारे में सोचने के लिए परवाह नहीं करते हैं।

यह मूर्खतापूर्ण और आमतौर पर गलत है, लेकिन यह वही है जो यह है।


2
एक और लाभ यह है कि उपयोगकर्ता% APPDATA% में खुदाई किए बिना दुनिया, बनावट पैक आदि स्थापित कर सकते हैं।
बर्डी हार्बरोव

14
मुझे याद है कि %appdata%जब मुझे यह मिला था तो इसके डेटा को अपने दस्तावेज़ फ़ोल्डर में सहेजना था। जब मैंने इसके फोल्डर में देखा, मेरे प्राणियों को png चित्रों के रूप में सहेजा गया था, जो काफी आश्चर्यजनक था, और मुझे लगता है कि इसे उद्देश्य पर दस्तावेज़ फ़ोल्डर में रखा गया था, ताकि लोग आसानी से अधिक प्राणियों और वाहनों को साझा कर सकें और डाउनलोड कर सकें। उस के साथ कहा, मुझे पता नहीं क्यों खेल है कि केवल एक कच्चे तेल का उपयोग save.datकरने के लिए अपने सामान वहाँ लगाने का फैसला किया है।
गुस्तावो मैकिएल सेप

वहाँ एक अच्छा लिखने के बारे में है कि कैसे बीजाणु को दूर खींच लिया, काश मैं इसे पा सकता।
टैंकरस्मैश

2
किसी ने इस साइट पर इसके बारे में पूछा यहाँ ; जवाबों में से एक आपके द्वारा लिखे जाने के बारे में सोच सकता है (जो यहां स्थित है )।
जोश

6
सैद्धांतिक रूप से, विस्टा या नए पर कार्रवाई का सबसे अच्छा कोर्स SHGetKnownFolderPath(FOLDERID_SavedGames, 0, NULL, &path)डिफ़ॉल्ट रूप से उपयोग करना है %UserProfile%\Saved Games। इस तरह से उपयोगकर्ता अपने सहेजे गए गेम डेटा को आसानी से ढूंढ और बैकअप कर सकते हैं, लेकिन यह रास्ते में नहीं मिलेगा। प्रगति और / या कॉन्फ़िगरेशन (जैसे संकलित शेड्स, प्लेटफ़ॉर्म-अनुकूलित या डाउनलोड की गई संपत्ति, आदि) के अलावा कोई भी डेटा ऐपडेट में जाना चाहिए।
bcrist

18

मेरी डिस्क को देखते हुए, मेरे पास है

  • 1 गेम जो savegames को बचाता है %APPDATA%
  • 1 गेम जो savegames को बचाता है %LOCALAPPDATA%
  • 2 खेल जो "अन्य सामान" में सहेजते हैं %APPDATA%
  • 3 खेल जो "अन्य सामान" में सहेजते हैं %LOCALAPPDATA%
  • 2 गेम जो savegames को बचाते हैं %UserProfile%\Saved Games
  • 21 गेम जो सेवगर्म्स को बचाते हैं और अन्य सामानों को लोड करते हैं %UserProfile%\Documents, गिनती नहीं ...
  • 15 गेम्स जो सेवगर्म्स को बचाते हैं और अन्य सामानों को लोड करते हैं %UserProfile%\Documents\My Games

कि Savegames के लिए %APPDATA%, में %LOCALAPPDATA%, %UserProfile%\Saved Gamesबनाम : 1: 9 का अनुपात है %UserProfile%\Documents\*। मेरे नमूने में, सभी 4 गेम जो savegames को नहीं डालते हैं %UserProfile%\Documents\या %UserProfile%\Documents\My Games\छोटे स्टूडियो से हैं। इसलिए मुझे मल्टी-मिलियन डेवलपमेंट कॉस्ट वाले बड़े स्टूडियोज को अपनी सभी फाइलों को रखने का एक कारण होना चाहिए - जिसमें टेम्प फाइलें भी शामिल हैं %UserProfile%\Documents\*

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

मेरे पास सबसे अच्छा कारण ग्राहक सहायता की लागत को कम करना है । समस्या यह है कि %APPDATA%और %LOCALAPPDATA%छिपे हुए निर्देशिका हैं, और किसी को भी इसके बारे में पता नहीं लगता है %UserProfile%\Saved Games। फ़ाइलों को रखने से Documents, स्टूडियो सहायता कॉल पर पैसे बचा सकते हैं जो पूछते हैं कि कैसे सेव करें, या एक मशीन से दूसरी मशीन में सेव करने के लिए कैसे पलायन करें। ऐसे उपयोगकर्ताओं के उदाहरण जो सेवग्रेम्स को नहीं ढूंढ सके क्योंकि वे %APPDATA% यहां , यहां , यहां और यहां स्थित थे ।

एक और कारण हो सकता है क्योंकि उपयोगकर्ता इसके लिए पूछते हैं , जैसा कि इस उदाहरण में होता है


1
बस एक और डेटा बिंदु जोड़ने के लिए (और क्योंकि मैं उत्सुक था) मेरे पीसी के लिए मायने रखता है 19, 10, 10, 17, 6, 45 और 31 हैं। इसमें 50 गेम सेव गेम्स और / या अन्य डेटा के साथ steam\userdataऔर 5 गेम भी हैं में / डेटा बचाता है %ProgramData%। यह उन सभी खेलों की गणना नहीं करता है जो यह सब सामान अपनी इंस्टॉलेशन डायरेक्टरी में रखते हैं या डेटा स्टोर करने या सहेजने के लिए कोई अन्य स्थान खोजने में कामयाब रहे हैं।
रॉस रिज

@RossRidge धन्यवाद, यह उपयोगी है। अपने नमूने में, क्या आप इंडी गेम्स बनाम बड़े स्टूडियो गेम्स के बारे में कोई प्रवृत्ति देखते हैं?
पीटर

ऐसा लगता है कि इंडी गेम्स के पहले चार श्रेणियों में होने की अधिक संभावना है, यदि केवल इसलिए कि जहां उनका रनटाइम वातावरण सामान डालता है (जैसे। फ्लैश)।
रॉस रिज

4

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

व्यक्तिगत रूप से इस कारण से मैं इसे अपने दस्तावेजों में रखना पसंद करता हूं, हालांकि मुझे यकीन है कि कोई मुझे बताएगा कि इसे मैन्युअल रूप से करने के बजाय बस एक उचित बैकअप सिस्टम प्राप्त करना है।

थोड़ी सी स्थिरता अच्छी होगी, और यहां तक ​​कि अच्छे नेटवर्क में फाइलों को बचाने के लिए स्टीम जैसी सेवाओं के लिए भी अच्छा होगा।


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

मैं किसी भी बहाने का उपयोग उन लोगों को बताने के लिए करूंगा जिन्हें उन्हें बैकअप बनाने की आवश्यकता है, और मुझे स्थिरता भी पसंद है, लेकिन एप्लिकेशन डेटा निर्देशिका, एप्लिकेशन डेटा को संग्रहीत करने के लिए एक 'अजीब जगह' नहीं है, दस्तावेज़ फ़ोल्डर है। फ़ाइलों को संग्रहीत करना जहाँ उनका संबंध नहीं है, मेरे लिए अपने बैकअप को प्रबंधित करना बहुत कठिन है।
थॉमस

0

अपने स्वयं के व्यक्तिगत अनुभव से, मैंने% UserProfile% में सहेजने का विकल्प चुना क्योंकि उपयोगकर्ता ने हमेशा किसी भी अनुमतियों को बदलने के बिना उस तक पहुंच को पढ़ा / लिखा / संशोधित किया था।

यह% APPDATA% के साथ सही नहीं था। विशेष रूप से प्रतिबंधित उपयोगकर्ता खातों का उपयोग करते समय, आपके पास अक्सर% APPDATA% के अंदर अन्य खातों द्वारा बनाई गई फ़ाइलों तक पहुंच नहीं होती है। मुझे लगता है कि एएए शीर्षकों ने हमारे जैसे ही कारण के लिए विकल्प बनाया; हम सिरदर्द नहीं चाहते थे।


3
मुझे पूरा यकीन है कि आप APPDATA (C: \ Users \ Username \ AppData) प्राप्त कर रहे हैं, जो उपयोगकर्ता-योग्य है, PROGRAMDATA (C: \ ProgramData) के साथ मिलाया जाता है, जो अक्सर उपयोगकर्ता-योग्य नहीं होता है। windows.microsoft.com/en-us/windows-8/what-appdata-folder
पैट्रिक एम।

1
% APPDATA% का संपूर्ण बिंदु यह है कि यह उपयोगकर्ता-लेखन योग्य है। यह विशेष रूप से वहाँ है क्योंकि C: \ Program Files उपयोगकर्ता के योग्य नहीं है।
बार्डी हार्बरोव

@PatrickM तुम सही हो, मैं ProgramData के बारे में बात कर रहा था। माफ़ कीजिये। उत्तर को डिलीट करने का सबसे अच्छा तरीका क्या है?
डेविड

0

एक उपयोगकर्ता के रूप में मेरे व्यक्तिगत दृष्टिकोण से, मैं मुख्य रूप से उन डेटा के बीच अंतर करता हूं जो मैं बैकअप चाहता हूं और डेटा जहां मुझे इसकी परवाह नहीं है।

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

%APPDATA%यह थोड़ा बेहतर है, क्योंकि इसमें अस्थायी फ़ाइलें जैसे कैश शामिल नहीं है - दुख की बात यह है कि यह वैसे भी करता है, और बहुत सारी प्रोग्राम सेटिंग्स वास्तव में बैकअप का वारंट नहीं करती हैं।

अंत में, गेम को सहेजना एक प्रकार का डेटा है जिसे मैं एक उपयोगकर्ता के रूप में बातचीत करना चाहता हूं , और इसके लिए %UserProfile%\AppDataखुद को उधार नहीं देता।


-3

क्यों / "गेम इंस्टॉलेशन फोल्डर" / savegame का उपयोग नहीं किया गया / जैसा कि पुराने गेमों ने किया था? मुझे कभी समझ नहीं आया कि सेवडैम को छिपे हुए फ़ोल्डर में या यहां तक ​​कि सिस्टम ड्राइव में मेरे दस्तावेज़ों में क्यों रखा जाए?

पुराने दिनों में आप हमेशा जानते थे कि savegames कहाँ थी।


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

1
"game installation folder"है %ProgramFiles%\<gamename>%ProgramFiles%प्रोग्राम की स्थापना / स्थापना के दौरान ही संशोधित किया जाना है। चूंकि उस निर्देशिका को लिखने वाले विंडोज एक्सपी / विस्टा एप्लिकेशन को प्रशासक के रूप में चलाने की आवश्यकता होती है, इसलिए यह कहना मुश्किल है कि, एक वायरस को वर्ड .1 के एक संक्रमित संस्करण के साथ बदलने के लिए। एक और कारण यह है कि Microsoft चाहता था कि कई उपयोगकर्ता अपनी व्यक्तिगत फ़ाइलों को साझा किए बिना समान कार्यक्रमों का उपयोग करने में सक्षम हों, इस मामले में savegames। इन मुद्दों को संबोधित करने के अन्य / बेहतर तरीके हैं, लेकिन उन्हें उस समय नहीं चुना गया था।
पीटर
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.