Top.Mail.Ru

[Квесты] Создание квестов L2j_Mobius

[Скопировать ссылку]
admin Опубликовано 2024-9-24 00:52:12 | Показать все сообщения |Режим чтения Распечатать Назад Вперед

Зарегистрируйтесь сейчас чтобы найти еще больше друзей, и получить полноценный доступ ко всем функциям сайта!

Для просмотра Вам необходимо авторизоваться Если Вы еще не зарегистрированы, перейдите по ссылке:Зарегистрироваться

x
Сборка: L2l_Monius   O$ o5 t- ^. k* S  Z" p# q% D1 n
Следующие квесты можно использовать в качестве шаблонов для создания практически любого простого квеста go kill или go talk.: r2 G. z  b3 a4 m
7 L  u5 k, _5 w" x7 {% x+ H

7 f, r+ N/ x% E2 i* K' U$ ]Иди и убей X монстров / Возвращение - награда.
/ D' K' v2 |! g9 A  C( \6 X  XQ00529_RegularBarrierMaintenance6 i7 t: u9 o! {: I7 k) {8 n
+ _" l& n/ u7 _: H0 _" X
Получите квест от любого из двух разных NPC / Убейте X монстров / Вернитесь с наградой.$ O5 |; [- B5 j9 ?. y
Q00683_AdventOfKrofinSubspecies, ~; K0 o6 w6 L# X
' `3 [6 y" Z9 q+ _( d$ y
Поговори с NPC 1 / Поговори с NPC 2 / Поговори с завершающим NPC / Награда.
5 f. l3 E- l) n9 }' r) SQ10516_UnveiledFafurionTemple7 I& u" d! Q8 P- B3 p# Y9 L) Y

$ U8 ]" j; p: @: r7 AУбейте X монстров, а также соберите X предметов / Возврат - награда.0 Y( x1 z2 z3 _% L- D: f
Q10517_FafurionsMinions- G& g8 n; \2 T1 I

' h, f9 X5 ?: u8 \- P3 d  @Иди собери X капель монстров / Вернись - убей X монстров / Вернись - награда.
) L* A) B$ m5 tQ10529_IvoryTowersResearchFloatingSeaJournal: H4 c6 T. P2 N+ V8 z! |

3 B* n: h) L4 L: UИди убей X монстров, а также собери X предметов / Возвращение - иди собери X предметов / Возвращение - награда.
! b1 G; I: I; x% e4 @% tQ10518_SucceedingThePriestess6 k6 C+ J7 U. ^+ g# [
' F0 V0 Z; f! P  D! d2 W4 |
Участвуйте в убийстве рейдбосса / Возврат - награда.
' }7 r9 p2 l/ r- i( p) G( Q! k% m: jQ10519_контролирование вашей температуры
- x4 `' |. f0 L* q5 [$ I5 {/ X2 Q
) i  h# o$ v1 ?5 c' c$ p, Y6 s( hПоговорите с NPC 1 / Примите участие в убийстве рейдбосса / Возвращение - награда.
. ]6 v+ W$ ?$ p% B) X0 Z7 ZQ10533_OrfensAmbition, E- M  c" m, I' {$ |. A

4 q! E5 d* U3 U3 V; i- U1 x! ?
. i+ t1 ?$ K- e* v1 a/ H* j) {, ^
/ a6 R# |' O9 a0 H7 n! RРуководство требует обновления. И, к сожалению, с самыми последними хрониками вы не сможете избежать модификаций клиента. Поэтому, исключительно в образовательных целях, я предлагаю свой опыт по добавлению нового квеста!
; F9 M: G$ X- t, z2 H- y; `

9 K0 o0 G5 \1 z4 c5 {5 uШаг 1:
Создайте свой квест с уникальным ID. В этом примере я буду ссылаться на квест как "Q98765_NewQuest".+ l, i8 l. E! M) c
" J, T0 d& m" a, ~
Шаг 2: Когда вы успешно создали свой квест и Eclipse не выдает ошибок, добавьте название квеста и импортируйте его в файл "QuestMasterHandler.java".6 F7 s/ g$ S% h
9 n/ b. q# A. a. B
Шаг 3: Перейдите в клиент и с помощью редактора клиента добавьте квест в следующие файлы .dat: "questname-ru.dat" и "QuestMarkConditionData.dat".1 v/ J! A! p' o4 w4 k

