Однотипные квесты, Однотипные квесты (Arhet)

Материал из Mod Wiki.

(Различия между версиями)
Перейти к: навигация, поиск
Версия 22:42, 14 июня 2007 (править)
BAC9-FLCL (Обсуждение | вклад)
(Новая: ==Описание== Как известно, при разговоре с некоторыми NPC (Сахаров, Бармен, Сидорович, Лукаш, Волк, Шустры...)
← К предыдущему изменению
Текущая версия (11:53, 25 июля 2007) (править) (отменить)
BAC9-FLCL (Обсуждение | вклад)
Однотипные квесты (Arhet)» переименована в «Однотипные квесты»)
 
Строка 1: Строка 1:
-==Описание==+#REDIRECT [[Однотипные квесты]]
- +
-Как известно, при разговоре с некоторыми NPC (Сахаров, Бармен, Сидорович, Лукаш, Волк, Шустрый Долговец, Лысый, Охотник и Осведомитель) появляется ветка «есть ли для меня работа?». В целях упрощения создания однотипных квестов, выдаваемых через эту ветку, разработчики создали следующую схему...+
- +
-==Квесты, работающие через task_manager==+
- +
-Сами задания находятся в конфиге:+
- +
-<pre>gamedata/config/misc/task_manager.ltx</pre>+
- +
-Цели квестов и условия их выполнения фиксируются в скрипте:+
- +
-<pre>gamedata\scripts\task_manager.script</pre>+
- +
-Ветки диалогов, отвечающие за эти задания (например, у Сидоровича) выглядит так:+
- +
-<pre><actor_dialog>tm_trader_dialog</actor_dialog>+
-<actor_dialog>tm_trader_reward</actor_dialog></pre>+
- +
-Где первый actor_dialog – диалог с выдачей задания, а второй - диалог по заданию и получению награды, либо отказа от выполнения оного. Никто нас насильно его выполнять не заставляет.+
- +
-При получении задания информация об этом прописывается и в PDA, не забываем об этом. Информация добавляется с помощью файла:+
- +
-<pre>gamedata/config/gameplay/storyline_info_taskmanager.xml</pre>+
- +
-Описание задания хранится в файле: +
- +
-<pre>gamedata/config/text/rus/stable_task_manager.xml</pre>+
- +
-Всего существует шесть видов подобных заданий:+
- +
-* eliminate_lager = уничтожить лагерь+
-* defend_lager = защитить лагерь+
-* kill_stalker = убить сталкер+
-* artefact = найти артефакт+
-* monster_part = найти часть монстра+
-* find_item = найти предмет+
- +
-Для создания дополнительного квеста у Сидоровича нам понадобятся всего три файла:+
- +
-<pre>gamedata/config/gameplay/storyline_info_taskmanager.xml+
-gamedata/config/misc/task_manager.ltx+
-gamedata/config/text/rus/stable_task_manager.xml</pre>+
- +
-Открываем task_manager.ltx, в начале видим длинный список заданий, а уж потом сами задания и условия выполнения к ним. Т.е. cначала идет:+
- +
-<pre>+
-[...]+
-tm_kill_stalker_5+
-tm_kill_stalker_6+
-tm_kill_stalker_7+
-[...]+
-</pre>+
- +
-А затем то, что нам нужно:+
- +
-<pre>+
-[...]+
-[tm_kill_stalker_6]+
-type = kill_stalker+
-community = actor+
-text = tm_kill_stalker_6_text+
-description = tm_kill_stalker_6_descr+
-parent = trader+
-target = sim_stalker_novice+
-;reward_money = 1000+
-reward_reputation = +3+
-reward_rank = 2+
-reward_item = af_vyvert, conserva+
-time = 86400+
-prior = 1+
- +
-[tm_kill_stalker_7]+
-type = kill_stalker+
-community = actor+
-text = tm_kill_stalker_7_text+
-description = tm_kill_stalker_7_descr+
-parent = trader+
-target = esc_wolf+
-reward_money = 10000+
-reward_reputation = +3+
-reward_rank = 2+
-reward_item = vodka, conserva+
-time = 86400+
-prior = 1+
-[...]+
-</pre>+
- +
-Рассмотрим структуру этих записей, заодно создав новую:+
- +
-* [tm_kill_stalker_7] – наше задание+
-* type = kill_stalker – тип задания, в данном случае – убийство сталкера+
-* community = actor – комьюнити, к которому принадлежит выполняющий задание (странный параметр, в игре используется - везде выставлен равным actor'у) +
-* text = tm_kill_stalker_7_text – описание нашего задания в диалоге+
-* description = tm_kill_stalker_7_descr – описание нашего задания в PDA+
-* parent = trader - заказчик+
-* target = esc_wolf – цель, в данном случае мы собираемся грохнуть Волка+
-* reward_money = 10000 – сколько денег нам дадут за выполнение+
-* reward_reputation = +3 – повышение/понижение репутации после выполнения задания+
-* reward_rank = 2 – кличество очков ранга, выдаваемых за выполнение+
-* reward_item = vodka, conserva – предметы, выдаваемые в награду за квест+
-* time = 86400 – время выполнения квеста+
-* prior = 1 – приоритет задания+
- +
-Не забываем про PDA. В файл:+
- +
-<pre>gamedata/config/gameplay/storyline_info_taskmanager.xml</pre>+
- +
-Добавляем следующие строки:+
- +
-<pre><article id="tm_kill_stalker_7_descr" name="kill_stalker" article_type="task">+
- <text>tm_kill_stalker_7_descr</text>+
-</article></pre>+
- +
-Текст на русском для задания нужен? Тогда открываем+
- +
-<pre>gamedata/config/text/rus/stable_task_manager.xml</pre>+
- +
-И туда вгоняем следующие строки:+
- +
-<pre> <string id="tm_kill_stalker_7">+
- <text>Убить Волка</text>+
- </string>+
- <string id="tm_kill_stalker_7_text">+
- <text>Достал меня Волк! Понимаешь, достал! Ворует у меня водку, понимаешь, потом идет и клянчит деньги на тушенку, потому что новички его не слушают и есть ничего не дают, а вот сойти со своего места и пойти охотится на кабанов, он видите ли не хочет, ибо ЛЕНЬ! Грохни его, Меченый, я в долгу не останусь.</text>+
- </string>+
- <string id="tm_kill_stalker_7_descr">+
- <text>Сидрыч заказал убийство Волка</text>+
- </string></pre>+
- +
-'''Важно!''' Эти строки не должны выходить за пределы тегов <string_table> и </string_table>.+
- +
-Вот и все, теперь у Сидоровича появился новый квест - "Убить Волка".+
- +
-[[Категория:Статьи участников]]+

Текущая версия

  1. REDIRECT Однотипные квесты
Личные инструменты