खेळ कसे तयार केले जातात. प्रोजेक्ट "गेम मेकर वापरून संगणक गेम तयार करणे"

क्वचितच अशी एखादी व्यक्ती असेल ज्याने आपल्या आयुष्यात किमान एकदा तरी संगणक गेम खेळला नसेल, लॅपटॉप किंवा मोबाइल डिव्हाइसवर काहीही फरक पडत नाही. बरं, तुमच्यापैकी कोण, आमच्या ब्लॉगच्या प्रिय वाचकाने, तुमचा स्वतःचा गेम तयार करण्याचे स्वप्न पाहिले नाही आणि, जर तुमच्या प्रकल्पामुळे लक्षाधीश बनले नाही, तर किमान तुमच्या मित्रांमध्ये प्रसिद्ध व्हा?

परंतु विशेष ज्ञानाशिवाय आणि प्रोग्रामिंगची मूलभूत माहिती न घेता, सुरवातीपासून Android वर गेम कसा तयार करायचा? असे दिसून आले की गेम डेव्हलपर म्हणून स्वत: चा प्रयत्न करणे इतके अवघड काम नाही. हा आमच्या आजच्या साहित्याचा विषय असेल.

  1. कल्पना किंवा स्क्रिप्ट.
  2. इच्छा आणि संयम.
  3. गेम डिझायनर.

आणि जर यशाच्या पहिल्या दोन घटकांसह सर्व काही कमी-अधिक स्पष्ट असेल, तर आपल्याला तिसऱ्या घटकावर अधिक तपशीलवार विचार करणे आवश्यक आहे.

गेम बिल्डर म्हणजे काय

आम्ही अशा प्रोग्रामबद्दल बोलत आहोत जो गेम डेव्हलपमेंटला लक्षणीयरीत्या सुलभ करतो, ज्यांच्याकडे प्रोग्रामिंग कौशल्ये नाहीत अशा लोकांसाठी ते प्रवेशयोग्य बनवते. गेम बिल्डर एकात्मिक विकास वातावरण, गेम इंजिन आणि लेव्हल एडिटर एकत्र करतो जो व्हिज्युअल एडिटर ( WYSIWYG- इंग्रजी "तुम्ही जे पाहता तेच तुम्हाला मिळते" चे संक्षिप्त रूप).

काही डिझाइनर शैलीनुसार मर्यादित असू शकतात (उदाहरणार्थ, RPG, आर्केड, शोध). इतर, वेगवेगळ्या शैलीतील गेम डिझाइन करण्याची संधी प्रदान करताना, त्याच वेळी नवशिक्या विकसकाची कल्पनाशक्ती 2D गेमवर मर्यादित करते.

आधीच जे लिहिले गेले आहे ते वाचल्यानंतरही, हे स्पष्ट होते की नवशिक्या विकसकासाठी जो Android OS सह कोणत्याही ऑपरेटिंग सिस्टमसाठी गेम लिहिण्याचा निर्णय घेतो, योग्य डिझाइनर निवडणे हे मुख्य कार्य आहे, कारण भविष्यातील प्रकल्पाचे भवितव्य अवलंबून असते. या साधनाची कार्यक्षमता आणि क्षमतांवर.

योग्य डिझायनर कसा निवडायचा

तुम्हाला तुमच्या स्वतःच्या प्रोग्रामिंग ज्ञानाच्या पातळीचे मूल्यांकन करून सुरुवात करणे आवश्यक आहे. जर ते शून्याकडे झुकत असेल किंवा पूर्णपणे अनुपस्थित असेल तर सोप्या पर्यायांचा प्रयत्न करणे चांगले आहे. आणि जरी आपल्याकडे इंग्रजी भाषेचे आवश्यक ज्ञान नसले तरीही, या प्रकरणात देखील आपण आपल्यास अनुकूल असा प्रोग्राम शोधू शकता.

आणि डिझायनर निवडताना दुसरा महत्त्वाचा मुद्दा म्हणजे कार्यक्षमता. येथे तुम्हाला तुमच्या प्रोजेक्टच्या परिस्थितीचे अगदी अचूकपणे विश्लेषण करणे आवश्यक आहे, कारण गेम जितका क्लिष्ट असेल तितका तो तयार करण्यासाठी तुम्हाला वेगवेगळ्या टूल्सची आवश्यकता असेल आणि त्यानुसार तुम्हाला अधिक शक्तिशाली डिझायनरची आवश्यकता असेल.

तुम्हाला तुमची निवड करण्यात मदत करण्यासाठी, खाली आम्ही तुमच्या लक्ष वेधून सर्वोत्तम डिझाइन प्रोग्राम सादर करू, जे सर्वसाधारणपणे, फोरम किंवा विशेष साइट्समध्ये पूर्णपणे शोध घेतल्यानंतर, तुम्ही स्वतःसाठी काहीतरी वेगळे कराल, ही शक्यता वगळत नाही. कार्यक्रमांच्या या श्रेणीची श्रेणी बरीच विस्तृत आहे.

शीर्ष 5 सर्वोत्तम गेम बिल्डर्स

बांधणे २

गेम डिझायनर्सच्या रेटिंगमध्ये हा अनुप्रयोग सातत्याने प्रथम क्रमांकावर आहे. Construct 2 वापरून, तुम्ही Android सह विविध प्लॅटफॉर्मसाठी जवळजवळ कोणत्याही शैलीचे द्विमितीय गेम तयार करू शकता, तसेच HTML5 ला सपोर्ट करणाऱ्या ब्राउझरच्या उद्देशाने ॲनिमेटेड गेम तयार करू शकता.

सहाय्यक साधनांची प्रचंड संख्या लक्षात घेऊन, अगदी नवशिक्या वापरकर्ते सहजपणे प्रोग्राममध्ये प्रभुत्व मिळवू शकतात.

कन्स्ट्रक्ट 2 सह काम करण्यात निपुणता प्राप्त करण्यासाठी, परवाना खरेदी करण्याची आवश्यकता नाही; विनामूल्य विनामूल्य आवृत्ती पुरेशी साधने आणि काही प्लॅटफॉर्मवर तयार प्रकल्प निर्यात करण्याची क्षमता प्रदान करते. तथापि, मोबाइल प्लॅटफॉर्मसाठी तयार उत्पादनाचे कोडिंग करणे आणि कार्यक्षमतेच्या संपूर्ण श्रेणीमध्ये प्रवेश $129 साठी वैयक्तिक परवान्याद्वारे प्रदान केला जाईल. जर तुमचे गेम तयार करण्याचे कौशल्य शिखरावर पोहोचले असेल आणि तुम्हाला तुमच्या प्रोजेक्टमधून $5 हजारांपेक्षा जास्त उत्पन्न मिळण्यास सुरुवात झाली असेल, तर तुम्हाला बिझनेस पर्यायाचा शोध घ्यावा लागेल, ज्याची किंमत $429 असेल.

आता, Construct 2 वापरून गेमिंग ऍप्लिकेशन्स तयार करण्यावर काही व्यावहारिक व्हिडिओ ट्यूटोरियल पहा:

क्लिकटीम फ्यूजन

क्लिकटीम फ्यूजन हे उत्कृष्ट पूर्ण विकसित गेम डिझायनरचे आणखी एक उदाहरण आहे जे अगदी नवशिक्याला पूर्ण गेम तयार करण्यात मदत करते. प्रोग्राम HTML5 स्वरूपात तयार केलेले अनुप्रयोग पूर्णपणे विनामूल्य निर्यात करण्याची क्षमता प्रदान करतो, याचा अर्थ ब्राउझर गेम प्रकाशित करणे शक्य होईल आणि त्याव्यतिरिक्त, त्यांना विविध मोबाइल मार्केटमध्ये प्रकाशनासाठी रूपांतरित करणे शक्य होईल, उदाहरणार्थ, Google Play.

मुख्य वैशिष्ट्यांमध्ये इंटरफेसची साधेपणा, शेडर इफेक्ट आणि हार्डवेअर प्रवेगसाठी समर्थन, पूर्ण इव्हेंट संपादकाची उपस्थिती आणि Android सह विविध प्लॅटफॉर्मसह सुसंगत स्वरूपांमध्ये प्रकल्प जतन करणे समाविष्ट आहे.

प्रोग्रामची सशुल्क विकसक आवृत्ती रशियन फेडरेशनच्या रहिवाशांसाठी उपलब्ध नाही, परंतु त्याची परवानाकृत डिस्क त्याच Amazon वरून ऑर्डर केली जाऊ शकते, ज्यामुळे तुमचे वैयक्तिक बजेट सरासरी $100 कमी होते. तृतीय-पक्ष Russifier द्वारे मेनू Russify करणे शक्य आहे.

अनुप्रयोगासह कसे कार्य करावे, एक विशेष व्हिडिओ कोर्स पहा:

स्टेंसिल

Stencyl हे आणखी एक उत्तम साधन आहे जे तुम्हाला कोडच्या विशेष ज्ञानाशिवाय साधे 2D संगणक गेम विकसित करण्यास तसेच सर्व लोकप्रिय प्लॅटफॉर्मसाठी प्रोग्रामिंग भाषा विकसित करण्यास अनुमती देते. येथे आपल्याला परिस्थिती आणि आकृत्यांसह कार्य करावे लागेल, जे ब्लॉक्सच्या स्वरूपात सादर केले जातात आणि आपण माउससह वस्तू किंवा वैशिष्ट्ये ड्रॅग करू शकता, जे खूप सोयीचे आहे.

प्रोग्राम डेव्हलपर तुमचा स्वतःचा कोड ब्लॉक्समध्ये लिहिण्याची संधी देखील देतो, परंतु यासाठी नक्कीच प्रोग्रामिंग ज्ञान आवश्यक असेल.

उत्कृष्ट ग्राफिक एडिटर सीन डिझायनरची उपस्थिती वापरकर्त्याला त्यांच्या कल्पनाशक्तीचा वापर गेमचे जग काढण्यासाठी करण्यास अनुमती देते.

फंक्शन्सचा इष्टतम संच विविध शैलींचे उच्च-गुणवत्तेचे गेम तयार करण्यात मदत करेल, परंतु Stencyl चे सर्वात टाइल केलेले ग्राफिक्स "शूटर" किंवा "साहसी खेळ" साठी संबंधित असतील.

कार्यक्रम विनामूल्य आहे, परंतु डेस्कटॉप फॉरमॅटवर निर्यात करण्यासाठी सदस्यता आवश्यक आहे ज्याची किंमत प्रति वर्ष $99 आहे आणि मोबाइल गेमसाठी परवान्याची किंमत प्रति वर्ष $199 आहे.

स्टेंसिल सोबत काम करण्याचा क्रॅश कोर्स पाहूया:

गेम मेकर

प्रोग्राम सशुल्क आणि विनामूल्य आवृत्त्यांमध्ये अस्तित्वात आहे. बजेट पर्याय तुम्हाला डेस्कटॉपसाठी उच्च-गुणवत्तेचे 2D गेम तयार करण्याची परवानगी देतो. सशुल्क आवृत्ती विंडोज, iOS आणि Android साठी बऱ्यापैकी अत्याधुनिक 3D गेम लिहिणे शक्य करते. आत्तासाठी, आम्हाला गेमिंग उद्योगात स्वत: ला कसे ओळखायचे हे शिकण्याच्या विनामूल्य संधीमध्ये स्वारस्य आहे आणि गेम मेकर हा एक पर्याय आहे जो तुम्हाला शैली निवडण्याच्या निर्बंधांशिवाय तुमच्या स्वतःच्या परिस्थितीसह गेम तयार करण्यास अनुमती देईल.

