कई खेलों में युद्ध के लिए किसी न किसी प्रकार के शत्रु शामिल होते हैं। उन विभिन्न तरीकों का अन्वेषण करें जिन्हें आप जोड़ सकते हैं—और चालाकी—दुश्मन से मुकाबला कर सकते हैं।

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

गोडोट का उपयोगकर्ता-अनुकूल इंटरफ़ेस और सहज स्क्रिप्टिंग भाषा, जीडीस्क्रिप्ट, प्रक्रिया को कुशल और आनंददायक बनाती है।

गोडोट गेम की स्थापना

शत्रु निर्माण में उतरने से पहले, अपने 2डी गेम की बुनियादी संरचना तैयार करें गोडोट गेम इंजन.

गोडोट में एक नया 2डी प्रोजेक्ट बनाएं। मुख्य दृश्य में, एक नया बनाएं काइनेमैटिकबॉडी2डी नोड और इसे नाम दें खिलाड़ी. प्लेयर नोड के अंदर, एक जोड़ें CollisionShape2D एक आयताकार आकार के साथ, जो खिलाड़ी का हिटबॉक्स होगा। ए भी जोड़ें प्रेत खिलाड़ी के चरित्र के दृश्य प्रतिनिधित्व के रूप में नोड।

इस आलेख में प्रयुक्त कोड इसमें उपलब्ध है गिटहब रिपॉजिटरी और यह आपके लिए एमआईटी लाइसेंस के तहत उपयोग करने के लिए निःशुल्क है।

instagram viewer

निम्नलिखित जीडीस्क्रिप्ट कोड को इसमें संलग्न करें खिलाड़ी बुनियादी संचलन को सक्षम करने के लिए नोड:

extends KinematicBody2D

const SPEED = 200

func _physics_process(delta):
var motion = Vector2.ZERO

if Input.is_action_pressed("ui_right"):
motion.x += SPEED

if Input.is_action_pressed("ui_left"):
motion.x -= SPEED

if Input.is_action_pressed("ui_down"):
motion.y += SPEED

if Input.is_action_pressed("ui_up"):
motion.y -= SPEED

motion = move_and_slide(motion)

इस कोड के साथ, खिलाड़ी तीर कुंजियों या WASD कुंजियों का उपयोग करके बाएँ, दाएँ, ऊपर और नीचे जा सकता है।

एक साधारण शत्रु बनाना

अब जब आपके पास एक खिलाड़ी चरित्र सेट अप है, तो आप एक साधारण दुश्मन बना सकते हैं।

एक नया दृश्य बनाएं और जोड़ें स्टेटिकबॉडी2डी नोड नामित दुश्मन. शत्रु नोड के अंदर, एक जोड़ें CollisionShape2D दुश्मन के हिटबॉक्स को परिभाषित करने के लिए एक वृत्त आकार वाला नोड। ए भी जोड़ें प्रेत दुश्मन का दृश्य रूप से प्रतिनिधित्व करने के लिए नोड।

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

किसी शत्रु को खिलाड़ी का अनुसरण कराना

खिलाड़ी का अनुसरण करने वाले शत्रु बनाने से खेल में चुनौती का एक नया स्तर जुड़ जाता है।

निम्नलिखित शत्रु प्रकार के लिए एक नया दृश्य बनाएं और जोड़ें काइनेमैटिकबॉडी2डी नोड नामित शत्रु का अनुसरण करें CollisionShape2D के साथ। प्लेयर को फ़ॉलो करने के लिए फ़ॉलोएनेमी नोड में निम्नलिखित GDScript कोड संलग्न करें:

extends KinematicBody2D

const SPEED = 100

func _physics_process(delta):
var player = get_parent().get_node("Player")
var player_position = player.global_position
var enemy_position = global_position
var direction = player_position - enemy_position
direction = direction.normalized()

var motion = direction * SPEED * delta
move_and_collide(motion)

अब शत्रु का अनुसरण करें प्रत्येक फ्रेम में खिलाड़ी की स्थिति की ओर बढ़ेगा।

दुश्मन की गोलियाँ जोड़ना

