Пользователей: 1
Гостей: 705
Всего: 706

» Подробно
» Сегодня

Привет, гость!









Автор Сообщение
KeLeVR@
    
Посты: 662
Откуда: МоскVА
Возраст: 33
02-02-2008 00:23 GMT3 час. #494521   
Многоуважаемые Модостроители и те кто увлекается модмэйкерством, скажи можноли в игру Модом добавить новые квесты? я просто ничего подобного делать не умею и хочу узнать у знающих людей. И если можно, то почему бы не заняться написанием сценариев квестов!?


WebStr
    
Посты: 3927
Откуда: Балхаш сити
Возраст: 33
02-02-2008 02:18 GMT3 час. #494557   
Ну для рывка давайте обсудим пару статей из журнала Игромания.


Создание типовых квестов

Автор:
Эдуард Клишин


На PDA Меченого поступило очередное задание — найти и уничтожить в глухой чащобе волка-отшельника. Темный-темный лес. Звенящая тишина. Отсутствие видимых признаков жизни. Внезапно Меченый видит на опушке домик, заходит внутрь и встречается с хозяином, который рассказывает главному герою обо всех ужасах, творящихся в здешних местах.

Нет, это не сюжет продолжения «Сталкера», а всего лишь одна дополнительная миссия, разработанная в нашей игрострой-лаборатории. В прошлых статьях по модифицированию «Сталкера» мы изучили интерфейс редактора карт из официального SDK, а также научились конструировать несложные уровни для игры на основе стандартных объектов и новых сцен, изготовленных в 3DS Max. Сегодня мы двинемся дальше — осветим тему написания несложных типовых квестов для игры.

Быстрый старт
Поскольку официальный редактор не позволяет править уровни одиночной игры, а как следствие — редактировать файлы скриптов, путей следования NPC и другие ресурсы, мы будем п**50012a1699cd**50022a**500**500**500**500**500**500**500**501**501**501**501**501**501**501**501**501**501**502**502**502**502**502**502**502**502**502**502**503**50312a1699cdd64639ea**


Зона поражения 3 (когда ни будь в другой реальности...)

работа-дом-Работа дом… Дурдом...

vold
    
Посты: 157
Откуда: Москва
Возраст:
02-02-2008 04:15 GMT3 час. #494575   
KeLeVR@
ждем новых квестов


"Родина моя, ты сошла с ума"
Arhet
    
Посты: 1047
Откуда: Москва
Возраст: 37
02-02-2008 10:01 GMT3 час. #494615   
Ацтой, аффтар рассмотрел только однотипные самые примитивненькие квесты, плюс натырил сведений из моей статьи.

отредактировал(а) Arhet: 02-02-2008 10:14 GMT3 час.

SRP Mod 0.2.2 - скачать
KeLeVR@
    
Посты: 662
Откуда: МоскVА
Возраст: 33
02-02-2008 13:21 GMT3 час. #494716   
Arhet А ты знаеш как делать не примитивные? тогда может поможеш? Поскольку я в Кодах и програмировании ни шарю:-G, то могу писать только сценарии к квестам...да и не только я, а все желающие могут писать свои сценарии.:-)


-=G.S.T.=-
    
Посты: 1081
Откуда: [United Kingdom of Great Britan] -=London=- Language -=English=-
Возраст: 39
02-02-2008 13:21 GMT3 час. #494717   
Много трёпа ненужного. Писать руководство, так по делу. Статью писать надо пошагово и не использовать малознакомые термены. Что б любой новичок мог спокойно пошагово добавить квест, а затем его изменить. И не однотипный, а сложный. Предлогаю автору темы этим и заняться. Сначало попробывать добавить , а потом отписаться об успехах и написать как он делал, на понятном всем языке. Привёдённая статья не очень. На мод Wiki лучше.


KeLeVR@
    
Посты: 662
Откуда: МоскVА
Возраст: 33
02-02-2008 13:23 GMT3 час. #494719   
Frontiersmen Спасибо за выложеную статью;-)

добавлено спустя 2 минут

G.S.T. Автор статьи не шарит в этом!) по этому и проситпомощи...

отредактировал(а) KeLeVR@: 02-02-2008 13:25 GMT3 час.

-=G.S.T.=-
    
Посты: 1081
Откуда: [United Kingdom of Great Britan] -=London=- Language -=English=-
Возраст: 39
02-02-2008 13:45 GMT3 час. #494748   
KeLeVR@ Вот с sdk.stalker-game.com/ru Создание квестов.
Создание квестов и диалогов
Создание базового диалога

