Последний раз это сообщение было отредактировано Astraliya в 2024-10-20 11:24 7 p. v/ W! _; n
* P& i3 D0 {' b* {6 D
Файл NewQuestData-ru.dat является важным компонентом клиентской части Lineage 2, отвечающим за локализацию квестов, их отображение на русском языке, а также за их интеграцию с игровым процессом. Этот файл содержит информацию о квестах, такую как название, описание, цели, требования, награды и другие параметры, которые отображаются на клиенте игрока.: w7 m. {6 [; F. z
Структура файла NewQuestData-ru.datКаждая запись в файле состоит из нескольких полей, каждое из которых содержит важную информацию о квесте.
! Q$ C$ B! o( y% T4 m1 x8 r3 D$ z0 J" D2 W9 X5 v. }( _, X; U/ g
Пример записи:5 H6 e. G$ A3 c, J1 L d
- newquestdata_begin quest_id=10020 quest_type=1 quest_name=[Попытка успокоить лес] quest_level={0;0} pre_quest={10019} class={2;3;5;6;8;9;12;13;14;16;17;20;21;23;24;27;28;30;33;34;36;37;40;41;43;46;48;51;52;55;57;127;128;129;130} quest_item=0 start_item=0 start_npc=33963 start_npc_loc=1015 end_npc=34505 end_npc_loc=1002 quest_loc=1020 goal_string=[Монстры на Холме Ветров ] goal_num=30 reward_level=76 reward_exp=0 reward_sp=84 reward_item={{57;240000}} newquestdata_end8 W9 W* L5 x u- o7 L
Скопировать код Описание полей:% ~/ E# O( }& A$ v8 P8 E$ \, t
- newquestdata_begin — начало записи о квесте.
- quest_id=10020 — уникальный идентификатор квеста. Каждый квест на сервере имеет свой уникальный ID, который связывает его с другими файлами, такими как серверные скрипты или другие файлы локализации.
- quest_type=1 — тип квеста. Обычно используется значение 1 для стандартных квестов. Другие значения могут обозначать особые типы квестов (например, ежедневные или специальные события).
- quest_name=[Попытка успокоить лес] — название квеста, которое будет отображаться в клиенте игрока. В данном случае это "Попытка успокоить лес".
- quest_level={0;0} — минимальный и максимальный уровни для взятия квеста. Здесь указаны значения {0;0}, что может означать, что ограничений по уровню нет.
- pre_quest={10019} — идентификатор предварительного квеста. Это значит, что перед началом этого квеста игрок должен завершить другой квест с ID 10019. Если поле пустое, значит, предварительные условия отсутствуют.
- class={2;3;5;6;8;9...} — список классов, которые могут принять квест. Здесь указаны ID классов персонажей, которым доступен этот квест.
- quest_item=0 — это поле указывает на предмет, необходимый для начала квеста. В данном случае значение 0 означает, что для начала квеста не требуется никаких предметов.
- start_item=0 — предмет, который игрок получает в начале квеста. Значение 0 указывает на отсутствие предметов.
- start_npc=33963 — ID NPC, у которого игрок начинает квест. В данном случае это NPC с ID 33963.
- start_npc_loc=1015 — локация NPC, где начинается квест. Этот ID соответствует определённой локации на карте.
- end_npc=34505 — ID NPC, у которого игрок завершает квест. Это персонаж, к которому игрок должен вернуться после выполнения всех задач.
- end_npc_loc=1002 — локация завершения квеста.
- quest_loc=1020 — основное место выполнения квеста. Это может быть область, где находятся монстры или объекты, с которыми взаимодействует игрок.
- goal_string=[Монстры на Холме Ветров] — цель квеста, отображаемая в клиенте. Это строка, объясняющая игроку, что нужно сделать. В данном случае это "Убить монстров на Холме Ветров".
- goal_num=30 — количество целей. Например, игрок должен убить 30 монстров.
- reward_level=76 — минимальный уровень, при котором игрок получит награду. В данном случае это 76 уровень.
- reward_exp=0 — количество опыта, которое игрок получит за выполнение квеста. Здесь указано 0, что значит, что опыта за этот квест нет.
- reward_sp=84 — количество SP (Skill Points), которые игрок получит за выполнение квеста.
- reward_item={{57;240000}} — награда в виде предмета. Здесь игрок получит 240 000 аден (ID 57).
- newquestdata_end — конец записи о квесте.
' i& \. ^. b, d# D
. X: ~0 X9 C S0 V1 z) i( K
+ `) \% f% h! O$ D Пример добавления нового квеста в NewQuestData-ru.dat
: H" ^6 c. }" Y( Q( OДопустим, вы хотите создать новый квест, в котором игрок должен убить 15 волков и получить 50 000 аден. Вот как может выглядеть запись для этого квеста:
7 _; ?9 i% U/ W/ o* U% D- E+ K5 Y3 H- newquestdata_begin quest_id=10101 quest_type=1 quest_name=[Охота на волков] quest_level={10;20} pre_quest={} class={1;2;3;4;5;6} quest_item=0 start_item=0 start_npc=34001 start_npc_loc=1010 end_npc=34001 end_npc_loc=1010 quest_loc=1020 goal_string=[Убить волков в лесу] goal_num=15 reward_level=10 reward_exp=0 reward_sp=100 reward_item={{57;50000}} newquestdata_end
8 ~5 u; m3 l# K- t8 F5 i2 H
Скопировать код Пояснение:9 a. x6 D' \% [. j1 Y# o' ?* I
- quest_id=10101 — уникальный ID нового квеста.
- quest_name=[Охота на волков] — название квеста "Охота на волков".
- quest_level={10;20} — игроки уровня от 10 до 20 могут принять этот квест.
- start_npc=34001 — NPC, у которого начинается квест.
- goal_string=[Убить волков в лесу] — цель квеста — убить волков.
- goal_num=15 — необходимо убить 15 волков.
- reward_item={{57;50000}} — награда за выполнение — 50 000 аден.% O8 S- l) L3 F5 K( [ h4 `4 ~6 x
Заключение
8 A9 u0 N; j0 \+ Y; W. a6 P+ fФайл NewQuestData-ru.dat — это основа для локализации и отображения квестов в Lineage 2. Он делает квесты понятными для игроков, определяя цели, NPC, награды и условия. Теперь, зная структуру этого файла, вы можете легко создавать свои собственные квесты, добавляя уникальные задания и награды на сервере.
+ Z3 N4 c$ Z1 J3 O9 ~% x; S( ^И небольшой совет напоследок: если при создании нового квеста ваш NPC решит не разговаривать с игроками, не паникуйте! Просто посмотрите в файл и убедитесь, что не забыли указать ID или случайно не сделали его слишком застенчивым. Ведь даже виртуальным героям иногда требуется хороший мотивационный толчок… в виде кода!
" L9 o5 J' ~8 t5 \Так что, если вдруг ваш квест отказывается работать, просто помните: всегда есть шанс, что NPC просто ушёл на перерыв, а не вы забыли запятую. ?
8 l% `6 J$ a$ c2 E. ?
) v- \2 r6 X8 OФайл для правки декомпилированного NewQuestData-ru.dat
2 D& l" E5 c: |: P6 J# L+ f, @0 d# x8 l/ q5 l% \
Скачать Exel таблицу для редоктирования dat: 2 K6 Y* v3 o. Q: L3 }$ M
5 ]; j: H, G& s
: M7 r. Q d5 t* F4 J
7 E ]5 U- h% x( A- [ ) k' e- N/ n! d3 x) l: e: P
f. u% F9 M% O
" |! c1 V. B2 [2 z' Z$ j
0 `/ D( }7 q- Q b; g
: \: C: P( `* q8 B, C3 W r) f" y- A( f g' p2 |
|
|