डेमो (और असली खेल) संरक्षण


9

कुछ महीनों में मेरी योजना सार्वजनिक (इंटरनेट) पर काम करने की उम्मीद है। बात यह है कि स्क्रीनशॉट और एक ट्रेलर (कहने की सुविधा कार्यक्षमता के अलावा), कैसे एक डेमो बनाने के बारे में ठीक से जाना जाता है जिसे संरक्षित किया जा सकता है?

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

मतलब, मेरी चिंता यह है कि अगर मैं गेम का डेमो संस्करण बनाता हूं, जिसे असली गेम कहा जाता है, लेकिन तब सभी एसेट्स / कॉन्फिग फाइल्स / आदि को हटा दिया जाता है, ताकि इसका पहला डेमो बहुत पहले मैप / लेवल पर हो। वहाँ किसी के खिलाफ की रक्षा करने के लिए एक तरीका है तो बस असली खेल (जब जारी किया गया है) के datapack बाहर डालने और अब अचानक किसी के साथ डेमो EXE असली खेल खेल सकते हैं?

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

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

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

मुझे यकीन नहीं है कि शायद मुझे कुछ याद आ रहा है, मैं सिर्फ यह सुनिश्चित करने की कोशिश कर रहा हूं कि मैं नहीं हूं। क्या यह वास्तव में नीचे उबालता है:

  1. उस पर मूल कुंजी लाइसेंस सुरक्षा थप्पड़।
  2. डेमो से संपत्ति / विन्यास फाइल निकालें
  3. अच्छे के लिए आशा

किसी भी और सभी सलाह की सराहना की है! मैं इस सब के लिए बहुत नया हूँ; -;)

क्षमा करें यदि यह एक डुप्लिकेट है! डेमो कॉन्सेप्ट पर बहुत कुछ नहीं मिला।


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

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

जवाबों:


12

क्या आपने इंजन के डेमो संस्करण में समय सीमा जैसी किसी चीज़ को हार्डकोड करना माना है?

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

जो लोग आपके खेल के लिए भुगतान नहीं करना चाहते हैं वे आपके खेल के लिए भुगतान नहीं करेंगे।

जो लोग आपके खेल के लिए भुगतान करना चाहते हैं वे आपके खेल के लिए भुगतान करेंगे।

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

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


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

2
यहां तक ​​कि अगर वे खेल नहीं खरीदते हैं, तो उनके पास ऐसे दोस्त हो सकते हैं जो खेल को देखते हैं, इसे पसंद करते हैं, और फिर इसे खरीदते हैं। आप पायरेसी को नहीं रोक पाएंगे (बड़े बजट के एंटी पाइरेसी सॉल्यूशंस वास्तव में इसे रोक नहीं पाए हैं), इसलिए मेरा सुझाव है कि आप इसके बारे में ज्यादा चिंता न करें। इसे बहुत आसान बनाने से बचने के लिए , आप डेमो एक्सई में कुछ हार्डकोड कर सकते हैं ताकि यह केवल पहले मैप को पढ़े चाहे कितना भी हो, या @ Amadeus9 जैसी समय सीमा कहा है, लेकिन तब आप केवल सर्वश्रेष्ठ की उम्मीद कर सकते हैं।
ईसाई

धन्यवाद @Christian! अधिक प्रतिक्रिया कि जाने का सही तरीका है! ^ _ ^
Zyaga

@WeakDev, यहाँ सभी अच्छे अंक हैं। जो लोग "अत्यधिक प्रतिबंधात्मक" मार्ग से नीचे चले गए हैं, उन्होंने केवल अपने ग्राहक आधार को चोट पहुंचाई है। समुद्री डाकू 24 घंटे के भीतर सभी डीआरएम को दरकिनार कर देते हैं। खेल की गुणवत्ता और अपने लक्षित दर्शकों पर ध्यान केंद्रित करें, और आप गलत नहीं हो सकते :)
मू-रस

मैं अपने आप को कमजोर नहीं करूंगा, कमजोर देव। सबसे पहले, मुझे लगता है कि आप सब पर एक डेमो की पेशकश करके पायरेसी को कम करने की दिशा में एक बहुत अच्छा कदम उठा रहे हैं। मुझे लगता है कि इंडी गेम पाइरेसी का एक बड़ा कारण इसे खरीदने का संकल्प लेने से पहले इसे आजमाने का अवसर की कमी है। मुझे लगता है कि गैर-डेमो गेम के लिए एक तरह के परीक्षण के रूप में पायरेटेड होना बहुत आम है। यदि व्यक्ति को सकारात्मक अनुभव है, तो खरीदना इस सवाल से बिल्कुल भी बाहर नहीं है।
सीन ओ'होलरेन

5

निश्चित नहीं है कि आपकी टिप्पणी में "शाखा" का क्या मतलब है, लेकिन सशर्त संकलन का उपयोग करके एक ही स्रोत कोड ट्री से दो अलग-अलग निष्पादनयोग्य (डेमो और पूर्ण संस्करण) बनाना संभव है । आप केवल पहले एपिसोड को चलाने की क्षमता को शामिल करने के लिए एक संकलन-समय विकल्प बना सकते हैं। (उदाहरण के लिए, C ++ में, आप #ifdefकेवल पूर्ण संस्करण के लिए इच्छित कोड के आसपास आदेशों का उपयोग कर सकते हैं ।) आपके पास कम से कम निम्नलिखित गेमप्ले प्रभावों का डेमो संस्करण हो सकता है:

  • पहले एपिसोड की संपत्ति को एक ज़िप्फ़िले में संग्रहीत किया जाता है, और डेमो संस्करण शुरू होने से पहले इस ज़िप्फ़िले पर एक डिजिटल हस्ताक्षर के लिए जाँच करता है। मॉड का उपयोग करने के लिए, खिलाड़ियों को पूर्ण संस्करण के लिए भुगतान करना होगा।
  • डेमो संकलित करते समय अपने स्क्रिप्टिंग बाइटकोड में opcodes के एन्कोडिंग को फेरबदल करें।
  • पूरी तरह से एक या अधिक स्क्रिप्ट ऑपकोड के लिए हैंडलर को केवल बाद के एपिसोड में हटा दें। यह बाद के एपिसोड में टुकड़ों को सेट करेगा, भले ही फ़ाइल संशोधन की जांच और ओपकोड एन्कोडिंग पैच हो।

1
डेमो संस्करण में प्रत्येक व्यक्तिगत डेमो स्तर फ़ाइल के MD5 / SHA हैश को हार्डकोड करने के लिए एक और चाल होगी। इसका फायदा यह है कि, जबकि एक ही हैश / सिग्नेचर कुंजी को बदलना हेक्स एडिटर के साथ काफी आसान है, हैश की संख्या को बढ़ाना (बजाने का स्तर बढ़ाने के लिए) कुछ हद तक पेचीदा है, कम से कम अगर अन्य डेटा का बहुत अधिक है उन्हें।
इल्मरी करोनें
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.