Итак, приступим к созданию диалога, в котором нам будет выдаваться новый квест. Участвующие лица: Сидорович (С) и Меченый (М)

М: Здравствуй, Сидорыч! Есть работенка?

С: О, неужели заглянул к нам на огонек, Меченый? Ладно... ближе к телу... эээ, к делу. У меня к тебе следующая просьба: сбегай к Волку, у него что-то намечалось.

М: Без проблем! Уже бегу.

Будем считать, определились с фразами базового диалога. Теперь необходимо добавить его в соответствующем виде, чтобы игре он был «понятен».

Создание «скелета» диалога.

Для того, чтобы добавить наш диалог, необходимо открыть для редактирования файл gamedata\config\gameplay\dialogs_escape.xml

Для тех, кто знаком с языком XML структура данного файла будет ясна с первого взгляда. Но, поподробнее об этом.

Для того, чтобы добавить в игру диалог предусмотрены так называемые тэги. В данном случае, тэгами являются такие конструкции:

1. и закрывающий к нему -

2. закрывающий -

3. -

4. -

5.

6.

В принципе, этих конструкций уже достаточно для того, чтобы создать диалог. Но, диалог, созданный на основе этих конструкций, не сможет стать основой для нового квеста. Для того, чтобы во время диалога вам выдавался квест, есть соответствующий тэг. Но об этом – чуть позже.

Поясню, что обозначает каждый тэг в отдельности.

1. Определяет содержимое файла (в данном случае, говорит о том, что файл содержит диалоги);

2. Определяет новый диалог с id = «». Где содержимое кавычек есть идентификатор диалога. Идентификатор диалога задается в файлах типа character_description_***.xml ;

3. Этот тэг говорит XML-парсеру игры о том, что далее следуют фразы диалога. Иными словами, между и содержатся фразы диалога;

4. Этот тэг определяет фразу с id = «». Внутри кавычек содержится идентификатор фразы (ВНИМАНИЕ: идентификатором в данном случае могут быть ТОЛЬКО цифры);

5. Внутри этих двух тэгов содержится ссылка на соответствующий данной фразе текст (пример, esc_trader_talk_info_123). Сам текст берется из файлов типа stable_dialogs_*****.xml, в котором содержатся все фразы в текстовом виде. О создании текста фразы поговорим позже;

6. Внутри этого тэга содержится ссылка (в числовом формате) на следующую (или следующие) фразы.

Теперь приступим к тэгам, позволяющим производить какие-то действия во время диалога.

. Представляет собой предусловие, в случае выполнения которого (то есть предусловие вернуло ИСТИНУ) данный диалог, или фраза будут появляться в списке доступных во время игры у NPC.

. Данный тэг позволяет производить какое-либо действие во время диалога (например, передачу предметов между общающимися... так же позволяет производить более сложные действия). Внутри тэга располагается ссылка на какую-либо функцию (например, dialogs. actor_set_dolg сделает игрока членом группировки Долг).

. Позволяет выдавать игроку во время диалога так называемые info_portion'ы (кстати, инфопоршны можно выдавать так же и через , только это потребует создания специальной функции). info_portion – является основой для квестов, info_portion’ы определяются в файлах типа info****.xml. Инфопоршны могут, как начинать квест, так и заканчивать (завершать) его. Так же, с помощью инфопоршнов можно отслеживать действия игрока, для того, чтобы, например, вывести в нужное время диалог. и являются предусловиями для текущей фразы/диалога. Первый тэг проверяет наличие данного инфопоршна у игрока, второй – отсутствие.

Ну что, теперь мы можем создать диалог, в котором нам будет выдаваться квест. Но мы не создали самих info_portion'оф, которые позволяет активировать квест.
Создание info_portion'ов

Итак, открываем файл gamedata\config\gameplay\ info_l01escape.xml. Что мы там видим? Правильно, все ту же структуру XML. В данном файле нас интересуют только два тэга:





Первый объявляет сам info_portion. Второй – объявляет задание (идентификатор задания id содержится внутри тэга )

Для примера, создадим 3 info_portion, которые понадобятся нам для будущего квеста:



new_task



Это инфопоршн с именем new_task_started. Он активирует квест с именем new_task.








Создание нового квеста

Сами квесты содержаться в файлах типа tasks_*****.xml

Откроем файл gamedata\config\gameplay\tasks_escape.xml. Структура – все тот же XML.

Для примера исследуем уже существующий квест:

esc_help_wounded_from_raid

esc_help_wounded_from_raid_0
ui_iconsTotal_esc_help_wounded_from_raid
escape_tasks.task_fox_complete
garbage_meetstalker_start
esc_fox_help



esc_help_wounded_from_raid_1
green_location
Escape_stalker_from_raid
escape_fox_heal
esc_dogs_return


esc_help_wounded_from_raid_2
green_location
Escape_stalker_from_raid
escape_stalker_done



По кусочкам:



Задает имя (id) нового квеста. В данном случае, esc_help_wounded_from_raid. prio = “” задает приоритет задачи. Чем выше приоритет, тем больше вероятность того, что текущий маркер квеста будет переключен на ваше задание.

esc_help_wounded_from_raid

Задает заголовок квеста. Т. е. его название. Название можно прописать в виде текста, либо в виде ссылки. В данном случае используется ссылка на текст, который хранится в файле string_table_tasks_escape.xml.

escape_tasks.task_fox_complete

Вызывает функцию из файла escape_tasks.script под именем task_fox_complete. При выполнении данной функции дается info_portion, который завершает данную подзадачу, в случае, если все условия функции соблюдаются.

escape_fox_heal

Текущее подзадание будет завершено в случае, если игроку будет дан этот info_portion.

esc_dogs_return

Текущее подзадание будет провалено в случае, если игроку будет дан этот info_portion.

green_location

Создает указатель на карте с подсказкой esc_fox и типом green_location.

Escape_stalker_from_raid

Указывает на sid из файла gamedata\config\game_story_ids.ltx

garbage_meetstalker_start

Автоматически устанавливает данную подзадачу в положение «Выполнено», если у игрока есть данный info_portion. //!!!!!!Не уверен – не пользовался не разу.

esc_help_wounded_from_raid_0

Содержит описание подзадачи. Может содержать внутри как текст, так и ссылку на текст.

Создадим задание, которое потребуется нам для диалога:

Поговорить с Волком

Вернуться к Сидорычу
blue_location
Escape_Trader
player_complete_new_task


Поговорить с Волком
green_location
Escape_novice_lager_volk
player_talked_with_wolf


Вернуться к Сидорычу
blue_location
Escape_Trader
player_complete_new_task



Теперь создадим скелеты диалогов для нашего квеста. Потребуется три: один для Волка и два для Сидорыча.

new_task_started
player_talked_with_wolf
player_complete_new_task


esc_volk_new_quest_0
1


esc_volk_new_quest_1
player_talked_with_wolf
2


esc_volk_new_quest_2
dialogs.break_dialog






player_complete_new_task
player_talked_with_wolf


esc_trader_new_quest _0
1


esc_trader_new_quest _1
new_task_started
2


esc_trader_new_quest _2
dialogs.break_dialog






player_complete_new_task


esc_trader_new_quest_complete _0
1


esc_trader_new_quest_complete _1
player_complete_new_task
2


esc_trader_new_quest_complete _2
dialogs.break_dialog




Все «скелеты» добавляем в файл dialogs_escape.xml. Между и !

Примечание: посмотрите на уже готовые диалоги, которые создали разработчики игры – это облегчит вам жизнь.

Теперь бежим в файл character_desc_escape.xml

Ищем там NPC с id = “escape_trader” и добавляем два новых :
esc_trader_new_quest_complete
esc_trader_new_quest

Там же ищем NPC с id = “esc_wolf” и добавляем один актор_диалог:
volk_new_quest

Примечание: является диалогом, который активируется самим игроком по желанию. А активируется только при выполнении определенных условий, заданных в нем, и обычно недоступен.

Осталось только добавить текст трех диалогов, чтобы наш квест стал полноценным. Открываем файл stable_dialogs_escape.xml и добавляем в него новый текст в таком виде:

Все, я выполнил поручение Влока!


Молодец, Меченый. На тебя можно положиться.


Рад был помочь, Сидорыч.


Здравствуй, Сидорыч! Есть работенка?


О, неужели заглянул к нам на огонек, Меченый? Ладно… ближе к телу… эээ, к делу. У меня к тебе следующая
просьба: сбегай к Волку, у него что-то намечалось.



Без проблем! Уже бегу.


Здорово, Волк. Меня тут Сидорыч послал, говорит у тебя работа есть.


Привет, Меченый. Верь ты ему больше, этому старому маразматику! Все спокойно сейчас. Так что иди к нему и
скажи, что все хорошо.



Все, ухожу.


