1. CodeGym पर गेम कैसे लिखें
जैसा कि आप जानते हैं, CodeGym ने एक नई विशेषता पेश की है: गेम राइटिंग । ये कार्य सामान्य कार्यों की तुलना में काफी बड़े हैं, और कहीं अधिक दिलचस्प हैं। वे न केवल लिखने के लिए दिलचस्प हैं, बल्कि उम, परीक्षण करने के लिए भी। आप समझ रहे हैं कि हम किस बारे में बात कर रहे हैं ;) जब हमने गेम कार्यों का परीक्षण शुरू किया तो CodeGym कार्यालयों में काम वास्तव में कई दिनों तक रुका रहा :) प्रत्येक गेम टास्क एक प्रोजेक्ट है: बीस सबटास्क के साथ एक बड़ा टास्क। खेल लिखते समय, आपको उन्हें क्रम में पूरा करना होगा। जब आखिरी सबटास्क पूरा हो जाए, तो आपका गेम तैयार है। यह CodeGym के अत्यंत सरल गेम इंजन का उपयोग करेगा । इसके साथ काम करना कंसोल के साथ काम करने से ज्यादा मुश्किल नहीं है। आपको इस दस्तावेज़ में गेम इंजन का विवरण और इसका उपयोग करने के उदाहरण मिलेंगे ।2. खेल इंजन सुविधाएँ
खेल का मैदान खेल इंजन द्वारा कोशिकाओं में बांटा गया है। न्यूनतम आकार 3x3 है; अधिकतम 100x100 है। प्रत्येक सेल को एक निश्चित रंग में रंगा जा सकता है और उसमें कुछ टेक्स्ट लिखा जा सकता है। प्रत्येक सेल के लिए टेक्स्ट का आकार और टेक्स्ट का रंग भी सेट किया जा सकता है। इंजन माउस क्लिक और की प्रेस के लिए इवेंट हैंडलर लिखना संभव बनाता है। एक और दिलचस्प बात टाइमर के साथ काम करने की क्षमता है। "टाइमर के साथ कार्य करना" अनुभाग में अधिक जानें। हमारा "स्पष्ट" गेम इंजन आपको बहुत दिलचस्प गेम बनाने देता है - कुछ ऐसा जो आप स्वयं देखेंगे। कोशिश करना चाहते हैं? फिर अगला पैराग्राफ पढ़ें और गेम लिखना शुरू करें।3. एक खेल तक पहुँचना
गेम लिखना शुरू करने के लिए, CodeGym वेबसाइट पर "गेम्स" सेक्शन में जाएँ, अपनी पसंद का चुनें, और उसके पेज पर जाएँ। एक " समाधान लिखें " बटन होगा - इसे क्लिक करें। वेब आईडीई खुल जाएगा। वहां आप गेम के पहले सबटास्क पर काम करना शुरू कर देंगे। और तो और, गेम के उप-कार्य आपके लिए IntelliJ IDEA में प्लगइन के माध्यम से उपलब्ध होंगे। यदि आप IntelliJ IDEA का उपयोग कर रहे हैं , तो आपको प्लगइन को अपडेट करना होगा। आप यहां प्लगइन का नवीनतम संस्करण डाउनलोड कर सकते हैं । प्लगइन अपडेट करने के बाद, कार्य सूची खोलें, और "जावा गेम्स क्वेस्ट" चुनें। अगला, उपलब्ध सबटास्क पर क्लिक करें: आपके प्रोजेक्ट में एक "जावा गेम्स" मॉड्यूल दिखाई देना चाहिए, और इसमें आपके सबटास्क के लिए इंजन लाइब्रेरी और कोड होना चाहिए। उसके बाद, यह किसी अन्य कार्य को हल करने जैसा ही है। आप वेब IDE या IntelliJ IDEA में गेम लिख सकते हैं, जो भी आपको अधिक पसंद हो। फिर भी, IntelliJ IDEA अधिक सुविधाजनक है। और अधिक पेशेवर। चुनाव तुम्हारा है।4. एप्लिकेशन कैटलॉग में गेम प्रकाशित करना
जब आप एक गेम लिखना समाप्त कर लेते हैं, तो आप इसे CodeGym पर "गेम्स और एप्लिकेशन" कैटलॉग में प्रकाशित कर सकते हैं। बस "प्रकाशित करें" बटन दबाएं, और आधे मिनट में आपका गेम "प्रकाशित गेम" अनुभाग में जोड़ दिया जाएगा। यदि आप खेल के अपने कार्यान्वयन को दोस्तों या सहकर्मियों के साथ साझा करना चाहते हैं, तो इससे आसान कुछ नहीं हो सकता। बस उन्हें प्रकाशित गेम का लिंक भेजें, और वे खेल सकते हैं। CodeGym पर पंजीकरण की आवश्यकता नहीं है। निर्माता के रूप में, आप इस बात का आनंद ले सकते हैं कि अन्य लोग कितनी बार आपका गेम खेलते हैं। जैसे YouTube पर देखे जाने की संख्या। जितना बड़ा उतना बेहतर।5. खेल अनुकूलन
एक बार जब आप एक गेम लिखना समाप्त कर लेते हैं, तो आप इसे संशोधित कर सकते हैं। 5x5 बोर्ड पर 2048 खेलना चाहते हैं? आगे बढ़ो। आप एक प्रोग्रामर हैं - और आपकी उंगलियों पर एक कीबोर्ड है। जैसा आप चाहें खेल को बदलें। आप कुछ बिल्कुल नया जोड़ सकते हैं। उदाहरण के लिए, सांप में, अगर वह एक ताजा सेब खाता है (सेब के प्रकट होने के 5 सेकंड के भीतर) तो सांप धीमा हो सकता है। इसके अलावा, सेब का रंग लाल से हरा हो सकता है, या नाशपाती बन सकता है। या हो सकता है कि आपका सांप सेब से ज्यादा खरगोशों को प्यार करता हो... माइनस्वीपर में, आप खिलाड़ी को दूसरा जीवन या शायद एक परमाणु बम दे सकते हैं जो कई कोशिकाओं के दायरे में कोशिकाओं को "रोशनी" देता है। लेकिन याद रखें, यदि आप गेम इंजन का उपयोग किए बिना गेम में फाइलों या ग्राफिक्स के साथ काम करते हैं, तो गेम को एप्लिकेशन कैटलॉग में प्रकाशित नहीं किया जा सकता है। एक ब्राउज़र में सब कुछ नहीं चलाया जा सकता, आप जानते हैं।6. उपयोगी दस्तावेज
CodeGym गेम इंजन (गेम को आरंभ करना, खेल का मैदान बनाना, और ग्राफिक्स के साथ काम करना), इवेंट हैंडलिंग (माउस, कीबोर्ड और टाइमर के साथ काम करना), और रिफ्रेश या मूल जावा सिद्धांत सीखें जो आपको गेम लिखते समय मिलेगा (पहली और दूसरी CodeGym खोज):- CodeGym पर "गेम्स" सेक्शन: गेम इंजन का विवरण
- CodeGym पर "गेम्स" सेक्शन: इवेंट हैंडलिंग
- CodeGym पर "गेम्स" खंड: उपयोगी सिद्धांत
7. सामान्य समस्याएं
मेरे पास लिनक्स है और मैं ओपनजेडीके का उपयोग करता हूं। जब मैं गेम चलाता हूं, तो कंपाइलर एक त्रुटि देता है:
Error:(6, 8) java: cannot access javafx.application.Application
class file for javafx.application.Application not found
तुम्हे क्या करना चाहिए? हमारा गेम इंजन JavaFX का उपयोग करता है, लेकिन यह OpenJDK में डिफ़ॉल्ट रूप से स्थापित नहीं होता है। आपको इसे ठीक करने की आवश्यकता है:
-
कमांड प्रॉम्प्ट पर, निम्न दर्ज करें:
sudo apt-get install openjfx
-
उसके बाद, प्रोजेक्ट सेटिंग्स (ALT+CTRL+SHIFT+S) -> SDKs -> क्लासपाथ पर जाएं और दाईं ओर धन चिह्न पर क्लिक करें। फ़ाइल jfxrt.jar का चयन करें। यह स्थापित JDK में स्थित है: <JDK_PATH>/jre/lib/ext/jfxrt.jar
-
ओके पर क्लिक करें।
-
https://gluonhq.com/products/javafx/ पर JavaFX Windows SDK डाउनलोड करें ।
-
डाउनलोड किए गए संग्रह को किसी भी फ़ोल्डर में अनपैक करें (अधिमानतः गेम्स प्रोजेक्ट के लिब फ़ोल्डर में)।
-
आईडिया खोलें।
-
आईडीईए में, फाइल -> प्रोजेक्ट स्ट्रक्चर पर जाएं।
-
लाइब्रेरी टैब का चयन करें और + -> जावा पर क्लिक करें।
-
अनपैक्ड javafx-sdk फ़ोल्डर का पथ निर्दिष्ट करें और lib फ़ोल्डर का चयन करें
-
ओके पर क्लिक करें। फिर नई विंडो में, JavaFX को गेम्स मॉड्यूल में जोड़ें।
-
अब एक नई लाइब्रेरी दिखनी चाहिए। लागू करें पर क्लिक करें -> ठीक है।
-
खेल को सही ढंग से चलाने के लिए, रन-> कॉन्फ़िगरेशन संपादित करें खोलें, और वीएम विकल्प फ़ील्ड में निम्न दर्ज करें:
--module-path ./lib/javafx-sdk-16/lib --add-modules=javafx.controls,javafx.fxml,javafx.base
-
इसके बाद, आपको इस टैब पर एप्लिकेशन को जोड़ना होगा। ऐसा करने के लिए, + -> एप्लिकेशन पर क्लिक करें
-
-
गेम्स मॉड्यूल का चयन करें
-
मुख्य वर्ग के लिए पथ दर्ज करें (इस मामले में -
SnakeGame
) -
आइटम 9 के समान वीएम विकल्प दर्ज करें।
लागू करें पर क्लिक करें -> ठीक है
-
-
खेल चलाओ।
GO TO FULL VERSION