Top.Mail.Ru

Astraliya Дата публикации 2024-10-19 08:02:14

Гайд по файлу NewQuestData.xml для Lineage 2 сборка L2J_Mobius

Гайд по файлу NewQuestData.xml для Lineage 2 сборка L2J_Mobius


Файл NewQuestData.xml является важным элементом серверной части Lineage 2, так как он определяет ключевые параметры для квестов. Он содержит информацию о начальных и конечных NPC, условиях выполнения, наградах и целях квестов. Этот гайд поможет вам понять, как работает файл, и как добавлять или редактировать квесты на сервере.
1. Введение в структуру файлаФайл NewQuestData.xml используется для описания квестов, начиная с их идентификаторов и заканчивая подробными условиями, целями и наградами. Каждый квест имеет уникальный идентификатор (ID), тип, имя, а также ряд параметров, которые определяют его работу на сервере.
Пример записи квеста в NewQuestData.xml:
<quest id="10020" type="1" name="Attack of the Enraged Forest" startNpcId="33963" endNpcId="34505">
        <locations>
                <param name="startLocationId">1015</param>
                <param name="endLocationId">1002</param>
                <param name="questLocationId">1020</param>
        </locations>
        <conditions>
                <param name="preQuestId">10019</param>
                <param name="classIds">2;3;5;6;8;9;12;13;14;16;17;20;21;23;24;27;28;30;33;34;36;37;40;41;43;46;48;51;52;55;57;127;128;129;130</param>
        </conditions>
        <rewards>
                <items>
                        <item id="57" count="240000" />
                </items>
                <param name="rewardLevel">76</param>
                <param name="rewardSp">84</param>
        </rewards>
        <goals>
                <param name="goalCount">30</param>
                <param name="goalString">Monsters on the Windy Hill</param>
        </goals>
</quest>
2. Описание структуры2.1. Тег <quest>Каждый квест начинается с тега <quest>, который задаёт основные параметры квеста:

[*]id — уникальный идентификатор квеста. Например, id="10020" указывает, что это квест с ID 10020.
[*]type — тип квеста, обычно это 1 для стандартных квестов.
[*]name — название квеста, которое будет отображаться в игре.
[*]startNpcId — ID NPC, который начинает квест. Это тот NPC, к которому игрок должен обратиться для начала квеста.
[*]endNpcId — ID NPC, у которого завершается квест. Игрок должен вернуться к этому NPC для завершения задания.
2.2. Тег <locations>В этом блоке указываются ключевые локации, связанные с квестом:


[*]<param name="startLocationId"> — место, где игрок начинает квест.
[*]<param name="endLocationId"> — место, где квест заканчивается.
[*]<param name="questLocationId"> — основная локация выполнения квеста. Это может быть область, где нужно убить монстров или выполнить другую задачу.
2.3. Тег <conditions>Этот блок определяет условия для начала квеста:

[*]<param name="preQuestId"> — ID предыдущего квеста, который должен быть завершён для начала текущего. Если значение задано, игрок должен завершить этот квест перед тем, как начать новый.
[*]<param name="classIds"> — список ID классов, которые могут принять этот квест. Здесь указаны ID классов, имеющих право начать квест.
2.4. Тег <rewards>Блок наград описывает, что игрок получит за выполнение квеста:

[*]<items> — внутренняя секция с наградами в виде предметов.

[*]<item id="57" count="240000" /> — предмет, который игрок получит. В данном случае это адена (ID 57) в количестве 240 000.
[*]<param name="rewardLevel"> — минимальный уровень игрока для получения награды.
[*]<param name="rewardSp"> — количество SP (Skill Points), которые игрок получит за выполнение квеста.
2.5. Тег <goals>Этот блок определяет цели квеста:

[*]<param name="goalCount"> — количество целей для выполнения, например, сколько монстров нужно убить.
[*]<param name="goalString"> — описание цели. Это текст, который объясняет, что нужно сделать (например, убить монстров на определённой территории).
3. Пример полного квеста

Предположим, вы хотите создать новый квест, где игрок должен убить 10 демонов и получить награду:
<quest id="10101" type="1" name="Demon Hunt" startNpcId="34001" endNpcId="34001">
        <locations>
                <param name="startLocationId">1015</param>
                <param name="endLocationId">1015</param>
                <param name="questLocationId">1020</param>
        </locations>
        <conditions>
                <param name="preQuestId">10099</param>
                <param name="classIds">1;2;3;4;5</param>
        </conditions>
        <rewards>
                <items>
                        <item id="57" count="50000" />
                </items>
                <param name="rewardLevel">50</param>
                <param name="rewardSp">1000</param>
        </rewards>
        <goals>
                <param name="goalCount">10</param>
                <param name="goalString">Demons in the cursed forest</param>
        </goals>
</quest>
Здесь:

[*]ID квеста: 10101.
[*]Название квеста: "Demon Hunt".
[*]Начальный и конечный NPC: Жрец с ID 34001.
[*]Локации: игрок начнет и закончит квест в одной и той же локации (ID 1015).
[*]Условие начала: игрок должен завершить квест с ID 10099.
[*]Цель: убить 10 демонов в заколдованном лесу.
[*]Награда: 50 000 аден и 1000 SP.
4. Частые ошибки и их решения
[*]Некорректные ID — убедитесь, что все ID NPC, предметов и локаций существуют в базе данных.
[*]Несовместимость классов — если квест доступен только для определенных классов, проверьте, правильно ли вы указали их ID в classIds.
[*]Цели не выполняются — проверьте правильность параметров в <goals>, убедитесь, что все цели прописаны верно.
5. ЗаключениеФайл NewQuestData.xml является важной частью механики квестов на сервере Lineage 2. Правильная настройка параметров, таких как ID, условия и цели, позволяет создавать уникальные квесты с интересными наградами. Этот гайд поможет вам уверенно добавлять и редактировать квесты на вашем сервере.

Страниц: [1]
Посмотреть полную версию: Гайд по файлу NewQuestData.xml для Lineage 2 сборка L2J_Mobius