Перейти к контенту

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


Рекомендуемые сообщения

Народ помогите пожалуйста, как правильно сделать что бы после выполнение квеста спавнились npc, скрипт у меня есть а надо толька правильно вставить функцию в диалог, но в это и проблема не знаю как правильно поставить где и между какими строками (а точней мне надо, что бы спавн происходил после выполнение квеста когда надо было командиру Свободы принести бронежилет военных) :)

Надо сделать проверку у ГГ на определенный предмет. В твоем случае на проверку наличия в инвентаре бронежилета.

 

function checking_taken_item()

if not has_alife_info("твой инфопоршн") then

if obj:section()=="название бронежилета" then название функции спавна НПС()

end

end

end

 

Функцию checking_taken_item надо вставить в bind_stalker.script вот сюда:

 

function actor_binder:on_item_take (obj)

level_tasks.proceed(self.object)

--game_stats.update_take_item (obj, self.object)

 

--AMK UTILS--

amk.on_item_take(obj)

amk_utils.actor_item_take(obj)

--AMK UTILS--

spawn_zombi.checking_taken_item(obj) -- spawn_zombi - это файл, где находится твоя функция проверки.

 

Еще надо в функцию спавна НПС вставить инфопоршн, который указываешь в функции проверки.

Это для того, чтобы при переходе через локации каждый раз не срабатывала функция спавна при наличии у ГГ этого бронежилета.

 

function spawn_zombied()

local obj = alife():create("amk_zombied_1",vector():set(254.20483398438,-8.3238792419434,-132.53259277344),370220,404)

db.actor:give_info_portion("твой инфопоршн")

end

Кто весел - тот смеется, кто хочет - тот добьется, кто ищет - тот всегда найдет!

Ссылка на комментарий

Kostya V, спасибо буду пробовать может что получится

 

И ещё вопрос можешь привести пример скрипта что бы после его запуска он удалял (убирал) указанный предмет из рюкзака игрока, например бронника “specops_outfit” :)

Ссылка на комментарий
Kostya V, спасибо буду пробовать может что получится

 

И ещё вопрос можешь привести пример скрипта что бы после его запуска он удалял (убирал) указанный предмет из рюкзака игрока, например бронника “specops_outfit” :)

 

function delete_bronik()

local obj = db.actor:object("specops_outfit")

if obj then

local se_obj = alife():object(obj:id())

if se_obj then

alife():release(se_obj)

end

end

end

Кто весел - тот смеется, кто хочет - тот добьется, кто ищет - тот всегда найдет!

Ссылка на комментарий

Kostya V, и ещё один последний вопрос, как спавнить нпц на другой локации, например сам игрок находится на Военных складах а нпц появляется на Агропроме, тоже если есть возможность показать пример скрипта :)

Ссылка на комментарий
Kostya V, и ещё один последний вопрос, как спавнить нпц на другой локации, например сам игрок находится на Военных складах а нпц появляется на Агропроме, тоже если есть возможность показать пример скрипта :)

Для этого надо просто в функцию спавна НПС прописать координаты с Агропрома и все.

Кто весел - тот смеется, кто хочет - тот добьется, кто ищет - тот всегда найдет!

Ссылка на комментарий
Для этого надо просто в функцию спавна НПС прописать координаты с Агропрома и все.
Либо, если непись прописан в all.spawnе, поставить ему:

 

[spawner]

cond = {+infoportion}

Где: infoportion - условие, инфопоршен (который можно добавить в диалог, к примеру), при выполнении которого, заспавнится данный непись.

Ссылка на комментарий
а как бармену квест про писать?

Прочитай тему с самого начала и поймешь.

Кто весел - тот смеется, кто хочет - тот добьется, кто ищет - тот всегда найдет!

Ссылка на комментарий

пишу в stable_dialogs_bar:

<string id="bar_barmen_tolk_0">

<text>Линк, здорово!!! Раскажи, что-нибудь! Ато устал я.</text>

</string>

<string id="bar_barmen_tolk_1">

<text>Есть новый слух. Говорят те кто во время супер-выброса выжили, преобретают сверхестественные способности, ну или подыхают в течении

 

недели. А погибают очень интересно. Кто видели говорят, что у человека просто ноги подгинаются и падает он, так прям посреди дароги. А

 

те что сверхестественные способности получают, тоже долго не живут. Знаешь почему?. Потому, что их на приключения тянет. Говорят один

 