कार्यक्रम स्थाने, वस्तू, तसेच वर्ण, ध्वनी आणि पार्श्वभूमीसाठी तयार टेम्पलेट्सची निवड ऑफर करतो. म्हणून, सर्व सर्जनशील कार्य निवडलेल्या घटकांना कार्यक्षेत्रात ड्रॅग करणे आणि परिस्थिती निवडणे - स्थान आणि इतर वस्तूंसह परस्परसंवाद यावर खाली येते. प्रोग्रामिंग भाषेचे ज्ञान आवश्यक नसले तरी, जे वापरकर्ते "जाणते" आहेत ते GML वापरण्यास सक्षम असतील, काहीसे JS आणि C++ सारखेच.

गेम मेकर इंग्रजीमध्ये वितरीत केला जातो, म्हणून ज्यांना ते चांगले बोलत नाही त्यांना स्थानिकीकरण फाइल डाउनलोड करण्याची आवश्यकता असेल.

या प्रोग्राममध्ये स्वारस्य असलेल्यांसाठी, आम्ही प्रशिक्षण व्हिडिओ पाहण्याचा सल्ला देतो:

युनिटी 3D

उच्च-गुणवत्तेचा 3D प्रकल्प तयार करण्यासाठी युनिटी 3D कदाचित सर्वोत्तम आहे. कार्यक्रम पूर्णपणे तयार मॉडेल, तसेच पोत आणि स्क्रिप्ट समाकलित करतो. याव्यतिरिक्त, आपली स्वतःची सामग्री - ध्वनी, प्रतिमा आणि व्हिडिओ जोडणे शक्य आहे.

युनिटीसह तयार केलेले गेम iOS किंवा Android वरील मोबाइल उपकरणांपासून ते SMART TV टेलिव्हिजन रिसीव्हर्सपर्यंत सर्व लोकप्रिय प्लॅटफॉर्मशी सुसंगत आहेत.

उच्च संकलन गती, वापरण्यास सोपा इंटरफेस आणि लवचिक आणि मल्टीफंक्शनल संपादक द्वारे प्रोग्रामचे वैशिष्ट्य आहे.

सर्व गेम क्रिया आणि वर्ण वर्तन उच्च-गुणवत्तेच्या PhysX भौतिक कोरवर आधारित आहेत. या गेम कन्स्ट्रक्टरमध्ये तयार केलेला प्रत्येक ऑब्जेक्ट इव्हेंट आणि स्क्रिप्टच्या विशिष्ट संयोजनाचे प्रतिनिधित्व करतो जे विकासकाद्वारे स्वतंत्रपणे नियंत्रित केले जातात.

हे समजून घेणे महत्त्वाचे आहे की जरी हा प्रोग्राम नवशिक्यांसाठी डिझाइन केलेला गेम डिझायनर म्हणून स्थित असला तरी, या अनुप्रयोगासह कार्य करण्यासाठी विशिष्ट स्तरावरील ज्ञान आवश्यक असेल. बरं, 3D ग्राफिक्ससह काम करण्यासाठी हार्डवेअर व्हिडिओ कार्डसह सुसज्ज आधुनिक संगणक असणे आवश्यक आहे.

युनिटी 3D वापरून गेम तयार करण्याच्या वर्गांची मालिका:

त्यामुळे, तुम्ही तुमचा स्वतःचा अनोखा गेम तयार करण्याचे तुमचे स्वप्न साकार करण्याचे ठरवले आहे. यास मदत होईल अशी माहिती देण्याचा आम्ही प्रयत्न केला आहे. कृपया लक्षात घ्या की जर तुम्ही सादर केलेली सामग्री काळजीपूर्वक वाचली असेल आणि प्रत्येक प्रोग्रामसाठी व्हिडिओ ट्युटोरियल्स अगदी थोडक्यात पाहिल्या असतील, तर तुम्हाला कदाचित लक्षात आले असेल की प्रत्येक गेम डिझायनरसह कार्य करणे समान तत्त्वावर आधारित आहे. म्हणूनच, हे शक्य आहे की आपण आपल्या गरजांसाठी विशेषतः योग्य काहीतरी निवडण्यास सक्षम असाल. आम्ही किमान आशा करतो की या टप्प्यावर Android वर गेम कसा बनवायचा हा प्रश्न बंद झाला आहे. शुभेच्छा!

भविष्यातील गेम विकसकांनी काय विचारात घेतले पाहिजे? मी कोणती भाषा शिकायला सुरुवात करावी? कशासाठी प्रयत्न करावेत? कोणाकडे पहावे? आणि प्रथम काय करणे आवश्यक आहे?

बहुतेक रॉक संगीत चाहते लवकर किंवा नंतर गिटार उचलतात. क्रीडा चाहते फुटबॉल मैदान, बास्केटबॉल कोर्ट किंवा टेनिस कोर्टवर जाण्याचे उत्कटतेने स्वप्न पाहतात. बरं, ज्यांनी GTA मध्ये शेकडो चोरी केल्या आहेत, काउंटर-स्ट्राइक खेळत संगणक क्लबमध्ये डझनभर तास घालवले आहेत किंवा MMORPGs मध्ये लक्षणीय यश मिळवले आहे ते कदाचित गेम डेव्हलपर म्हणून करिअरबद्दल विचार करत असतील.

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

कशासाठी प्रयत्न करावेत?

स्टोअरमध्ये जाण्यापूर्वी, आपण खरेदीची यादी तयार करा (किमान आपल्या डोक्यात). शहराच्या दुसऱ्या टोकाला जाण्यापूर्वी तुमच्या मार्गाची योजना करा. बरं, गेम कसा विकसित करायचा हे शिकण्यापूर्वी, स्वतःला विचारण्याचा सल्ला दिला जातो: तुम्हाला नक्की काय करायचे आहे? मोबाईल ऍप्लिकेशन किंवा ब्राउझर गेम तयार करायचे? मोठ्या कंपनीत काम करा की छोट्या कंपनीत? मी व्यावसायिकपणे खेळ विकसित करावे की माझा मोकळा वेळ त्यासाठी घालवावा? आणि जर पहिले असेल, तर तुम्हाला कशात अधिक स्वारस्य आहे: इंटरफेस तयार करणे, गेमप्ले पॉलिश करणे किंवा स्क्रिप्ट लिहिणे?

योग्य ध्येय सेटिंग खूप वेळ आणि मेहनत वाचविण्यात मदत करेल. याव्यतिरिक्त, हे आपल्याला सर्वात लहान मार्गाने आपल्या अंतिम गंतव्यस्थानापर्यंत पोहोचण्यास अनुमती देईल. रस्ता सोडण्याचा किंवा दलदलीत पडण्याचा धोका न घेता.

मी कोणती भाषा शिकावी?

याव्यतिरिक्त, ज्वलंत प्रश्नाचे उत्तर ध्येयावर अवलंबून आहे: आपण कोणत्या प्रोग्रामिंग भाषेपासून सुरुवात करावी?

अशा प्रकारे, Minecraft सारख्या गेमच्या भविष्यातील विकसकांनी आणि Android साठी मोबाइल ऍप्लिकेशन्सने Java कडे लक्ष दिले पाहिजे. सुरुवातीला, आम्ही एक गहन अभ्यासक्रम घेण्याची शिफारस करतो, विशेषत: ते विनामूल्य असल्याने. आयओएसकडे पाहणाऱ्यांसाठी - ऑब्जेक्टिव्ह-सी. ब्राउझर गेमसाठी, कधीकधी रुबी-ऑन-रेल्सचे ज्ञान पुरेसे असते. अगदी लहान आणि साध्या गोष्टींसाठी, कधीकधी HTML पुरेसे असते. फ्लॅश गेम निर्मिती ActionScript वापरते आणि कोणत्याही जटिलतेच्या स्क्रिप्ट लिहिण्यासाठी तुम्हाला JavaScript किंवा कदाचित कमी सामान्य लुआची आवश्यकता असेल. लहान कन्सोल गेम्स तयार करण्यासाठी, C# चे ज्ञान आवश्यक आहे.

सर्वात मोठ्या-बजेट गेम्ससाठी (तथाकथित एएए क्लास), त्यापैकी बहुतेक त्यांच्या स्वत: च्या इंजिनसह सुसज्ज आहेत किंवा त्यांच्या सहकाऱ्यांकडून घेतलेले आहेत. तथापि, बहुतेकदा, संपूर्ण "इंजिन" किंवा त्यातील बहुतेक C++ मध्ये लिहिलेले असतात. हीच भाषा अनेक प्रसिद्ध "खेळणी" तयार करण्यासाठी वापरली गेली - डूम 3 आणि कॉल ऑफ ड्यूटीपासून ते फिफा आणि द सिम्सपर्यंत. क्वेक सारखे क्लासिक्स सी मध्ये लिहिले गेले होते.

तथापि, C++ वर प्रभुत्व मिळवण्यात एक पकड आहे - अत्यधिक जटिलता. इतर भाषा जाणून घेतल्याशिवाय C++ घेणे म्हणजे रेखीय समीकरणांसह गणिताचा अभ्यास सुरू करण्यासारखेच आहे असे ते म्हणतात ते काही कारण नाही.

एक भाषा पुरेशी आहे का?

प्रोग्रामिंगच्या सौंदर्यांपैकी एक म्हणजे सतत आत्म-विकासाची संधी. खेळांच्या (विशेषत: मोठ्या) विकासामध्ये, शक्य तितक्या भाषा शिकण्यासह आत्म-सुधारणा ही एक लहर नाही, परंतु एक अत्यावश्यक गरज आहे. अशा प्रकारे, गेमिंग उद्योगातील दिग्गजांच्या फायद्यासाठी काम करणा-या अनुभवी विकसकांना अनेकदा 7-8 भाषांमध्ये वैकल्पिकरित्या लिहिण्याची गरज भासते. त्याच वेळी, वरील भाषांव्यतिरिक्त, त्यांना शिकावे लागेल, उदाहरणार्थ, पायथन किंवा अगदी एसक्यूएल (जे तुम्हाला समजते, डेटाबेस तयार करण्यासाठी).

म्हणूनच, जर तुम्ही मोठ्या खेळांच्या निर्मितीसह तुमचा लॉट टाकण्याचा निर्णय घेतला तर, "पॉलीग्लॉट" बनण्यासाठी तयार रहा. याव्यतिरिक्त, आपण जितक्या जास्त भाषांवर प्रभुत्व मिळवाल, तितकी अधिक मनोरंजक आणि विविध कार्ये आपल्याला दिली जातील. आणि, अर्थातच, तुमच्या स्वप्नातील नोकरी मिळण्याची शक्यता लक्षणीय वाढेल.

कुठे सुरू करायचे?

आपण जगभरात प्रवास करण्यापूर्वी, आपल्याला चालणे शिकणे आवश्यक आहे. बरं, एखाद्या गंभीर गेम प्रोजेक्टपूर्वी, आपल्याला कमी महत्त्वाच्या गोष्टीवर आपला हात वापरण्याची आवश्यकता आहे.

