Top.Mail.Ru

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

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

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

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

x
Сборка: L2l_Monius . ^# ]& W2 {+ m" E6 W- z
Следующие квесты можно использовать в качестве шаблонов для создания практически любого простого квеста go kill или go talk.- U6 ~) c9 r* e0 Z6 o6 y; R5 r

" C6 M% W4 o7 s2 s( ]: T
& T4 s& d9 }. H3 W" h8 I
Иди и убей X монстров / Возвращение - награда.# W7 f9 [7 m+ a) r/ c; Q
Q00529_RegularBarrierMaintenance
% K4 E9 d8 l" V7 `  H* }% h* ~4 g. }' w' L- l# r% O1 N
Получите квест от любого из двух разных NPC / Убейте X монстров / Вернитесь с наградой.
% n$ k6 M) G* r( O, ?6 W! C6 jQ00683_AdventOfKrofinSubspecies; l8 c$ Z8 j% ^. }: F2 E! p
  c6 o* D6 V0 {& e
Поговори с NPC 1 / Поговори с NPC 2 / Поговори с завершающим NPC / Награда.
: b# E8 j  W' k3 o9 S8 a+ zQ10516_UnveiledFafurionTemple
+ s0 m) F! Y& b: E) E( P
1 |* l4 d1 l4 |5 z0 u' {Убейте X монстров, а также соберите X предметов / Возврат - награда.
( l( j5 R, l6 K5 [$ d7 ^  h$ b. ~Q10517_FafurionsMinions
( B5 h- e! l  C7 Y9 F- S( e# |2 o: i6 {: h& M# f! k$ a  P  S9 c
Иди собери X капель монстров / Вернись - убей X монстров / Вернись - награда.3 ^- O, W$ }- p
Q10529_IvoryTowersResearchFloatingSeaJournal0 R) k" M6 F$ C! C7 _

9 F& @& V, ~3 @1 v$ t9 V9 W! W* XИди убей X монстров, а также собери X предметов / Возвращение - иди собери X предметов / Возвращение - награда.
4 l* J: V3 q' S! X, |Q10518_SucceedingThePriestess8 H: @" N# `+ v* p

6 C& l1 p. e' U" J$ j9 @Участвуйте в убийстве рейдбосса / Возврат - награда.
7 X# K4 ~" g- aQ10519_контролирование вашей температуры( k/ a, L5 e# u: E( r, ?: v

0 D  s  h3 f) M& F  \( ]6 v; ]# vПоговорите с NPC 1 / Примите участие в убийстве рейдбосса / Возвращение - награда.) l6 A. {3 G2 y. Q
Q10533_OrfensAmbition
& D; m3 C( w( B" x% n% h
, O4 [% [' B- X5 k; ^2 r, Y4 y3 i2 U3 o2 m& G0 {+ w$ N7 K
7 `+ O; m1 u% X! r
Руководство требует обновления. И, к сожалению, с самыми последними хрониками вы не сможете избежать модификаций клиента. Поэтому, исключительно в образовательных целях, я предлагаю свой опыт по добавлению нового квеста!
0 ^8 H. k; s: G5 g. G
  \2 d$ g8 Q8 A) G) X8 A
Шаг 1:
Создайте свой квест с уникальным ID. В этом примере я буду ссылаться на квест как "Q98765_NewQuest".
" a2 Y7 N7 L# K  v
9 E. _( K' K7 W  T% lШаг 2: Когда вы успешно создали свой квест и Eclipse не выдает ошибок, добавьте название квеста и импортируйте его в файл "QuestMasterHandler.java".
1 n. c2 p: L, c6 S
2 T0 E1 A' k$ C1 W2 i9 i8 qШаг 3: Перейдите в клиент и с помощью редактора клиента добавьте квест в следующие файлы .dat: "questname-ru.dat" и "QuestMarkConditionData.dat".
) U: C$ Y  U9 u( \8 j& N2 C* v) g# O# ?4 ~7 c/ x
Следующие шаги относятся к любым новым хроникам, которые используют всплывающие окна квестов.
# e4 y) J3 L) a0 o3 t( d9 n$ \6 }% N! l# b
Шаг 4: Найдите в серверных файлах файл с названием "NewQuestData.xml" и добавьте туда свой квест.
8 U  ^7 h  v0 }3 _/ _, R& l: B" E" r% E7 m5 S8 A, L/ L3 Q: u- }
Шаг 5: Найдите в клиенте следующие файлы и добавьте туда свой квест: "NewQuestData-ru.dat", "NewQuestDialog-ru.dat" и "NewQuestNpcPortrait.dat".2 d' r  q  a3 B1 L, D
: D9 T4 ?7 H; J( t' |6 F
Если я что-то забыл, не стесняйтесь исправить меня. Это руководство создано исключительно в образовательных целях.7 F6 c( T; }% r6 o6 K3 x
* a+ u3 b; T* K2 [3 k
Шаг 2:$ P% r& ]& G- b: j

7 V3 h8 l. U' }, b5 g2 r% j! _Следующий шаг заключается в добавлении вашего квеста в QuestMasterHandler.java. Вот общий план:3 t7 A- Y' b% z) I8 p

/ t  `, `& V" M3 F! w1. Импорт вашего квеста: В начале файла после всех существующих импортов добавьте строку, которая будет импортировать ваш квест.
' `3 e1 x$ W; k& f0 fНапример:
' u3 h! T, x' c/ I; j( d
' x/ k% h2 ]4 s5 l, p& u
  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>;1 x8 I( @5 e$ k9 g0 h
Скопировать код
1. Регистрация квеста: Найдите метод, который отвечает за регистрацию всех квестов. Обычно это делается в статическом блоке или методе init, где происходит инициализация квестов. В этом блоке добавьте строку, которая будет регистрировать ваш квест:
' i- {$ D- R" I: ~- k; w+ v+ U$ Q+ T
  1. /**
    . }0 d5 _3 P! ~9 ]0 c7 n# Q+ Q
  2. * @author NosBit; o/ U5 e9 n8 w0 G, P- v  h
  3. */
    * G0 h* r$ K1 t
  4. public class QuestMasterHandler  O0 I$ J: |+ @( p% d- `' [$ q
  5. {* F( X: \6 q( a  ^0 p8 p
  6.         private static final Logger LOGGER = Logger.getLogger(QuestMasterHandler.class.getName());, m/ k% P; r* T% o+ }& k% X
  7.         
    6 K* y8 Z# x: n0 v- A7 P# U( w; [
  8.         private static final Class<?>[] QUESTS =
      [$ s9 [0 e% d& k/ p4 X% k
  9.         {
Скопировать код
Проверка: Убедитесь, что идентификатор вашего квеста (в данном случае Q98765_NewQuest.class) уникален и не конфликтует с уже существующими квестами.# i- |, W5 o) k7 X

9 O. o1 J% n8 M2 Q+ v2 w, t& T9 h3 t) Y8 \
Шаг 3:+ _9 l" j6 ?+ z: y7 c9 a5 j1 I
7 q/ I* U* B3 _0 A# h  {/ e7 Y$ {
Файл QuestName-ru.dat используется для описания квестов и содержит различные параметры, которые задают характеристики квеста, его цели, награды, ограничения и т.д.
3 e& ~  b8 S2 t# v5 ~Давайте разберем все поля на основе примера:  y6 ^' H2 L' [: {

( E, G( Q4 |. ~- b. S  N; q1 j
  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* |/ k( o# `4 g! S
Скопировать код
Поля данных:
  • 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 — завершение записи для квеста.
    ) ^" D8 A, @# R$ i8 c9 r/ d% Q7 h

1 @; O1 K, `2 K* K0 F; }6 f- w4 p8 }6 m$ L
Файл клиента QuestMarkConditionData.dat содержит информацию о квестах, связанных с условиями, необходимыми для активации или завершения определённых действий в игре. / c" E8 |9 p! j+ e, t4 r
Пример соодержания
& v8 D  ]5 N! m6 JВот описание структуры строки:5 c+ x' l/ }; y! Z* X
  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
Скопировать код
Давайте разберем все поля на основе примера:
: e7 s- X9 H) t  R8 X1 M$ _# l2 w. W: T$ z
  • 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: Указывает на конец записи о квесте.. H( u9 v8 w& S7 ]) U
Эта структура помогает клиенту определять условия, при которых игрок может начать или выполнить квест, а также идентифицировать необходимые взаимодействия с NPC.1 N( G6 D% q% I

( C& @1 J0 L' @
$ D4 W2 z. u/ N/ h% b
" y4 C) q9 _: |, n
Следующие шаги относятся к любым новым хроникам, которые используют всплывающие окна квестов.
2 w8 f2 J+ x2 r# t! |
6 l3 k- k4 O% U  F% \Шаг 4: l; ~# C/ A2 H0 e# l+ A4 \. I# ~
Для того чтобы добавить свой квест в файл NewQuestData.xml, нужно следовать структуре, аналогичной приведенному вами примеру. Вот как это может выглядеть:
7 J+ C# X/ C# h1 O; ~+ ~) o* b, D4 DПример добавления нового квеста:
/ ^4 d; P/ {4 w. x" q
  1. <quest id="20001" type="1" name="Mystery of the Lost Relic" startNpcId="30050" endNpcId="30051">2 Q3 t: _) m6 _3 Z% ^( j
  2.     <locations>
    , `4 U6 a7 Q/ g* b! v) [" V
  3.         <param name="startLocationId">2001</param>
    . g: z( e2 W6 h" M3 {: B
  4.         <param name="endLocationId">2002</param>
    ' `4 w. b9 Q- b* {1 W* S8 Q* |
  5.         <param name="questLocationId">2003</param>
    4 m  |6 Z4 D* z9 Z3 w
  6.     </locations>
    " h6 {) D6 r% O0 f1 b
  7.     <conditions>
    ! e5 D( t  {! L# g
  8.         <param name="preQuestId">20000</param>
    3 ]9 C. z& a# A
  9.         <param name="classIds">0;1;2;3;4;5;6</param> <!-- доступ для всех рас -->  N/ W8 Y) Y6 |- P8 `
  10.     </conditions>& Y& t9 B+ [. ]3 O) F
  11.     <rewards>% u1 K6 L, |: Z7 X
  12.         <param name="rewardLevel">50</param>( h0 y. S# \8 X; b
  13.         <param name="rewardSp">5000</param>
      M/ N- ~, s, |9 a1 ^
  14.         <param name="rewardItemId">57</param> <!-- Adena -->! D! {1 C' D% F' c* ]: F, Y
  15.         <param name="rewardItemCount">10000</param>
    , \5 d9 _$ A! j1 L
  16.     </rewards>0 j9 P8 {) T$ T9 a( T. n
  17.     <goals>
    $ X  ?2 K) P- R
  18.         <param name="goalCount">10</param>
    6 _$ N; }4 V( ^3 q$ J
  19.         <param name="goalString">Defeat monsters in the Ancient Forest</param>- N* c6 {: d  i( h% l3 l
  20.         <param name="goalItemId">92000</param> <!-- некий квестовый предмет -->
    $ B3 Q) o$ P7 r; @
  21.         <param name="goalItemCount">1</param>' J) M; x' N8 w  {) J3 u( Q
  22.     </goals>9 z: ~, h. W/ \6 L& B1 D' |. [( f
  23. </quest>$ `# P0 Y; a. m6 M4 \
Скопировать код
Описание структуры:$ ]! u6 Z, C) U3 m1 W' J
  • quest: Основной элемент квеста, содержащий атрибуты:
    , h, k) M* r7 f, t8 w0 z  G, C
    • id: ID квеста, уникальный для каждого квеста.
    • type: Тип квеста (1 – обычный квест).
    • name: Название квеста.
    • startNpcId: ID NPC, с которого начинается квест.
    • endNpcId: ID NPC, у которого квест заканчивается.: v9 `  ~( |" \9 }4 N/ X
  • locations: Указывает места начала, окончания и квестовой активности.
    # {/ b  ?9 \3 X  p+ N! j' M
    • startLocationId: ID места, где начинается квест.
    • endLocationId: ID места, где квест заканчивается.
    • questLocationId: ID квестовой зоны.
      & _8 D: ?) b2 w/ K
  • conditions: Условия для начала квеста.
    ) n: `! L1 U/ k* b( d0 B: t0 |
    • preQuestId: ID предварительного квеста (если есть).
    • classIds: ID классов или рас, которым доступен квест.
      ' |+ ~9 b3 _! \0 d
  • rewards: Награды за выполнение квеста.
    5 v9 g8 v+ c" @# X  @+ E
    • rewardLevel: Минимальный уровень для получения награды.
    • rewardSp: Количество опыта (SP).
    • rewardItemId: ID предмета (например, Adena).
    • rewardItemCount: Количество предметов.
      : ]6 |" N: @8 I7 o! Z+ |
  • goals: Цели квеста.
    ( C$ T* z8 Y* P0 n# R; G4 u2 @& h
    • goalCount: Количество монстров, которых нужно убить или предметов, которые нужно собрать.
    • goalString: Описание цели.
    • goalItemId: ID квестового предмета (если требуется).
    • goalItemCount: Количество квестовых предметов для завершения цели.. |, q0 D4 d8 ~+ c% }
После того как вы добавите квест в файл NewQuestData.xml, нужно перезапустить сервер, чтобы изменения вступили в силу.
9 o% K' z7 J* j4 J4 Y1 B0 r& @' n8 K8 i! j( [
Шаг 52 `3 n* \. @% Q
Файл NewQuestDialog-ru.dat используется для хранения диалогов, связанных с квестом. Он определяет тексты, которые отображаются в окнах диалогов с NPC во время выполнения квеста. Вот разбор ключевых элементов строки и структура файла:; a2 |" @( H  j- O
Структура данных
  • NewQuestDialog_begin — начало записи квеста в файле диалогов.
  • QuestId=10001 — идентификатор квеста (должен соответствовать ID, который ты используешь в других файлах).
  • Text0=... — первый диалог, который обычно отображается при старте квеста.
  • Text1=... — дополнительный текст, который отображается на различных этапах квеста.
  • Text2=... — текст, который отображается после выполнения определенных действий (например, после выполнения части задания).
  • Text3=... — дополнительный диалог, например, при встрече с NPC на следующем этапе квеста.
  • Text4=... — финальный текст или инструкции по следующему шагу для игрока.
  • NewQuestDialog_end — завершение записи для этого квеста.
    ) N. g4 t' U; ^  V0 {3 j# ~" m6 r# b

( E: O0 ~( Y. z. d0 tПример записи для нового квеста (ID 98765) Если ты хочешь создать диалоги для нового квеста с ID 98765, твой файл может выглядеть так:
" M; F+ T: C; z3 D( E
  1. NewQuestDialog_begin        QuestId=98765        Text0=[Вы готовы принять новый вызов и доказать свою силу?]        Text1=[Как вы себя чувствуете? Вы выглядите уверенно. Это хороший знак, но не расслабляйтесь — впереди много испытаний. Примите это задание, если готовы.]        Text2=[Пора приступить к тренировкам. Идите за мной в тренировочную зону.]        Text3=[Следуйте моим указаниям, и вы раскроете весь свой потенциал.]        Text4=[Поговорите с Дарти. Кликните на него и начните диалог.]        NewQuestDialog_end6 t8 a1 f) W' x3 k
Скопировать код
Разъяснение полей:* P% r5 ^+ ?4 q
  • QuestId=98765 — уникальный идентификатор нового квеста.
  • Text0 — вводный текст квеста. Отображается при первом контакте с NPC.
  • Text1 — дополнительный диалог, который дается игроку для создания контекста.
  • Text2 — текст, который отображается на следующем этапе квеста, например, после выполнения части задания.
  • Text3 — описание следующего шага или инструкции для игрока.
  • Text4 — финальный диалог или текст с указанием цели (встреча с другим NPC).
    ; J: [& ~- V! |

  n& U/ _- p4 y7 q: D# `5 @$ C& r- r- V+ _" J) k9 D2 D
Что можно изменить:
  • Тексты диалогов (Text0, Text1 и так далее) можно адаптировать под конкретные ситуации в квесте.
  • Количество текстов можно варьировать в зависимости от сложности квеста.8 g/ d9 V, U3 m4 T, `+ Y9 q8 \

) l$ I! V- n- M: y# W$ u. DФайл NewQuestData-ru.dat содержит параметры, связанные с квестом в игре Lineage II, и описывает условия, NPC, цели и награды. Рассмотрим параметры этого файла:! |8 s" y6 g* c
1 X- F# q1 B/ @
  • newquestdata_begin / newquestdata_end: Эти параметры обозначают начало и конец блока данных квеста.
  • quest_id=10001: Уникальный идентификатор квеста (ID). В данном случае это квест с ID 10001.
  • quest_type=1: Тип квеста.
    9 y, _; R( P. G" p
    • 1 обычно означает стандартный квест.
      * L& n+ n8 Q! d8 n
  • quest_name=[Новый путь]: Название квеста. Здесь указано "[Новый путь]" — это имя, отображаемое в игре.
  • quest_level={0;0}: Уровневые ограничения квеста.
    $ [7 w9 H( J3 K3 j: f
    • Первое значение указывает минимальный уровень, второе — максимальный уровень.
    • {0;0} означает, что нет ограничений по уровню.
      " L, V, X. `+ V. r
  • pre_quest={}: Предварительный квест, который нужно выполнить перед началом этого квеста.
    8 b( t2 k3 f! l) V
    • В данном случае он пустой {}, что означает, что нет предварительных требований.( E0 l# m7 ^7 v9 D
  • class={0;10;18;25;31;38;44;49;53;123;124}: Классы или расы, которые могут брать квест.
    ! `, o, U% o0 W5 _
    • Номера классов указывают на те классы, которым доступен этот квест. В данном примере классы, такие как 0 (человеки), 10 (рыцари) и другие, имеют доступ.
      6 y, c4 t% B1 I6 C3 p+ `- c; O: b
  • quest_item=82948: ID квестового предмета, необходимого для выполнения цели или этапа квеста.
    ) P0 t9 N6 E2 u' y# R, z
    • В данном случае это предмет с ID 82948.+ M8 v8 d' g% o. A; T
  • start_item=0: Предмет, который выдается при начале квеста.
    + z7 J/ ~% l. Y5 m2 ^2 Z; M  v
    • Значение 0 означает, что предмет не выдается.' n+ K  ?/ V1 [; t7 w% G
  • start_npc=34505: ID NPC, у которого начинается квест.
  • start_npc_loc=1002: Локация NPC, у которого начинается квест./ [5 |7 `" {% v" D
    • Это ID локации, где находится стартовый NPC.3 q; v" {$ d% q4 P6 W. x$ A! B
  • end_npc=34696: ID NPC, у которого завершается квест.
  • end_npc_loc=1003: Локация NPC, у которого завершается квест.
    ( j- [) h/ ]$ \! I" ]  M( Z1 ^. i
    • Это ID локации, где находится конечный NPC.
      , c# h7 f9 F: s. P+ ~( I
  • quest_loc=1003: Основная локация выполнения квеста.$ L- @& T2 p/ h! \
    • Это ID зоны, где нужно выполнять основные задачи.6 E, f) }# ?) P3 R; k$ Q
  • goal_string=[Дарти (Зона Тренировки)]: Описание цели квеста.
    + T$ X2 v: e; F7 k
    • В данном случае цель связана с персонажем по имени "Дарти" в Зоне Тренировки.+ Y2 h: C/ ^# B# l
  • goal_num=1: Количество действий, необходимых для выполнения цели (например, убийств монстров или сбора предметов).2 R5 v6 I) s2 p8 R! E0 h" g0 E0 c
    • В данном случае нужно выполнить одно действие (1).( i5 [& {  F: _3 i' L; M
  • reward_level=65535: Уровень, при котором можно получить награду.; W6 \, v) q9 b% F
    • В данном случае это максимальное значение, указывающее, что награда доступна всегда., T4 M' u6 |! j
  • reward_exp=0: Опыт (EXP), выдаваемый в качестве награды.
    , @7 }6 J, G  ]  b" ]. i5 K
    • В данном случае опыт не выдается.
      , Z) K9 e, }% E7 L0 I* O$ N0 p
  • reward_sp=0: Количество SP (Skill Points), выдаваемых в качестве награды.' _$ \9 e0 G3 `' G$ m9 {
    • Здесь тоже 0, значит, SP не выдаются.( A, u. t: j) ~2 p) i
  • reward_item={}: Наградные предметы.! W) V# ~( ^5 J0 O* r1 K2 C
    • В данном случае наградные предметы отсутствуют.
      - w5 O: ~) ]/ j& ^
Этот файл определяет основной функционал и настройки для конкретного квеста в игре.
( e- }4 f- x; S5 ~) e! u3 _: o! i+ ~' R
0 ~3 N' Z  y6 ?9 h2 F# O. q; `/ e
( [( M% l) t* _& |* t7 H
+ e% i3 ]- `& |) ~" Z7 U
7 y- Y1 t0 @4 r
& e, ~5 }6 W& s. g
0 a3 d. G' i& N5 S- H9 {3 a" m
% }2 h; K; |2 v7 `9 m
4 U, ?( s$ C+ ]( H

2 K) D0 N. v$ d' h& ^! B( m1 ^
Чтобы ответить, вам надо авторизироваться в системе Вход | Зарегистрироваться

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

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

638638758

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

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

admin@artace.ru Онлайн

QR-код

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