लाइव स्टीम उपलब्धि में प्रगति स्टेट को जोड़ने के परिणाम क्या हैं?


10

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

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

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


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

जवाबों:


1

स्टीम एपीआई के बारे में मुझे जो याद है उससे आप स्टीम एपीआई के माध्यम से खिलाड़ियों की प्रगति को मैन्युअल रूप से सेट / रीसेट कर सकते हैं जो आपको कई तरीकों से समस्या को हल करने की अनुमति देता है।

जब तक बैकएंड में उपलब्धि पहचानकर्ता आपके कोड में उन मूल्यों को प्रतिबिंबित करते हैं जो आपको ठीक होना चाहिए और नई उपलब्धि को पुराने स्टेट में पहले से ही प्राप्त प्रगति को प्रतिबिंबित करना चाहिए।

यदि आप पहले से चल रही उपलब्धि को नए प्रकार में माइग्रेट करना चाहते हैं, तो आप "इसे हटा सकते हैं"।

  • पुराना एक "छिपा हुआ" बनाएं और मूल्य को अपडेट करने वाले गेम कोड को हटा दें।
  • स्टीम बैकएंड में नई उपलब्धि बनाएं
  • एक गेम कोड बनाएं जो खिलाड़ियों को पुरानी उपलब्धि से मोल लेगा और उसे नए में सहेज देगा और पुराने मान को 0 पर सेट कर देगा।

मुझे लगता है कि आपको मेरी बात यहां मिल जाएगी। इस दृष्टिकोण में कुछ उतार-चढ़ाव हैं लेकिन यह बहुत सुरक्षित है और संभवतः पॉपअप का कारण होगा। लेकिन मुझे कम या ज्यादा यकीन है कि आप पॉपअप पैदा किए बिना उपलब्धि मूल्य निर्धारित कर सकते हैं।

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

यदि आप जोखिम नहीं लेना चाहते हैं तो थोड़ा प्रयोग करें। यदि आप स्टीम परिनियोजन को गंभीरता से ले रहे हैं, तो आपके पास वैसे भी एक परीक्षण आईडी होना चाहिए।

उम्मीद है की यह मदद करेगा!


-1

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

उम्मीद है की यह मदद करेगा।

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