जवळजवळ सर्व अनुभवी विकासक, क्रेडेन्शियल्स आणि प्रतिभेची पर्वा न करता, लहान ऍप्लिकेशन्ससह प्रारंभ करतात: बोर्ड गेम, सुप्रसिद्ध "खेळणी", साधे "फ्लॅश ड्राइव्हस्". मग त्यांनी E3 सारख्या मोठ्या प्रदर्शनांचा विचार केला नाही, परंतु अनमोल अनुभव जमा केला. त्यांचा आदर्श का पाळत नाही? अत्यंत क्लिष्ट कोड लिहिणे आवश्यक नाही. पदार्पणासाठी, गेम तयार करण्यासाठी विशेष प्रोग्राम वापरणे पुरेसे आहे (उदाहरणार्थ, गेम मेकर). अखेरीस, अगदी साध्या साधनांसह आपण आपले जीवन खूप सोपे कराल. प्रथम, तुम्हाला जवळजवळ कोणत्याही गेमिंग ऍप्लिकेशनचे तर्कशास्त्र आणि रचना सूक्ष्मात समजेल. दुसरे म्हणजे, तुम्हाला अडथळे येतील जे गंभीर प्रकल्पांच्या संक्रमणादरम्यान बरे होतील. शेवटी, तिसरे म्हणजे, तुमचा पोर्टफोलिओ समृद्ध करा. शेवटी, अगदी साध्या "खेळण्याला" संकल्पना आणण्यासाठी, कोड लिहिण्यासाठी आणि बगचे निराकरण करण्यासाठी बराच वेळ, संयम आणि सर्जनशीलता आवश्यक आहे. याव्यतिरिक्त, हे दर्शविते की आपण केवळ कोरड्या सिद्धांतामध्येच नव्हे तर गेम उत्पादनाशी परिचित आहात.

मार्गदर्शक तत्त्व म्हणून काय घ्यावे?

जो कोणी लेखक होण्याचे स्वप्न पाहतो तो एक शब्द लिहिण्यापूर्वी शेकडो पुस्तके वाचतो. पियानो मास्टर्सना स्ट्रॉस, चोपिन आणि बीथोव्हेनची उत्कृष्ट कामे मनापासून माहित आहेत. प्रसिद्ध कलाकारांनी मोठ्या प्रदर्शनांपूर्वी कला इतिहास लक्षात ठेवला.

हेच तत्व गेम डेव्हलपमेंटला लागू होते. आपण व्हॅक्यूममध्ये विकसित होऊ शकत नाही. म्हणून, खेळा, मास्टर्सकडून प्रेरित व्हा आणि स्पंजप्रमाणे, सर्वोत्तम शोषून घ्या. त्याच वेळी, अनुप्रयोगांकडे "गेमर" च्या नजरेने नव्हे तर विकसकाच्या डोळ्यांद्वारे पाहण्याचा प्रयत्न करा. दुसऱ्या शब्दांत: खेळ हस्तांतरित करा. या क्षणी “बॉट” डावीकडे का धावला आणि मागे का नाही याचा विचार करा? स्पोर्ट्स सिम्युलेटरमधील शॉटची ताकद आणि अचूकता कोणते घटक बदलतात? जेव्हा एखादे पात्र दीर्घकाळ चालते तेव्हा "थकवा प्रभाव" कसा तयार करायचा? जेव्हा पाऊस पडतो तेव्हा खेळाडूला थेंबांचा आवाज ऐकू येतो आणि डुकराचा किंचाळत नाही याची खात्री कशी करावी? सर्वसाधारणपणे, बिंदूकडे जा. गेम दरम्यान तुम्हाला आढळणारे अल्गोरिदम तुमच्या डोक्यात पुन्हा तयार करण्याचा प्रयत्न करा. माझ्यावर विश्वास ठेवा, असा रचनात्मक दृष्टीकोन तुम्हाला तुमच्या भविष्यातील कठीण, परंतु गेम डेव्हलपर म्हणून अत्यंत रोमांचक करिअरमध्ये मदत करेल.

स्वायत्त शैक्षणिक संस्था

उच्च व्यावसायिक शिक्षण

"लेनिनग्राड स्टेट युनिव्हर्सिटीचे नाव ए.एस. पुष्किन"

बोक्सीटोगोर्स्क संस्था (शाखा)

कॉलेज

यावर प्रकल्प:

« संगणकीय खेळ»

द्वारे पूर्ण: विद्यार्थी 3 आणि गट

विशेष 230701

अप्लाइड इन्फॉर्मेटिक्स

उद्योगानुसार /__________/ N.A. ग्लॅडिशेव्ह

तपासले:

मॉड्यूल शिक्षक

PM.04. डिझाइन प्रदान करणे

क्रियाकलाप /___________/ आयव्ही डोब्र्याकोवा

बोक्सीटोगोर्स्क, 2015सामग्री

आयस्टेज

विषय निवडणे आणि समस्या सांगणे

स्टेज 1. विषय निवडणे

IIस्टेज

ऑब्जेक्ट विश्लेषण

IIIस्टेज

परिस्थिती विकास आणि मॉडेल संश्लेषण

IVस्टेज

तंत्रज्ञान आणि माहिती सादरीकरणाचे स्वरूप

व्हीस्टेज

संगणक मॉडेल संश्लेषण

स्टेज 2. मल्टीमीडिया उत्पादनाची निर्मिती

सहावास्टेज

प्रकल्पासोबत काम करत आहे

अर्ज

आय स्टेज. विषय निवडणे आणि समस्या सांगणे

स्टेज 1. विषय निवडणे

संगणकीकरणाचा आजचा वेग इतर सर्व उद्योगांच्या विकासाच्या गतीपेक्षा जास्त आहे. आज, एकही मध्यम आकाराची कंपनी, मोठ्या कंपन्यांचा उल्लेख करू नका, संगणक आणि संगणक नेटवर्कशिवाय करू शकत नाही. एक आधुनिक व्यक्ती संगणकाशी सतत संवाद साधते - कामावर, घरी, कारमध्ये आणि अगदी विमानातही. संगणक वेगाने मानवी जीवनात स्वतःचा परिचय करून देत आहेत, आपल्या चेतनेमध्ये त्यांचे स्थान घेत आहेत. संगणकाच्या आगमनाबरोबरच, संगणक गेम दिसू लागले, ज्याला त्वरित बरेच चाहते सापडले. हे खेळ लहानपणापासूनच तरुण पिढीला सोबत घेत आहेत, ज्यामुळे, एकीकडे, मस्क्यूकोस्केलेटल प्रणाली आणि स्नायूंचा विकास मंदावतो आणि अगदी शोष होतो आणि दुसरीकडे, एखाद्या व्यक्तीची बुद्धी, तार्किक विचार आणि कल्पनाशक्ती त्वरीत विकसित होते. . संगणक प्लेयरला एका आभासी जगातून दुस-या जगात जाण्याची सवय होते, अपरिचित परिस्थिती त्वरीत समजते आणि त्यांच्याशी जुळवून घेते. 21 व्या शतकातील वेगाने बदलत असलेल्या समाजात, विकसित बौद्धिक लवचिकता नवीन, अनपेक्षित वास्तवांशी जुळवून घेणे सुनिश्चित करेल. संगणकीय खेळ अशा प्रकारे उद्योगोत्तर समाजात तरुणांचे समाजीकरण करण्याचे कार्य करतात.

आज, चांगले ग्राफिक्स आणि ध्वनी डिझाइनसह असे गेम आहेत जे त्यांच्या प्रशंसनीयतेमध्ये उल्लेखनीय आहेत जे जवळजवळ पूर्णपणे जीवनाचे अनुकरण करतात. अत्यंत वैविध्यपूर्ण स्वरूपाचे अधिकाधिक नवीन गेम प्रदान करणाऱ्या मोठ्या संख्येने कंपन्या आहेत आणि सतत उदयास येत आहेत. त्यांचे वर्गीकरण समजून घेणे आणि त्याहूनही अधिक खेळांसाठीचे आधुनिक मूल्य धोरण समजून घेणे खूप कठीण आहे. यामुळे मला हा प्रकल्प विकसित करण्यास प्रवृत्त केले.

माझ्या प्रकल्पाची उद्दिष्टे:

    संगणक गेमच्या उत्पत्तीच्या इतिहासाचा अभ्यास करा;

    संगणक गेमच्या वर्गीकरणाशी परिचित व्हा;

    रणनीती शैलीतील खेळांशी परिचित व्हा;

स्टेज 2. समस्येचे विधान

ॲप्स वापरणेमायक्रोसॉफ्टकार्यालय“संगणक गेम्स” या विषयावर मल्टीमीडिया प्रकल्प विकसित करा. प्रकल्पासाठी एक सादरीकरण तयार करणे आवश्यक आहे जे संगणक गेमच्या उदयाचा इतिहास, त्यांचे वर्गीकरण आणि "रणनीती" शैलीतील गेमबद्दल तपशीलवार सांगेल. स्क्रीनसेव्हरवरून, डेटाबेसला कॉल करा, जे विविध शैलींच्या संगणक गेमसाठी किंमत धोरण उघड करेल. या प्रकल्पामध्ये संगणकीय खेळांच्या विकासाची व्याख्या, वर्गीकरण आणि इतिहास असलेली पुस्तिका समाविष्ट असेल.

II स्टेज. ऑब्जेक्ट विश्लेषण

कार्याच्या आधारे, चार वस्तू ओळखल्या जाऊ शकतात - स्क्रीनसेव्हर इनमायक्रोसॉफ्ट पॉवरपॉइंट, मध्ये सादरीकरणमायक्रोसॉफ्ट पॉवरपॉइंट, Microsoft Publisher मधील पुस्तिका आणि डेटाबेस मध्येप्रवेश. या वस्तू एकमेकांशी जोडल्या गेल्या पाहिजेत. अनुप्रयोगांना थेट कॉल करणे टाळण्यासाठी, आम्ही अनुप्रयोगावर प्रकल्प स्थापित करूमायक्रोसॉफ्ट पॉवरपॉइंट .

दुवा म्हणून ज्याद्वारे MicrosoftPowerPoint मधील एक सादरीकरण, M मधील एक पुस्तिका कॉल केली जाईलicrosoftमध्ये प्रकाशक आणि डेटाबेसप्रवेशस्प्लॅश ऑब्जेक्ट निवडा. येथूनच प्रकल्पाची सुरुवात होणार आहे.

निवडलेल्या वस्तूंचे वैशिष्ट्य असलेल्या गुणधर्मांचा विचार करूया.

स्क्रीनसेव्हर

दस्तऐवज

सादरीकरण

पुस्तिका

डेटाबेस

आकृती क्रं 1. "संगणक खेळ" प्रकल्प मॉडेलचा आकृती

तक्ता 1. "संगणक खेळ" प्रकल्पाच्या वस्तू.

स्क्रीनसेव्हर ऑब्जेक्ट

डेटाबेस ऑब्जेक्ट

सादरीकरण ऑब्जेक्ट

ऑब्जेक्ट बुकलेट

ऑब्जेक्ट मजकूर दस्तऐवज

1.प्रकल्पाबद्दल सामान्य माहिती समाविष्ट आहे.

2. सादरीकरण कॉल.

3. डेटाबेस कॉल करते.

4.पुस्तिका.

5. मजकूर दस्तऐवज.

1. कॉल अप माहिती: खेळाच्या शैलीबद्दल, विविध वयोगटातील खेळाडूंमध्ये लोकप्रियता,

संगणक गेमची किंमत.

1.संगणक गेमचे वर्गीकरण सादर करते.

2. "रणनीती" शैलीतील तपशीलवार गेममध्ये प्रात्यक्षिक.