अब, आप दुश्मन से खिलाड़ी की ओर गोलियां चलवा सकते हैं। एक नया दृश्य बनाएं और उसे नाम दें बुलेट.tscn. एक जोड़ना काइनेमैटिकबॉडी2डी दृश्य के लिए नोड. संलग्न करें बुलेट.जी.डी बुलेट.tscn दृश्य में KinematicBody2D नोड की स्क्रिप्ट। बुलेट वर्ग को परिभाषित करने के लिए निम्नलिखित कोड जोड़ें:

extends KinematicBody2D

const BULLET_SPEED = 300
var bullet_direction = Vector2.ZERO

func _physics_process(delta):
var motion = bullet_direction * BULLET_SPEED * delta
move_and_collide(motion)

func set_direction(direction):
bullet_direction = direction.normalized()

अब, गोलियों से दुश्मन के लिए एक नया नोड बनाएं और उसे नाम दें शूटिंगदुश्मन. ShootingEnemy नोड के अंदर, एक जोड़ें CollisionShape2D हिटबॉक्स के रूप में एक आयताकार आकार वाला नोड।

बुलेट शूट करने के लिए ShootingEnemy नोड में निम्नलिखित GDScript कोड संलग्न करें:

extends KinematicBody2D

const SPEED = 100
const SHOOT_DELAY = 1.5
var shoot_timer = SHOOT_DELAY

# Import the Bullet scene
const BulletScene = preload("res://Bullet.tscn")

func _physics_process(delta):

# Shooting logic
shoot_timer -= delta

if shoot_timer <= 0:
shoot_timer = SHOOT_DELAY
var bullet_instance = BulletScene.instance()
bullet_instance.global_position = global_position
bullet_instance.set_direction(direction)
get_parent().add_child(bullet_instance)

दुश्मन अब समय-समय पर खिलाड़ी की स्थिति की ओर गोलियां चलाएगा। एक सशर्त का प्रयोग करें अगर कथन यह जांचने के लिए कि क्या शूट_टाइमर 0 से कम है. अगर ऐसा है तो गोली मारो.

बेतरतीब ढंग से घूम रहा दुश्मन

खिलाड़ी का पीछा करने वाले या उस पर गोली चलाने वाले दुश्मनों के अलावा, एक बेतरतीब ढंग से घूमने वाला दुश्मन आपके खेल में अप्रत्याशितता और चुनौती का तत्व डाल सकता है। यादृच्छिक गति पैटर्न के साथ एक दुश्मन बनाने के लिए सरल तर्क और यादृच्छिक संख्या पीढ़ी के संयोजन की आवश्यकता होती है।

एक नया दृश्य बनाकर प्रारंभ करें और एक जोड़ें काइनेमैटिकबॉडी2डी नोड नामित यादृच्छिक शत्रु. नामक एक नई स्क्रिप्ट बनाएँ RandomEnemy.gd और इसे RandomEnemy नोड से जोड़ें। स्क्रिप्ट यादृच्छिक गति तर्क को संभाल लेगी।

extends KinematicBody2D

const MOVE_SPEED = 100
const MOVE_INTERVAL_MIN = 1.0
const MOVE_INTERVAL_MAX = 3.0

var move_timer = 0.0
var move_interval = 0.0
var move_direction = Vector2.ZERO

func _ready():
choose_new_direction()

func choose_new_direction():
move_interval = rand_range(MOVE_INTERVAL_MIN, MOVE_INTERVAL_MAX)
move_timer = move_interval
move_direction = Vector2(randf(), randf()).normalized()

func _physics_process(delta):
move_timer -= delta

if move_timer <= 0.0:
choose_new_direction()

var motion = move_direction * MOVE_SPEED * delta
move_and_collide(motion)

अतिरिक्त सुविधाओं सहित

गेमप्ले को और अधिक रोचक बनाने के लिए आप अपने दुश्मनों के लिए कई अतिरिक्त सुविधाएँ जोड़ सकते हैं।

बॉस की लड़ाई

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

गतिशील शत्रु पैदा करना

एक गतिशील स्पॉनिंग सिस्टम लागू करें जो खिलाड़ी के प्रदर्शन, स्थान या इन-गेम घटनाओं के आधार पर दुश्मन के मुकाबले को समायोजित करता है। यह अधिक प्रतिक्रियाशील और वैयक्तिकृत गेमप्ले अनुभव बनाता है।

पर्यावरण अनुकूलन

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

शत्रु की कमज़ोरियाँ और प्रतिरोध

दुश्मनों को विशिष्ट कमजोरियाँ और प्रतिरोध निर्दिष्ट करें, खिलाड़ियों को विभिन्न दृष्टिकोणों और रणनीतियों के साथ प्रयोग करने के लिए प्रोत्साहित करें। कुछ शत्रु कुछ हमलों या तत्वों के प्रति संवेदनशील हो सकते हैं, जबकि अन्य प्रतिरक्षित या प्रतिरोधी होते हैं।

शत्रु अनुकूलन और व्यवहार भिन्नताएँ

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

इन अतिरिक्त सुविधाओं की एक किस्म को शामिल करने से आपके गेम के दुश्मन डिजाइन को समृद्ध किया जा सकता है, जिससे प्रत्येक मुठभेड़ खिलाड़ियों के लिए अद्वितीय और यादगार बन जाएगी।

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

शत्रु बनाने के सर्वोत्तम अभ्यास

अपने गोडोट गेम में दुश्मन बनाते समय, निम्नलिखित सर्वोत्तम प्रथाओं पर विचार करें:

स्पष्ट दृश्य संचार

दुश्मनों को आसानी से पहचानने योग्य बनाने के लिए पर्यावरण से अलग दिखने वाले अलग-अलग दुश्मन डिजाइनों का उपयोग करें।

शत्रु प्रकारों को अलग करने के लिए रंग-कोडिंग या अद्वितीय सिल्हूट का उपयोग करने पर विचार करें। सुनिश्चित करें कि दुश्मन के एनिमेशन और दृश्य प्रभाव उनके व्यवहार और हमलों को सुदृढ़ करें।

संतुलन बनाने में कठिनाई

जैसे-जैसे खिलाड़ी खेल में आगे बढ़ता है, धीरे-धीरे बढ़ती जटिलता के साथ दुश्मनों का परिचय कराता है। यह सुनिश्चित करने के लिए कि चुनौतियाँ सभी खिलाड़ियों के लिए उपयुक्त हैं, विभिन्न कौशल स्तरों वाले खिलाड़ियों के साथ दुश्मन के मुकाबलों का परीक्षण करें। अचानक कठिनाई बढ़ने से बचें जो खिलाड़ियों को निराश कर सकती हैं।

सस्ते शॉट्स से बचना

दुश्मनों को ऐसे हमलों से डिज़ाइन करें जिनसे खिलाड़ी बच सकें या उन्हें रोक सकें, जिससे उन्हें प्रतिक्रिया करने का मौका मिल सके। दुश्मनों के हमलों के लिए एक निष्पक्ष हिटबॉक्स का उपयोग करें, उन हमलों से बचें जो उनके दृश्य प्रतिनिधित्व से परे हमला करते हैं। खतरनाक हमलों का संकेत देने के लिए चेतावनी संकेतों या संकेतों का उपयोग करें।

Playtesting और Iteration

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

ध्वनि प्रभाव

ध्वनि प्रभाव एक गहन और मनोरम खेल वातावरण बनाने में महत्वपूर्ण भूमिका निभाते हैं। जब कोई दुश्मन हमला करता है, तो उपयुक्त जोड़ें कॉपीराइट-मुक्त ध्वनि प्रभाव युद्ध में प्रभाव और सहभागिता की भावना को सुदृढ़ करना।

आपका गेम प्रत्येक स्ट्राइक या हिट के साथ अलग-अलग ऑडियो संकेतों के साथ आ सकता है जो हमले के प्रकार और दुश्मन की विशेषताओं के अनुरूप होते हैं।

गोडोट गेम्स को दुश्मनों के साथ और अधिक उलझाने वाला बनाना

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

कठिनाई को संतुलित करना, दृश्य और श्रवण प्रतिक्रिया प्रदान करना और खिलाड़ियों को एक सुखद और पुरस्कृत गेमिंग अनुभव प्रदान करने के लिए अपने दुश्मनों का पूरी तरह से परीक्षण करना याद रखें।