fxmanifest.lua गाइड: FiveM रिसोर्स मैनिफेस्ट में महारत हासिल करें
हर बार एक साफ fxmanifest.lua लिखें। स्क्रिप्ट्स, UI पेज, निर्भरताएँ, साझा फ़ाइलें और सभी महत्वपूर्ण कुंजी जो आधुनिक FiveM संसाधनों के लिए आवश्यक हैं।
Agency Scripts
Agency Scripts के संस्थापक और प्रमुख डेवलपर
fxmanifest.lua क्या है?
हर FiveM संसाधन को एक मैनिफेस्ट फाइल की आवश्यकता होती है जो सर्वर को बताती है कि संसाधन में क्या है और इसे कैसे लोड करना है। fxmanifest.lua फ़ाइल पुराने __resource.lua फॉर्मेट और एक साफ, घोषणात्मक तरीका प्रदान करता है जिससे आप अपने संसाधन मेटाडेटा को परिभाषित कर सकते हैं। यह फ़ाइल निर्दिष्ट करती है कि कौन से स्क्रिप्ट क्लाइंट पर चलते हैं, कौन से सर्वर पर, कौन से NUI फाइलें शामिल करनी हैं, संसाधन निर्भरताएं, और अतिरिक्त मेटाडेटा। आपका मैनिफेस्ट सही होना आवश्यक है क्योंकि यहां त्रुटियां आपके पूरे संसाधन को लोड होने से रोक सकती हैं।
आवश्यक फ़ील्ड
हर मैनिफेस्ट को दो आवश्यक फ़ील्ड्स के साथ शुरू होना चाहिए: fx_version और games. यह fx_version मैनिफेस्ट फॉर्मेट संस्करण निर्दिष्ट करता है, साथ में 'cerulean' मौजूदा मानक होने के नाते जो सभी आधुनिक सुविधाओं का समर्थन करता है। games फ़ील्ड यह परिभाषित करता है कि संसाधन किस गेम का समर्थन करता है, आमतौर पर {'gta5'} FiveM के लिए। इन दोनों फ़ील्ड्स को छोड़ने से रिसोर्स पूरी तरह से लोड होने में विफल होगा, इसलिए इन्हें हमेशा अपने मैनिफेस्ट की पहली दो लाइनों के रूप में शामिल करें।
स्क्रिप्ट घोषणाएँ
उपयोग करें client_scripts, server_scripts, और shared_scripts अपने Lua फ़ाइलों को घोषित करने के लिए। क्लाइंट स्क्रिप्ट खिलाड़ी गेम क्लाइंट पर चलती हैं और रेंडरिंग, इनपुट, और स्थानीय गेम इंटरैक्शन को संभालती हैं। सर्वर स्क्रिप्ट सर्वर पर चलती हैं और प्राधिकृत लॉजिक, डेटाबेस ऑपरेशंस, और खिलाड़ी प्रबंधन को संभालती हैं। साझा स्क्रिप्ट दोनों पक्षों पर चलती हैं और कॉन्फ़िगरेशन फ़ाइलों, उपयोगिता फ़ंक्शंस, और साझा स्थिरांक के लिए उपयोगी हैं। आप ग्लोब पैटर्न जैसे उपयोग कर सकते हैं 'client/*.lua' डायरेक्टरी में सभी फ़ाइलों को शामिल करने के लिए, लेकिन स्पष्ट फ़ाइल सूचियाँ आपको लोड क्रम पर नियंत्रण देती हैं।
NUI और फ़ाइल घोषणाएँ
यदि आपके संसाधन में उपयोगकर्ता इंटरफ़ेस शामिल है, तो एंट्री HTML फ़ाइल घोषित करें ui_page 'html/index.html'। फिर अपनी UI को आवश्यक सभी वेब एसेट्स को सूचीबद्ध करें files तालिका, जिसमें HTML, CSS, JavaScript, छवियां, और फॉन्ट शामिल हैं। केवल यहाँ सूचीबद्ध फाइलें NUI ब्राउज़र के लिए सुलभ होंगी। ग्लोब पैटर्न जैसे उपयोग करें 'html/**/*' पूरी डायरेक्टरी को शामिल करने के लिए। याद रखें कि NUI फ़ाइलें संसाधन लोडिंग के दौरान क्लाइंट को भेजी जाती हैं, इसलिए अपने वेब एसेट्स को अनुकूलित रखें ताकि डाउनलोड समय और बैंडविड्थ उपयोग कम हो।
निर्भरता और लोड क्रम
संसाधन निर्भरताओं को घोषित करें dependencies फ़ील्ड यह सुनिश्चित करने के लिए कि आवश्यक संसाधन आपके संसाधन से पहले शुरू हों। सामान्य निर्भरताओं में फ्रेमवर्क संसाधन जैसे qb-core या es_extended , डेटाबेस संसाधन जैसे oxmysqlऔर साझा पुस्तकालय। यदि कोई निर्भरता शुरू नहीं होती है, तो आपका संसाधन लोड करने में विफल होगा और एक चेतावनी लॉग करेगा। उपयोग करें provide यह संकेत देने के लिए कि आपका संसाधन किसी अन्य का प्रतिस्थापन है, जो फ्रेमवर्क ब्रिज या सामान्य स्क्रिप्ट्स के वैकल्पिक कार्यान्वयन बनाते समय उपयोगी होता है।
उन्नत मैनिफेस्ट फीचर्स
मैनिफेस्ट कई अतिरिक्त निर्देशों का समर्थन करता है विशेष उपयोग मामलों के लिए। उपयोग करें data_file GTA डेटा फ़ाइलें जैसे हथियार मेटा, हैंडलिंग फ़ाइलें, या वाहन मॉडल डेटा लोड करने के लिए। export और server_export फ़ील्ड अन्य संसाधन कॉल कर सकने वाले फ़ंक्शन घोषित करते हैं। मेटाडेटा जोड़ें description, author, और version दस्तावेज़ीकरण उद्देश्यों के लिए फ़ील्ड। lua54 directive enables Lua 5.4 features when set to 'yes' , आपको पूर्णांक विभाजन, बिटवाइज ऑपरेटर, और अन्य भाषा सुधारों तक पहुंच देता है जो जटिल स्क्रिप्ट को सरल बना सकते हैं।