Все! Поздравляю! Вы только что написали новый квест.
Авторы

Статья создана: Fr3nzy

Вот ещё одна
Создание квестов (базовый уровень)


Вступление

Перед изучением этого урока советую освоить находящийся несколько выше урок "Создание диалогов".

Небольшие правила, следуя которым, можно сберечь себе много нервов:

- всегда сохраняйте резервные копии модифицируемых файлов - старайтесь почаще тестировать внесенные изменения - так проще понять, в чем вы ошиблись (если активно работать пару часов без остановки, не разу не протетировав внесенные изменения, то потом будет очень сложно понять - почему же, черт возьми, игра вылетает при попытке поговорить с Сидоровичем?) - перед началом работы создайте новую папку gamedata, а свои моды спрячьте подальше: работать с "чистой" версией игры не в пример удобнее и проще; особенно противопоказан Repair Mod, который с новыми диалогами часто конфликтует. О том, как создать диалоги и квесты, исключающие возможность конфликта с другими подобными модами, см. часть 4.
Создание базового диалога

Начнем создание квеста с написания небольшого линейного диалога.

Открываем файл gamedata\config\gameplay\character_desc_escape.xml и проводим такие манипуляции:

- находим строку "escape_trader_done_blockpost_box" - добавляем после нее новую - "escape_trader_oops" - сохраняем изменения

Мы добавили к Диалогу с Сидоровичем новую ветку, вернее, только ссылку на неё. Сама внутренняя структура ветки хранится в файле gamedata\config\gameplay\dialogs_escape.xml, который мы открываем и производим:

- находим в любом месте файла промежуток между и - засовываем туда такую конструкцию:

escape_dialog.trader_alredy_give_job
tutorial_end


escape_trader_oops_0
1


escape_trader_oops_1
2


escape_trader_oops_2
1


escape_trader_oops_3




- сохраняем изменения

Теперь у нас прописана структура новой ветки диалога. Осталось сделать еще одну вещь - прописать строки, которые будут отображаться вместо "escape_trader_oops_...".

Для этого откроем файл gamedata\config\text\rus\stable_dialogs_escape.xml и сделаем следующее:

- находим любой удобный промежуток между и - прописываем туда следующие строки:

Сидрыч, давай поговорим о... водке.


водке? Да какая водка? Нет её у меня, кончилась. Вроде у Волка на чердаке была, что-то он
однажды об этом упоминал... Принеси, а?




Да сбегаю я сейчас, сбегаю... алкоголик, блин.


Беги, беги... сил уж нет ждать.


- сохраняем изменения

Всё. Диалог готов. Можно грузить игру и смотреть, работает ли новая ветка. А теперь будем прикреплять к этому безобразию квест ""Принеси водки Сидоровичу".


Создание базового квеста

Активацию квеста в диалог прикрепить достаточно просто. Проводим с файлом gamedata\config\gameplay\ dialogs_escape.xml следующие манипуляции:

- добавляем содержимое фразы следующим:


escape_trader_oops_2
kvest_vodka_started
3


- сохраняем изменения

Теперь после фразы Меченого "Да сбегаю я сейчас, сбегаю..." Сидорович таки всучивает нам квест "Принеси водку". Но не спешите тестировать изменения. Мы добавили в диалог упоминание о квесте, хотя он еще не создан.

Исправим это недоразумение. Откройте файл gamedata\config\gameplay\tasks_escape.xml и в начале файла создайте такую конструкцию:

Принести водки

Принести водки Сидоровичу
ui_iconsTotal_find_item
test_quest_vodka_otdana


Вернуться с водкой обратно
green_location
Escape_novice_lager_volk
test_quest_vodka_otdana


Найти водку на чердаке
blue_location
Escape_Trader
test_quest_vodka_otdana



Мы прописали данные о квесте: название, иконку, строки заданий, расположение маркеров и т.д.

К этому файлу мы еще вернемся, т.к. в этом варианте многое проставлялось не иначе как от балды. Я еще подумаю, как заставить задание "Вернуться с водкой обратно" появиться в PDA, а то оно что-то не желает явить себя народу... впрочем, ладно, главное, что все работает и не вылетает. А исправление столь мелких багов - дело десятое. Продолжим.

Откроем файл gamedata\config\gameplay\info_l01escape.xml и зарегистрируем до того отсутствовавшие в игре типы условий (они нам еще пригодятся для завершения работы над квестом):

- после строки прописываем:



esc_test_vodka_task




С прописыванием условий - всё.

