5 मार्च 2026 · मिखाइल वासिलयेव

Nexus डेवलॉग: इंजन का प्रोटोटाइप

Watch on YouTube

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

प्रोटोटाइप का मेन्यू: इंजन चार सिमुलेशन में से एक चुनने का विकल्प देता है - Stone Age, Slay the Spire, तारा-मंडल जनरेटर और Oregon Trail

अभी इंजन ऐसा दिखता है। ऊपर से यह एक काफ़ी सादा कंसोल ऐप्लिकेशन है। पर यह सबसे ज़रूरी बात अच्छी तरह दिखा देता है - कि अलग-अलग मैकेनिक्स एक ही सार्वभौमिक इंजन पर चलती हैं।

फ़िलहाल इस पर चार सिमुलेशन चल रही हैं। पहली है Stone Age, स्टूडियो की सबसे पहली गेम, 2013 की। बाकी तीन दूसरों के प्रोजेक्ट के आधार पर हैं। इन्हें न मैं कॉपी करने वाला हूँ, न रिलीज़ करने - ये यहाँ सिर्फ़ यह दिखाने के लिए हैं कि एक ही इंजन पर बिल्कुल अलग-अलग गेम मैकेनिक्स चल सकती हैं।

Stone Age

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

प्रोटोटाइप का कंसोल: Stone Age - कबीले की खूबियाँ, ज़मीनें, तकनीक और विकास का मेन्यू

Slay the Spire

आगे है Slay the Spire, एक बढ़िया कार्ड रोगलाइक, आप में से कई ने ज़रूर खेली होगी। इंजन पर सिर्फ़ लड़ाई है: खिलाड़ी के पास कार्ड, ऊर्जा और सेहत है, दुश्मन का अपना इरादा। Strike (हमला) मारता है, Defend (बचाव) ब्लॉक लगाता है। ऊर्जा खर्च करते हो, चाल ख़त्म करते हो, और इसी तरह बारी-बारी से, जब तक कोई जीत न जाए।

वही कंसोल Slay the Spire चलाते हुए - सेहत, ऊर्जा, दुश्मन का इरादा और हाथ में मौजूद कार्ड

GURPS

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

GURPS मॉड्यूल में बनाया गया एक तारा-मंडल - तारा, उसकी कक्षाएँ और पहली दुनिया की खूबियाँ

Oregon Trail

चौथी है Oregon Trail, 1971 की क्लासिक और सबसे शुरुआती कंप्यूटर गेम्स में से एक। यह बैलगाड़ियों पर अमेरिका पार करते बसने वालों का सफ़र है: रास्ते से पहले रसद ख़रीदते हो - बैल, खाना, गोला-बारूद, कपड़े - और फिर शिकार करते हो, राशन बाँटते हो और घटनाओं से निपटते हो। हम पर तो अभी हमला हो गया। और इसी तरह सफ़र के आख़िर तक।

उसी कंसोल में Oregon Trail: रसद - खाना, गोला-बारूद, कपड़े, पैसे - और घुड़सवारों के आने पर क्या करें इसका चुनाव

चारों गेम एक ही इंजन पर चलती हैं, और किसी के लिए भी कोड लिखना नहीं पड़ा।

चलते-चलते बदलाव

पर इंजन सिर्फ़ इन गेम्स को चलाता ही नहीं - इन्हें चलते-चलते बदला भी जा सकता है, कोड को छुए बिना। चलो Slay the Spire को लेते हैं।

इंजन पर Slay the Spire की शुरुआती चाल: सेहत, ऊर्जा, दुश्मन और हाथ में पाँच कार्ड - Strike (हमला) का नुकसान अभी 6 है

Strike (हमला) कार्ड का नुकसान बदलता हूँ, 100 कर देता हूँ:

/set Strike.CalcDamage Value 100

यह गुण इन दोनों कार्ड में एक साथ बदल गया, क्योंकि इनकी श्रेणी एक ही है।

हाथ में दो Strike (हमला) कार्ड, दोनों का नुकसान अब 100 - यह गुण इस श्रेणी के हर कार्ड में एक साथ बदल गया

और एक बिल्कुल नया कार्ड भी जोड़ा जा सकता है, Fireball (आग का गोला):

/add Fireball Is DirectDamage
/set Fireball.CostEnergy Value 2
/add Fireball Has CalcDamage
/set Fireball.CalcDamage Value 20
/add Fireball Has ApplyDamage
/add Fireball.ExecutionEffects Has CostEnergy
/add Fireball.ExecutionEffects Has CalcDamage
/add Fireball.ExecutionEffects Has ApplyDamage

यह था ही नहीं, और अब गेम में है - हाथ में रहता है, खेला जाता है, 20 नुकसान करता है और किसी आम कार्ड की तरह डिस्कार्ड ढेर में चला जाता है:

बदलावों के बाद: दोनों Strike (हमला) कार्ड अब 100 नुकसान के हैं, और हाथ में 20 नुकसान वाला एक नया Fireball (आग का गोला) कार्ड आ गया है

ख़ुद नियमों को भी बदला जा सकता है, एक ही कमांड से। मैं वह नियम हटाता हूँ जिसके चलते खेले हुए कार्ड डिस्कार्ड ढेर में चले जाते हैं।

/remove PlayCard Has MovePlayedCard

अब वे हाथ में ही रहते हैं। मैंने Defend (बचाव) खेला: ब्लॉक लग गया, ऊर्जा खर्च हुई, पर कार्ड वहीं रह गया।

नियम बदलने के बाद: Defend (बचाव) खेला गया - ऊर्जा 0/3, ब्लॉक 5 - पर खेले हुए सारे कार्ड हाथ में ही रह गए, [X] से चिह्नित

किसी प्रोग्रामिंग भाषा में लिखी आम गेम में इसके लिए कोड में घुसना पड़ता और प्रोजेक्ट दोबारा बिल्ड करना पड़ता। यहाँ इसकी ज़रूरत नहीं।

इसी तरह गेम में वह भी जोड़ा जा सकता है जो उसमें पहले था ही नहीं। मसलन सोना - इसे बनाता हूँ और बताता हूँ कि यह कैसे खर्च होता है:

/set Player.Gold Value 100
/add CostGold Output Owner.Gold
/add CostGold Math.Subtract.Apply true

एक ऐसी खूबी आ जाती है जो अभी-अभी थी ही नहीं - सोना, और सीधे पूरी एक सौ।

स्थिति की पंक्ति में सोना आ गया - सीधे सौ, एक ऐसी खूबी जो गेम में अभी-अभी थी ही नहीं

इस सोने के सहारे एक नया एक्शन भी बनाया जा सकता है - Bribe (रिश्वत)। यह ऊर्जा नहीं, बल्कि सोना खर्च करता है:

/add Bribe Is DirectDamage
/set Bribe.CostEnergy Value 0
/set Bribe.CostGold Value 30
/add Bribe Has CalcDamage
/set Bribe.CalcDamage Value 15
/add Bribe Has ApplyDamage
/add Bribe Has CostGold
/add Bribe.ExecutionEffects Has CostGold
/add Bribe.ExecutionEffects Has CalcDamage
/add Bribe.ExecutionEffects Has ApplyDamage
/create Bribe Player.Hand

Bribe (रिश्वत) तीस सोने में पड़ता है और पंद्रह नुकसान करता है - और तुरंत काम करता है।

हाथ में एक नया एक्शन आ गया, Bribe (रिश्वत): शून्य ऊर्जा, तीस सोना और पंद्रह नुकसान

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

इस भाषा को सीखना ज़रूरी नहीं। AI से कहा जा सकता है कि वह एक आम वाक्य को उन कमांड में बदल दे जिन्हें Nexus समझता है। मसलन:

give 999 gold

हिंदी में इसका मतलब बस इतना है - «999 सोना जोड़ दो»।

AI से आम शब्दों में एक गुज़ारिश - «give 999 gold»। इंजन ख़ुद सही कमांड चुन लेगा और उसे चला देगा

AI सोचता है, सही कमांड ढूँढता है और चला देता है, और हमारे पास 999 सोना आ जाता है।

इसे और तरह से भी कहा जा सकता है, «सोना 100» - यह भी काम कर जाता है। «मुझे भगवान बना दो» - AI अमरता थमा देता है। चाल ख़त्म करना, मारना, ख़ुद को ठीक करना - यह सब शब्दों से किया जा सकता है, इंजन समझ लेता है। और इनमें से कुछ भी स्क्रिप्ट किया हुआ नहीं है, सब सचमुच काम करता है।

योजनाएँ

कमांड को मैं आसान बनाना चाहता हूँ। अभी वही Fireball (आग का गोला) बनाने में करीब आठ कमांड लगती हैं, और सोच रहा हूँ इसे तीन-चार तक ले आऊँ। और अगले वीडियो में कुछ ज़्यादा देखने लायक दिखाने की कोशिश करूँगा - एक 2D रेंडर।

इंजन और योजनाओं के बारे में और जानकारी Nexus सेक्शन में है।

स्पष्टीकरण: Stone Age स्टूडियो की गेम है। Slay the Spire, GURPS और Oregon Trail अपने-अपने अधिकार-धारकों के हैं और यहाँ सिर्फ़ इंजन की झलक दिखाने के लिए हैं - ये बिल्ड कहीं भी वितरित नहीं किए जाते।