एक resource pack के साथ HUD तत्वों को छिपाना और उनका आकार बदलना
hotbar, crosshair और XP bar सभी एक ही texture atlas में होते हैं। यहाँ बताया गया है कि इसके कुछ हिस्सों को अदृश्य कैसे बनाया जाए, किसे स्थानांतरित नहीं किया जा सकता है, और कस्टम HUD टेक्स्ट के लिए फ़ॉन्ट ट्रिक क्या है।
hotbar को छिपाने के लिए कोई config नहीं है। जो मौजूद है वह एक texture है — और इसके एक हिस्से को पारदर्शी बनाने से यह दिखाई देना बंद हो जाता है जबकि सब कुछ काम करता रहता है।
सब कुछ एक ही फ़ाइल में है
assets/minecraft/textures/gui/sprites/hud/
आधुनिक संस्करण पुराने को विभाजित करते हैं widgets.png atlas into individual sprites: hotbar.png, crosshair.png, experience_bar_background.png, heart/full.png, and so on. Replacing any one with a fully transparent PNG of the same dimensions hides it.
समान आयाम मायने रखते हैं। जहाँ 182×22 hotbar की अपेक्षा थी, वहाँ 1×1 पारदर्शी PNG गायब होने के बजाय खिंच जाती है, जिससे एक धुंधली पट्टी बन जाती है।
आप क्या कर सकते हैं और क्या नहीं
कर सकते हैं:
- इसके sprite को पारदर्शी बनाकर किसी भी तत्व को छिपा सकते हैं
- सब कुछ रीस्टाइल करें — अलग-अलग दिल, एक न्यूनतम crosshair, एक थीम वाली hotbar
- समान आकार के कैनवास के अंदर छोटी सामग्री बनाकर दृश्यमान आकार बदलें
नहीं कर सकते:
- किसी तत्व को स्थानांतरित करना। स्थितियाँ हार्डकोडेड हैं; केवल आर्टवर्क ही डेटा है।
- hotbar छिपाएँ स्लॉट फ़्रेम से स्वतंत्र रूप से — वे एक ही sprite हैं।
- बदलें कि एक स्लॉट क्या करता है। यह केवल कॉस्मेटिक है, और आइटम अभी भी चयन करने योग्य है।
उस आखिरी बात को साफ़ तौर पर कहना ज़रूरी है: छिपी हुई hotbar भी एक hotbar ही होती है। यह इन्वेंट्री पर कोई प्रतिबंध नहीं है, और खिलाड़ी अभी भी स्लॉट का उपयोग कर सकता है।
nine-slice जाल
कई HUD sprite हैं nine-sliced — कोने स्थिर, किनारे खिंचे हुए। एक .mcmeta beside the PNG declares the borders:
{ "gui": { "scaling": { "type": "nine_slice", "width": 200, "height": 20,
"border": { "left": 2, "top": 2, "right": 2, "bottom": 2 } } } }
बिना mcmeta का मिलान किए ऐसे sprite को बदलें और यह गलत तरीके से खिंच जाता है। vanilla को कॉपी करें .mcmeta alongside your PNG when in doubt.
फ़ॉन्ट के माध्यम से कस्टम HUD टेक्स्ट
वास्तव में शक्तिशाली ट्रिक: एक font provider परिभाषित करें जिसके glyph छवियाँ हों, फिर उन वर्णों को इसके साथ प्रिंट करें /title or a bossbar. The text renders as your artwork.
assets/<namespace>/font/default.json
{ "providers": [
{ "type": "bitmap", "file": "my_pack:font/icons.png", "ascent": 8, "height": 9,
"chars": [""] }
] }
प्राइवेट-यूज़ codepoints का उपयोग करें ( upward) so nothing collides with real text. Then /title @a actionbar {"text":""} draws your image on the action bar.
इस तरह सर्वर क्लाइंट पर बिना किसी mod के कस्टम हेल्थ बार, करेंसी आइकन और प्रोग्रेस मीटर दिखाते हैं — केवल एक resource pack से।
Negative-space फ़ॉन्ट
नेगेटिव के साथ एक glyph परिभाषित करें advances and you can move the cursor backwards, layering images on top of each other. That is the technique behind server HUDs that look like proper interfaces. It is fiddly, and it is the only way to position anything.
HUD तत्वों को छिपाएँ या रीस्टाइल करें और इसमें आपके लिए आवंटित codepoints के साथ font providers बनाएँ HUD Customizer & Font Pack Maker.