Теперь займемся одной небольшой, но нужной вещью - прописыванием экранных подсказок, которые высвечиваются при получении/выполнении этапа/завершении задания.

Для этого откроем файл gamedata\config\text\rus\string_table_tasks_escape.xml и пропишем там:

Принести бутылку водки


Найти водку на чердаке у Волка


Принести водку Сидоровичу


Теперь можно тестировать, что получилось. Сверяем результаты:

- по окончанию разговора про водку у вас появляется новое задание - в задании маркером отмечен Волк (ближайший к чердаку маркер, потому и отмечен) - при получении задания на экране высвечивается уведомление

Можно приступать к третьей стадии. Что мы забыли? Правильно - возможность выполнить квест.


Реализация возможности выполнить квест

На самом деле - все просто. Все условия и т.д. уже нами созданы, осталось только применить их в диалоге. Давайте несколько изменим его структуру, сделаем его ветвистым и функциональным:

0. Сидрыч, давай поговорим о... водке. ( переход к 1)

1. О водке? Да какая водка? Нет её у меня, кончилась. Вроде у Волка на чердаке была, что-то он однажды об этом упоминал... Принеси, а? ( выбор - переход к 2, 4, 5; изначально доступен только 2 вариант )

2. Да сбегаю я сейчас, сбегаю... алкоголик, блин. ( получение квеста, переход к 3, после этого перестает быть доступен )

3. Беги, беги... сил уж нет ждать. ( конец, переход к списку веток Сидоровича )

4. Вот она, твоя бутылка водки. Ну, вернее, не твоя, а Волка... ( появляется только при наличии водки в инвентаре, при выборе водка передается Сидоровичу, квест выполняется, идет переход к 7 )

5. Извини, Сидрыч, я пока еще не раздобыл, терпи... ( появляется только если взять квест, переход к 6 )

6. А ну марш отсюда! Без бутылки пришел... ууу, вражина... ( переход к 8 )

7. Теперь моя будет, Меченый! Ты так Волку и передай. Спасибо, выручил... держи награду. ( выдача награды, переход к 8 )

8. Ну тебя в пень... ( конец, переход к списку веток Сидоровича )

А вот так это будет выглядеть в файле gamedata\config\gameplay\dialogs_escape.xml:

escape_dialog.trader_alredy_give_job
tutorial_end


escape_trader_oops_0
1


escape_trader_oops_1
2
4
5


kvest_vodka_started
escape_trader_oops_2
kvest_vodka_started
3


escape_trader_oops_3
dialogs.break_dialog


escape_trader_oops_4
escape_dialog.have_a_vodka
escape_dialog.otday_vodku
7


kvest_vodka_started
escape_trader_oops_5
6


escape_trader_oops_6
8


escape_trader_oops_7
test_quest_vodka_otdana
escape_dialog.transfer_deneg
8


escape_trader_oops_8




Теперь добавим в игру скрипты "передача денег" и "передача водки". Откройте файл gamedata\scripts\escape_dialog.script и перед разделителем "Trader" добавьте туда следующие строки:
function transfer_deneg(first_speaker, second_speaker)
dialogs.relocate_money(second_speaker, 4000, "in")
end

function otday_vodku (npc, actor)
dialogs.relocate_item_section(npc, "vodka", "out")
end

function have_a_vodka (stalker, player)
return stalker:object ("vodka") ~= nil
end

Готово. Запускайте игру и любуйтесь.

Для тех, кто еще с нами - сейчас мы модифицируем квест так, чтобы исключить конфликты с другими подобными модами.


Реализация совместимости

Из-за чего наш мод не может работать вместе с аналогичными ему модами? Да потому, что файлы dialogs_escape.xml и некоторые другие у них пересекаются. Поэтому выделим их отдельно от основных диалогов:

Вместо dialogs_escape.xml мы будем испольховать новый - dialogs_new.xml Вместо stable_dialogs_escape.xml мы будем использовать файл stable_dialogs_new.xml (важно! не знаю почему, но он должен лежать в text\..., а не в text\rus\...)

Соответственно, весь реализованный нами новый контент перекидываем в пустые файлы (соблюдая форматирование), подчистив за собой на старом месте.

Единственное, что останется сделать после установки того же Repair Mod'а - заново добавить ветку диалога Сидоровичу в файле character_desc_escape.xml. Остальное в новом варианте нашего мода переписывать не придется - для диалогов отведено три файла.

Остальные файлы относятся уже к квестовой части и ни с чем пересекаться не могут - где вы видели другие моды с новыми квестами? Я - нет.

