OpenStreetMap का उपयोग कर Minecraft शहर बनाने की तकनीक Arnis
(github.com/louis-e)- Arnis एक मुफ्त open source प्रोजेक्ट है जो वास्तविक भूगोल, स्थलाकृति और वास्तुकला को दर्शाने वाले Minecraft Java Edition 1.17+ और Bedrock Edition वर्ल्ड बनाता है
- इसका generation algorithm OpenStreetMap geospatial data और elevation data को प्रोसेस करके Minecraft के भीतर terrain और buildings को अधिक सटीक रूप से पुनर्निर्मित करता है
- उपयोगकर्ता मैप पर rectangle tool से क्षेत्र चुनकर, Minecraft वर्ल्ड चुनने के बाद
Start Generationदबाकर generation शुरू कर सकते हैं; world scale, spawn point और building interior generation जैसी settings भी बदली जा सकती हैं - बिना install किए ब्राउज़र में वर्ल्ड बनाना हो, या बड़े map size और mobile generation चाहिए, तो MapSmith का उपयोग किया जा सकता है
- आधिकारिक डाउनलोड स्रोत केवल arnismc.com और GitHub repository हैं; अन्य वेबसाइटों पर Arnis डाउनलोड अनौपचारिक हैं और malicious हो सकते हैं
Arnis से बनने वाले Minecraft वर्ल्ड
- Arnis ऐसे Minecraft वर्ल्ड बनाता है जो वास्तविक दुनिया के भूगोल, स्थलाकृति और वास्तुकला को दर्शाते हैं
- यह Minecraft Java Edition 1.17+ और Bedrock Edition को सपोर्ट करता है
- आप अपने hometown, बड़े शहरों या प्राकृतिक दृश्यों जैसे वास्तविक क्षेत्रों को Minecraft वर्ल्ड में बदल सकते हैं
- यह प्रोजेक्ट बड़े पैमाने के वास्तविक geospatial data को संभालने के लिए डिज़ाइन किया गया एक मुफ्त open source टूल है
- generation process में OpenStreetMap के geospatial data और elevation data दोनों का साथ में उपयोग होता है
- लक्ष्य terrain और buildings का Minecraft में अधिक सटीक representation बनाना है
उपयोग का तरीका
- उपयोगकर्ता latest release डाउनलोड कर सकते हैं या सीधे build कर सकते हैं
- GUI में मैप पर rectangle tool से इच्छित क्षेत्र चुनें, Minecraft वर्ल्ड निर्दिष्ट करें, फिर
Start Generationपर क्लिक करें - generation settings में कई विकल्प समायोजित किए जा सकते हैं
- world scale
- spawn point
- building interior generation
- अगर mobile generation या बड़ा map size चाहिए, तो MapSmith ब्राउज़र में बिना install किए वर्ल्ड generate करता है
दस्तावेज़ और विकास लक्ष्य
- पूरा documentation GitHub Wiki पर उपलब्ध है
- तकनीकी विवरण
- FAQ
- contribution guidelines
- roadmap
- प्रोजेक्ट के मुख्य लक्ष्य modularity, performance, documentation, usability और cross-platform support हैं
- data import, processing और world generation को स्पष्ट रूप से अलग रखकर maintainability और extensibility बढ़ाने का प्रयास है
- तेज़ world generation के लिए performance optimization पर ज़ोर दिया गया है
- code के अंदर documentation के जरिए structure और logic को स्पष्ट बनाने का लक्ष्य है
- end user के लिए आसान उपयोग अनुभव देना उद्देश्य है
- लक्ष्य है कि यह Windows, macOS और Linux पर सुचारु रूप से चले
build और contribution
- प्रोजेक्ट bug fix, performance improvement, नई features और documentation सुधार सहित हर स्तर के contribution स्वीकार करता है
- contribution process में repository को fork करना, बदलाव करना और फिर pull request जमा करना शामिल है
- command line build का उदाहरण:
cargo run --no-default-features -- --terrain --path="C:/YOUR_PATH/.minecraft/saves/worldname" --bbox="min_lat,min_lng,max_lat,max_lng"
- GUI build इस कमांड से चलाया जाता है
cargo run
- Nix उपयोगकर्ता इसे इस तरह सीधे चला सकते हैं
nix run github:louis-e/arnis -- --terrain --path=YOUR_PATH/.minecraft/saves/worldname --bbox="min_lat,min_lng,max_lat,max_lng"
- pull request merge होने पर बदलाव नियमित update releases में शामिल किए जाते हैं
पहचान, लाइसेंस और आधिकारिक स्रोत
- Arnis को दिसंबर 2024 के बाद अधिक ध्यान मिला और इसे कई academic और media स्रोतों में कवर किया गया
- Building realistic Minecraft worlds with Open Data on AWS: How Arnis uses elevation datasets at scale
- Floodcraft: Game-based Interactive Learning Environment using Minecraft for Flood Mitigation and Preparedness for K-12 Education
- Hackaday: Bringing OpenStreetMap Data into Minecraft
- TomsHardware: Minecraft Tool Lets You Create Scale Replicas of Real-World Locations
- XDA Developers: Hometown Minecraft Map: Arnis
- Arnis Apache License 2.0 के तहत वितरित किया जाता है
src/luanti_block_map.rsमें Luanti block name mapping, MC2MT से व्युत्पन्न है और GNU Lesser General Public License v2.1 या बाद के लाइसेंस का पालन करती है- आधिकारिक प्रोजेक्ट वेबसाइट केवल arnismc.com और GitHub repository हैं
- अन्य वेबसाइटों के डाउनलोड अनौपचारिक हैं और malicious हो सकते हैं
- Arnis आधिकारिक Minecraft प्रोडक्ट नहीं है और न ही Mojang या Microsoft द्वारा अनुमोदित या उनसे संबद्ध है
1 टिप्पणियां
Hacker News की राय
10 साल से भी पहले मैंने Cities in Motion 2 के लिए city generator, open source project maps4cim बनाया था, जिसमें सड़कों और buildings के लिए OSM data और elevation के लिए NASA SRTM data इस्तेमाल किया था
OSM कहीं ज़्यादा जटिल है और data भी रोज़ बदलता है, लेकिन Overpass API को वही query भेजें तो आज भी latest data अपेक्षित format में मिल जाता है
इसके उलट NASA ने किसी समय public domain SRTM data की public access बंद कर दी और उसे registered users के लिए ही उपलब्ध एक non-REST web service के पीछे छिपा दिया
अगर data मुफ्त और आसानी से उपलब्ध न होता, तो मैं शुरुआत में ऐसा open source project शुरू ही नहीं करता; और entry barrier बनते ही हम वे सारे अच्छे tools खो देते हैं जो दिग्गजों के कंधों पर बन सकते थे
उम्मीद है OSM जैसे open data की भावना को सच में लागू करने वाले projects और मज़बूत होंगे
1: https://github.com/Klamann/maps4cim
StreetComplete के gamified quests या osm.org के browser-based editor की वजह से, internet हो तो कोई भी कुछ मिनटों में अपने आसपास की जगहों को सुधार सकता है
हालांकि यह कि जहाँ भी जाएँ, ठीक करने के लिए कुछ न कुछ बचा है, इसका मतलब यह भी है कि contributors पर्याप्त नहीं हैं
बड़ी समस्या यह है कि ऐसा कोई प्रमुख app नहीं है जिसे लोग हमेशा इस्तेमाल करें और errors मिलें; लेकिन Organic Maps के साथ यह धीरे-धीरे बदल रहा है, और सुना है कि Tesla auto parking की वजह से भी कुछ नए लोग mapping करने लगे हैं
https://www.reddit.com/r/gis/comments/qg4b6j/is_it_possible_...
Geonames भी SRTM और दूसरे data के आधार पर elevation lookup service देता है: http://www.geonames.org/export/web-services.html
हालांकि अगर बड़े क्षेत्र को बारीकी से sample करना हो, तो API limits लग सकती हैं या service overload हो सकती है
फिर भी यह दिखाता है कि third party के लिए dataset हासिल करके उसके ऊपर API देना संभव है
जहाँ तक मुझे पता है, GPL में नकली hero बनाने पर रोक लगाने वाली कोई धारा नहीं है
हालांकि lexer/parser generators जैसे मामलों में, जहाँ output में program के अपने source का कुछ हिस्सा शामिल हो जाता है, exceptions हैं; GNU Bison license में इसे अनुमति देने वाला explicit exception है
Minecraft में Redstone और Command Blocks हैं, और लोगों ने 8086 या Tetris जैसी चीज़ें भी बनाई हैं
सोच रहा हूँ कि क्या ऐसे world generation tools से बनी दुनिया GPL से contaminate होने की कोई edge case हो सकती है
व्यक्तिगत रूप से ऐसे कारणों से मैं BSD/MIT licenses को पसंद करता हूँ। “क्या मैं इस program को सच में इस्तेमाल कर सकता हूँ?” जैसे आसान सवाल पर वकील की fees खर्च नहीं कराना चाहता
मैं इसे बच्चों को हमारे मोहल्ले से ज़्यादा familiar कराने में इस्तेमाल करना चाहूँगा
मैं बार-बार road names या कहाँ मुड़ना है पूछते-पूछते थक गया हूँ, और कभी-कभी तो पूरी turn-by-turn guidance भी देता हूँ
अब तक वे सिर्फ कुछ ही बार रास्ता भटके हैं
हालांकि शायद यह इस project जितनी detailed नहीं है
[0]: https://minecraft.ign.fr/
https://youtube.com/watch?v=vl_MExz52jA
और उसी content पर बच्चे जैसी लगने वाली explanation वाला video:
https://youtu.be/7JYjxSfvJQk?feature=shared
चूँकि पहले से Python implementation था, इसलिए शुरुआत में यह बताना reasonable लगता है कि यह version अलग क्यों है
असल में J से शुरू होने वाला शब्द भी नहीं होता था, बस किसी भी नाम के आगे J लगा देते थे
Python का उल्लेख भी लगभग उतनी ही बार है
शायद यह अलग करना आसान हो कि verbal या
(lat,long,game)format वाला location reference game के अंदर की location है, या उसी नाम वाली game की fictional locationGoogle Maps GlTF 3D tiles से जुड़े दस्तावेज़ https://developers.google.com/maps/documentation/tile/3d-til... में लिखा है कि Google के photorealistic tiles को render करने के लिए ऐसा 3D Tiles renderer इस्तेमाल करना होगा जो attribution दिखाने को support करता हो, और CesiumJS या Cesium for Unreal इस्तेमाल किए जा सकते हैं
Python API वाले open source Minecraft-जैसे गेम्स में sensorcraft है, जो OpenGL 3D के लिए pyglet-आधारित है और
self.add_block(), gravity, AI, circuits वगैरह को handle करता हैWebGL, OpenGL से ज़्यादा portable है, और यह भी जानना चाहूंगा कि pyglet को WASM में compile किया जा सकता है या नहीं
मेरी जानकारी में panda3d और godot को WASM में आसानी से compile किया जा सकता है
Minecraft clone के लिए उपयोगी हो सकने वाला एक Python open source physics engine Genesis-Embodied-AI/Genesis है: “Genesis: A Generative and Universal Physics Engine for Robotics and Beyond” https://news.ycombinator.com/item?id=42457213#42457224
“Approximating mathematical constants using Minecraft” https://news.ycombinator.com/item?id=42319313 में
luanti,minetest,mcpi,MCPI-Revival/minecraft-pi-rebornभी आते हैंमैंने OSM data भी check किया, इसलिए यह और भी अजीब है
वहीं मेरे बच्चे का school ज़्यादा दूर नहीं है और काफ़ी detail में render होता है
और खोजने पर लगा कि वह building OSM में दो अलग-अलग layers वाले multipolygon के रूप में render होती है, जबकि बाकी शायद node sets के आधार पर render होते हैं