این راهنما نحوه ویرایش types.xml برای سفارشیسازی اقتصاد لوت در سرور DayZ میزبانی شده با Legion Hosting را توضیح میدهد. شما یاد خواهید گرفت که هر ویژگی چه چیزی را کنترل میکند، مثالهایی برای سناریوهای رایج تنظیم خواهید دید و نحوه اعتبارسنجی تغییرات خود را درک خواهید کرد. برای پیکربندی عمومی سرور، راهنمای راهاندازی سرور DayZ را ببینید.
types.xml یا هر فایل mission دیگری، سرور خود را از تب Console در GPanel متوقف کنید. تغییراتی که در حین اجرای سرور نوشته شوند ممکن است در خاموشی بعدی بازنویسی یا نادیده گرفته شوند.
پیدا کردن types.xml
اقتصاد لوت در DayZ توسط فایل types.xml کنترل میشود. این فایل هر آیتمی که میتواند در نقشه ظاهر شود و فراوانی ظاهر شدن هر آیتم را تعریف میکند. مسیر آن:
mpmissions/dayzOffline.chernarusplus/db/types.xml
اگر نقشه دیگری اجرا میکنید (مانند Livonia)، dayzOffline.chernarusplus را با نام پوشه mission خود جایگزین کنید. نامهای رایج پوشه mission:
| نقشه | پوشه Mission |
|---|---|
| Chernarus | dayzOffline.chernarusplus |
| Livonia | dayzOffline.enoch |
types.xml را در ویرایشگر فایل GPanel باز کنید یا آن را از طریق SFTP دانلود کنید، به صورت محلی ویرایش کنید و دوباره آپلود کنید.
درک ویژگیهای کلیدی
هر آیتم در types.xml توسط یک عنصر <type> تعریف شده است. مهمترین عناصر فرزند برای کنترل فراوانی لوت عبارتند از:
| عنصر | توضیحات |
|---|---|
nominal |
تعداد هدف این آیتم که سرور سعی میکند همیشه در سراسر نقشه حفظ کند. این مقدار را افزایش دهید تا آیتم رایجتر شود. برای غیرفعال کردن کامل ظاهر شدن، روی 0 تنظیم کنید. |
min |
حداقل تعداد این آیتم در نقشه قبل از اینکه سیستم بازپرسازی شروع به تولید بیشتر کند. باید کمتر یا مساوی nominal باشد. |
lifetime |
مدت زمان (به ثانیه) که یک آیتم روی زمین باقی میماند قبل از ناپدید شدن در صورت عدم تعامل. این مقدار را افزایش دهید تا آیتمها قبل از ناپدید شدن بیشتر دوام بیاورند. |
restock |
زمان (به ثانیه) بین تلاشهای تولید. تنظیم آن روی 0 به این معنی است که آیتم به محض کاهش تعداد به زیر min دوباره ظاهر میشود. |
quantmin / quantmax |
محدوده مقدار را هنگام ظاهر شدن آیتم کنترل میکند (مثلاً تعداد فشنگ در یک خشاب). مقدار -1 به این معنی است که بازی از مقدار پیشفرض خود استفاده میکند. |
cost |
وزن اولویت مورد استفاده توسط Central Economy. مقادیر بالاتر باعث میشود آیتم زودتر در چرخه بازپرسازی ظاهر شود. آیتمهای نادر معمولاً مقادیر cost بالاتری دارند. |
توضیح پرچمها
هر عنصر <type> شامل یک عنصر <flags> است که نحوه شمارش نمونههای موجود آیتم توسط اقتصاد را کنترل میکند:
| پرچم | توضیحات |
|---|---|
count_in_map |
آیتمهای روی زمین را در مجموع nominal محاسبه کن. |
count_in_cargo |
آیتمهای داخل ظروف (کولهپشتیها، انبار) را در مجموع محاسبه کن. |
count_in_hoarder |
آیتمهای در مخفیگاههای بازیکنان و ظروف دفن شده را در مجموع محاسبه کن. |
count_in_player |
آیتمهای حمل شده توسط بازیکنان آنلاین را در مجموع محاسبه کن. |
crafted |
اگر این آیتم فقط ساختنی است و نباید به طور طبیعی ظاهر شود، روی 1 تنظیم کنید. |
deloot |
برای لوت رویداد پویا (سقوط هلیکوپتر و غیره) روی 1 تنظیم کنید. |
مثال: ورودی تفنگ تهاجمی AKM
<type name="AKM">
<nominal>5</nominal>
<lifetime>14400</lifetime>
<restock>0</restock>
<min>2</min>
<quantmin>-1</quantmin>
<quantmax>-1</quantmax>
<cost>100</cost>
<flags count_in_cargo="0" count_in_hoarder="0" count_in_map="1" count_in_player="0" crafted="0" deloot="0"/>
<category name="weapons"/>
<usage name="Military"/>
</type>
در این مثال سرور سعی میکند همیشه ۵ عدد AKM را در نقشه نگه دارد (nominal=5). وقتی تعداد به زیر ۲ برسد (min=2)، نمونههای جدید فوراً ظاهر میشوند (restock=0). هر AKM پس از ۴ ساعت در صورت عدم برداشت ناپدید میشود (lifetime=14400 ثانیه). فقط آیتمهای روی زمین شمارش میشوند (count_in_map=1)، بنابراین AKM هایی که داخل کولهپشتی بازیکنان یا مخفیگاههای دفن شده هستند از مجموع کم نمیشوند.
برچسبهای دستهبندی و کاربرد
برچسبهای <category> و <usage> محل ظاهر شدن آیتمها در نقشه را کنترل میکنند:
<category name="weapons"/>-- نوع آیتم را طبقهبندی میکند (weapons، clothes، tools، food و غیره)<usage name="Military"/>-- ظاهر شدن را به مناطق نظامی محدود میکند. مقادیر دیگر شاملTown،Village،Farm،Industrial،Hunting،School،Medic،Police،FirefighterوCoastهستند.
میتوانید چندین برچسب <usage> اضافه کنید تا آیتم بتواند در چندین نوع مکان ظاهر شود.
مثالهای رایج تنظیم لوت
| هدف | چه چیزی را تغییر دهید |
|---|---|
| رایجتر کردن یک آیتم | nominal و min را افزایش دهید |
| غیرفعال کردن ظاهر شدن یک آیتم | nominal را روی 0 و min را روی 0 تنظیم کنید |
| طولانیتر کردن ماندگاری آیتمها قبل از ناپدید شدن | lifetime را افزایش دهید (مقدار به ثانیه است؛ 3600 = ۱ ساعت) |
| سرعت بخشیدن به ظاهر شدن مجدد آیتم پس از برداشت | restock را کاهش دهید یا روی 0 تنظیم کنید |
| شمارش لوت نادر حتی زمانی که احتکار شده | count_in_hoarder="1" و count_in_cargo="1" را تنظیم کنید |
| اجازه ظاهر شدن آیتم در شهرها و مناطق نظامی | هر دو <usage name="Town"/> و <usage name="Military"/> را اضافه کنید |
اعتبارسنجی تغییرات شما
types.xml باید XML معتبر باشد. یک تگ بسته نشده، براکت ناهمخوان یا کاراکتر اضافی مانع بارگذاری mission توسط سرور میشود و میتواند باعث کرش سرور در هنگام راهاندازی شود. هنگام ویرایش این فایل به صورت محلی قبل از آپلود، از یک ویرایشگر متن با قابلیت اعتبارسنجی XML (مانند Notepad++ یا VS Code) استفاده کنید.
اشتباهات رایج XML که باید مراقب آنها باشید:
- فراموش کردن بستن عنصر
<type>با</type> - نقل قولهای ناهمخوان در مقادیر ویژگی (مثلاً
name="AKMبدون نقل قول بسته) - کاراکترهای اضافی یا براکتهای زاویهای اضافه
- حذف تصادفی اعلان XML در بالای فایل
تعامل مادها با types.xml
اگر مادهایی اجرا میکنید که آیتمهای جدید اضافه میکنند، آن مادها ممکن است ورودیهای types.xml خود را در پوشه db/ ماد داشته باشند. اگر تغییرات شما در types.xml وانیلا برای آیتمهای مادشده اعمال نمیشوند، بررسی کنید آیا ماد آن ورودی را بازنویسی میکند. ممکن است نیاز باشد types.xml خود ماد را ویرایش کنید.
مقالات مرتبط
- راهنمای راهاندازی سرور DayZ -- پیکربندی serverDZ.cfg و نحوه اتصال بازیکنان
- نصب مادهای DayZ -- مادهای Steam Workshop، ترتیب بارگذاری و فایلهای کلید
- عیبیابی DayZ -- خطاهای رایج، مشکلات BattlEye و تنظیم RCON
- نحوه آپلود فایلها از طریق SFTP