Откройте файл gamedata\config\localization.ltx и зарегистрируйте там stable_dialogs_escape.ltx. Потом откройте файл gamedata\config\system.ltx и в разделе "Dialogs" в конце строки (после dialogs_aes) пропишите dialogs_new (без ".ltx"!).

Все. Теперь ваши диалоги будут подгружаться из сторонних файлов.



Отдельное спасибо:

XiaNi - за страшный и непричесанный, но работающий пример квеста, на основе которого я и освоил принципы квестостроения =)

Keha – за урок по созданию новых диалогов
Дополнения

1. Если изменить шапку нашего диалога в файле dialogs_escape.xml со старого варианта на такой, то ветка исчезнет после выполнения задания:

escape_dialog.trader_alredy_give_job
tutorial_end
test_quest_vodka_otdana


...

Не тестировал. Дело за вами =)

Фух, вроде всё... Всем спасибо, занавес =)
Авторы

Статья создана: BAC9-FLCL

отредактировал(а) G.S.T.: 02-02-2008 15:50 GMT3 час.

Arhet
    
Посты: 1047
Откуда: Москва
Возраст: 37
02-02-2008 14:15 GMT3 час. #494772   
KeLeVR@ Знаю. Но чтобы все так разложить и подробно объяснить, надо кучу статей написать, на что у меня нет пока времени =(

Ждите.

В основном квесты **50012a1699cdd64639ea**c]
active = ph_car1

[ph_car1]
path_walk = dar_btr
on_actor_dist_le_nvis = 15| ph_car2

[ph_car2]
path_walk = dar_btr
target = actor
track_target = true
[/code]


SRP Mod 0.2.2 - скачать
Радон
    
Посты: 317
Откуда: Darkscape
Возраст:
05-02-2008 15:12 GMT3 час. #497373   
Интересно было бы придумать квест Максу из Свободы на наградной Форт Кузнецова.


Мы, дети серых кварталов, за чью жизнь и гроша н дадут,
Не страшимся мучительной смерти, если смерть настигает в бою!

И если есть порох - дай огня. Вот так.


Свобода и Братва
KeLeVR@
    
Посты: 662
Откуда: МоскVА
Возраст: 33
05-02-2008 15:57 GMT3 час. #497459   
Arhet скажи, а можно модом расчлененку ввести?


weron_team
    
Посты: 1352
Откуда: МО Лыткарин
Возраст: 35
05-02-2008 16:55 GMT3 час. #497535   
KeLeVR@
Скажу я, хоть я и не Arhet
Очень врядли. Конечно кустраным можно, но будет просто идиоткси смотреться((


Arhet
    
Посты: 1047
Откуда: Москва
Возраст: 37
05-02-2008 23:42 GMT3 час. #498149   
KeLeVR@ если мне не изменяет память, оторванные ноги (ogf-модели) в игре есть. Головы тоже. xStream сумеет, я - нет.)


SRP Mod 0.2.2 - скачать
KeLeVR@
    
Посты: 662
Откуда: МоскVА
Возраст: 33
05-02-2008 23:59 GMT3 час. #498163   
Arhet он модмейкер? ясно.. спасибо. Надо будет к нему обратиться:ye)


Crocks
    
Посты: 85
Откуда: Кропоткин
Возраст: 33
05-04-2008 14:36 GMT3 час. #562691   
-=G.S.T.=-
gamedata\config\gameplay\dialogs_escape.xml:

escape_dialog.trader_alredy_give_job
tutorial_end


escape_trader_oops_0
1


escape_trader_oops_1
2
4
5


kvest_vodka_started
escape_trader_oops_2
kvest_vodka_started
3


escape_trader_oops_3
dialogs.break_dialog


escape_trader_oops_4
escape_dialog.have_a_vodka
escape_dialog.otday_vodku
7


kvest_vodka_started
escape_trader_oops_5
6


escape_trader_oops_6
8


escape_trader_oops_7
test_quest_vodka_otdana
escape_dialog.transfer_deneg8


escape_trader_oops_8




хоть убей, не пойму откуда ты это взял, неужели есть изначально? (я не нашёл)


Кто в логике шарит, пишите в асю или ПМ - нужна помощь.
Всем, кому интересно - журнал.
Arhet
    
Посты: 1047
Откуда: Москва
Возраст: 37
05-04-2008 14:45 GMT3 час. #562698   
Это великий васькин код.


SRP Mod 0.2.2 - скачать
Crocks
    
