CodeGym /Java Blog /अनियमित /CodeGym — गेम्स पर नया खंड
John Squirrels
स्तर 41
San Francisco

CodeGym — गेम्स पर नया खंड

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

1. CodeGym पर गेम कैसे लिखें

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

2. खेल इंजन सुविधाएँ

खेल का मैदान खेल इंजन द्वारा कोशिकाओं में बांटा गया है। न्यूनतम आकार 3x3 है; अधिकतम 100x100 है। प्रत्येक सेल को एक निश्चित रंग में रंगा जा सकता है और उसमें कुछ टेक्स्ट लिखा जा सकता है। प्रत्येक सेल के लिए टेक्स्ट का आकार और टेक्स्ट का रंग भी सेट किया जा सकता है। इंजन माउस क्लिक और की प्रेस के लिए इवेंट हैंडलर लिखना संभव बनाता है। एक और दिलचस्प बात टाइमर के साथ काम करने की क्षमता है। "टाइमर के साथ कार्य करना" अनुभाग में अधिक जानें। हमारा "स्पष्ट" गेम इंजन आपको बहुत दिलचस्प गेम बनाने देता है - कुछ ऐसा जो आप स्वयं देखेंगे। कोशिश करना चाहते हैं? फिर अगला पैराग्राफ पढ़ें और गेम लिखना शुरू करें।

3. एक खेल तक पहुँचना

गेम लिखना शुरू करने के लिए, CodeGym वेबसाइट पर "गेम्स" सेक्शन में जाएँ, अपनी पसंद का चुनें, और उसके पेज पर जाएँ। एक " समाधान लिखेंCodeGym — गेम्स पर नया खंड - 1 " बटन होगा - इसे क्लिक करें। वेब आईडीई खुल जाएगा। वहां आप गेम के पहले सबटास्क पर काम करना शुरू कर देंगे। और तो और, गेम के उप-कार्य आपके लिए IntelliJ IDEA में प्लगइन के माध्यम से उपलब्ध होंगे। यदि आप IntelliJ IDEA का उपयोग कर रहे हैं , तो आपको प्लगइन को अपडेट करना होगा। आप यहां प्लगइन का नवीनतम संस्करण डाउनलोड कर सकते हैं । प्लगइन अपडेट करने के बाद, कार्य सूची खोलें, और "जावा गेम्स क्वेस्ट" चुनें। CodeGym — गेम्स - 2 पर नया खंडCodeGym — गेम्स - 3 पर नया खंडअगला, उपलब्ध सबटास्क पर क्लिक करें: आपके प्रोजेक्ट में एक "जावा गेम्स" मॉड्यूल दिखाई देना चाहिए, और इसमें आपके सबटास्क के लिए इंजन लाइब्रेरी और कोड होना चाहिए। उसके बाद, यह किसी अन्य कार्य को हल करने जैसा ही है। आप वेब IDE या IntelliJ IDEA में गेम लिख सकते हैं, जो भी आपको अधिक पसंद हो। फिर भी, IntelliJ IDEA अधिक सुविधाजनक है। और अधिक पेशेवर। चुनाव तुम्हारा है।

4. एप्लिकेशन कैटलॉग में गेम प्रकाशित करना

जब आप एक गेम लिखना समाप्त कर लेते हैं, तो आप इसे CodeGym पर "गेम्स और एप्लिकेशन" कैटलॉग में प्रकाशित कर सकते हैं। बस "प्रकाशित करें" बटन दबाएं, और आधे मिनट में आपका गेम "प्रकाशित गेम" अनुभाग में जोड़ दिया जाएगा। CodeGym — गेम्स पर नया खंड - 4यदि आप खेल के अपने कार्यान्वयन को दोस्तों या सहकर्मियों के साथ साझा करना चाहते हैं, तो इससे आसान कुछ नहीं हो सकता। बस उन्हें प्रकाशित गेम का लिंक भेजें, और वे खेल सकते हैं। CodeGym पर पंजीकरण की आवश्यकता नहीं है। CodeGym — गेम्स पर नया खंड - 5निर्माता के रूप में, आप इस बात का आनंद ले सकते हैं कि अन्य लोग कितनी बार आपका गेम खेलते हैं। जैसे YouTube पर देखे जाने की संख्या। जितना बड़ा उतना बेहतर।