мен полез в рукопашку с кровососом, ну кровососос его и кокнул, но говорят схватка долгая была. Нет ну ты представляешь..........на

 

кровососа.......ха, во дает. Ну вот собственно и все.</text>

</string>

<string id="bar_barmen_tolk_2">

<text>Дааа.....вот люди!!!</text>

</string>

<string id="bar_barmen_tolk_3">

<text>Ладно пойду я.</text>

</string>

 

И в dialogs_bar:

 

<dialog id="bar_barmen_tolk">

<phrase_list>

<phrase id="0">

<text>bar_barmen_tolk_0</text>

<next>1</next>

</phrase>

<phrase id="1">

<text>bar_barmen_tolk_1</text>

<next>2</next>

<next>3</next>

</phrase>

<phrase id="2">

<text>bar_barmen_tolk_2</text>

</phrase>

<phrase id="3">

<text>bar_barmen_tolk_3</text>

</phrase_list>

</dialog>

 

Вылет при запуске игры жалуется на dialogs_bar. Что я неправильно делаю ( хочу дабавить диалог бармену )

Ссылка на комментарий

К вопросу о создании квестов. Я думаю можно использовать в качестве основы записи на ПДА и флешках к-рые в процессе игры появляются у ГГ, например проследить за обрядом Монолита и захватить мезомодификат, уйти от погони вместе с напарником, пробраться незаметно на объект, сопроводить отряд и т. д.

Intel Core i5-10400F  2.90GHz Ram32ГБ.NVIDIA GeForce GTX 3060 12GB . ОС Windows 10 Корпоративная 64-bit,Сталкер ТЧ 4-й патч,Народная Солянка от19.04+14.08+патч3.09 Пройдена 3 раза!Прошел ТТ2 +апдейт. Пройден Фотограф!Народная Солянка 2016г. пройдена!

Ссылка на комментарий
<phrase id="3">

<text>bar_barmen_tolk_3</text>

</phrase_list>

</dialog>

 

Вылет при запуске игры жалуется на dialogs_bar. Что я неправильно делаю ( хочу дабавить диалог бармену )

Здесь пропущено </phrase>

Должно быть так:

<phrase id="3">

<text>bar_barmen_tolk_3</text>

</phrase>

</phrase_list>

</dialog>

Кто весел - тот смеется, кто хочет - тот добьется, кто ищет - тот всегда найдет!

Ссылка на комментарий

Подскажите в чем проблема?

 

<dialog id="escape_trader_letat_gusi">

<dont_has_info>hello_sidor</dont_has_info>

<phrase_list>

<phrase id="0">

<text>Поздорову, торговец.</text>

<next>1</next>

</phrase>

<phrase id="1">

<text>Так... Кто это тут... Ты?!!</text>

<next>2</next>

</phrase>

<phrase id="2">

<text>Да я.</text>

<next>3</next>

</phrase>

<phrase id="3">

<text>Кто я?</text>

<next>4</next>

</phrase>

<phrase id="4">

<text>Я.</text>

<next>5</next>

</phrase>

<phrase id="5">

<text>У тебя есть имя или кличка?</text>

<next>6</next>

</phrase>

<phrase id="6">

<text>У меня???</text>

<next>7</next>

</phrase>

<phrase id="7">

<text>Не у меня же!!!!!</text>

<next>8</next>

</phrase>

<phrase id="8">

<text>А какая у тебя кличка?</text>

<next>9</next>

</phrase>

<phrase id="9">

<text>Иди отсюда... Шутник.</text>

<give_info>hello_sidor</give_info>

<action>dialogs.break_dialog</action>

</phrase>

</phrase_list>

</dialog>

 

Когда я в игре выбираю выделеную стрку диалога игра вылетает. Где моя ошибк???

The srp 0.3 is a lie! The AMK 2.0 is a lie!

In NLC 6.0 we trust

Ссылка на комментарий

Что мне делать? Вот ошибка в файле dialogs_yantar

 

Не удается отобразить страницу XML

Не удается просмотреть ввод XML с использованием списка стилей XSL. Исправьте ошибку и затем нажмите кнопку "Обновить"или повторите попытку позднее.

 

 

--------------------------------------------------------------------------------

 

Тег конца "game_dialogs" не соответствует тегу начала "dialog". Ошибка при обработке ресурса ''file:///D:/Program Files/GSC...

Ссылка на комментарий
Подскажите в чем проблема?

 

Когда я в игре выбираю выделеную стрку диалога игра вылетает. Где моя ошибк???

Объясни, что значит выбираю?