0 B, H7 I0 U" j) _4 X2 N% sСледующие шаги относятся к любым новым хроникам, которые используют всплывающие окна квестов.
( N  Z3 |( r! H6 @' u' K# d
$ E! _, x# \/ e# ?; ]" N) G: d6 w) |7 gШаг 4: Найдите в серверных файлах файл с названием "NewQuestData.xml" и добавьте туда свой квест.' f- t/ M; s, V

  w( N4 e8 B8 ^4 eШаг 5: Найдите в клиенте следующие файлы и добавьте туда свой квест: "NewQuestData-ru.dat", "NewQuestDialog-ru.dat" и "NewQuestNpcPortrait.dat".7 W3 J! O/ a" \: U! {! R. T

6 E5 \9 C7 V% @2 F/ l* dЕсли я что-то забыл, не стесняйтесь исправить меня. Это руководство создано исключительно в образовательных целях.
) f( a& b1 J3 G9 O* j& |; a3 W- f0 _6 b
Шаг 2:
+ z+ m8 _# a) i# R, B$ `: O2 ~
( H( }8 J6 r8 A9 g* IСледующий шаг заключается в добавлении вашего квеста в QuestMasterHandler.java. Вот общий план:7 J3 m) Z+ [$ r2 N, S0 b

) w) O0 W+ X" J' a1. Импорт вашего квеста: В начале файла после всех существующих импортов добавьте строку, которая будет импортировать ваш квест. ; A+ `: B5 q4 f  Q! ^$ C6 H  d
Например:
# O4 o" i7 ^  N; |2 N( \
* m: p0 H1 P( @4 c; i. K  }# {
  1. import quests.<span style="background-color: rgb(255, 255, 255);">Q98765_NewQuest</span>.<span style="background-color: rgb(255, 255, 255);">Q98765_NewQuest</span>;
    8 K: Y3 {6 Z9 Q* i
Скопировать код
1. Регистрация квеста: Найдите метод, который отвечает за регистрацию всех квестов. Обычно это делается в статическом блоке или методе init, где происходит инициализация квестов. В этом блоке добавьте строку, которая будет регистрировать ваш квест:
: B6 R; P( m1 _% F3 o  I4 F. r0 ~. `( C1 ?1 f
  1. /**6 `  j  a0 A7 }% s/ _! X" Z% z
  2. * @author NosBit# h: i' r3 [  T$ `8 w  Z6 [! S4 Y) x
  3. */2 D9 h, I9 |3 N) `9 q5 R! J0 `9 P
  4. public class QuestMasterHandler
    & `" u: N& n' B9 g
  5. {
    9 c3 p! ?. A' f/ H  Z& R* E
  6.         private static final Logger LOGGER = Logger.getLogger(QuestMasterHandler.class.getName());
    ! u8 W+ r- c3 G; c
  7.         
    # z$ O1 O& c7 e) X
  8.         private static final Class<?>[] QUESTS =- y8 C6 \+ ?/ }& D- Q
  9.         {
Скопировать код
Проверка: Убедитесь, что идентификатор вашего квеста (в данном случае Q98765_NewQuest.class) уникален и не конфликтует с уже существующими квестами.0 c5 E) E# l2 }6 l
4 i  W2 m! _3 \
- b+ g# @8 Q6 ^" W1 a
Шаг 3:- e, T' Q0 @- H4 f
5 R. {2 L7 x8 S0 G
Файл QuestName-ru.dat используется для описания квестов и содержит различные параметры, которые задают характеристики квеста, его цели, награды, ограничения и т.д.
8 y0 c1 F$ ?" B+ d' e7 ~2 I3 }Давайте разберем все поля на основе примера:# `4 b/ ?; a! H* d; \

3 w* l8 k' W7 b4 M, U
  1. quest_begin        tag=1        id=10811        level=1        title=[Узнай свой предел]        sub_name=[Бремя силы]        desc=[Если готовы, то еще раз поговорите с Рыцарем-Хранителем Евы Леонелом Хантером в Хейне.\n]        goal_id={}        goal_type={}        goal_num={}        target_loc={111382.0;220905.0;-3544.0}        add_target_locs={}        q_level={}        lvl_min=100        lvl_max=0        journal_disp=3        entity_name=[Рыцарь-Хранитель Евы Леонел Хантер]        get_item_in_quest=0        unk1=1        unk2=1        start_npc_id={33907}        start_npc_loc={111382.0;220905.0;-3544.0}        q_requirement=[Дворянин]        quest_intro=[Рыцарь-Хранитель Евы Леонел Хантер из Хейна посоветовал прийти к нему, если Вы желаете узнать предел Ваших возможностей...]        class_limit={}        have_item={}        clan_pet_quest=1        cleared_quest=1        mark_type=-1        category_id=0        priority_level=0        search_zoneid=121        iscategory=3        reward_id={45922;15625}        reward_num={1;0}        pre_level={0}        faction_id=0        faction_level_min=0        faction_level_max=0        quest_end" S$ c% Q7 `$ \/ d
Скопировать код
Поля данных:
  • quest_begin — начало записи для квеста.
  • tag — идентификатор типа данных. Может использоваться для группировки квестов или идентификации квестов по определённым категориям.
  • id — уникальный идентификатор квеста. Должен быть уникален для каждого квеста.
  • level — уровень сложности квеста. Используется для группировки и показа квестов, подходящих по уровню.
  • title — название квеста, которое отображается в интерфейсе. Заключено в квадратные скобки.
  • sub_name — подзаголовок квеста, используется для дополнительного описания. Заключен в квадратные скобки.
  • desc — описание квеста, которое появляется при его принятии или выполнении. Здесь также используется разметка с символами переноса строки (\n).
  • goal_id — идентификатор цели квеста. Может содержать ID объекта или персонажа, который нужно достичь.
  • goal_type — тип цели. Указывает, какого типа задача ставится перед игроком (например, убить монстров, собрать предметы).
  • goal_num — количество необходимых действий для завершения цели. Например, количество монстров для убийства или предметов для сбора.
  • target_loc — координаты (X, Y, Z), куда должен отправиться игрок для выполнения задачи. Координаты указываются в формате {X;Y;Z}.
  • add_target_locs — дополнительные целевые локации, если квест предполагает несколько мест назначения.
  • q_level — уровень сложности или рекомендованный уровень для выполнения квеста.
  • lvl_min — минимальный уровень персонажа, с которого квест доступен.
  • lvl_max — максимальный уровень персонажа для выполнения квеста. Если не указан, то квест доступен на любом уровне выше минимального.
  • journal_disp — параметр, определяющий отображение квеста в журнале квестов (например, на каком этапе он должен отображаться).
  • entity_name — имя NPC или объекта, который связан с выполнением квеста (например, кто выдаёт квест или с кем нужно взаимодействовать).
  • get_item_in_quest — указывает, должен ли игрок получать предметы в ходе выполнения квеста. 0 — нет, 1 — да.
  • unk1 — неизвестное поле, возможно зарезервировано для будущих функций или модификаций.
  • unk2 — аналогично, поле с неизвестным назначением.
  • start_npc_id — ID NPC, который выдаёт квест. ID указан в фигурных скобках {}.
  • start_npc_loc — координаты NPC, который выдаёт квест. Используется формат {X;Y;Z}.
  • q_requirement — дополнительные требования к выполнению квеста, например, наличие определённого статуса или ранга (например, "Дворянин").
  • quest_intro — вводное описание квеста, которое отображается при первом контакте с NPC.
  • class_limit — ограничения по классам персонажа. Указываются ID классов, которым доступен квест.
  • have_item — список предметов, которые должны быть у игрока для выполнения квеста.
  • clan_pet_quest — указывает, является ли квест клановым или петом. 1 — да, 0 — нет.
  • cleared_quest — указывает, выполнен ли квест или нет. 1 — выполнен, 0 — не выполнен.
  • mark_type — тип метки, связанной с квестом. Используется для отображения различных иконок или маркеров на карте.
  • category_id — ID категории, к которой относится квест. Может использоваться для фильтрации квестов по категориям.
  • priority_level — уровень приоритета квеста. Чем выше значение, тем приоритетнее квест для отображения и выполнения.
  • search_zoneid — ID зоны, в которой происходит действие квеста. Определяет область, в которой игрок должен выполнять задание.
  • iscategory — указывает, является ли квест частью категории квестов (например, кампаний или цепочек заданий).
  • reward_id — ID награды за квест. Может быть несколько наград, указываются через точку с запятой.
  • reward_num — количество каждой награды, соответствующее полю reward_id.
  • pre_level — предварительный уровень или дополнительные условия, которые должны быть выполнены до начала квеста.
  • faction_id — ID фракции, к которой относится квест. Может быть использован для фракционных квестов.
  • faction_level_min — минимальный уровень фракции, необходимый для выполнения квеста.
  • faction_level_max — максимальный уровень фракции, при котором квест доступен.
  • quest_end — завершение записи для квеста.
    : k+ L5 M6 F/ P6 b+ d+ m
1 @' ?  z" r% E
) |# m* f- t9 S: \1 L
Файл клиента QuestMarkConditionData.dat содержит информацию о квестах, связанных с условиями, необходимыми для активации или завершения определённых действий в игре.
6 [% Y& d" u! J# ]7 r2 DПример соодержания" L! B- Y& n0 m& G4 k
Вот описание структуры строки:
* u& [; L- s( k( s2 F4 a. I
  1. questmark_begin        quest_id=10331        npc_id=32153        race_filter={0}        class_filter={0;10}        start_npc_loc={-118017.0;255965.0;-1320.0}        questmark_end
Скопировать код
Давайте разберем все поля на основе примера:4 W" O' h( d0 n: Y

4 _% u/ r3 m2 d8 ^( _
  • questmark_begin: Указывает на начало записи о квесте.
  • quest_id=10331: Идентификатор квеста. В данном случае, квест с ID 10331.
  • npc_id=32153: Идентификатор NPC (неигрового персонажа), с которым игрок должен взаимодействовать для начала или выполнения условий квеста.
  • race_filter={0}: Фильтр по расе. Указывает, какие расы могут участвовать в квесте. В данном примере {0} может означать, что квест доступен для всех рас или для определённой расы (например, 0 - для всех) .
  • class_filter={0;10}: Фильтр по классу. Указывает, какие классы могут участвовать в квесте. В этом случае {0;10} может означать, что квест доступен для классов с ID 0 и 10.
  • start_npc_loc={-118017.0;255965.0;-1320.0}: Координаты начала взаимодействия с NPC. Эти координаты определяют место, где находится NPC в игровом мире (X, Y, Z).
  • questmark_end: Указывает на конец записи о квесте.
    - u- y4 c, N7 b9 j, ~
Эта структура помогает клиенту определять условия, при которых игрок может начать или выполнить квест, а также идентифицировать необходимые взаимодействия с NPC.' @3 E3 P5 |8 l' E" ^& x. R3 l% M
/ |' T/ K* E, a- ]; g+ y  W

! D* v9 p; P: _8 T$ X7 W

# J8 H7 h; P+ |  W' iСледующие шаги относятся к любым новым хроникам, которые используют всплывающие окна квестов.6 {# R9 L. ~5 q4 @: n8 x

3 H( }' U9 o6 RШаг 4) a3 _* o$ r9 p: M6 a' ^8 e  _
Для того чтобы добавить свой квест в файл NewQuestData.xml, нужно следовать структуре, аналогичной приведенному вами примеру. Вот как это может выглядеть:
5 I& I# T' L! z: K7 u& J; L8 W& fПример добавления нового квеста:9 N5 R% k7 G; [6 i0 {
  1. <quest id="20001" type="1" name="Mystery of the Lost Relic" startNpcId="30050" endNpcId="30051">0 X# F* y4 e6 U7 C* J
  2.     <locations>6 {: ^+ A4 s6 P/ ?% \* x2 d# w
  3.         <param name="startLocationId">2001</param>2 j  A2 k# w" u4 D  w
  4.         <param name="endLocationId">2002</param>
    ! I' {5 p. t  [6 V( _
  5.         <param name="questLocationId">2003</param>
    4 I% k$ V& l) z2 f0 l0 K6 r
  6.     </locations>$ k1 V( U% b8 t
  7.     <conditions>
    ( g6 g7 b# \0 _3 {* U
  8.         <param name="preQuestId">20000</param>7 T+ z1 z" R* n3 z3 ^
  9.         <param name="classIds">0;1;2;3;4;5;6</param> <!-- доступ для всех рас -->
    + f) L7 d7 R' u
  10.     </conditions>0 s1 G6 Z2 e* O, S
  11.     <rewards>
    0 h6 g. W: Q7 M- m0 R9 M% K7 o% D
  12.         <param name="rewardLevel">50</param>
    7 A3 W# S* Z7 i# ^0 ]2 B* L
  13.         <param name="rewardSp">5000</param>0 a- [0 W* Y. a8 L6 l
  14.         <param name="rewardItemId">57</param> <!-- Adena -->7 a5 r8 A$ ~3 _9 K, S, F
  15.         <param name="rewardItemCount">10000</param>
    ; W. Y6 ]" s/ f/ {
  16.     </rewards>
    , X' L2 u# p* \
  17.     <goals>
    1 E! M! Q, @6 ?
  18.         <param name="goalCount">10</param>
    : B9 P( R5 D, t
  19.         <param name="goalString">Defeat monsters in the Ancient Forest</param>
    ( {0 ?7 Z! {( o7 C
  20.         <param name="goalItemId">92000</param> <!-- некий квестовый предмет -->
    % O$ j7 c( z3 k% ?, f: n7 M. e8 U
  21.         <param name="goalItemCount">1</param>
    9 A# w: @- }' d( Q4 w* \# w* h
  22.     </goals>+ y" r4 q' z* X  y; s% `
  23. </quest>! n1 t. _+ A2 Q4 n+ j/ R: X# n
Скопировать код
Описание структуры:5 d/ p+ |3 d& J3 C0 F: }  p
  • quest: Основной элемент квеста, содержащий атрибуты:5 m' M2 G! |' g; D2 Z% |1 c
    • id: ID квеста, уникальный для каждого квеста.
    • type: Тип квеста (1 – обычный квест).
    • name: Название квеста.
    • startNpcId: ID NPC, с которого начинается квест.
    • endNpcId: ID NPC, у которого квест заканчивается.
      : ^! N( L, r: R% S& w2 Q: j1 u
  • locations: Указывает места начала, окончания и квестовой активности.
    7 e, f2 W- X6 Q
    • startLocationId: ID места, где начинается квест.
    • endLocationId: ID места, где квест заканчивается.
    • questLocationId: ID квестовой зоны./ M& Q# H8 x6 x: o3 I
  • conditions: Условия для начала квеста.' `0 F$ E  y. R
    • preQuestId: ID предварительного квеста (если есть).
    • classIds: ID классов или рас, которым доступен квест.
      % B+ P. x/ K4 @9 D" A
  • rewards: Награды за выполнение квеста.
    " L  O" i. V- B7 p3 I+ l  r7 d
    • rewardLevel: Минимальный уровень для получения награды.
    • rewardSp: Количество опыта (SP).
    • rewardItemId: ID предмета (например, Adena).
    • rewardItemCount: Количество предметов.
      / ]: O5 S' P& f
  • goals: Цели квеста.
    ' w6 |3 o8 r0 R5 V, p5 V
    • goalCount: Количество монстров, которых нужно убить или предметов, которые нужно собрать.
    • goalString: Описание цели.
    • goalItemId: ID квестового предмета (если требуется).
    • goalItemCount: Количество квестовых предметов для завершения цели.) p0 t, B  @( G& ~
После того как вы добавите квест в файл NewQuestData.xml, нужно перезапустить сервер, чтобы изменения вступили в силу.4 q% _- q: h+ f; v

& w! W0 }1 |/ L8 G  ?: k) y/ w/ \Шаг 5
) D+ m+ M7 v- ?; L6 CФайл NewQuestDialog-ru.dat используется для хранения диалогов, связанных с квестом. Он определяет тексты, которые отображаются в окнах диалогов с NPC во время выполнения квеста. Вот разбор ключевых элементов строки и структура файла:
, r% G) J, A0 @. e0 Y4 KСтруктура данных
  • NewQuestDialog_begin — начало записи квеста в файле диалогов.
  • QuestId=10001 — идентификатор квеста (должен соответствовать ID, который ты используешь в других файлах).
  • Text0=... — первый диалог, который обычно отображается при старте квеста.
  • Text1=... — дополнительный текст, который отображается на различных этапах квеста.
  • Text2=... — текст, который отображается после выполнения определенных действий (например, после выполнения части задания).
  • Text3=... — дополнительный диалог, например, при встрече с NPC на следующем этапе квеста.
  • Text4=... — финальный текст или инструкции по следующему шагу для игрока.
  • NewQuestDialog_end — завершение записи для этого квеста.
    , t" U! Q2 p+ [7 Y7 x

2 b/ U2 m7 z# z+ e: C6 k9 p5 G7 {Пример записи для нового квеста (ID 98765) Если ты хочешь создать диалоги для нового квеста с ID 98765, твой файл может выглядеть так:6 [/ G' q9 z) X/ ^" r
  1. NewQuestDialog_begin        QuestId=98765        Text0=[Вы готовы принять новый вызов и доказать свою силу?]        Text1=[Как вы себя чувствуете? Вы выглядите уверенно. Это хороший знак, но не расслабляйтесь — впереди много испытаний. Примите это задание, если готовы.]        Text2=[Пора приступить к тренировкам. Идите за мной в тренировочную зону.]        Text3=[Следуйте моим указаниям, и вы раскроете весь свой потенциал.]        Text4=[Поговорите с Дарти. Кликните на него и начните диалог.]        NewQuestDialog_end
    & V; E0 M/ i  [5 }  X  X: ~
Скопировать код
Разъяснение полей:1 f& c8 ^! u- d2 S% O
  • QuestId=98765 — уникальный идентификатор нового квеста.
  • Text0 — вводный текст квеста. Отображается при первом контакте с NPC.
  • Text1 — дополнительный диалог, который дается игроку для создания контекста.
  • Text2 — текст, который отображается на следующем этапе квеста, например, после выполнения части задания.
  • Text3 — описание следующего шага или инструкции для игрока.
  • Text4 — финальный диалог или текст с указанием цели (встреча с другим NPC).  T& e9 G% o3 ~& p( G+ ^, m1 P, C

  s* @0 `7 u5 P3 i
* O* o2 H5 q8 e& g3 t& o2 ?! D! D0 a3 jЧто можно изменить:
  • Тексты диалогов (Text0, Text1 и так далее) можно адаптировать под конкретные ситуации в квесте.
  • Количество текстов можно варьировать в зависимости от сложности квеста.
    , U2 M* `2 T+ }: _: ~

4 B* d6 y3 W4 F0 L. J. M7 y0 }5 T; D- _Файл NewQuestData-ru.dat содержит параметры, связанные с квестом в игре Lineage II, и описывает условия, NPC, цели и награды. Рассмотрим параметры этого файла:. h( L/ r# n+ k# ]8 O

3 F3 |9 s) u% [9 |! e
  • newquestdata_begin / newquestdata_end: Эти параметры обозначают начало и конец блока данных квеста.
  • quest_id=10001: Уникальный идентификатор квеста (ID). В данном случае это квест с ID 10001.
  • quest_type=1: Тип квеста.
    * L$ X( H; |/ f* W- S
    • 1 обычно означает стандартный квест.& q1 c& U3 {& r; U3 P3 Z, I# J, g3 Y
  • quest_name=[Новый путь]: Название квеста. Здесь указано "[Новый путь]" — это имя, отображаемое в игре.
  • quest_level={0;0}: Уровневые ограничения квеста.
    ! ^  B2 q# Z- ?& _$ I6 R1 i, r
    • Первое значение указывает минимальный уровень, второе — максимальный уровень.
    • {0;0} означает, что нет ограничений по уровню.
      # I& w: N; A  m4 W) f8 l1 X( x
  • pre_quest={}: Предварительный квест, который нужно выполнить перед началом этого квеста.
    2 I8 p; P6 d$ T9 l) N( M( w; P
    • В данном случае он пустой {}, что означает, что нет предварительных требований.
      6 J# H0 I" g6 m) v, ~6 Q$ s
  • class={0;10;18;25;31;38;44;49;53;123;124}: Классы или расы, которые могут брать квест.( H9 S# i. H0 P. u. @% V1 {/ S6 L
    • Номера классов указывают на те классы, которым доступен этот квест. В данном примере классы, такие как 0 (человеки), 10 (рыцари) и другие, имеют доступ.1 b4 k  @8 r5 _3 c$ Y
  • quest_item=82948: ID квестового предмета, необходимого для выполнения цели или этапа квеста.
    3 M# ~& K* q, [  @
    • В данном случае это предмет с ID 82948.
      2 N3 H/ G2 k, Z0 [$ V
  • start_item=0: Предмет, который выдается при начале квеста.
    ( m7 f) B/ I1 G) V
    • Значение 0 означает, что предмет не выдается.
      # A2 y& a$ h! ?- [2 M+ G4 h! I
  • start_npc=34505: ID NPC, у которого начинается квест.
  • start_npc_loc=1002: Локация NPC, у которого начинается квест.
    / _3 z5 o. L* U/ u- R
    • Это ID локации, где находится стартовый NPC.
      * ~' L2 M' B% B9 E
  • end_npc=34696: ID NPC, у которого завершается квест.
  • end_npc_loc=1003: Локация NPC, у которого завершается квест.
    ! g  R8 ^1 P, G
    • Это ID локации, где находится конечный NPC.
      + F4 A, O/ N- d1 @. l  \
  • quest_loc=1003: Основная локация выполнения квеста.+ H( K: p0 g2 F. T% \- R6 O
    • Это ID зоны, где нужно выполнять основные задачи.
      - N6 J$ @  j2 Y: B# J
  • goal_string=[Дарти (Зона Тренировки)]: Описание цели квеста.
    + o) v9 ]) Z" y% \. A
    • В данном случае цель связана с персонажем по имени "Дарти" в Зоне Тренировки.
      # q, _# j' C( K
  • goal_num=1: Количество действий, необходимых для выполнения цели (например, убийств монстров или сбора предметов).
    2 M1 d& U$ `2 B
    • В данном случае нужно выполнить одно действие (1).
      ( M$ f* q4 a. z! T7 h6 g% O
  • reward_level=65535: Уровень, при котором можно получить награду.
    . E2 B% R* \; s- l
    • В данном случае это максимальное значение, указывающее, что награда доступна всегда.* X5 T2 `0 U8 n( \( F  v4 z
  • reward_exp=0: Опыт (EXP), выдаваемый в качестве награды.* E' T6 B; L4 A4 o- S1 I. X  G
    • В данном случае опыт не выдается.! m5 e8 C5 X9 j( G
  • reward_sp=0: Количество SP (Skill Points), выдаваемых в качестве награды.' O! G+ P: y( b6 X% N
    • Здесь тоже 0, значит, SP не выдаются.% D0 {6 f& S( j( n1 `
  • reward_item={}: Наградные предметы./ k* V* V5 Y+ z* b
    • В данном случае наградные предметы отсутствуют.
      . M. I8 v! E  h; U2 P3 n% V
Этот файл определяет основной функционал и настройки для конкретного квеста в игре.
6 e- G3 L0 z0 ]3 E% o0 b, p3 `' i1 E
2 h, Z1 B4 c* C2 O6 }8 I) ~, c6 M0 B  Z+ M1 Z2 J
+ z9 n0 J- C9 L& n. L
& v& r9 _+ `5 e3 \, P

8 a6 G' n, c  o3 i4 M
3 g' Z1 d& W# r; ^9 P
/ T2 k- x- X. j" R. p7 f
  ?8 l  |* G1 R- _0 B( a0 x! \0 V: h" |+ ]5 T* G
/ {5 _3 O0 D0 V/ y# I
Чтобы ответить, вам надо авторизироваться в системе Вход | Зарегистрироваться

Правил начисления баллов

Опубликовать
Сектор творческих людей
Горячая линия

638638758

С понедельника по воскресенье с 9:00 до 23:00

Обратной связь

admin@artace.ru Онлайн

QR-код

Powered by Discuz! X3.5© 2001-2021 Comsenz Inc.