DOOMBA


मेरा लिविंग रूम, नरक चला गया।

मेरी नोइस कन्वर्टर में अब एक रोम्बा स्क्रिप्ट है। यह रोम्बा पर नज़र रखता है और ट्रैकिंग डेटा को संग्रहीत करता है, जो आपको इस डेटा को कई अलग-अलग तरीकों से कल्पना करने की अनुमति देता है, जिसमें, ज़ाहिर है, उन्हें डीओएम के लिए यादृच्छिक कार्ड में बदलना।

डीओएम की 25 वीं वर्षगांठ तक ऐसा करने के लिए समय देना बहुत अच्छा होगा, लेकिन यह हुआ और पारित हो गया, और मैं अभी भी eBay पर Roomba 980 की खरीद के लिए इंतजार कर रहा था। यह विचार मुझे नवंबर के आसपास आया, जब मैंने और मेरी पत्नी ने विभिन्न रोबोट वैक्यूम क्लीनर का अध्ययन किया। मैंने पाया कि Roomba SLAM के नए संस्करणों में काफी गुणात्मक रूप से लागू किया गया है, इसलिए मैंने सोचा कि इससे क्या डेटा प्राप्त किया जा सकता है और उनके साथ क्या किया जा सकता है।

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


DOOMBA वर्कफ़्लो

नरक में लौटना इतना आसान कभी नहीं रहा!


DOOMBA और बाकी नई Roomba कार्यक्षमता का उपयोग करने के लिए, आपको नवीनतम नॉइस डाउनलोड करने की आवश्यकता है। वैकल्पिकप्लगइन \ python में जाएं और plugins_ python में tool_roomba.py फ़ाइल को कॉपी करें। नोइस कन्वर्टर के टूल्स मेनू में, आपको एक नया "रूम्बा ट्रैकर" आइटम दिखाई देगा। Roomba ट्रैकर इंटरफ़ेस को खोलने के लिए इसे सक्रिय करें।


रोम्बा ट्रैकर इंटरफ़ेस

इंटरफ़ेस आपको रोम्बा रोबोट के लिए LAN को स्वचालित रूप से स्कैन करने की अनुमति देता है (आपको UDP प्रसारण को सक्षम करना होगा) और Roomba से पासवर्ड प्राप्त करने के लिए निर्देश प्रदर्शित करता है। IP Roomba प्राप्त करने और क्रेडेंशियल्स सेट करने के बाद, आप ट्रैकिंग शुरू कर सकते हैं। जब आप ट्रैकिंग शुरू करते हैं, तो आपको .noeroomba फ़ाइल को सहेजने के लिए कहा जाएगा। यदि आप इसे सहेजने का निर्णय लेते हैं, तो ट्रैकिंग पूरी होने के बाद, इस फ़ाइल में सभी उपयोगी डेटा होंगे।

मैंने केवल Roomba 980 के साथ परीक्षण किया, इसलिए मैं किसी अन्य Roomba उपकरणों के साथ संगतता की गारंटी नहीं दे सकता। हालाँकि, यदि आपके पास कोई संगत उपकरण नहीं है, तो भी आप। Noero निर्देशिका से .noeroomba फ़ाइल का उपयोग कर सकते हैं और DOOMBA और अन्य Roomba से संबंधित सुविधाओं के साथ खेल सकते हैं।

.Noeroomba फ़ाइल (या समाप्त होने वाली) को जनरेट करने के बाद, नॉइज़ फ़ाइलों को देखने के लिए उसमें जाएं। आपके पास फ़ाइल प्रकार के विकल्प के साथ नए राइट-क्लिक संदर्भ मेनू आइटम होंगे:


नई Roomba प्रसंग मेनू आइटम

NoeRoomba विलय विकल्प कई .noeroomba फ़ाइलों के संयोजन के लिए उपयोगी है। कभी-कभी, ट्रैकिंग करते समय, कनेक्शन खो जाता है, या इसे रोकना चाहिए, क्योंकि रूंबा सत्रों के बीच रिचार्ज होता है। इसका मतलब यह है कि आप कई .noeroomba फ़ाइलों को बनाने के लिए चुन सकते हैं, और बाद में उन्हें एक साथ जोड़ सकते हैं।

DOOMBA आइटम का चयन करना, चयनित .noeroomba फ़ाइल से DOOM PWAD बनाने के लिए मुख्य DOOMBA इंटरफ़ेस लॉन्च करेगा:



यदि आप मान "बीज" 0 छोड़ते हैं, तो स्तर स्वतंत्र रूप से उत्पन्न होगा। अन्यथा, यदि आप उस मान का चयन करते हैं जो आपको सूट करता है, तो आप इसे सहेज सकते हैं और इसे फिर से उपयोग कर सकते हैं, साथ ही अन्य विकल्प सेट कर सकते हैं। उपरोक्त सभी विकल्प दुश्मनों / वस्तुओं के स्थान को संदर्भित करते हैं। स्क्रिप्ट को नए प्रकार के ऑब्जेक्ट्स के निर्माण को सरल बनाने के लिए लिखा गया है, साथ ही साथ थिंग आईडी को बदलकर अन्य डीओएम-आधारित गेम के लिए समर्थन भी जोड़ा गया है। हालाँकि, यदि आप प्रयोग करने के इतने शौकीन नहीं हैं, तो आप इंटरफ़ेस से उपलब्ध मूल्यों को समायोजित कर सकते हैं। आप फर्श / छत / दीवार बनावट की सूचियों को भी बदल सकते हैं, और यदि आप DoOM IWAD को Noesis में लोड करते हैं, तो आप देखेंगे कि सभी बनावट के नाम बड़े पैमाने पर डेटा व्यूअर में सूचीबद्ध हैं।

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

एक बोनस के रूप में, मैंने इमेज को NoeRoomba टूल में जोड़ा, जो केवल तभी सक्षम होता है जब Tool_roomba.py में ENABLE_TEST_FUNCTIONS वेरिएबल True पर सेट होता है। यह आपको नियमित छवि फ़ाइलों से .noeroomba फ़ाइलों को उत्पन्न करने की अनुमति देता है, जिससे एक तस्वीर को यादृच्छिक डीओएम कार्ड में बदलने के लिए एक सरल और कुशल तरीका प्रदान किया जा सकता है। मैं यह वादा नहीं कर सकता कि अगर आप उन्हें सभी प्रकार के यादृच्छिक डेटा खिलाते हैं, तो रोम्बा कार्ड के लिए डिज़ाइन किए गए मेरे दुष्ट एल्गोरिदम क्रैश नहीं होंगे, लेकिन मैंने जिन चित्रों का चयन किया है, उनमें यह प्रणाली काफी अच्छी है:


मर्टल कोमबाट!

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

नोट्स में स्क्रिप्ट के लिए, यह पहले ही उल्लेख किया गया है, लेकिन मैं फिर से कहूंगा कि डोरिटा 980 लाइब्रेरी रूंबा प्रोटोकॉल से संबंधित भागों के लिए उपयोगी थी। मैं इसे सीधे उपयोग करूंगा, लेकिन Node.js एक पूर्ण आपदा है। मैं प्राचीन नोडबिल्डर कोड के लिए राफेल क्वीन को भी धन्यवाद देना चाहता हूं, जो इस रिलीज में DOBABA कार्यक्षमता के हिस्से के रूप में शामिल है। यह उन कुछ नोडबिल्डर्स में से एक था जो मैंने पाया कि जीपीएल द्वारा दूषित नहीं थे।

Source: https://habr.com/ru/post/hi434284/


All Articles