Кто весел - тот смеется, кто хочет - тот добьется, кто ищет - тот всегда найдет!

Ссылка на комментарий

Прихожу к Сидоровичу, нажимаю говорить. Дальше как бы начинаю диалог. И когда доходит до строчки №6 (это говорит меченый, поэтому строчку нужно "нажать") игра вылетает.

The srp 0.3 is a lie! The AMK 2.0 is a lie!

In NLC 6.0 we trust

Ссылка на комментарий

БоБеР, лог хоть скажи. На первый взгляд, диалог правильный.

Геныч, проверь, есть ли в этом файле теги:

<game_dialogs> и </game_dialogs>

А в самом диалоге:

<dialog> и </dialog>

Ссылка на комментарий

А лога нету-то. Но мне кажется причина в том что слишком много текста в 7 строке. Диалог выглядит на самом дела так (С 6 строки):

 

<phrase id="6">

<text>Ты что, смеешся? Если в Зоне раз побывал, уже не забудешь. Но ты информацию новую все равно говори.</text>

<next>7</next>

</phrase>

<phrase id="7">

<text>Ладно, слушай, да только внимательно - повторять не собираюсь. Первым делом скажу тебе - Зона изменилась не в лучшую сторону - хотя когда она менялась в лучшую сторону? Да никогда. Мутанты стали сильнее, аномалии - невидимыми, и сама Зона... Расширилась, можно сказать. Раньше Химеру можно было встретить... Ну, на Милитари там... А теперь, твари, на Кордоне живут. Никто в Зону ходить не хочет - тут уже без арсенала не выжить. Теперь про Стрелка - сам я о нем, как ты знаешь, знаю немного - только то что он был крутым сталкером... Но это ты и сам знаешь. Также я знаю, что он не погиб... Заглядывал ко мне как-то сталкер Волк, рассказывал, что на Агропроме видел метку КПК "Стрелок". А может и врал, но это уже его спрашивать надо. Где искать Волка... Вроде бы он в Темной Долине остепенился... Ищи его там... Еще кое-что - в 2012, перед самым Глобальным Выбросом, который и изменил Зону, был у меня "в гостях" сталкер по кликухе Меченый... Так вот уж больно сильно он Стрелка искал... Да не просто так - убить он его хотел. Ну да ладно. Это все, что я знаю. Скажу еще кое-что о Зоне - ближе к центру остепенилась группировка "Волки Зоны". Их глава, Линк, по слухам, лично виделася то ли со Стрелком, то ли с Доктором... В общем, как заглянешь к Волку, иди к "Волкам".</text>

<next>8</next>

</phrase>

<phrase id="8">

<text>Спасибо, Сидорович. Если чего мне надо будет, к тебе обращусь.</text>

<next>9</next>

 

Вот лог

 

Expression : false

Function : CXml::Init

File : E:\stalker\patch_1_0004\xrXMLParser\xrXMLParser.cpp

Line : 87

Description : XML file:gameplay\dialogs_escape.xml value: errDescr:Error reading end tag.

The srp 0.3 is a lie! The AMK 2.0 is a lie!

In NLC 6.0 we trust

Ссылка на комментарий

Error reading end tag. Тут ясно сказано - ошибка чтения тэга. Раз вылет происходит во время диалога, то вполне возможно, что ошибка из-за текста. Попробуй перенести текст с диалога в файлы текстов (ну которые в папке rus - впрочем, как все диалоги игры)... Либо, попробуй открыть этот файл диалога, к примеру, с помощью браузера - у меня Opera отлично справляется с отловом моих косяков в файлах диалогов - прямо указывает на строку.

Ссылка на комментарий

Спасибо огромное :) Наконец все стало на свои места (хотя если бы в течении нескольких дней никто не помог бы - я б и сам дошел до этого выхода - сам уже подумывал переписать все в тексты)

The srp 0.3 is a lie! The AMK 2.0 is a lie!

In NLC 6.0 we trust

Ссылка на комментарий

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

Ссылка на комментарий

Создайте аккаунт или авторизуйтесь, чтобы оставить комментарий

Комментарии могут оставлять только зарегистрированные пользователи

Создать аккаунт

Зарегистрировать новый аккаунт в нашем сообществе. Это несложно!

Зарегистрировать новый аккаунт

Войти

Есть аккаунт? Войти.

Войти
  • Недавно просматривали   0 пользователей

    • Ни один зарегистрированный пользователь не просматривает эту страницу.
×
×
  • Создать...