Далее идем сюда D:\S.T.A.L.K.E.R. - Зов Припяти\gamedata\configs\text\rus\st_quests_general.ltx
В конце перед </string_table> пишим это:
Code
<string id="test_naiti_name "> <text>Убийство: Убить сталкера и сказать спасибо сайту/text> </string> <string id="test_descr "> <text>Убить сталкера и сказать спасибо Johann/text> </string> <string id="test_prinesti_name"> <text>Убийство: рассказать бармену и сказать спасибо Johann</text> </string>
Так, теперь нам надо открыть скрипт с помощью блокнота Идем сюда: D:\S.T.A.L.K.E.R. - Зов Припяти\gamedata\scripts\dialogs_zaton.script В самое начало пишим:
Code
function quest_kill_nps_start() task_manager.get_task_manager():give_task("lapsh8_give") end
Теперь находим распакованый all.spawn и находим там файл alife_zaton.ltx В конец пишим это, но номер не должен повторяться!
Code
[1866] ; cse_abstract properties section_name = stalker name = test_smg-mod_test position = 223.34001159668,55.243835449219,8.9725513458252 direction = 0,0,0
Dimonich, запросто, можно и проще. Я вообще без Алл.спавна стараюсь работать в простеньких местах, через скрипт гораздо быстрее, все делается. Для чн квесты типа принеси убей пишутся за несколько минут, просто нужно чтобы руки росли откуда надо!
Создаём в папке gamedata\scripts файл ваше_название_скрипта.script, в него пишем: Код function ваше_название_функции() xr_effects.give_inited_task(nil, nil, {"storyline", "name_of_your_quest", "bandit"}) end name_of_your_quest - будет название квеста из tm_***.ltx bandit - группировка (при наведении на точку в ПДА (т.е. которая "Весит" на рестрикторе например.) будет высвечиваться описание квеста и какая группировка её дала.)
далее берём файл gamedata\configs\misc\tm_***.ltx от соотв. локации и пишем в начале под строчку [list_tm_***]: Код name_of_your_quest
и далее внизу аналогично существующим: Код [name_of_your_quest] type = storyline task_type = additional prior = 10 icon = ui_mt_image_attack_tower target_cond = true name = youself_quest_name text = youself_quest_text condlist_0 = {+info_for_done} complete target_story_ids = 724 auto_name = false auto_faction = true
type = storyline - тип: сюжетная линия (тут можно указать "Принести предметы, уничтожить смарт" итд...) task_type = additional - тип: дополнительный (если напишете storyline, то будет отображаться, как сюжетка ) prior = 10 - приоритет (значение того, что при появлении квеста он автоматически будет активным) icon = ui_mt_image_attack_tower - иконка, хотя я что толкьо не писал, получается стандартная target_cond = true name = youself_quest_name - имя из xml-массива text = youself_quest_text - описание condlist_0 = {+info_for_done} complete - при получении (+) инфопрошня info_for_done считать выполненным target_story_ids = 724 - стори ИД на которого вешается метка (может быть тайник, труп, НПС, рестриктор, неважно...) auto_name = false auto_faction = true
прописываем описания в файлы из gamedata\configs\text\rus также прописываем инфопрошни в игру (у нас это info_for_done) P.S. target_story_ids = 724 - ID Йоги, лидера бандитов smile.gif
в диалоги: <action>ваше_название_скрипта.ваше_название_функции</action> -активируем <give_info>info_for_done</give_info> - завершение
Добавлено (04.09.2011, 13:02) --------------------------------------------- Вот
Dimonich, ну смотри ты нашел инструкцию, но из нее видно что квест вроде бы как на доставку предмета, но задание будет считаться выполненым, только если ГГ получит определенный инфопоршень(а инфопоршни проще всего выдаются через диалоги, но это не удобно в нашем случае). А нам нужно чтобы задание считалось выполненным как только у ГГ появляется предмет. (например: получаем квест на поиск артефакта, находим его и задание, считается выполненым уже сейчас, а не когда мы отдадим арт заказчику.) Что бы это сделать мы вписываем в условие выполнения квеста не инфопоршень, а прекондишен на наличие определенного предмета у гг, типа так: [mar_arthunt_art_3_quest_a] type = storyline task_type = additional prior = 9 target_story_ids = 309 target_cond = {=actor_on_level(marsh)} true on_init = %+mar_arthunt_art_3_quest_ishem% faction = stalker name = mar_arthunt_art_3_quest text = mar_arthunt_art_3_quest_text condlist_0 = {=actor_has_item(af_dummy_battery)} complete -- ВОТ ТО О ЧЕМ Я ГОВОРЮ!!! on_complete = %=give_inited_task(storyline:mar_arthunt_art_3_quest_b:stalker)% -- ЭТО ВЫДАЧА НОВОГО КВЕСТА ПРИ ВЫПОЛНЕНИИ ПРЕДЫДУЩЕГО! auto_name = false