1. कॉम्प्युटर गेम्सबद्दल संपूर्ण माहिती असलेली एक पुस्तिका सादर करते.

1. मल्टीमीडिया प्रकल्पाच्या 6 टप्प्यांचे प्रतिनिधित्व करते.

स्प्लॅश स्क्रीन ही एक साधी वस्तू आहे जिथून इतर वस्तूंमध्ये संक्रमण केले जाते.

प्रेझेंटेशन ऑब्जेक्टचा डायग्राम आकृती 2 मध्ये सादर केला आहे. या डायग्राममध्ये निवडलेल्या ऑब्जेक्ट्सचे गुणधर्म तक्ता 2 मध्ये सादर केले आहेत.

संगणकीय खेळ


"संगणक गेम" ची संकल्पना


रणनीती


कार्ड धोरणे

वळण-आधारित धोरणे

रिअल-टाइम धोरण

देव सिम्युलेटर

जागतिक धोरणे

युद्ध खेळ

क्लासिक रणनीती


संदर्भग्रंथ


अंजीर.2. "संगणक खेळ" प्रकल्पाचे सुविधा आकृतीचे सादरीकरण.

तक्ता 2. "संगणक खेळ" प्रकल्पाच्या सादरीकरणाच्या वस्तू.

संगणकीय खेळ

संगणक गेमचे वर्गीकरण

रणनीती

1. "संगणक गेम" च्या संकल्पनेत एक संक्रमण करते.

2. एखाद्या व्यक्तीच्या जीवनातील खेळाची भूमिका प्रकट करते.

1. संगणक गेमच्या विविध शैलींबद्दल माहिती प्रदर्शित करते.

2. "रणनीती" गेम शैलीमध्ये संक्रमण करते

1.विविध प्रकारच्या रणनीतींबद्दल थोडक्यात माहितीचे प्रात्यक्षिक.

2. सामग्रीकडे परत येते.

डेटाबेस


खेळ जग

खेळ

विक्री

अंजीर.3. "कॉम्प्युटर गेम्स" प्रोजेक्टचा ऑब्जेक्ट डायग्राम डेटाबेस.

तक्ता 3. वस्तू"कॉम्प्युटर गेम्स" प्रकल्पाचे डेटाबेस.

खेळ जग

खेळ

विक्री

1. विविध शैलीतील गेमसाठी किंमत धोरण प्रकट करते.

2. विक्री आकडेवारी कॉल.

1.खेळांची माहिती पाहते.

2.लोकप्रिय शैली पहा

1.विक्रीची आकडेवारी पहा.

पुस्तिका


संगणकीय खेळ


जुगाराच्या व्यसनाचे टप्पे


मानवावर परिणाम


संकल्पना

शैली

अंजीर.4. "संगणक खेळ" प्रकल्पाच्या पुस्तिकेच्या ऑब्जेक्टचा आकृती.

तक्ता 4. "संगणक खेळ" पुस्तिकेच्या वस्तू.

संकल्पना

शैली

मानवावर परिणाम

जुगाराच्या व्यसनाचे टप्पे

संगणक गेमचे फायदे आणि हानी

1. "संगणक गेम" ची संकल्पना स्पष्ट करते

1.विविध गेमिंग शैलींचा परिचय

1. रोल-प्लेइंग कॉम्प्युटर गेमवर व्यक्तीचे मानसिक अवलंबित्व प्रकट करते

1. संगणक व्यसनाच्या विकासाची गतिशीलता प्रकट करते

1. कॉम्प्युटर गेम्सचे सर्व साधक आणि बाधक स्पष्ट करते.

III स्टेज . परिस्थिती विकास आणि मॉडेल संश्लेषण

विचारात घेतलेल्या वस्तूंच्या विश्लेषणावर आधारित, आम्ही मल्टीमीडिया प्रकल्पासाठी खालील परिस्थिती प्रस्तावित करू शकतो. “संगणक गेम्स” प्रकल्पावरील काम स्प्लॅश स्क्रीनने सुरू होते ज्यामध्ये विषयावरील संक्षिप्त माहिती असते. स्क्रीनसेव्हरमधून चार निर्गमन असावेत: एक सादरीकरण पाहण्यासाठी, दुसरा डेटाबेसमध्ये, तिसरा पुस्तिका, चौथा या दस्तऐवजासाठी. डेटाबेसमध्ये अशी माहिती असावी जी स्वारस्य असलेल्या प्रेक्षकांना परिचित करेलcविविध शैलींच्या संगणक गेमच्या विक्रीच्या क्षेत्रातील किंमत धोरण. प्रेझेंटेशनमध्ये कॉम्प्युटर गेम्सची प्राथमिक माहिती असावी. पुस्तिकेत विविध वयोगटातील लोकांवर संगणक गेमच्या प्रभावाची माहिती असावी.

स्क्रीनसेव्हर

दस्तऐवज

सादरीकरण

पुस्तिका

डेटाबेस

संगणकीय खेळ

जुगाराच्या व्यसनाचे टप्पे

संकल्पना

खेळ

खेळ जग


शैली

संगणकाचे फायदे आणि हानीखेळ

मानवावर परिणाम

विक्री


संगणकीय खेळ


मानवी जीवनात संगणक गेमची भूमिका

"संगणक गेम" ची संकल्पना


संगणक गेमचे वर्गीकरण

रणनीती


क्लासिक रणनीती

देव सिम्युलेटर

जागतिक धोरणे

युद्ध खेळ

कार्ड धोरणे

वळण-आधारित धोरणे

रिअल-टाइम धोरण


संदर्भग्रंथ

अंजीर.5. "संगणक खेळ" प्रकल्प मॉडेलचा आकृती.

IV स्टेज. तंत्रज्ञान आणि माहिती सादरीकरणाचे स्वरूप

या प्रकल्पामध्ये, माहिती सामग्रीच्या स्वरूपात माहिती सर्वोत्तम प्रकारे सादर केली जाते - एक स्लाइड, ज्यामध्ये या विषयाच्या वस्तूंबद्दल माहिती असेल. बटणे वापरून सादरीकरण संवादात्मकपणे केले जाते. सादरीकरण प्रक्रियेला संगीताच्या साथीने सोबत घेणे उचित आहे. प्रोजेक्ट विकसित करण्यासाठी आवश्यक असलेली सर्वोत्तम सॉफ्टवेअर उत्पादने म्हणजे सादरीकरण तयार करण्यासाठी पॉवरपॉइंट.

व्ही स्टेज. संगणक मॉडेल संश्लेषण

स्टेज 1. कामासाठी साहित्य तयार करणे

प्रस्तावित डिस्कमध्ये सर्व ग्राफिक आणि मजकूर माहिती आहे, म्हणून, जर ती उपलब्ध असेल तर, साउंडट्रॅकवर काम करण्यासाठी तयारीची प्रक्रिया कमी केली जाऊ शकते.

वाद्यसंगीत तयार करण्यासाठी, आपण वारा पासून एक मानक फोनोग्राफ वापरू शकताows 95. पॉवरपॉईंट ॲप्लिकेशन्समध्ये साउंडट्रॅक असल्यास, हे तुम्हाला दिलेल्या विषयावर पॉवरपॉइंटमध्येच संगीताची साथ तयार करण्यास अनुमती देईल.

स्टेज 2. मल्टीमीडिया उत्पादनाची निर्मिती

डेटाबेस निर्मिती

प्रकल्पाच्या या भागाच्या आकृतीसाठी, वरील चित्र 3 मध्ये पहा.

डेटाबेस तयार करताना, आपण डिझाइनर वापरू शकता, ज्यासह आपल्याला खालील विभाग तयार करण्याची आवश्यकता आहे:

    टेबल;

    विनंत्या;

    फॉर्म

    अहवाल

हे विभाग आवश्यक माहितीने भरले पाहिजेत. संपादन केल्यानंतर, डेटाबेस वापरला जाऊ शकतो.

सादरीकरण तयार करणे

या टप्प्यावर, प्रकल्पाच्या त्या भागाचा आराखडा जो सादरीकरणाची अंमलबजावणी करतो आणि पॉवरपॉईंट ऍप्लिकेशनच्या आधारावर कार्यान्वित केला जातो. या भागात कामाचा क्रम महत्त्वाचा नाही, कारण प्रेझेंटेशनच्या कोणत्याही भागाकडे जाणारी बटणे असतील. प्रकल्पाच्या या भागातील वस्तू संगणक ग्राफिक्सच्या विकासाचे वर्णन करणाऱ्या स्लाइड्स असतील.

स्क्रीनसेव्हर तयार करणे

आम्ही पॉवरपॉइंट ऍप्लिकेशनवर आधारित प्रोजेक्टसाठी स्प्लॅश स्क्रीन तयार करतो. स्क्रीनसेव्हरचे सामान्य दृश्य अंजीर मध्ये दर्शविले आहे. 1. स्प्लॅश स्क्रीनमध्ये प्रकल्पाविषयी थोडक्यात माहिती असते आणि ती पुरवते:

    कॉल सादरीकरण;

    डेटाबेसमध्ये संक्रमण;

    कॉल बुकलेट;

    कॉलिंग दस्तऐवज.

सहावा स्टेज. प्रकल्पासोबत काम करत आहे

मागील टप्प्यावर, "संगणक खेळ" प्रकल्प तयार करण्याचे काम पूर्ण झाले. तयार केलेल्या प्रकल्पासह कार्य करण्याची शक्यता आणि तत्त्वे. पॉवरपॉइंट सुरू झाल्यावर, स्क्रीनवर स्प्लॅश स्क्रीन दिसते. स्क्रीनसेव्हरवरून तुम्ही प्रेझेंटेशन कॉल करू शकता आणि त्यात दिलेली सामग्री पाहू शकता आणि तुम्ही आवाज चालू करू शकता. सादरीकरणासह कार्य पूर्ण केल्यावर, स्प्लॅश स्क्रीनवर जा आणि डेटाबेस प्रविष्ट करा, जे आपल्याला विविध शैलींच्या संगणक गेमच्या किंमती धोरण आणि विक्रीच्या आकडेवारीची ओळख करून देईल. डेटाबेससह कार्य पूर्ण केल्यावर, आपण स्प्लॅश स्क्रीनवर जाऊ शकता आणि पुस्तिका पाहू शकता.

अर्ज

पुस्तिका

सादरीकरण

डेटाबेस

स्क्रीनसेव्हर

गेमचा विकास चालू आहे, तो आश्वासक आहे आणि लोकप्रियता मिळवत आहे. आम्ही गेम डेव्हलपमेंट शिकण्याच्या मार्गावर तपशीलवार इन्फोग्राफिक तयार केले आहे.

गेम डेव्हलपमेंटशी संबंधित अनेक क्षेत्रे आहेत आणि प्रशिक्षणाचा प्रत्येक टप्पा मागील टप्प्यावर तयार होतो. उदाहरणार्थ, तुम्ही ताबडतोब गेम इंजिनवर जाऊ नये. सॉफ्टवेअर डेव्हलपमेंटसह प्रारंभ करा, गेम प्रोग्रामिंगवर लक्ष केंद्रित करून गणिताचा अभ्यास करा आणि त्यानंतरच गेम विकासाकडे जा. सादर केलेले प्रत्येक टप्पे पुस्तक आणि इतर सामग्रीसह चरण-दर-चरण मार्गदर्शक आहे.

0. मुलांसाठी खेळांचा विकास