Посты: 85
Откуда: Кропоткин
Возраст: 33
06-04-2008 12:20 GMT3 час. #563491   
Arhet ты писал, что в логике шариш. Можно будет к тебе в будущем обратиться, если что-то будет неясно?


Кто в логике шарит, пишите в асю или ПМ - нужна помощь.
Всем, кому интересно - журнал.
Crocks
    
Посты: 85
Откуда: Кропоткин
Возраст: 33
08-04-2008 19:37 GMT3 час. #565658   
Люди, особенно те из вас, кто умеет делать квесты (не типовые,однотипные ещё их зовут), подскажите, как сделать в квесте на убийство монстров, чтобы при их убийстве или при диалоге с работодателем после их убийства, выдавался инфопоршн на его выполнение. У меня есть догадка, что нужна скриптовая функция, которая будет проверять во время диалога, убиты ли монстры. Но как её выполнить? Плиз, ваши советы и догадки по функции и по осуществлении квеста в целом.


Кто в логике шарит, пишите в асю или ПМ - нужна помощь.
Всем, кому интересно - журнал.
Teor
    
Посты: 159
Откуда: Чернигов
Возраст: 32
09-04-2008 20:57 GMT3 час. #566656   
Я тут пробывал в amk 1.4 квест от Сахарова на пружину добавить, но при попытке загрузке
FATAL ERROR

[error]Expression : start_node && path
[error]Function : CXml::NavigateToNode
[error]File : E:\stalker\patch_1_0004\xrXMLParser\xrXMLParser.cpp
[error]Line : 97
[error]Description : NavigateToNode failed in XML file
[error]Arguments : gameplay\game_tasks.xml


stack trace
Че это такое и как это исправить? Может знает кто?


На столе лежит дискета
У нее испорчен boot.
Через дырочку в конверте
Ее вирусы грызут.
Crocks
    
Посты: 85
Откуда: Кропоткин
Возраст: 33
11-04-2008 19:02 GMT3 час. #568060   
Где-то напортачил. Проверь тело квеста, если не получится, выложи тело сюда. Может найдём вместе, но врятли.


Кто в логике шарит, пишите в асю или ПМ - нужна помощь.
Всем, кому интересно - журнал.
-=G.S.T.=-
    
Посты: 1081
Откуда: [United Kingdom of Great Britan] -=London=- Language -=English=-
Возраст: 39
11-04-2008 19:34 GMT3 час. #568096   
Teor Смотри лог. [error]Arguments : gameplay\game_tasks.xml Ищи в папке gameplay где напортачил.


Teor
    
Посты: 159
Откуда: Чернигов
Возраст: 32
11-04-2008 22:49 GMT3 час. #568286   
В том та и фишка, что с етим файлом я ниче не делал. Когда выдало ошибку, то всунул туда, что думал нужным и тоже самое
Вообщем я про квестостроение больше ниче и нечитал, кроме вышеприведенных статей. Если я сделал елементарную ошибку, то прошу не смеятся

character_desc_yantar

yantar_general_big (такое вставил, куда нужно)

dialogs_yantar

dialogs_yantar.trader_alredy_give_job


yantar_general_big_0
1


yantar_general_big_1
2


kvest_af_dummy_spring_started
yantar_general_big_2
kvest_af_dummy_spring_started
dialogs.break_dialog


yantar_general_big_3
dialogs_yantar.have_a_af_dummy_spring
dialogs_yantar.otday_af_dummy_spring
6


kvest_af_dummy_spring_started
yantar_general_big_4
5


yantar_general_big_5
7


yantar_general_big_6
test_quest_af_dummy_spring_otdana
dialogs_yantar.transfer_deneg
7


yantar_general_big_7




tasks_yantar


Принести пружину

Принести пружину Сахарову
ui_iconsTotal_find_item
test_quest_af_dummy_spring_otdana


Вернуться с пружиной обратно
test_quest_af_dummy_spring_otdana



З далогом вроде все правильно, так что выкладывать диалог не буду

dialogs_yantar.script


function transfer_deneg(first_speaker, second_speaker)
dialogs.relocate_money(second_speaker, 35000, "in")
end

function otday_af_dummy_spring (npc, actor)
dialogs.relocate_item_section(npc, "af_dummy_spring", "out")
end

function have_a_af_dummy_spring (stalker, player)
return stalker:object ("af_dummy_spring") ~= nil
end


misc/string_table_tasks_escape


Найти пружину


Принести пружину Сахарову


info_l08yantar







esc_test_af_dummy_spring_task