5. खेल अनुकूलन

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

6. उपयोगी दस्तावेज

CodeGym गेम इंजन (गेम को आरंभ करना, खेल का मैदान बनाना, और ग्राफिक्स के साथ काम करना), इवेंट हैंडलिंग (माउस, कीबोर्ड और टाइमर के साथ काम करना), और रिफ्रेश या मूल जावा सिद्धांत सीखें जो आपको गेम लिखते समय मिलेगा (पहली और दूसरी CodeGym खोज):

7. सामान्य समस्याएं

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

Error:(6, 8) java: cannot access javafx.application.Application
  class file for javafx.application.Application not found
तुम्हे क्या करना चाहिए? हमारा गेम इंजन JavaFX का उपयोग करता है, लेकिन यह OpenJDK में डिफ़ॉल्ट रूप से स्थापित नहीं होता है। आपको इसे ठीक करने की आवश्यकता है:
  1. कमांड प्रॉम्प्ट पर, निम्न दर्ज करें:sudo apt-get install openjfx

  2. उसके बाद, प्रोजेक्ट सेटिंग्स (ALT+CTRL+SHIFT+S) -> SDKs -> क्लासपाथ पर जाएं और दाईं ओर धन चिह्न पर क्लिक करें। फ़ाइल jfxrt.jar का चयन करें। यह स्थापित JDK में स्थित है: <JDK_PATH>/jre/lib/ext/jfxrt.jar

  3. ओके पर क्लिक करें।

मेरे पास Java 11 है। मैं गेम नहीं चला सकता। इक्या करु Java 11 में JavaFX नहीं है। नतीजतन, कंपाइलर गेम को संकलित करने में सक्षम नहीं होगा, और जब आप गेम को चलाने का प्रयास करेंगे तो आपको एक त्रुटि मिलेगी। समस्या को ठीक करने के लिए, आपको प्रोजेक्ट में JavaFX जोड़ना होगा:
  1. https://gluonhq.com/products/javafx/ पर JavaFX Windows SDK डाउनलोड करें ।

  2. डाउनलोड किए गए संग्रह को किसी भी फ़ोल्डर में अनपैक करें (अधिमानतः गेम्स प्रोजेक्ट के लिब फ़ोल्डर में)।

  3. आईडिया खोलें।

  4. आईडीईए में, फाइल -> प्रोजेक्ट स्ट्रक्चर पर जाएं।

  5. लाइब्रेरी टैब का चयन करें और + -> जावा पर क्लिक करें।

    CodeGym — गेम्स पर नया खंड - 6
  6. अनपैक्ड javafx-sdk फ़ोल्डर का पथ निर्दिष्ट करें और lib फ़ोल्डर का चयन करें

    CodeGym — गेम्स पर नया खंड - 7
  7. ओके पर क्लिक करें। फिर नई विंडो में, JavaFX को गेम्स मॉड्यूल में जोड़ें।

    CodeGym — गेम्स पर नया खंड - 8
  8. अब एक नई लाइब्रेरी दिखनी चाहिए। लागू करें पर क्लिक करें -> ठीक है।

    CodeGym — गेम्स - 9 पर नया खंड
  9. खेल को सही ढंग से चलाने के लिए, रन-> कॉन्फ़िगरेशन संपादित करें खोलें, और वीएम विकल्प फ़ील्ड में निम्न दर्ज करें:

    
    --module-path ./lib/javafx-sdk-16/lib --add-modules=javafx.controls,javafx.fxml,javafx.base
    
    CodeGym — गेम्स - 10 पर नया खंड
  10. इसके बाद, आपको इस टैब पर एप्लिकेशन को जोड़ना होगा। ऐसा करने के लिए, + -> एप्लिकेशन पर क्लिक करें

    CodeGym — गेम्स - 11 पर नया खंड
    1. गेम्स मॉड्यूल का चयन करें

    2. मुख्य वर्ग के लिए पथ दर्ज करें (इस मामले में - SnakeGame)

    3. आइटम 9 के समान वीएम विकल्प दर्ज करें।

    लागू करें पर क्लिक करें -> ठीक है

    CodeGym — गेम्स पर नया खंड - 12
  11. खेल चलाओ।

टिप्पणियां
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION