Descent 3 का source code सार्वजनिक
अपडेट (2024/04/16)
- Descent डेवलपर Discord कम्युनिटी में भारी रुचि और भागीदारी के लिए धन्यवाद। पहले से ही एक सक्रिय कम्युनिटी मौजूद है, इसलिए नीचे दिए गए लिंक से जुड़ें।
- जल्द ही बड़े commit आने की उम्मीद है, जैसे अन्य डेवलपर्स का समानांतर में काम करना या इस code के archive होने के बाद लिखे गए code को merge करना।
विकास दिशा और निर्णय
- आगे चलकर C++17 को support किया जाएगा।
- Code formatting के लिए LLVM mode वाला clang इस्तेमाल किया जा रहा है, इसलिए PR submit करने से पहले clang-format चला दें।
प्रारंभिक रिलीज़
- यह Descent 3 source code का नवीनतम संस्करण है, जिसमें Jeff Slutter और Kevin Bentley द्वारा कुछ साल पहले लिखा गया '1.5' patch शामिल है। उस समय यह Windows, Linux, Mac पर चलता था।
- Interplay की कुछ proprietary sound और video libraries (ACM, MVE format) हटा दी गई हैं। संबंधित code हमारे पास है, इसलिए पुराने cutscene को चलाने के लिए converter बनाने में मदद करने वाले लोगों की तलाश है। compile हो सके इसके लिए उस code को stub out करने में मेहनत लगेगी।
- फिलहाल लक्ष्य यह है कि सब कुछ फिर से compile हो जाए, और संभव हो तो CI/CD actions भी जोड़े जाएँ। उसके बाद code cleanup की ज़रूरत है, जैसे पुराने version control comments हटाना। ज़्यादातर code एक शानदार टीम ने लिखा था, लेकिन यह भी ध्यान रखना चाहिए कि उस समय हम कहीं ज़्यादा युवा और कम अनुभवी थे।
- अगर आप maintenance में मदद करना चाहते हैं, तो message भेजें। नहीं तो PR का भी स्वागत है।
- अलग-अलग architectures पर इसे चलते हुए दिखाने वाला यह आख़िरी अपडेट है। 1.5 patch रिलीज़ न कर पाने के लिए खेद है। कुछ logistics समस्याओं ने बाधा डाली।
- 90s के code को modernize करने का अधिकांश काम करने के लिए Jeff Slutter का धन्यवाद। कम्युनिटी इसके साथ क्या करती है, यह देखने की उत्सुकता है!
GN⁺ की राय
- 20 साल से अधिक समय से पसंद किए जा रहे इस game का source code सार्वजनिक होने से कई डेवलपर्स की रुचि बढ़ने की संभावना है। लेकिन पुराने code को modernize करने में काफ़ी मेहनत लगेगी।
- Source code सार्वजनिक होना अपने आप में महत्वपूर्ण है, लेकिन इसे वास्तविक game में लागू करने के लिए license issues का समाधान, modern platforms का support, और development process स्थापित करने जैसी कई चुनौतियाँ दिखती हैं.
- Open source project के टिकाऊ विकास के लिए स्पष्ट roadmap, contributor guidelines, और governance framework जैसी चीज़ों की पहले ज़रूरत होगी।
- Game engine open source में Godot, Cocos2d-x आदि सक्रिय रूप से विकसित हो रहे हैं। इनके फायदे-नुकसान समझकर अलग पहचान की रणनीति पर विचार करने की ज़रूरत है।
- 20 साल पुराना game आज भी प्रभावी लगेगा या बहुत पुराना महसूस होगा, यह चिंता का विषय है। graphics, sound, UI जैसे core elements को आधुनिक तरीके से upgrade करना ज़रूरी लगता है.
1 टिप्पणियां
Hacker News टिप्पणियाँ
Descent गेम सीरीज़ ने एक व्यक्ति के जीवन पर गहरा प्रभाव डाला, ऐसी कई कहानियाँ साझा की गईं। उसने फ़ोरम में मिली अपनी पत्नी से शादी की, अपने बेटों के नाम Descent दोस्तों के निकनेम पर रखे, और परिचितों की शादियों व अंतिम संस्कारों में शामिल होने जैसी बातें भी बताईं.
Descent की 360-डिग्री मुक्त उड़ान कंट्रोल प्रणाली बाद के FPS गेमों में Y-axis inversion विकल्प की उत्पत्ति बनी। एक डेवलपर ने याद किया कि 12 साल की उम्र में Descent FAQ पढ़कर उसने IRC सीखा, और आज इंजीनियर व गेम डेवलपर बनने तक Descent का उस पर बड़ा प्रभाव रहा.
प्रतिस्पर्धी खिलाड़ियों के बीच गति को अधिकतम करने के लिए 'trichording' नाम की तकनीक इस्तेमाल होती थी, जिसमें 3-axis पर एक साथ चलने के लिए कई keys एक साथ दबाई जाती थीं। यह इरादतन डिज़ाइन था या bug, यह स्पष्ट नहीं है.
Descent 3 के पुराने sound/video library formats (ACM, MVE) हटा दिए गए हैं, लेकिन conversion tools विकसित करने के लिए code साझा करने की इच्छा जताई गई। लगता है कि FFMPEG इन formats को support करता है.
एक इंजीनियर के लिए Descent सीरीज़ इंटरनेट की दुनिया का प्रवेश-द्वार थी। 10 साल की उम्र में उसने D1 में दोस्तों के साथ फोन कनेक्शन पर खेला, D2 में Kali/Kahn के जरिए matchmaking का अनुभव किया। उसने IRC और ICQ का उपयोग शुरू किया और नवीनतम PC upgrades में डूब गया। D3 में दुनिया की शीर्ष 100 रैंकिंग में आना उसके लिए बेहद प्रभावशाली अनुभव था.
Descent 3 source code जारी करने की प्रक्रिया और पृष्ठभूमि को लेकर जिज्ञासा भी थी, साथ ही Interplay के दूसरे गेम Hardwar के source code जारी होने की संभावना के बारे में भी पूछा गया था.