अनेक पुस्तके स्क्रॅचजेआरसह स्क्रॅच मुलांसाठी पौराणिक आणि अंतर्ज्ञानी विकास वातावरणासह कार्य करण्यावर लक्ष केंद्रित करतात. आधार नंतर पायथन पायगेम बद्दल माहिती येते. 5 वर्षांच्या मुलांसाठी एक पुस्तक आहे, परंतु बहुतेक साहित्य 8 वर्षे आणि त्याहून अधिक वयाच्या मुलांसाठी योग्य आहे.

1. संगणक विज्ञान

सैद्धांतिक ज्ञान हा एक अनिवार्य घटक आहे, त्याशिवाय पुढील अभ्यास निरर्थक आहे. शैक्षणिक साहित्याच्या या निवडीत संगणक विज्ञानाचा अभ्यास करण्याच्या संदर्भात मूलभूत गोष्टी, अल्गोरिदम आणि गणिताची माहिती समाविष्ट आहे.

2. प्रोग्रामिंग भाषा

संगणकाची भाषा बोलणे सोपे नाही, परंतु ते शक्य आहे. आणि असे बरेच मार्ग आहेत. उदाहरणार्थ, लोकप्रिय C#, C++ आणि Java सह सिंटॅक्स सामायिक करून C भाषेने सॉफ्टवेअर उद्योगावर लक्षणीय प्रभाव पाडला आहे. C++, याउलट, प्रभावी प्रोग्राम आणि सॉफ्टवेअर सिस्टम तयार करण्यासाठी एक शक्तिशाली भाषा आहे. बरेच लोक C# मध्ये गेम देखील लिहितात: भाषा जलद, सोयीस्कर आहे आणि आपल्याला जलद विकास सुरू करण्यास अनुमती देते.

पण लुआने C++ मधून काहीतरी स्वीकारले. गेम लॉजिकसाठी स्क्रिप्ट भाषा चांगली आहे. हे लेव्हल सुरू करणे, ऑब्जेक्ट्सशी टास्क बांधणे, प्रकल्प पुन्हा कंपाइल न करता एनपीसीचे वर्तन परस्पर बदलणे आणि बरेच काही सोपे करेल.

3. अनुप्रयोग तयार करणे

आणि जर कॉम्प्युटर सायन्स हा सैद्धांतिक आधार असेल तर इथे जास्त सराव आहे. गेम डेव्हलपमेंट हा एक खडबडीत रस्ता आहे आणि ॲप्ससह प्रारंभ करण्यासाठी सर्वोत्तम ठिकाण आहे. व्यावहारिक कार्यांसह पुस्तके, तसेच नमुने आणि UML बद्दल माहिती आपल्याला काय आहे हे शोधण्यात मदत करेल.

4. खेळाच्या विकासासाठी गणित

नाही, बीजगणित आणि भूमितीचा शालेय अभ्यासक्रम असणार नाही. गेम डेव्हलपमेंटच्या क्षेत्रातील गणिताच्या मूलभूत गोष्टींमध्ये आणि अधिक प्रगत स्तरामध्ये निवड विभागली गेली आहे.

5. गेम प्रोग्रामिंग

हार्डवेअर प्लॅटफॉर्म, ऑपरेटिंग सिस्टीम, API सेट, अल्गोरिदम, क्रॉस-प्लॅटफॉर्म आणि इतर महत्त्वाच्या बाबी जे विकसित होत असलेल्या गेमचा आधार बनतील. पुस्तके अनेक गेम डेव्हलपमेंट लेखांद्वारे पूरक आहेत ज्यात प्रोग्रामिंगवरील उपयुक्त माहिती आहे.

6. गेम इंजिन विकास

इंजिन हे गेमचे हृदय आहे, जे कार्यक्षमता आणि आवश्यक साधने "डाउनलोड" करते. पहिल्या पुस्तकांमध्ये तुम्हाला आर्किटेक्चर आणि डिझाइनची ओळख होईल. पुढे, "गेम इंजिन" लेखांच्या स्वरूपात साधने, ऑप्टिमायझेशन, स्क्रिप्ट आणि अतिरिक्त सामग्रीमध्ये विभागले गेले आहेत. परिचयादरम्यान, नमुने, अल्गोरिदमिक युक्त्या, युनिटीमधील ऑप्टिमायझेशन आणि इतर बारकावे यांना स्पर्श केला जातो.

7. संगणक ग्राफिक्स

होय, सामग्री महत्वाची आहे, परंतु हे संगणक ग्राफिक्स आहे जे वापरकर्त्यांना दिसणाऱ्या ऍप्लिकेशन इंटरफेसशी एकरूप आहे. म्हणून, त्यावर विशेष लक्ष दिले पाहिजे.

हा विभाग सर्वात मोठा आहे यात आश्चर्य नाही. यामध्ये रिअल-टाइम 3D, DirectX आणि OpenGL सह प्रोग्रामिंगच्या मूलभूत गोष्टींचा समावेश आहे. सर्व काही प्रस्तुतीकरण आणि तंत्रज्ञानाविषयी माहितीसह पूरक आहे. डायरेक्ट3डी आणि ओपनजीएलने निवडीमध्ये विशेष लक्ष दिले.



8. गेम ऑडिओ

गेम डेव्हलपमेंट देखील ऑडिओशी संबंधित आहे: हे NPCs, मुख्य पात्र, घटना किंवा वस्तू तसेच संगीताद्वारे बनवलेले ध्वनी आहेत. ऑडिओ प्रोग्रामिंगमध्ये फक्त दोन पुस्तके समाविष्ट आहेत, परंतु ते प्रवेशयोग्य मार्गाने आवश्यक माहिती प्रदान करतात.

9. गेम फिजिक्स आणि ॲनिमेशन

सर्वात कठीण टप्प्यांपैकी एक. सॉफ्टवेअर आधार आणि चित्रांव्यतिरिक्त, असे कायदे असले पाहिजेत ज्यानुसार हे सर्व परस्परसंवाद करतात. गेम फिजिक्स आणि ॲनिमेशन प्रोग्रामिंग 17 पुस्तकांमध्ये समाविष्ट आहे. द्रव अनुकरण स्वतंत्रपणे प्रभावित आहे.

10. गेमिंग आर्टिफिशियल इंटेलिजन्स

संगणक-नियंत्रित वर्ण भरपूर आहेत: हे जमाव, शोध देणारे आणि अगदी नियमित बुद्धिबळ देखील असू शकतात. भरपूर पुस्तके तुम्हाला एआयची तत्त्वे समजण्यास मदत करतील. खाली उपयुक्त थीमॅटिक लेखांची यादी आहे.

11. मल्टीप्लेअर गेम प्रोग्रामिंग

सिंगल-प्लेअर गेम विकसित करणे हे मल्टीप्लेअर पर्यायांपेक्षा खूप वेगळे आहे. येथे आपल्याला कनेक्शन, थ्रेड्सचे ऑपरेशन आणि इतर बारकावे विचारात घेणे आवश्यक आहे. निवड सर्व्हर प्रोग्रामिंग, नेटवर्क प्रोग्रामिंग आणि नेटवर्क प्रोटोकॉलबद्दल लेख आणि पुस्तकांमध्ये विभागली गेली आहे.

सुरवातीपासून आणि बजेटशिवाय एका आठवड्यात RPG गेम कसा विकसित करायचा. भाग I

एका आठवड्यात आरपीजी? शून्यापासून? अगदी शक्य आहे का?
मी एक संधी घेतली आणि मी ते केले.

इंटरनेट लहान, स्वतंत्र (इंडी) गेम डेव्हलपरसाठी उपलब्ध माहिती संसाधनांनी भरलेले आहे. अशाच एका सार्वजनिक मंचावर, एका वादाच्या वेळी, मला एक आठवडा वेळ, नवीन विंडोज स्थापित केलेला संगणक आणि चांगले इंटरनेट कनेक्शन दिले तर मी एक पैसाही खर्च न करता एक चांगला गेम तयार करू शकेन. त्यावर. नाही, हे नक्कीच हॅलो 2 किंवा त्याच पातळीच्या कोणत्याही गोष्टीशी स्पर्धा करू शकणार नाही (जर मी एका आठवड्यात असा गेम तयार करू शकलो असतो, तर मी माझी नोकरी खूप पूर्वी सोडली असती), परंतु ते खूप मनोरंजक असेल. आणि खेळण्यायोग्य.

गेम ऑफ द डे (www.gameinaday.com) चे मासिक गेम समीक्षक टॉम बॅम्प्टन म्हणाले, "त्यासाठी जा!" मग त्याने एक अतिरिक्त अट जोडली - मी विद्यमान गेम इंजिन न वापरता हे केले पाहिजे. मी फक्त कोर लायब्ररी/एपीआय वापरू शकतो.

सुरुवातीला मी ही कल्पना नाकारली. कामाच्या ठिकाणी सध्याचा गेम प्रोजेक्ट विकसित करण्यापासून एक आठवडा सुट्टी घेण्यासाठी माझ्याकडे अतिरिक्त वेळ नव्हता. पण मग मी विचार केला: एक आठवडा म्हणजे काय? E.A. सारख्या ठराविक कंपनीत कामाचा आठवडा ४० तासांचा असतो. मग गेम एका कॅलेंडर आठवड्यात का बनवू नये, परंतु 40 शुद्ध तासांमध्ये? हे आधीच अधिक वास्तविक आहे, परंतु मला दुसरे टेट्रिस किंवा आर्कॅनॉइड तयार करायचे नव्हते. रोल-प्लेइंग गेम्सबद्दल काय - सर्वात आव्हानात्मक गेमिंग शैलींपैकी एक? हे शक्य आहे का?

मला माहित होते की हे खूप कठीण असेल. पण मी आव्हान स्वीकारले.

शिवाय, मी काय करत होतो आणि कसे करत होतो ते सविस्तर लिहून विकासाच्या प्रगतीचे वर्णन केले. मला वाटले की ते गेम डेव्हलपर्ससाठी मनोरंजक असू शकते - किंवा मी यशस्वी झालो नाही तर मी माझ्या चेहऱ्यावर कसे पडलो याचा एक मनोरंजक रेकॉर्ड असेल. मला जे काही मिळाले ते माझ्या तासाभराच्या क्रियाकलापांची एक लांबलचक, रॅम्बलिंग रेकॉर्ड होती. वाचनाचा कंटाळा येऊ नये म्हणून मी त्यात बदल करण्याचा प्रयत्न केला. ते कसे बाहेर वळले, स्वत: साठी न्याय.

अशा प्रकारे मी एका आठवड्यात सुरवातीपासून आणि बजेटशिवाय गेम तयार केला. जर तुम्ही वाचण्यात खूप आळशी असाल आणि अंतिम उत्पादन कसे दिसते हे शोधण्यासाठी आणि त्यातील सर्व दोष पाहण्यासाठी कथेच्या शेवटी पटकन नजर टाकू इच्छित असाल, तर तुम्ही गेमची विंडोज आवृत्ती येथे डाउनलोड करू शकता: http://www. rampantgames.com/hackenslash.html

नियोजन
लक्ष्य
The Temple of Apshai, Ultima III आणि Telengard सारख्या टॉप-डाउन दृश्यासह, 80 च्या दशकाच्या सुरुवातीच्या जुन्या गेमच्या शैलीमध्ये जुने-शालेय RPG तयार करा. खेळाडू "तलवार आणि चेटूक" वापरून विविध राक्षसांशी लढा देत, एका सामान्य अंधारकोठडीतील खोल्यांमधून फिरेल. हळूहळू, तो अनुभव मिळवून, त्याची पातळी वाढवून आणि जादूची उपकरणे मिळवून त्याच्या क्षमता सुधारेल.

तथापि, गेममध्ये केवळ वास्तविक लढाईचा समावेश नाही. खेळाडूला मागील राक्षसांना डोकावण्याची किंवा त्यांच्याशी वाटाघाटी करण्याची संधी देखील असेल. लॉक केलेले दरवाजे आणि चेस्ट आणि अनपेक्षित प्रभाव असणारी अनोखी अंधारकोठडी वैशिष्ट्ये असतील. गेममध्ये लांब वर्णन किंवा संवाद नसतील - हे प्रामुख्याने एक सामान्य हॅक आणि स्लॅश असेल. जोपर्यंत तुम्ही अंतिम बॉसला सामोरे जाण्यासाठी, शोध पूर्ण करण्यासाठी आणि सुरक्षितपणे घरी परत जाण्यासाठी (तुमच्या सुरुवातीच्या खोलीत) पुरेसे सामर्थ्यवान होईपर्यंत तुम्ही मार्गावर प्रगती कराल.

विकास नियम

नियम #1: विकास वेळ एका आठवड्यापर्यंत मर्यादित आहे (40 तासांचा समावेश आहे)
गेम विकसित करण्यासाठी एकूण 40 तासांपेक्षा जास्त वेळ खर्च करू नये. यामध्ये गेमवर काम करण्यात आणि त्याबद्दल विचार करण्यात घालवलेला वेळ समाविष्ट असेल. दहा मिनिटांपेक्षा जास्त विकासातील ब्रेक विचारात घेतले जाणार नाहीत. हा 40 अत्यंत उत्पादक तासांचा "आदर्श" कार्य सप्ताह असेल.

पूर्णतः कार्यक्षम अल्फा आवृत्ती ४० तासांत तयार केली जाईल. पुढील परिष्करण, जसे की गेमचे अंतिम डीबगिंग, वितरणासाठी इंस्टॉलर तयार करणे एकूण वेळेत विचारात घेतले जाणार नाही, या टप्प्यावर कोणतीही नवीन कार्यक्षमता जोडली जाणार नाही. विकास प्रक्रियेचे दस्तऐवजीकरण देखील विचारात घेतले जात नाही.

नियम #2: फक्त मोफत साधने वापरा
विंडोज इन्स्टॉलेशनसह येणाऱ्या सॉफ्टवेअरचा अपवाद वगळता, शक्य असेल तिथे फक्त मोफत सॉफ्टवेअर वापरले जाते. गेम विकसित करण्यासाठी तुम्हाला महागड्या (किंवा अगदी स्वस्त) साधनांची गरज नाही हे दाखवण्याचा मुद्दा आहे. हा नियम स्कॅनर, मायक्रोफोन आणि डिजिटल कॅमेरा यांसारख्या उपकरणांना लागू होत नाही - तुमच्याकडे ते नसल्यास, आम्ही असे गृहीत धरू की तुम्ही ते कोणाकडून तरी घेऊ शकता.

नियम #3: कोणतेही इंजिन नाही, फक्त मानक लायब्ररी/एपीआय
विद्यमान गेम इंजिनचा वापर न करता गेम सुरवातीपासून तयार करणे आवश्यक आहे. फसवणूक किंवा गेम डिझाइनर वापरून किंवा तत्सम सॉफ्टवेअर वापरून गेम किंवा त्याचे कोणतेही भाग तयार करणे.

साधने
कोड:

Python 2.3 (http://www.python.org/)
पायथनविन
पायगेम (http://www.pygame.org/)
Py2exe - वितरणासाठी एक्झिक्युटेबल फाइलमध्ये काय होते ते संकलित करण्यासाठी. (http://starship.python.net/crew/theller/py2exe/)

जिम्प २.० (http://gimp-win.sourceforge.net/)
एमएस पेंट (विंडोजसह येतो) - प्रिंटस्क्रीन की द्वारे कॅप्चर केलेले स्क्रीनशॉट घालण्यासाठी (काही कारणास्तव GIMP ने हे करण्यास नकार दिला)
मोफत पोत (http://www.textureartist.net/textures/index.htm) आणि (http://www.mayang.com/textures/) वरून घेतले होते.

ऑडेसिटी (http://audacity.sourceforge.net/) अधिक माझा मायक्रोफोन किंवा विनामूल्य.

कामाचे वेळापत्रक (योजना).
शेड्युल तोडण्यासाठी बनवले जातात, परंतु प्रगती आणि रेषांचे निरीक्षण करण्यासाठी आणि आवश्यकतेनुसार समायोजन करण्यासाठी ते अद्याप आवश्यक आहेत.

तास 1-10: मूलभूत आर्किटेक्चर
इंजिन आणि मुख्य घटकांची रचना. स्क्रीनवर जग प्रदर्शित करा. मला चाचणी खेळाडूला जगभरात हलवण्याची आणि गोष्टी पाहण्याची आणि नंतर गेम एडिटरमध्ये बदलण्याची क्षमता लागू करावी लागेल.

तास 11-20: खेळाडू पर्याय
खेळाडूसाठी सर्व मुख्य शक्यतांची अंमलबजावणी - हलविणे, हल्ला करणे, दरवाजे उघडणे, मरणे, वस्तू उचलणे आणि यादी वापरणे. जगाशी संवाद साधण्याच्या खेळाडूच्या क्षमतांची चाचणी घेण्यासाठी वातावरणातील सर्व वस्तूंचे एक सांगाडा तयार करा.

तास 21-30: जगाला जिवंत करणे
कृत्रिम बुद्धिमत्ता, गेम इव्हेंट, सापळे, विशेष प्रभाव जोडा. या कालावधीच्या अखेरीस माझ्याकडे गेमच्या सर्व मुख्य वैशिष्ट्यांसह, बऱ्यापैकी पूर्ण टेक डेमो असणे आवश्यक आहे.

तास 31-40: सामग्री आणि नियम जोडणे
टेक डेमोमधून संपूर्ण गेम मिळवा. सर्व अतिरिक्त सामग्री जोडा. गेम मेकॅनिक्सची पूर्णता आणि संतुलन मिळवा. तुमच्यासाठी वेळ असेल त्या सर्व गोष्टी पोलिश करा, विशेष प्रभाव, ॲनिमेशन इ. जोडा.

40 तासांनंतर: गेम चाचणी आणि प्रकाशन
आढळलेल्या त्रुटी तपासा आणि दूर करा (नवीन वैशिष्ट्ये न जोडता!) सर्वकाही एका ढिगाऱ्यात गोळा करा आणि इंटरनेटवर पोस्ट करा. पूर्ण कागदपत्रे.

हॅकेन्सलॅश डेव्हलपर डायरी: आठवड्यातील गेम

तास 1 - जंगली डिझाइन आणि मूलभूत वर्ग
हा तास खेळासाठी काही मूलभूत वर्ग तयार करण्यात घालवला गेला - आणि पुढील डिझाइनमध्ये त्यांचा वापर. पोर्टलद्वारे जोडलेल्या खोल्यांचा क्रम म्हणून जग सादर केले जाईल. जगातील प्रत्येक गोष्ट खोल्यांवर आधारित आहे, जसे की ते जुन्या साहसी खेळांमध्ये किंवा MUD ​​मध्ये होते. गेममधील बहुतेक वस्तू "गेमऑब्जेक्ट" म्हणून दर्शविल्या जातात, ज्यामध्ये एक स्थान आणि सामग्री असते (आणि त्यात इतर वस्तू असू शकतात - नकाशामध्ये खोल्या असू शकतात, खोलीत छाती असू शकते, छातीत तलवार असू शकते... आणि मला वाटते की एका तलवारीमध्ये अनेक खोल्या असू शकतात, परंतु आम्ही ते करणार नाही.)

मी प्राणी आणि खेळाडू वस्तू तयार करतो
मी प्राण्यांसाठी गुणधर्मांचा संच तयार करतो आणि वर्गात त्यांची अंमलबजावणी करतो. वरवर पाहता मी खूप RPG गेम खेळणारा मूर्ख आहे. गेम मेकॅनिक्स कसे दिसेल आणि कसे कार्य करेल हे मला अद्याप माहित नाही.
मी गेमऑब्जेक्टकडून इनहेरिट मिळालेली रूम ऑब्जेक्ट बनवत आहे. खोलीत रुंदी, उंची आणि भिंती आहेत - आणि या क्षणासाठी दुसरे काहीही नाही.

सर्वकाही कसे कार्य करेल आणि आवश्यक दुरुस्त्या कसे होतील हे मला हळूहळू समजू लागते. मी या टप्प्यावर पायगेम वापरण्याचा प्रयत्न देखील करत नाही आणि प्रोग्राम कन्सोल व्यतिरिक्त काहीही दर्शवत नाही. पण मला असे वाटते की जे काही केले आहे ते खूप प्रगती आहे!

तास 2 - पायगेम 101
PyGame सुरू करणे आणि स्क्रीनवर किमान काहीतरी रेखाटणे सुरू करणे हे या तासाचे ध्येय आहे. खरं तर, मी माझा बहुतेक वेळ PyGame दस्तऐवज वाचण्यात घालवतो, तेथे काय आहे आणि ते कसे करावे हे शोधण्याचा प्रयत्न करतो, कारण मला PyGame किंवा SDL वापरण्याचा जवळजवळ कोणताही अनुभव नाही.

काळ्या रंगाने भरलेला रिकामा स्क्रीन दाखवणाऱ्या प्रोग्रामने तास संपतो. प्रभावशाली नाही. खरं तर, या खिडकीच्या मागे बरेच काही आहे. गेम लूप, फ्रेम स्विचिंग, अनेक क्लासेस कॉल करणे आणि बरीच निष्क्रिय सामग्री आहे. परंतु यामुळे काळी पडदा अधिक प्रभावी होत नाही.

तास 3 - जर भिंतींना कान असतील तर मी त्यांना कठोरपणे फटकारतो.
या तासाचा उद्देश भिंतींसह खोलीची बाह्यरेखा परिभाषित करणे आणि हे स्थिर काळ्या पडद्यावर प्रदर्शित करणे हा आहे. हे करण्यासाठी, मला खोलीची आवश्यकता आहे आणि मला ग्राफिक्सची आवश्यकता आहे. मला GIMP मध्ये खूप बसावे लागेल, इंटरनेटवरून डाउनलोड केलेले पोत संपादित करावे लागेल जेणेकरून ते योग्य टाइलमध्ये बदलतील. मी टेक्सचर मॅनेजर क्लास तयार करत आहे. आणि मी नमुना खोलीची रचना भरतो. मी काम सोपे करण्यासाठी वापरू शकतील असे काहीही शोधण्यासाठी मी पायगेम दस्तऐवजीकरण शोधण्यात आणखी थोडा वेळ घालवला.

एक तास उलटून गेला. पण माझ्याकडे अजूनही तोच काळा पडदा आहे. अजूनही भिंती नव्हत्या.

4 तास - हॉटेलमध्ये एक विनामूल्य खोली आहे
काही वाक्यरचना त्रुटींशी संघर्ष केल्यानंतर, मी शेवटी भिंती स्क्रीनवर दिसण्यास सक्षम झालो. खरे आहे, ते चुकीच्या पद्धतीने प्रदर्शित केले गेले आहेत, ते दर्शविलेल्या ठिकाणी नाहीत आणि विभागांमधील अंतर देखील आहेत. खूप भयंकर आहे हे. पण थोडासा चिमटा आणि संपादन करून, मी स्क्रीनवर 10 बाय 10 स्क्वेअर रूम सारखी दिसत होती.

तपशीलवार प्रकल्प योजनेशिवाय, आपण काही काम पूर्ण केल्यावर गोंधळात पडणे आणि "पुढे काय आहे?" मी ठरवले की जर एक खोली रेखाटणे चांगले असेल तर दोन रेखाचित्रे दुप्पट होतील.

तयार केलेल्या खोल्या संचयित करण्यासाठी मी "मिनीडंजियन" फाइल तयार केली.
मी "पोर्टल" साठी तर्क जोडणे सुरू करेन - भिंतींमधील छिद्र जे इतर खोल्यांकडे नेतील (आणि जवळच्या खोल्या योग्यरित्या प्रदर्शित करण्यासाठी आवश्यक असलेली सर्व ऑफसेट माहिती प्रदान करेल).

तास 5 - Hackenslash ला अधिक खोल्या मिळतात

मी विंडोचे शीर्षक बदलून "Hackenslash!" असे केले. फक्त ते मस्त आहे म्हणून.
मी खोल्या संचयित करण्यासाठी एक वैशिष्ट्य नकाशा आणि अनेक नकाशे असलेला MapMaster वर्ग तयार केला.
मी दुसरी खोली जोडली आणि पोर्टलद्वारे ती पहिल्याशी जोडली.
शेजारच्या खोल्या सध्याच्या खोलीशी पोर्टलद्वारे जोडल्या गेल्या आहेत आणि आता स्क्रीनवर प्रदर्शित केल्या आहेत.
मी काही क्लिपिंग त्रुटी निश्चित केल्या आहेत जेणेकरून खिडकीच्या बाहेर अर्धवट पसरलेल्या भिंती योग्यरित्या प्रदर्शित केल्या जातील.

तास 6 - ज्या दरम्यान आम्ही आमचे रेखाचित्र कौशल्य सुधारतो

दरवाजा वर्ग जोडला आणि दरवाजा बसवण्यासाठी नकाशे देखील कॉन्फिगर केले (दरवाजा दोन खोल्यांसाठी सामान्य असणे आवश्यक आहे). (संपादित करा: माझी इच्छा आहे की मी हे कधीही वापरले नसते!)
मी आणखी 3 वॉल टाइल्स तयार केल्या आणि त्या एका इमेजमध्ये एकत्र केल्या.
भिंतींचे ग्राफिक स्वरूप प्रकारानुसार बदलते.
मी टॉप-डाउन व्ह्यूसाठी एक साधे ग्राफिक बनवत आहे.

तास 7-8 - फिरकी आणि उद्गार!

मी PyGame मध्ये बिटमॅप्स कसे फिरवायचे ते शोधून काढले.
मला सुरळीत फिरण्यासाठी कसोटीपटू मिळाला. रोटेशनचा कोन दुरुस्त करण्यासाठी अनेक समायोजने आवश्यक आहेत.
मी PyGame मध्ये फॉन्ट कसे वापरायचे ते शिकले आहे आणि मी मजकूर प्रदर्शित करण्यासाठी आणि ॲनिमेट करण्यासाठी काही वर्ग तयार करत आहे.
स्वयंचलित मजकूर प्रक्रियेसाठी एक वर्ग जोडला, कारण ही कार्यक्षमता भविष्यात अनेकदा वापरली जाईल.

तास 9-11 – घटक - brrrr!

आणि इथे पुन्हा, मला "पुढे काय?" हा प्रश्न सोडवायचा आहे.

खोल्यांना अधिक मनोरंजक घटकांची आवश्यकता आहे, म्हणून आपल्याला त्यांची यादी तयार करण्याची आवश्यकता आहे. मला ते कसे व्यवस्थित करावे हे माहित नाही, म्हणून मी सामान्यांपासून सुरुवात करण्याचा निर्णय घेतला. मी तीन स्थिर घटक सादर केले जे एका सामान्य अंधारकोठडीच्या खोलीत आढळू शकतात: एक कार्पेट, एक स्तंभ (भिंती सारख्या कार्यक्षमतेसह एक ब्लॉक), आणि एक शिडी (तुम्हाला ते नवीन ठिकाणी हलवण्याची परवानगी देते)

मी ठरवले की घटक एकापेक्षा जास्त टाइल व्यापू शकतात आणि कोणत्याही प्रमाणात फिरवले जाऊ शकतात. (संपादित करा: भूतकाळात, एक अतिशय मूर्ख उपाय - मी त्याची अंमलबजावणी करण्यासाठी बराच वेळ घालवला, परंतु ते जवळजवळ निरुपयोगी ठरले.)

एकूण, मी ग्राफिक्स तयार करणे आणि कोड लिहिण्याच्या दरम्यान फाटलेल्या घटकांवर काम करण्यासाठी सुमारे तीन तास घालवले.

तास 12 - 13 - आम्हाला लूटची गरज आहे!

मी गोष्टींसाठी ग्राफिक्स आणि कोड तयार करतो. चित्र काढण्यासाठी किती वेळ लागू शकतो हे आश्चर्यकारक आहे. हे विशेषतः त्रासदायक असते जेव्हा प्रतिमा कोंबडीने आपल्या पंजाने काढलेली दिसते, त्यात कितीही प्रयत्न केले तरीही.

मी आयटममध्ये त्यांची किंमत, आकार, उपकरणे स्लॉट आणि बरेच काही यासह बरीच वैशिष्ट्ये जोडली आहेत. त्यांच्याशी अद्याप संवाद साधला जाऊ शकत नाही, परंतु किमान ते खोलीत योग्य ठिकाणी दिसतात.

तास 14 - कार्पेट्स

मी शेड्यूलच्या खूप मागे आहे, मी काय करावे?
काळी पार्श्वभूमी खूप कुरूप दिसते, म्हणून मी खोलीच्या आतील मजले कार्पेट्सने झाकले - वेगळ्या फरशा.

त्यानंतर, अचानक असे घडले की मी खेळाडू आणि गोष्टींच्या स्प्राइट्समध्ये पारदर्शक पार्श्वभूमी जोडण्यास विसरलो. मला ही उपेक्षा दुरुस्त करण्यात बराच वेळ घालवावा लागला.

पण पातळी आता थंड दिसते. बरं, कमीतकमी काळ्यापेक्षा थंड.

तास 15-16 - क्लिक करा! क्लिक करा!

मी माउस कंट्रोल आणि इव्हेंट प्रोसेसिंग हाती घेतले.
माउससह वर्ण नियंत्रण जोडले. हालचाल अजूनही धक्कादायक आहे, पातळीचे कोणतेही गुळगुळीत स्क्रोलिंग नाही.
खेळाडू खोलीच्या बाहेर फिरू शकतो, टक्कर तपासणी नाही.
मी काही बगचे निराकरण केले आहे.
मी GIMP चा छळ केला आणि सुंदर पायऱ्या तयार केल्या.
.
मी आधीच डेव्हलपमेंटवर जवळपास 17 तास घालवले आहेत, त्यामुळे मी थोडी चिंताग्रस्त होऊ लागलो आहे. मी गेम तयार करण्याच्या 2/5 मार्गावर आहे - विकासाचा दुसरा "कार्य दिवस" ​​संपला आहे. मी आधीच जे केले आहे ते प्रभावी आहे, परंतु मला समजते की अजून बरेच काही करायचे आहे. माझ्याकडे खेळाडूंची मूलभूत वैशिष्ट्ये पूर्ण करण्यासाठी आणि वेळापत्रकात बसण्यासाठी आणखी चार तास आहेत. हे अवघड असेल... पण ग्राफिक्स काढण्यात अतिरिक्त वेळ घालवल्याबद्दल मला अजूनही खेद वाटत नाही!

तास 17 - आम्ही आमच्या कपाळावर भिंतीवर आदळत नाही तोपर्यंत आम्ही सहजतेने हलतो

बहुतेक वेळ ग्राफिक्स फाइन-ट्यूनिंग आणि दोष निराकरण करण्यात घालवला गेला.
जेव्हा खेळाडू हलतो तेव्हा टक्कर शोधणे आणि गुळगुळीत स्क्रोलिंग जोडले.
माऊसच्या क्रियेला प्रतिसाद म्हणून खेळाडू आता अनेक पावले (वळण) घेऊ शकतो.

तास 18 - उंबरठा ओलांडणे

खेळाडू आता पोर्टलद्वारे इतर खोल्यांमध्ये जाऊ शकतो.
यामुळे शेजारच्या खोल्यांमधील भिंती आणि मजल्यांच्या आच्छादनांसह कॉस्मेटिक बग होतो.
रोटेशनशी संबंधित अनेक बगचे निराकरण केले, ज्यामुळे पोर्टल्स अगम्य झाले.

तास 19 - स्वर्गात जाण्यासाठी जिना, नरकाचा मेनू

माझ्या भावाने स्वेच्छेने खेळासाठी संगीत तयार केले. त्याने व्हॉइड वॉरसाठी संगीत केले आणि ते खूप चांगले झाले. याने मला आठवण करून दिली की मला काही ऑडिओ (आणि संगीत) प्लेबॅक करणे आवश्यक आहे. PyGame मध्ये हे करणे अगदी सोपे आहे असे दिसते, त्यामुळे यास जास्त वेळ लागू नये. (संपादित करा: मला यासाठी कधीच वेळ मिळाला नाही, दुर्दैवाने तुम्हाला हॅकेन्सलॅशमध्ये एकही आवाज ऐकू येणार नाही.)

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

मी खेळाडूला नवीन खोलीत नेण्यासाठी पायऱ्या शिकवतो.
तत्सम PyGame मेनूसाठी कोणताही ओपन सोर्स कोड आहे की नाही हे पाहण्यासाठी मी इंटरनेट आणि PyGame दस्तऐवजीकरण थोडेसे तपासले. आणि मला काहीही सापडले नाही.
मी स्वतःचा मेनू बनवायला सुरुवात केली.

तास 20 - 21 - मेनूमध्ये काय आहे?

मी अजूनही मेनूवर काम करत आहे. मेनू सहजपणे ऑब्जेक्टशी कनेक्ट केला जाऊ शकतो, किंवा त्याऐवजी ऑब्जेक्ट एक मेनू व्युत्पन्न करतो असे दिसते, ज्यामुळे खेळाडूच्या निवडीवर प्रक्रिया करण्यासाठी फीडबॅक लागू करणे सोपे होते.
मी गोष्टींच्या मेनूवर काम करायला सुरुवात केली. हे आधीपासूनच योग्य ठिकाणी दिसते आणि आपल्याला आयटम निवडण्याची परवानगी देते, परंतु दाबल्यावर ते अद्याप काहीही करत नाही, फक्त बंद मेनू बटण कार्य करते.

22 तास - प्रक्रियेत झोपी जा

मी गोष्टींवर काम करणे सुरू ठेवतो - त्यांची कार्यक्षमता अंमलात आणण्याचा प्रयत्न करत आहे आणि त्यांना संदर्भित माहिती जोडण्याच्या क्षमतेसह मेनू आदेशांना प्रतिसाद देण्यास शिकवतो. आता त्याची कार्यक्षमता कमी आहे, परंतु तरीही ते कार्य करते, कार्यरत कमांडबद्दल माहिती प्रदर्शित करते
मी विविध क्रिया करताना, अधिक गतिशीलता मिळवताना हालचालींची गणना सुधारली.

माझ्या लक्षात आले की उशीर झाला आहे आणि मी या कामासाठी दिलेल्या वेळेच्या पलीकडे गेलो आहे. जर मी सर्वांगीण विकासाच्या वेळेकडे लक्ष दिले नसते तर मी कदाचित सकाळपर्यंत तिथे बसलो असतो. परंतु मी वेळेवर मर्यादित असल्याने, व्यावहारिकदृष्ट्या वाया जाणारा एक तास ही खरोखर वाईट बातमी आहे. वेळ कमी असताना प्राधान्यक्रम कसे बदलतात हे मनोरंजक आहे. असो, मी झोपायला जात आहे.

तास 23 - लढाऊ मापदंड!

मी पहिल्या तासात तयार केलेल्या वर्गातील काही विशेषता बदलत आहे (ठीक आहे, प्रत्यक्षात नुकतीच सुरुवात केली आहे).
वरच्या उजव्या कोपर्यात मी एक पॅनेल तयार करतो जे खेळाडूचे पर्याय प्रदर्शित करेल.
मी या विंडोला फॉन्टपेक्षा अधिक वेगाने काढणाऱ्या प्रतिमेत रुपांतरित करून ऑप्टिमाइझ केले. ही प्रतिमा तेव्हाच अपडेट केली जाते जेव्हा तिच्याशी संबंधित कॅरेक्टर पॅरामीटर्स बदलतात.

तास 24 - खेळाडू मेनू

मी ऑप्शन्स विंडोसाठी ऑप्टिमायझेशन पूर्ण केले आहे.
एक पॉप-अप मेनू तयार केला आहे जो जेव्हा खेळाडू एका वर्णावर क्लिक करतो तेव्हा दिसून येतो.
मी औषधी, कास्टिंग स्पेल इ. वापरण्यासाठी एक द्रुत मेनू तयार केला आहे.
मी मेनूमधील काही बगचे निराकरण केले.

25 तास - मजले आणि भिंती पाहण्यापूर्वी (पुन्हा)

आज सकाळी माझ्या मेंदूमध्ये एक कल्पना आली (माझा मेंदू खरोखर इतका मोठा आहे की तो इतक्या कल्पना ठेवू शकतो?) शेजारच्या खोल्यांमध्ये भिंतींच्या आच्छादनाची समस्या कशी सोडवायची (अठराव्या तासाचे वर्णन पहा). मी फक्त अर्ध्या भिंती रंगवल्या तर? अशा प्रकारे कोणतेही ओव्हरलॅप होणार नाही आणि ओव्हरलॅप शोधण्यासाठी आणि दुरुस्त करण्यासाठी जटिल तर्क जोडण्याची आवश्यकता नाही.

ही कल्पना प्रत्यक्षात आणण्यासाठी मी काम सुरू करत आहे. दुर्दैवाने, खरं तर, शोधलेल्या सरलीकरणामुळे खोलीचे (विशेषतः मजले) रेंडरिंग आणखी गुंतागुंतीचे होते आणि ते माझ्या अपेक्षेप्रमाणे लवकर लागू केले जाऊ शकत नाही. ही प्रणाली तयार आणि डीबग करण्यासाठी सुमारे एक तास लागला. पण त्याची किंमत होती.

कोड डीबग करताना, मला खोल्यांमधील संक्रमणाशी संबंधित आणखी अनेक त्रुटी आढळल्या.

BREAK - संकट!

मला नुकतेच लक्षात आले की वाटप केलेल्या विकासाच्या वेळेपैकी 3/5 पेक्षा जास्त वेळ निघून गेला आहे आणि खेळ संपायला पंधरा तासांपेक्षा कमी वेळ शिल्लक आहे. गेमच्या आवश्यक फंक्शन्सचे वेळापत्रक पाहिल्यानंतर आणि प्रत्येकाला अंमलात आणण्यासाठी सरासरी एक तास लागतो असा अंदाज लावल्यानंतर, मला समजले की मला सर्वकाही अंमलात आणण्यासाठी सुमारे पंचवीस तास लागतील. आहे त्यापेक्षा दहा तास जास्त. प्रकल्प अधिकृतपणे धोक्यात आहे.

मी वेळेच्या मर्यादेपलीकडे जाऊ शकत नाही. सहाय्यक आकर्षित करणे किंवा कोड/संसाधने विकत घेणे देखील अशक्य आहे, कारण मी 40 तासांत गेम एकटा करीन अशी अट आहे. मला आणखी कार्यक्षमतेने कसे कार्य करावे हे शोधणे आवश्यक आहे - परंतु मी आधीपासूनच जास्तीत जास्त उत्पादकतेसाठी कठोर परिश्रम करत आहे. असे दिसते की माझ्याकडे दुसरा कोणताही पर्याय नाही, मला कार्यक्षमतेचा पुनर्विचार करावा लागेल आणि गेममधून कोणती वैशिष्ट्ये फेकायची हे ठरवावे लागेल.

दरवाजे: कट! मला खरोखर गेममध्ये दरवाजे बनवायचे आहेत. या फंक्शनमध्ये भाग घेणे लाजिरवाणे आहे - विशेषत: मी काही काळापासून त्यावर काम करत असल्याने. पण कृत्रिम बुद्धिमत्तेसारखे अजून बरेच काम बाकी आहे. आणि त्यांना कामावर यायला कदाचित २-३ तास ​​लागतील, जे माझ्याकडे नाही.
इन्व्हेंटरी: सोपी करा! अतिरिक्त यादी आणि इच्छेनुसार शस्त्रे बदलण्याची क्षमता विसरून जा. जे काही उचलले गेले आणि सध्याचे उपकरण बनले नाही ते त्वरित पैशात रूपांतरित केले जाईल.
सापळे: सोपे करा! मला ते सक्रिय करण्यासाठी मनोरंजक आणि विविध परिणामांसह विविध प्रकारचे सापळे हवे आहेत. ते व्हायचे नाही. सापळ्यांचा साधा व्हिज्युअल इफेक्ट असेल, नुकसान होईल आणि तात्पुरते यादृच्छिक राक्षसाकडे पळण्याची शक्यता वाढेल
धनुष्य (लहान शस्त्रे): कट! गेममध्ये फक्त दंगलीची शस्त्रे असतील; तुम्ही स्पेलसह दुरून हल्ला करू शकता.
सेव्हिंग/लोडिंग गेम: सोपी करा! आपण फक्त आपले चारित्र्य वाचवू शकता, जगाची स्थिती नाही. (संपादित करा: मी तेही केले नाही!)
कण प्रणाली: बाजूला ठेवा! कण प्रणाली निर्मिती प्राधान्य सूचीच्या तळाशी हलवली गेली आहे. मला शंका आहे की मला ते करावे लागेल. मला स्पेलसाठी कणांचा वापर करून काही प्रभावी व्हिज्युअल इफेक्ट्स बनवायला आवडेल... पण असे कधीच होणार नाही.
शब्दलेखन: सोपे करा! माझ्याकडे स्पेलबद्दल एक गंभीर संकल्पना होती: ते स्क्रोलच्या स्वरूपात आढळू शकतात आणि त्यांची संख्या डझनहून अधिक होती. हे दुःखदायक आहे, परंतु फक्त काही शब्द असतील: बरे करणे, नुकसान करणे, कमकुवत करणे, मजबूत करणे आणि पुनर्संचयित करणे. समतल करताना, खेळाडूला जादूच्या गुणांची संख्या वाढवून जादू मजबूत करण्याची परवानगी देणे शक्य आहे.
मॉन्स्टर आणि प्लेअर ॲनिमेशन: कट! हे जलद करण्यासाठी मी चांगला कलाकार नाही.

मी काय करणार नाही हे ठरवताना (किंवा मी नंतर काय बंद ठेवेन), आधी काय करावे लागेल हे ठरवणे तितकेच महत्त्वाचे आहे.

गेममध्ये नियोजित बऱ्याच गोष्टी आहेत ज्या मला खूप महत्त्वाच्या वाटतात - सापळे शोधणे, गुप्त दरवाजे (आता गुप्त मार्ग), आणि छाती फोडणे. पण खेळाचा गाभा म्हणजे लढाई. म्हणून मी त्यावर लक्ष केंद्रित करण्याचे ठरवले, ते माझे सर्वोच्च प्राधान्य बनवले. मी स्वतःसाठी एक ध्येय ठेवले आहे: दीड तासात, माझे राक्षस इतके जिवंत होतील की त्यांना मारले जाऊ शकते.

छान, आम्ही प्राधान्यक्रमांची क्रमवारी लावली आहे, चला विकास सुरू ठेवूया.

तास 26 - चला फासे रोल करूया

मी "डाइस" मेकॅनिकवर काम करत आहे, एक अशी यंत्रणा ज्याद्वारे गेममध्ये यादृच्छिकतेचा घटक सादर केला जाईल. आमच्याकडे वास्तविक फासांची मर्यादा नसल्यामुळे, आम्हाला पाहिजे त्या श्रेणीमध्ये आम्ही यादृच्छिक संख्या मिळवू शकतो. उदाहरणार्थ 1 ते 33 किंवा 6 ते 17 पर्यंत. त्यामुळे मी फासे गुंडाळू शकतो, माझ्या हल्ल्यात काय आले आणि शत्रूच्या बचावाची तुलना करू शकतो. जर रोल केलेला नंबर बचावापेक्षा जास्त असेल तर हल्ला यशस्वी होतो.

उदाहरणार्थ, माझ्याकडे एकूण आक्रमण मूल्य 15 आहे असे समजा. मी 10 संरक्षण असलेल्या राक्षसावर हल्ला करतो. माझी शक्यता 25 पैकी 15 (25 = 15 +10), किंवा 5 पैकी 3 आहेत. त्यामुळे गेम 1 आणि 25 मधील यादृच्छिक क्रमांक तयार करेल आणि जर तो दहापेक्षा जास्त असेल तर मी जिंकेन.

झालेल्या नुकसानीची गणना करण्यासाठी थोडी वेगळी पद्धत वापरली जाते. मी डिफेंडरला "आर्मर" पॅरामीटर जोडले आणि हल्लेखोराला "नुकसान" जोडले. मी 1 ते त्यांच्या बेरजेपर्यंत एक यादृच्छिक संख्या तयार करतो आणि नंतर चिलखत वजा करतो. परिणाम एकापेक्षा कमी असल्यास, कोणतेही नुकसान हाताळले जात नाही. अन्यथा, ते प्राप्त झालेल्या निकालाच्या बरोबरीचे आहे. अशा प्रकारे, 10 नुकसान असलेल्या राक्षसाने 5 चिलखत असलेल्या खेळाडूवर हल्ला केल्यास, गेम 1 ते 15 पर्यंत एक संख्या तयार करेल, ज्यामधून तो 5 वजा करेल, जे नुकसान हाताळले जाईल.

हे स्पष्टीकरण आणि वर्णन त्याच्या अंमलबजावणीपेक्षा जास्त वेळ घेतला.

तासाच्या शेवटी, मी अंधारकोठडीच्या प्रदर्शन क्षेत्राचा आकार कमी केला, आता उजवीकडील विंडोचा भाग पूर्णपणे वापरकर्ता इंटरफेससाठी समर्पित आहे, या बदलामुळे कार्यप्रदर्शनात थोडी वाढ झाली. मी हे देखील सुनिश्चित केले की खेळाडूंच्या हालचालींवर फ्रेमरेटचा परिणाम होणार नाही.