Top.Mail.Ru

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

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

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

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

x
Сборка: L2l_Monius % E' M/ v/ ^' o$ c$ `, r
Следующие квесты можно использовать в качестве шаблонов для создания практически любого простого квеста go kill или go talk.
8 L/ o' h2 Q( k2 P' d" ^8 }3 T
6 K1 r& f) k7 i- E4 v- u0 D+ i
0 ?8 A+ }4 a  o; @
Иди и убей X монстров / Возвращение - награда.
4 N1 i# g* \9 O; t7 A0 lQ00529_RegularBarrierMaintenance$ q6 {& D1 \+ d4 X* b
3 g5 X% `: C0 [8 j1 ^0 g! h2 q$ A
Получите квест от любого из двух разных NPC / Убейте X монстров / Вернитесь с наградой.( R; c$ ^( X0 F
Q00683_AdventOfKrofinSubspecies
: M* I6 u4 C: f( T! e: A
' S4 a, W# p" O6 [Поговори с NPC 1 / Поговори с NPC 2 / Поговори с завершающим NPC / Награда.
/ ]; h3 X6 W& J$ q1 Z( F+ lQ10516_UnveiledFafurionTemple
9 x8 @9 o/ u% Q
, _  w6 F# @( K( XУбейте X монстров, а также соберите X предметов / Возврат - награда.
2 o6 M5 b9 d0 Q$ v1 |Q10517_FafurionsMinions
/ r0 U2 L, F! Y: q! q
) ~) v4 n% p2 H+ KИди собери X капель монстров / Вернись - убей X монстров / Вернись - награда.
8 D! F& G0 u% [+ t. J7 u! MQ10529_IvoryTowersResearchFloatingSeaJournal
1 C) p' a1 n2 Y8 Y
# s% c" x8 a$ r4 R7 wИди убей X монстров, а также собери X предметов / Возвращение - иди собери X предметов / Возвращение - награда.! j4 D9 q9 W: v! Y* ^
Q10518_SucceedingThePriestess
% W6 G. c/ E. l  ~7 s3 x9 X) }- m( F+ t9 \5 O! n0 M" `
Участвуйте в убийстве рейдбосса / Возврат - награда.' t& i: K# L4 K2 s7 O2 \
Q10519_контролирование вашей температуры
" E- o$ V/ M% b! w+ K1 o' e9 O9 M5 n8 v. j
Поговорите с NPC 1 / Примите участие в убийстве рейдбосса / Возвращение - награда.9 l3 a# c% |% a# N1 g, D$ d
Q10533_OrfensAmbition
5 ^$ q! a& Z: \, k6 h6 d! E+ z$ V1 E$ c$ ~. m
/ o; ~$ A! x( ?; A

- Q: T7 K, h  \/ ]+ T2 ^Руководство требует обновления. И, к сожалению, с самыми последними хрониками вы не сможете избежать модификаций клиента. Поэтому, исключительно в образовательных целях, я предлагаю свой опыт по добавлению нового квеста!
, w# u" @3 `, Y; b

( H( K* o" _* `/ R- H$ f3 DШаг 1:
Создайте свой квест с уникальным ID. В этом примере я буду ссылаться на квест как "Q98765_NewQuest".
1 Z& d( N% N- Z
- N0 `. i9 Z/ o  WШаг 2: Когда вы успешно создали свой квест и Eclipse не выдает ошибок, добавьте название квеста и импортируйте его в файл "QuestMasterHandler.java".3 [, S) Q3 H2 Y0 |* o
9 C/ L, D) C" z' }& W
Шаг 3: Перейдите в клиент и с помощью редактора клиента добавьте квест в следующие файлы .dat: "questname-ru.dat" и "QuestMarkConditionData.dat".
& T! F; o4 u4 p9 H9 m1 k# e0 r" d: ]+ p- H4 x* @
Следующие шаги относятся к любым новым хроникам, которые используют всплывающие окна квестов.. L6 O. M+ ^7 }2 M' g( W* C! I* w

$ Q) T( s. J' Q1 h/ u. c3 W" ZШаг 4: Найдите в серверных файлах файл с названием "NewQuestData.xml" и добавьте туда свой квест.
# ?8 j: A5 U; x0 T; Y. q% l
7 ]' m/ X1 i" K. {! d; u2 }Шаг 5: Найдите в клиенте следующие файлы и добавьте туда свой квест: "NewQuestData-ru.dat", "NewQuestDialog-ru.dat" и "NewQuestNpcPortrait.dat".  O1 y: W9 k8 O( t, K8 d/ o

5 D9 K5 T" ], ]! eЕсли я что-то забыл, не стесняйтесь исправить меня. Это руководство создано исключительно в образовательных целях.1 v6 s! \% t) Y+ t

3 J2 S( X) o  T& X6 D) wШаг 2:' Q5 \( e! L- D8 w& x% \

" M& f" c" T# |! ]- T3 vСледующий шаг заключается в добавлении вашего квеста в QuestMasterHandler.java. Вот общий план:5 j+ l: B% ]; w: k0 K
/ T7 K' l) p) a: @* }$ B0 l
1. Импорт вашего квеста: В начале файла после всех существующих импортов добавьте строку, которая будет импортировать ваш квест. : E. X" w, N0 o5 ~1 D
Например:
* m2 N8 F- R  p9 y; J6 ~4 N0 W7 E9 c; I
  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>;
    , r2 q- U; S8 o/ z
Скопировать код
1. Регистрация квеста: Найдите метод, который отвечает за регистрацию всех квестов. Обычно это делается в статическом блоке или методе init, где происходит инициализация квестов. В этом блоке добавьте строку, которая будет регистрировать ваш квест:% ]6 m( I% [, N! {# |+ V' q
! L( g) S% W$ T9 {- [) L
  1. /**
    4 \* ^7 t' s! n% D3 \0 \
  2. * @author NosBit, X' I8 L% v( v% a  c
  3. */4 b$ f; Y. x2 ~2 \/ m+ G2 T5 z  T7 d
  4. public class QuestMasterHandler
    8 O' P) r8 Y( a  [6 V5 e
  5. {
    . `4 R* j! F2 m* L) J' m7 i, j
  6.         private static final Logger LOGGER = Logger.getLogger(QuestMasterHandler.class.getName());" x# j' w+ m/ o8 J4 R
  7.         6 ]5 U& H0 }8 l5 R
  8.         private static final Class<?>[] QUESTS =1 `  ^9 u9 o% f& }% t7 A/ y& L1 ~
  9.         {
Скопировать код
Проверка: Убедитесь, что идентификатор вашего квеста (в данном случае Q98765_NewQuest.class) уникален и не конфликтует с уже существующими квестами.
) |+ C$ J+ R3 B9 k1 }5 T% |) }& M$ j5 e8 \) ]; x
: D2 l; `5 g) |3 h6 ?7 M3 w
Шаг 3:! X- j; t+ L, G0 G* T: [, q* O) `
' P' t1 d. S: ?& q6 {/ v7 }
Файл QuestName-ru.dat используется для описания квестов и содержит различные параметры, которые задают характеристики квеста, его цели, награды, ограничения и т.д.
' X8 A: V- V/ n! K$ P# WДавайте разберем все поля на основе примера:; [, {+ y$ k' G# Y( E/ S: i

2 B( @+ A* M, n5 x! t/ Z. O) s
  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
    9 R$ ~5 Y0 `; {" Q7 Q# `1 ^
Скопировать код
Поля данных:
  • 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 — завершение записи для квеста.
    5 e! G/ U1 a- b: ?0 d' Z
; V5 k. Z: R1 _4 x" i

, Z# D5 T: Y( y/ W* M5 nФайл клиента QuestMarkConditionData.dat содержит информацию о квестах, связанных с условиями, необходимыми для активации или завершения определённых действий в игре. 0 {0 S, X, D+ d; @9 E3 t# g& @5 n
Пример соодержания6 u# ?# `- l( L
Вот описание структуры строки:  ^% l$ \1 R. ~1 w
  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
Скопировать код
Давайте разберем все поля на основе примера:  e/ w. x* w. h( f: e: g

, _- A7 ?. ~5 r$ f* W
  • 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: Указывает на конец записи о квесте.5 l* C6 |! |2 F% x# r+ t
Эта структура помогает клиенту определять условия, при которых игрок может начать или выполнить квест, а также идентифицировать необходимые взаимодействия с NPC.
9 B; e4 {0 z' B/ k4 N- \" s% `, T' Q5 q" m2 A' k- \$ `" n, D

1 G- C% g- R- c
. y7 V9 [  F2 ], }3 |6 Q' S
Следующие шаги относятся к любым новым хроникам, которые используют всплывающие окна квестов.
3 v1 l/ a) v8 z4 n) b7 \) q9 u9 J; n' u: ]/ g7 A7 t7 z/ a. y
Шаг 4
( a" w9 d0 c- _1 e# Z0 O( E, bДля того чтобы добавить свой квест в файл NewQuestData.xml, нужно следовать структуре, аналогичной приведенному вами примеру. Вот как это может выглядеть:
  F1 }- G1 m9 j. vПример добавления нового квеста:6 `, n8 C  c0 ~0 g% X! ]" }6 \0 f
  1. <quest id="20001" type="1" name="Mystery of the Lost Relic" startNpcId="30050" endNpcId="30051">
    . B) e" M0 f0 D0 R
  2.     <locations>' V6 K9 n, `+ x0 s8 P1 ~8 U' B7 S
  3.         <param name="startLocationId">2001</param>
    & h: I9 z: C% [9 x' x0 `. H- Q; g! |
  4.         <param name="endLocationId">2002</param>
    " w/ h: H$ J6 E9 z* l" n; R
  5.         <param name="questLocationId">2003</param>
      m. Y; K8 N; H
  6.     </locations>, q9 J1 ?. L* a) d& f( ?
  7.     <conditions>
    ; v+ k- d0 C5 D, w7 e6 K6 S
  8.         <param name="preQuestId">20000</param>+ m! {7 R5 X* N( K+ Y* b
  9.         <param name="classIds">0;1;2;3;4;5;6</param> <!-- доступ для всех рас -->
    6 o) u# s7 j  u- V/ H
  10.     </conditions>, d7 Q0 Z6 K/ x2 m8 g, Y8 R
  11.     <rewards>1 P! K/ h: P0 R+ g( e
  12.         <param name="rewardLevel">50</param>
    * c% W0 g( \7 `/ D" J
  13.         <param name="rewardSp">5000</param>
    , Z" V+ ^6 ~" O- a
  14.         <param name="rewardItemId">57</param> <!-- Adena -->6 F; n3 }. @- n& f+ K5 l
  15.         <param name="rewardItemCount">10000</param>
    0 n/ e) Q0 ^0 r$ l/ @! }9 o( u" f
  16.     </rewards>+ v6 J9 |1 a1 E: D
  17.     <goals>" h1 k* M$ N' P' a# ]
  18.         <param name="goalCount">10</param>) M; ~' u) ^7 K# ?* g$ q
  19.         <param name="goalString">Defeat monsters in the Ancient Forest</param>9 r9 V" y, b* a4 o8 A4 H
  20.         <param name="goalItemId">92000</param> <!-- некий квестовый предмет -->1 `3 ^/ u4 S! S( h, j% y
  21.         <param name="goalItemCount">1</param>% ]/ h9 G$ m! N
  22.     </goals>. C' l3 D4 G8 w) n! E
  23. </quest>& R* Y; E+ v/ N! N9 J
Скопировать код
Описание структуры:
& w& _. U  @' \8 N8 C
  • quest: Основной элемент квеста, содержащий атрибуты:3 x5 ?9 {9 A; c( m# m4 A& u) q+ t
    • id: ID квеста, уникальный для каждого квеста.
    • type: Тип квеста (1 – обычный квест).
    • name: Название квеста.
    • startNpcId: ID NPC, с которого начинается квест.
    • endNpcId: ID NPC, у которого квест заканчивается.( c$ C5 n( R  V( k: e( \
  • locations: Указывает места начала, окончания и квестовой активности.9 v% l0 x6 Q; r  }
    • startLocationId: ID места, где начинается квест.
    • endLocationId: ID места, где квест заканчивается.
    • questLocationId: ID квестовой зоны.
      7 m' B. J5 R. r+ ?* w6 U: @- E
  • conditions: Условия для начала квеста.
    % o8 a  T8 A8 F5 S3 H
    • preQuestId: ID предварительного квеста (если есть).
    • classIds: ID классов или рас, которым доступен квест.
      - c& Z; `# ~/ |
  • rewards: Награды за выполнение квеста.7 d: C- @. k) \
    • rewardLevel: Минимальный уровень для получения награды.
    • rewardSp: Количество опыта (SP).
    • rewardItemId: ID предмета (например, Adena).
    • rewardItemCount: Количество предметов.' T6 H7 _  w( g: d+ m8 j
  • goals: Цели квеста.
    - M! r# F' {# g2 |2 j7 C2 q4 b
    • goalCount: Количество монстров, которых нужно убить или предметов, которые нужно собрать.
    • goalString: Описание цели.
    • goalItemId: ID квестового предмета (если требуется).
    • goalItemCount: Количество квестовых предметов для завершения цели.
      ; K4 [1 C1 U! ^! {( Q9 ^
После того как вы добавите квест в файл NewQuestData.xml, нужно перезапустить сервер, чтобы изменения вступили в силу.
+ A5 d( }  \$ H
) u# Y& K2 Z1 a# R' U  b: \% YШаг 5
9 U- u+ o4 n0 r! L, K# Z' Z/ oФайл NewQuestDialog-ru.dat используется для хранения диалогов, связанных с квестом. Он определяет тексты, которые отображаются в окнах диалогов с NPC во время выполнения квеста. Вот разбор ключевых элементов строки и структура файла:/ G6 d: c, t) |" v
Структура данных
  • NewQuestDialog_begin — начало записи квеста в файле диалогов.
  • QuestId=10001 — идентификатор квеста (должен соответствовать ID, который ты используешь в других файлах).
  • Text0=... — первый диалог, который обычно отображается при старте квеста.
  • Text1=... — дополнительный текст, который отображается на различных этапах квеста.
  • Text2=... — текст, который отображается после выполнения определенных действий (например, после выполнения части задания).
  • Text3=... — дополнительный диалог, например, при встрече с NPC на следующем этапе квеста.
  • Text4=... — финальный текст или инструкции по следующему шагу для игрока.
  • NewQuestDialog_end — завершение записи для этого квеста.6 u5 f, g# m. P7 N5 M/ U

" `& r% [, }: |2 M3 }1 l* KПример записи для нового квеста (ID 98765) Если ты хочешь создать диалоги для нового квеста с ID 98765, твой файл может выглядеть так:) @8 X3 S9 t9 @/ U9 [  ?
  1. NewQuestDialog_begin        QuestId=98765        Text0=[Вы готовы принять новый вызов и доказать свою силу?]        Text1=[Как вы себя чувствуете? Вы выглядите уверенно. Это хороший знак, но не расслабляйтесь — впереди много испытаний. Примите это задание, если готовы.]        Text2=[Пора приступить к тренировкам. Идите за мной в тренировочную зону.]        Text3=[Следуйте моим указаниям, и вы раскроете весь свой потенциал.]        Text4=[Поговорите с Дарти. Кликните на него и начните диалог.]        NewQuestDialog_end6 @0 w8 r! A$ W
Скопировать код
Разъяснение полей:( l: T  k0 T) y
  • QuestId=98765 — уникальный идентификатор нового квеста.
  • Text0 — вводный текст квеста. Отображается при первом контакте с NPC.
  • Text1 — дополнительный диалог, который дается игроку для создания контекста.
  • Text2 — текст, который отображается на следующем этапе квеста, например, после выполнения части задания.
  • Text3 — описание следующего шага или инструкции для игрока.
  • Text4 — финальный диалог или текст с указанием цели (встреча с другим NPC).8 ?% ?5 b- m& o/ B
8 h) X& d0 t, `  f* g4 O
$ h4 K, W- k! G
Что можно изменить:
  • Тексты диалогов (Text0, Text1 и так далее) можно адаптировать под конкретные ситуации в квесте.
  • Количество текстов можно варьировать в зависимости от сложности квеста.$ _- l& b6 x! p- F( C
# j# y: i6 X; X' U2 [/ j5 p
Файл NewQuestData-ru.dat содержит параметры, связанные с квестом в игре Lineage II, и описывает условия, NPC, цели и награды. Рассмотрим параметры этого файла:
, `' L" p4 u! o) k9 ?1 o
' a* M7 Y7 W7 e( Q( I
  • newquestdata_begin / newquestdata_end: Эти параметры обозначают начало и конец блока данных квеста.
  • quest_id=10001: Уникальный идентификатор квеста (ID). В данном случае это квест с ID 10001.
  • quest_type=1: Тип квеста.! h' e/ u8 k1 S% h* D9 x# U4 u
    • 1 обычно означает стандартный квест.
      1 d& `; [( r( l: Y4 ?. O6 ]/ M" E
  • quest_name=[Новый путь]: Название квеста. Здесь указано "[Новый путь]" — это имя, отображаемое в игре.
  • quest_level={0;0}: Уровневые ограничения квеста.
      G6 F; x- _# ^  Y, \$ G  I
    • Первое значение указывает минимальный уровень, второе — максимальный уровень.
    • {0;0} означает, что нет ограничений по уровню.
      * p9 K1 G, x0 F
  • pre_quest={}: Предварительный квест, который нужно выполнить перед началом этого квеста.; T4 d7 Z  r! p. s" g. ], a
    • В данном случае он пустой {}, что означает, что нет предварительных требований.
      " k% k4 ]9 W9 M; k* _$ v( o
  • class={0;10;18;25;31;38;44;49;53;123;124}: Классы или расы, которые могут брать квест.; s8 |8 s/ l6 K% W0 O1 r# U
    • Номера классов указывают на те классы, которым доступен этот квест. В данном примере классы, такие как 0 (человеки), 10 (рыцари) и другие, имеют доступ.
      - t( ?. I7 S% n+ K
  • quest_item=82948: ID квестового предмета, необходимого для выполнения цели или этапа квеста.
    # y# D2 E, U+ i: C  e
    • В данном случае это предмет с ID 82948.
      9 V, X& c  L- H9 @' }" y6 z# R
  • start_item=0: Предмет, который выдается при начале квеста.* R( i- R1 _5 |8 I
    • Значение 0 означает, что предмет не выдается.
      1 b2 n. B" G& b! @/ u- E% W) Y" q" c
  • start_npc=34505: ID NPC, у которого начинается квест.
  • start_npc_loc=1002: Локация NPC, у которого начинается квест.1 Q- k' x# T: `5 G7 O) h. f# u/ i: U
    • Это ID локации, где находится стартовый NPC.
      ! ?" y8 _. b  P7 R1 o  _0 p
  • end_npc=34696: ID NPC, у которого завершается квест.
  • end_npc_loc=1003: Локация NPC, у которого завершается квест.2 @8 f0 h; N' V; m
    • Это ID локации, где находится конечный NPC.
      . Z/ [/ |- T$ {+ e5 s$ L6 t! S
  • quest_loc=1003: Основная локация выполнения квеста.- `& X" O6 N( p. c
    • Это ID зоны, где нужно выполнять основные задачи.
        r5 A, h/ m$ f8 O+ T; e6 x
  • goal_string=[Дарти (Зона Тренировки)]: Описание цели квеста.' {' [4 T2 x$ x! S. C' I
    • В данном случае цель связана с персонажем по имени "Дарти" в Зоне Тренировки.
      * s/ M/ r: [& H
  • goal_num=1: Количество действий, необходимых для выполнения цели (например, убийств монстров или сбора предметов).9 k% B$ N( ~0 Z9 J
    • В данном случае нужно выполнить одно действие (1).* n) l8 ?( n4 p( o1 T! q# |
  • reward_level=65535: Уровень, при котором можно получить награду.9 S2 b6 y2 W2 E9 \& B+ h
    • В данном случае это максимальное значение, указывающее, что награда доступна всегда.+ Q9 H) o( j2 \. n$ l- L
  • reward_exp=0: Опыт (EXP), выдаваемый в качестве награды.
    " b) Y) M& p8 K, G9 h3 A' n6 Z; r7 _
    • В данном случае опыт не выдается.( b" [1 H. w# d7 Z# |( k; Z  ]. _
  • reward_sp=0: Количество SP (Skill Points), выдаваемых в качестве награды.; H! [6 v* R. f8 y+ S
    • Здесь тоже 0, значит, SP не выдаются.$ S* y- m- }; k0 d
  • reward_item={}: Наградные предметы.6 n* U6 Q" q+ W* A+ k% X1 u- T
    • В данном случае наградные предметы отсутствуют., c5 {4 W4 Q( n- u/ Z6 H
Этот файл определяет основной функционал и настройки для конкретного квеста в игре.
0 e  X5 l6 B  a$ V! h
1 @+ L: o$ G9 `: B5 z
8 j. n9 L9 _! y% J' B
& {9 k  h) g7 P  Q: r* c% z$ z
. z3 \9 \2 t1 z" `" `8 ]' ?! t
6 L2 ~( i4 J. P! v+ e. e/ F( A/ a, ?: n2 j$ d3 q

+ S! `5 f! b% V$ E, G+ c
# h) B+ J5 P8 K% [% [2 n) F; G; S1 q* Q$ M- V0 P( C* _7 T9 S

9 w# R8 y. v! j9 |0 X
Чтобы ответить, вам надо авторизироваться в системе Вход | Зарегистрироваться

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

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

638638758

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

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

admin@artace.ru Онлайн

QR-код

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