Ну вроде это весь квест, а где ошибка незнаю


На столе лежит дискета
У нее испорчен boot.
Через дырочку в конверте
Ее вирусы грызут.
Crocks
    
Посты: 85
Откуда: Кропоткин
Возраст: 33
12-04-2008 09:29 GMT3 час. #568471   

dialogs_yantar.trader_alredy_give_job

Это не совсем та ошибка, но такой функции в этом файле нет. (сейчас смотрел)

добавлено спустя 1 минуту

Или ты добавил?

отредактировал(а) Crocks: 12-04-2008 09:30 GMT3 час.

Кто в логике шарит, пишите в асю или ПМ - нужна помощь.
Всем, кому интересно - журнал.
Teor
    
Посты: 159
Откуда: Чернигов
Возраст: 32
12-04-2008 13:17 GMT3 час. #568658   
Ну я выложил все что в скрипт добавил. А больше я туда ниче не пихал.


На столе лежит дискета
У нее испорчен boot.
Через дырочку в конверте
Ее вирусы грызут.
Teor
    
Посты: 159
Откуда: Чернигов
Возраст: 32
17-04-2008 18:57 GMT3 час. #572985   
Я вот еще заметил, что если начать навую игру, то выкида нет. Это типо выходит, что после каждого квеста надо новую игру начинать?


На столе лежит дискета
У нее испорчен boot.
Через дырочку в конверте
Ее вирусы грызут.
weron_team
    
Посты: 1352
Откуда: МО Лыткарин
Возраст: 35
17-04-2008 19:07 GMT3 час. #572991   
Да ты крут))

Клнешно


_strelok_
    
Посты: 427
Откуда: Kazan
Возраст: 31
19-04-2008 10:56 GMT3 час. #574170   
Arhet я пробовал сделать новую группировку и квесты на них как на твоей статье было указыно, но при включение игра вылетает. Может я квесты для них не правильно сделал?

добавлено спустя 45 секунд

Вроде эти квесты у долга все пошли!

отредактировал(а) _strelok_: 19-04-2008 10:56 GMT3 час.

Я живу ради жизни, я умираю ради новой жизни.
BerSerK™
    
Посты: 843
Откуда: Fecity
Возраст: 32
26-06-2008 00:18 GMT3 час. #621731   
Вопрос такой: пишу квест, всё работает, инфопоршны и подсказки выдаются, НО...
При попытке открыть в ПДА вкладку "Задачи" происходит вылет с чистым логом. Кто в курсе, с чем это может быть связано???


Загляни в журнал и будет тебе счастье!!!
Terra Incognita M.O.D.(T.I.M.O.D.)
dans
    
Посты: 71
Откуда:
Возраст:
26-06-2008 13:00 GMT3 час. #622050   
BerSerK™

возможно в taske забыл добавить такие строчки

ui\ui_icons_task

ui_iconsTotal_artefact или похожую исходя из твоего задания(здесь иконка артефакта)


здесь я подробно расписывал как создавать не однотипные квесты может надо кому
Создание квеста


BerSerK™
    
Посты: 843
Откуда: Fecity
Возраст: 32
28-06-2008 10:13 GMT3 час. #624097   
dans , ты прав, такого я в таске не писал. Сейчас попробую изменить. И ещё, не можешь подсказать - ещё пара минусов - при получении квеста у Сидора мне выдаётся подсказка типо "Сходить к Волку". А после того, как я поговорю с Волком - нет. Просто кончается диалог, а там - иди куда хочется. И ещё - в квесте Волк даёт мне что-нибудь, и после этого я иду к Сидору. Скриптовая функция пашет, выдача, к примеру, ствола, происходит, но никакой инфы наподобие "получен предмет..." не появляется. Не знаешь, как всё это сделать? Я в квестах покопался(стандартных), но ничего похожего не нашёл.


Загляни в журнал и будет тебе счастье!!!
Terra Incognita M.O.D.(T.I.M.O.D.)


Форумы Трилогия серии игр S.T.A.L.K.E.R » Модификации и квесты Квестостроение.


Продолжая пользоваться сайтом, вы соглашаетесь с использованием файлов cookie. Страницы сайта могут содержать информацию, запрещенную для
просмотра посетителям младше 18 лет. Авторское право на серию игр «S.T.A.L.K.E.R» и используемые в ней материалы принадлежит GSC Game World.

Использование материалов сайта возможно с разрешения администрации. Все права защищены. © 2004–2024 «Stalker-Portal.ru»