Top.Mail.Ru

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

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

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

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

x
Сборка: L2l_Monius , a6 {& P6 J6 b) z3 M
Следующие квесты можно использовать в качестве шаблонов для создания практически любого простого квеста go kill или go talk.$ i) n' i" ?, F; w! s3 m4 {
1 b# |8 }% g- x& n* v
0 T) G( d  s" o3 ?9 _' H
Иди и убей X монстров / Возвращение - награда.
% `+ h  D  ~6 s: k! B/ Y  K% vQ00529_RegularBarrierMaintenance6 O1 a( ]/ j# z  q
! ?3 {2 D- v1 y+ N( \5 X
Получите квест от любого из двух разных NPC / Убейте X монстров / Вернитесь с наградой.. {- Y/ b) K7 S
Q00683_AdventOfKrofinSubspecies1 p# _! A+ _9 }0 A  l' A

. a6 y' |; u+ y: U7 hПоговори с NPC 1 / Поговори с NPC 2 / Поговори с завершающим NPC / Награда.! j" R. \2 z9 C% L' H
Q10516_UnveiledFafurionTemple, u+ B0 M9 L* p3 r6 V: }& _

9 D( m3 X$ q$ Z. hУбейте X монстров, а также соберите X предметов / Возврат - награда.
3 y0 J1 W3 A1 `* L' [Q10517_FafurionsMinions9 [4 H) [' M5 i0 Y

; p& g# R; h; `+ ]  @, \Иди собери X капель монстров / Вернись - убей X монстров / Вернись - награда.# C+ Z) _( v; L
Q10529_IvoryTowersResearchFloatingSeaJournal
" w! F: e4 F& `3 \* _* M$ o
* w9 X2 Y' w6 a- }Иди убей X монстров, а также собери X предметов / Возвращение - иди собери X предметов / Возвращение - награда.8 e9 F) i) o/ u  K( W( s. f' }
Q10518_SucceedingThePriestess
7 A& E9 Z  U! g( y3 D; J2 o* O0 j8 a; A) u7 w0 M) ~: N5 e$ a, L
Участвуйте в убийстве рейдбосса / Возврат - награда.. q, v1 Q  {4 E0 z: [+ t
Q10519_контролирование вашей температуры1 Q8 i! P, K2 i. s) W8 f$ w8 U
7 ?* G% O1 z, z$ \
Поговорите с NPC 1 / Примите участие в убийстве рейдбосса / Возвращение - награда.
# g; B: {- ^. \, _" qQ10533_OrfensAmbition: m" D, N) ~1 G
7 C+ Q, q) j0 A4 h

5 t+ o0 ^( L! u7 N
0 F) H8 n  D4 E& KРуководство требует обновления. И, к сожалению, с самыми последними хрониками вы не сможете избежать модификаций клиента. Поэтому, исключительно в образовательных целях, я предлагаю свой опыт по добавлению нового квеста!

* F/ g8 W8 u# h, W* Z  ?
8 T1 K* l$ p* J! I  YШаг 1:
Создайте свой квест с уникальным ID. В этом примере я буду ссылаться на квест как "Q98765_NewQuest".
2 _  b9 ~: D2 c: k0 F: I) v% v% e  u) G2 T3 T$ y8 M+ A
Шаг 2: Когда вы успешно создали свой квест и Eclipse не выдает ошибок, добавьте название квеста и импортируйте его в файл "QuestMasterHandler.java".5 ~* o* F1 T3 p: n
9 _0 `2 B7 j, v
Шаг 3: Перейдите в клиент и с помощью редактора клиента добавьте квест в следующие файлы .dat: "questname-ru.dat" и "QuestMarkConditionData.dat".2 ^# w. ]2 [: n6 n) v5 D! x
- k6 a* N' @7 }) h' ^7 d; T
Следующие шаги относятся к любым новым хроникам, которые используют всплывающие окна квестов.& e) k; K5 p+ V2 `

; o2 ~" }7 U5 N: JШаг 4: Найдите в серверных файлах файл с названием "NewQuestData.xml" и добавьте туда свой квест.
2 v5 ]% ?% y7 `; d5 M. m/ k3 _, E
Шаг 5: Найдите в клиенте следующие файлы и добавьте туда свой квест: "NewQuestData-ru.dat", "NewQuestDialog-ru.dat" и "NewQuestNpcPortrait.dat".. S# g- [0 f. `: x9 {
) F/ r& z. Y2 N
Если я что-то забыл, не стесняйтесь исправить меня. Это руководство создано исключительно в образовательных целях.5 Q- ^6 s6 f; I

  m1 h1 l4 H, R+ c  FШаг 2:
4 b5 d) J# J+ V3 d* Z5 Q
5 A/ X& L0 O' A  I: V1 CСледующий шаг заключается в добавлении вашего квеста в QuestMasterHandler.java. Вот общий план:1 v" y) O' W9 u8 v2 _7 |. J

0 c2 }5 w7 B5 `+ E1. Импорт вашего квеста: В начале файла после всех существующих импортов добавьте строку, которая будет импортировать ваш квест. ' W2 o1 H- S' x
Например:
+ r" l! x0 ]! `. [  a' O) I! Q7 [# H# j' p/ v: 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>;
    % \+ R9 Q- p* B2 G0 X7 ~
Скопировать код
1. Регистрация квеста: Найдите метод, который отвечает за регистрацию всех квестов. Обычно это делается в статическом блоке или методе init, где происходит инициализация квестов. В этом блоке добавьте строку, которая будет регистрировать ваш квест:
: `* X% R- R8 b2 r
- _! H# q: c4 A: g6 l$ K" F8 p
  1. /**
    6 a- Z. ?+ v" \2 K& b
  2. * @author NosBit% O" F- _8 P  |7 Z
  3. */
      p3 M9 Q. d" L+ ?& |1 U0 M1 J
  4. public class QuestMasterHandler
    2 z0 l' _1 C9 @9 p( s
  5. {
    - A# o1 J/ M$ d* E5 J
  6.         private static final Logger LOGGER = Logger.getLogger(QuestMasterHandler.class.getName());
    0 E% C4 N" H/ V0 O4 C. Q
  7.         , l  T' c& Y( ?9 P, J1 h) M' m0 Q
  8.         private static final Class<?>[] QUESTS =6 A# |+ C& d. I2 H
  9.         {
Скопировать код
Проверка: Убедитесь, что идентификатор вашего квеста (в данном случае Q98765_NewQuest.class) уникален и не конфликтует с уже существующими квестами.- C7 I; q" b5 N( g1 H
5 u# ?/ I" F" R# H2 {
2 b1 s( t0 _- J4 {+ N2 E8 n6 ?) k
Шаг 3:
9 ^4 L; S# f+ z3 {/ y; J- z' l4 `6 ?5 U
Файл QuestName-ru.dat используется для описания квестов и содержит различные параметры, которые задают характеристики квеста, его цели, награды, ограничения и т.д.
4 ?# d5 B" J4 X8 r9 T- b# ~8 RДавайте разберем все поля на основе примера:! G& w' W, L3 p& R

0 E8 F3 r9 o5 x8 ]+ q3 v
  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
    8 |0 }3 E: e9 P9 V6 }  ^, r  }3 {
Скопировать код
Поля данных:
  • 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 — завершение записи для квеста.' `: a% c6 W# f6 h" J2 G' e
4 a6 o2 v# z( W; s$ |. Z
3 c" W" p3 c$ x: h) u% n- \
Файл клиента QuestMarkConditionData.dat содержит информацию о квестах, связанных с условиями, необходимыми для активации или завершения определённых действий в игре. + x6 V& R3 T0 B4 f1 L( o& l
Пример соодержания8 z6 [6 u+ V9 v. G. Y4 B
Вот описание структуры строки:
2 B! s$ K9 k+ n! j6 H7 t
  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 G- Y% q) c5 d1 Z9 l, C/ C( M
3 b5 L( `' X2 ]; H& e
  • 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: Указывает на конец записи о квесте.
    " r8 {5 ?8 j, `' D3 k( f1 z; l
Эта структура помогает клиенту определять условия, при которых игрок может начать или выполнить квест, а также идентифицировать необходимые взаимодействия с NPC.: m0 P% z# @3 g3 r( F6 \
0 v6 b4 j' _( X$ Z+ P

8 p7 n- n- U8 U! G1 R% L

$ u% e! v. _6 S6 u" s& Y' Q. S5 ^' qСледующие шаги относятся к любым новым хроникам, которые используют всплывающие окна квестов.. |( c- j$ m! K; ^4 ~' F  k
# G) o' Z4 l% @+ T9 E1 S
Шаг 4. X. a+ c% Y* M: m: @# Q% D
Для того чтобы добавить свой квест в файл NewQuestData.xml, нужно следовать структуре, аналогичной приведенному вами примеру. Вот как это может выглядеть:  I  t" u+ ~# V; A+ V+ J
Пример добавления нового квеста:# [! R0 f- _, ^5 f5 ?4 H6 q5 c
  1. <quest id="20001" type="1" name="Mystery of the Lost Relic" startNpcId="30050" endNpcId="30051">
    . X! [/ v( H) E+ z1 x$ ]
  2.     <locations>
    4 B" f+ e& F! ]
  3.         <param name="startLocationId">2001</param>
    1 I6 E$ g. B1 D; y: l
  4.         <param name="endLocationId">2002</param>: h- q( y" R& H7 S2 q2 f, g
  5.         <param name="questLocationId">2003</param>
      J3 B3 ^6 x. `
  6.     </locations>
    1 ^  A, y! m4 @& v  J
  7.     <conditions>8 s( u0 l3 A. x# P2 F  A8 G$ M
  8.         <param name="preQuestId">20000</param>; T$ l9 `4 a; R; ?
  9.         <param name="classIds">0;1;2;3;4;5;6</param> <!-- доступ для всех рас -->
    # |& |+ z( Z" \# L( w: F+ }
  10.     </conditions>
    : u7 s( X: T9 Z9 {2 R
  11.     <rewards>4 z: u; f( p  z3 [0 Y
  12.         <param name="rewardLevel">50</param>( u( z- x. }0 G+ p
  13.         <param name="rewardSp">5000</param>
    % J" h- G' R% E/ o) y
  14.         <param name="rewardItemId">57</param> <!-- Adena -->
    ; n9 `1 C7 Y9 Y* W7 S5 F# b
  15.         <param name="rewardItemCount">10000</param>
    / w% |7 B& k2 U7 T
  16.     </rewards>) a$ W$ h  L$ G+ s- Q& D) T
  17.     <goals>) a0 q1 @; S* U8 ], t/ [) r
  18.         <param name="goalCount">10</param>
    - V0 w$ a6 O& _  P' n9 s/ X
  19.         <param name="goalString">Defeat monsters in the Ancient Forest</param>8 d' z( F  B/ O2 V
  20.         <param name="goalItemId">92000</param> <!-- некий квестовый предмет -->+ U6 N6 s& H$ u' V8 \
  21.         <param name="goalItemCount">1</param>
    - B. c. V/ H$ U. r+ d: q
  22.     </goals>' _1 ]* J, N0 m- O2 c7 N* Y8 V0 m
  23. </quest>, @& h# b3 K" T
Скопировать код
Описание структуры:( f# l' ]: x& h6 G
  • quest: Основной элемент квеста, содержащий атрибуты:8 _; \2 l) f4 w. G; |: n
    • id: ID квеста, уникальный для каждого квеста.
    • type: Тип квеста (1 – обычный квест).
    • name: Название квеста.
    • startNpcId: ID NPC, с которого начинается квест.
    • endNpcId: ID NPC, у которого квест заканчивается.; c4 ]% j; T, m" Y/ a! i) Q. I! a
  • locations: Указывает места начала, окончания и квестовой активности.: V) |3 o& C( p$ X9 ^! _' `+ M3 k
    • startLocationId: ID места, где начинается квест.
    • endLocationId: ID места, где квест заканчивается.
    • questLocationId: ID квестовой зоны.
      : e" |6 s% i3 O1 H2 I  _6 T
  • conditions: Условия для начала квеста.
    ! s+ ^) y9 v9 K2 ]* F: S- \2 m* a
    • preQuestId: ID предварительного квеста (если есть).
    • classIds: ID классов или рас, которым доступен квест.8 y/ H6 i& j' x# D& c3 G6 y" a
  • rewards: Награды за выполнение квеста.
    0 t6 K" Y+ a* L) I% J8 @6 t
    • rewardLevel: Минимальный уровень для получения награды.
    • rewardSp: Количество опыта (SP).
    • rewardItemId: ID предмета (например, Adena).
    • rewardItemCount: Количество предметов.& L' |3 U9 @. a) [' F, C
  • goals: Цели квеста.
    6 P& B3 H2 I2 U/ l3 c6 Y/ [
    • goalCount: Количество монстров, которых нужно убить или предметов, которые нужно собрать.
    • goalString: Описание цели.
    • goalItemId: ID квестового предмета (если требуется).
    • goalItemCount: Количество квестовых предметов для завершения цели., `+ {" u9 C& C9 H: a2 F
После того как вы добавите квест в файл NewQuestData.xml, нужно перезапустить сервер, чтобы изменения вступили в силу.
' F) l. I2 ]  _4 O1 u9 T$ a/ q/ A. E* _0 X* k% A
Шаг 5
+ a9 |+ O: N0 g+ b; BФайл NewQuestDialog-ru.dat используется для хранения диалогов, связанных с квестом. Он определяет тексты, которые отображаются в окнах диалогов с NPC во время выполнения квеста. Вот разбор ключевых элементов строки и структура файла:3 u" w  v/ _& t- J5 ~
Структура данных
  • NewQuestDialog_begin — начало записи квеста в файле диалогов.
  • QuestId=10001 — идентификатор квеста (должен соответствовать ID, который ты используешь в других файлах).
  • Text0=... — первый диалог, который обычно отображается при старте квеста.
  • Text1=... — дополнительный текст, который отображается на различных этапах квеста.
  • Text2=... — текст, который отображается после выполнения определенных действий (например, после выполнения части задания).
  • Text3=... — дополнительный диалог, например, при встрече с NPC на следующем этапе квеста.
  • Text4=... — финальный текст или инструкции по следующему шагу для игрока.
  • NewQuestDialog_end — завершение записи для этого квеста.9 {7 L3 R: M3 V' |# f$ ~$ ]

) u% F9 A3 e) y% [6 z7 ~; uПример записи для нового квеста (ID 98765) Если ты хочешь создать диалоги для нового квеста с ID 98765, твой файл может выглядеть так:
5 x& T+ ]6 P, ]/ y
  1. NewQuestDialog_begin        QuestId=98765        Text0=[Вы готовы принять новый вызов и доказать свою силу?]        Text1=[Как вы себя чувствуете? Вы выглядите уверенно. Это хороший знак, но не расслабляйтесь — впереди много испытаний. Примите это задание, если готовы.]        Text2=[Пора приступить к тренировкам. Идите за мной в тренировочную зону.]        Text3=[Следуйте моим указаниям, и вы раскроете весь свой потенциал.]        Text4=[Поговорите с Дарти. Кликните на него и начните диалог.]        NewQuestDialog_end7 A* }3 v9 Y" `9 ?$ ?# [
Скопировать код
Разъяснение полей:: c' Z  s6 x, z0 A* Z
  • QuestId=98765 — уникальный идентификатор нового квеста.
  • Text0 — вводный текст квеста. Отображается при первом контакте с NPC.
  • Text1 — дополнительный диалог, который дается игроку для создания контекста.
  • Text2 — текст, который отображается на следующем этапе квеста, например, после выполнения части задания.
  • Text3 — описание следующего шага или инструкции для игрока.
  • Text4 — финальный диалог или текст с указанием цели (встреча с другим NPC).; `4 K% }( C/ b) Q; ]
4 i, S  e1 @& D4 L

/ S% g1 a0 X' x' rЧто можно изменить:
  • Тексты диалогов (Text0, Text1 и так далее) можно адаптировать под конкретные ситуации в квесте.
  • Количество текстов можно варьировать в зависимости от сложности квеста.2 r8 a! `: ~$ Z+ ]9 W$ u
' J% x( B, V- e5 H5 m. w/ |
Файл NewQuestData-ru.dat содержит параметры, связанные с квестом в игре Lineage II, и описывает условия, NPC, цели и награды. Рассмотрим параметры этого файла:: E% ^1 O2 g2 ]% m( J7 c( Y

) `5 X  h3 K0 L  ^- A
  • newquestdata_begin / newquestdata_end: Эти параметры обозначают начало и конец блока данных квеста.
  • quest_id=10001: Уникальный идентификатор квеста (ID). В данном случае это квест с ID 10001.
  • quest_type=1: Тип квеста.. W( {7 `! ^* h# n9 J! x- [& H
    • 1 обычно означает стандартный квест.* w. R1 Q7 x" C; F
  • quest_name=[Новый путь]: Название квеста. Здесь указано "[Новый путь]" — это имя, отображаемое в игре.
  • quest_level={0;0}: Уровневые ограничения квеста.. ~/ X+ Z' S2 ~( H; P
    • Первое значение указывает минимальный уровень, второе — максимальный уровень.
    • {0;0} означает, что нет ограничений по уровню.6 a0 ^6 ]4 a9 W/ T9 M
  • pre_quest={}: Предварительный квест, который нужно выполнить перед началом этого квеста.% V; [) D+ l: E7 [
    • В данном случае он пустой {}, что означает, что нет предварительных требований.* P$ r" i  e' w; X4 t  L5 q
  • class={0;10;18;25;31;38;44;49;53;123;124}: Классы или расы, которые могут брать квест.3 z7 Y3 z: \8 N8 t) t9 w, h
    • Номера классов указывают на те классы, которым доступен этот квест. В данном примере классы, такие как 0 (человеки), 10 (рыцари) и другие, имеют доступ.
      ! v4 {/ ~, I/ m- f
  • quest_item=82948: ID квестового предмета, необходимого для выполнения цели или этапа квеста.
    , [% [% t/ V3 }
    • В данном случае это предмет с ID 82948.3 F9 t' _. m/ U6 S
  • start_item=0: Предмет, который выдается при начале квеста.
    1 T0 l" A& ]  _3 s
    • Значение 0 означает, что предмет не выдается.( b/ X1 v& l5 ?9 B
  • start_npc=34505: ID NPC, у которого начинается квест.
  • start_npc_loc=1002: Локация NPC, у которого начинается квест.6 y' e1 V/ Q9 U: ~% w
    • Это ID локации, где находится стартовый NPC.
      3 q: e  \: V9 j2 O- A( `
  • end_npc=34696: ID NPC, у которого завершается квест.
  • end_npc_loc=1003: Локация NPC, у которого завершается квест.
    * G7 K# G" }$ I! `1 q9 D. n6 Q
    • Это ID локации, где находится конечный NPC.+ J  [* l7 c3 B' n# s/ [3 f5 s
  • quest_loc=1003: Основная локация выполнения квеста.2 g6 i+ p) S: ^4 O! s- b
    • Это ID зоны, где нужно выполнять основные задачи.' }5 d' I) k' \; N
  • goal_string=[Дарти (Зона Тренировки)]: Описание цели квеста.2 q1 n& J* u" t& X$ j1 G4 ?
    • В данном случае цель связана с персонажем по имени "Дарти" в Зоне Тренировки.& Y2 g& Z# E; z
  • goal_num=1: Количество действий, необходимых для выполнения цели (например, убийств монстров или сбора предметов).1 }* P0 d+ y' a" b- N) z% R
    • В данном случае нужно выполнить одно действие (1).
      ' y# x: |; m, I! H0 e  Q
  • reward_level=65535: Уровень, при котором можно получить награду.
    6 ?2 F6 K/ a9 b# m, s
    • В данном случае это максимальное значение, указывающее, что награда доступна всегда.
      * Z" W+ }; Z8 W; c8 w2 R3 g- a% j' i
  • reward_exp=0: Опыт (EXP), выдаваемый в качестве награды.
    + m* ^: j5 ^: S4 @
    • В данном случае опыт не выдается.2 T6 B: G" U3 L4 O7 U& O4 h/ w8 n( O6 o
  • reward_sp=0: Количество SP (Skill Points), выдаваемых в качестве награды.
    ( a# c% J/ \. w% s, t" X. ^
    • Здесь тоже 0, значит, SP не выдаются.
      ) z" @& [: ^$ s3 Z
  • reward_item={}: Наградные предметы./ _' p' I. g: |/ V4 D
    • В данном случае наградные предметы отсутствуют.9 j9 o8 T; y% E5 K
Этот файл определяет основной функционал и настройки для конкретного квеста в игре.- }1 B6 G7 c, t& X' V
8 V; K1 S" l' X. k7 I" d* r4 T" E7 J

5 M% i. ]& d! V$ R* G" ]' L4 w  C- L1 [6 r" n; G" j
5 y0 @8 R& x) _9 q8 }) \/ t% i
6 H" }; y. b$ p- X

+ {) _9 u& Q% z, f
5 v+ P6 U3 y0 w: I& o& n7 q, B- `+ a
. {! e. A! ]9 i$ `

, R/ |' B) Z2 Y+ L2 z2 B2 x
Чтобы ответить, вам надо авторизироваться в системе Вход | Зарегистрироваться

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

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

638638758

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

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

admin@artace.ru Онлайн

QR-код

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