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

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


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

Посмотри как в моде Hand Teleport сделано. Там при взятии ПДА срабатывает выполнение задания.

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

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

Всем доброго времени суток.

Такая проблема. Я только начинаю вникать во все эти конфиги и тд.

Попытался используя эту статью сделать простейший квест. Все делал как там сказано.

В итоге - игра запускается, играется, ничего не вылетает. Но задания у Сидрыча в списке (в игре) нету. Уже и приоритет у всех заданий кроме нового ставил 5, а у добавленного приоритет 1. Все равно квест не появляется. В чем может быть проблема?

 

Вот то, что я добавил:

task_manager

[tm_kill_stalker_8]
type = kill_stalker
community = actor
text = tm_kill_stalker_8_text
description = tm_kill_stalker_8_descr
parent = trader
target = esc_wolf
reward_money = 100000
reward_reputation = +3
reward_rank = 2
reward_item = vodka, conserva
time = 86400
prior = 1

 

storyline_info_taskmanager

<article id="tm_kill_stalker_8_descr" name="kill_stalker" article_type="task">
       <text>tm_kill_stalker_8_descr</text>
</article>

stable_task_manager

	<string id="tm_kill_stalker_8">
	<text>Убить Волка</text>
</string>
<string id="tm_kill_stalker_8_text">
	<text>Достал меня Волк! Понимаешь, достал! Ворует у меня водку, понимаешь, потом идет и клянчит деньги на 
тушенку, потому что новички его не слушают и есть ничего не дают, а вот сойти со своего места и пойти охотится на кабанов, он, 
видите ли, не хочет, ибо ЛЕНЬ! Грохни его, Меченый, я в долгу не останусь.</text>
</string>
<string id="tm_kill_stalker_8_descr">
	<text>Сидрыч заказал убийство Волка</text>
</string>

 

 

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

еще в task_manager.ltx

самого верха есть список заданий найди строку kill stalker

и добавь туда свое

tm_kill_stalker_8

Изменено пользователем manunj
Ссылка на комментарий

Всем доброго времени суток. Нужна помощь по диалогам.

Как я понял тэг precondition отвечает за то, после какого условия диалог появится. Функции берутся из скриптов, а я в них ничего не понимаю. Мог бы кто-нибудь подсказать в каких скриптах содержатся эти функции и что они означают (хотя бы основные).

 

ЗЫ: И еще. Если я хочу создать несколько следующих друг за другом квестов. Как создать и где прописывать свои функции, чтобы нужный диалог ко 2 миссии появился только после выполнения 1 миссии? (обе миссии я имею ввиду добавлю сам).

ЗЗЫ: Поиск юзал, но тут писалось только про конкретные случаи, а мне нужно общее объяснение чтобы понять что/где/как))

 

Заранее спасибо!

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

Выручайте!

 

<phrase id="15">

<has_info>quest_dinamit_started</has_info>

<precondition>escape_dialog.have_a_dinamit</precondition>

<text>escape_wolf_dinamit_15</text>

<next>16</next>

</phrase>

<phrase id="16">

<text>escape_wolf_dinamit_16</text>

<give_info>quest_dinamit_otdan</give_info>

<action>escape_dialog.otday_dinamit</action>

<next>17</next>

</phrase>

<phrase id="17">

<text>escape_wolf_dinamit_17</text>

<next>18</next>

</phrase>

<phrase id="18">

<text>escape_wolf_dinamit_18</text>

<action>escape_dialog.dinamit_nagrada</action>

<next>20</next>

</phrase>

 

После 20во идет фраза, заканчивающая диалог... Теперь в функциях....

 

function have_a_dinamit(stalker, player)

return stalker:object ("item_dinamit") ~= nil

end

 

function otday_dinamit(first_speaker, second_speaker)

dialogs.relocate_item_section(second_speaker, "item_dinamit", "out")

end

 

function dinamit_nagrada(first_speaker, second_speaker)

dialogs.relocate_item_section(second_speaker, "wpn_m1891_30_scope", "in")

dialogs.relocate_item_section(second_speaker, "ammo_7.62x54_7h1", "in")

dialogs.relocate_item_section(second_speaker, "ammo_7.62x54_7h1", "in")

end

 

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

 

Разобрался, ошибка была в конфиге самой мосинки, поэтому и вылетала игра

Изменено пользователем ShteiN
Ссылка на комментарий

Max222, могу помочь, но я в этом деле не профессионал, хоть и разобрался. Но помочь смогу только в асе 5078525.

 

Кто особо хорошо знающий, помогите!

 

Expression : start_node && path

Function : CXml::NavigateToNode

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

Line : 97

Description : NavigateToNode failed in XML file

Arguments : gameplay\dialogs_escape.xml

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

Ошибка в диалоге. Вполне возможно, в одном диалоге имеется две одинаковых строки или id (цифры).

Изменено пользователем WAWKA
Ссылка на комментарий

Создал квест по поиску сталкера кальтера, пробую, вылетает с логом:

Expression : no_assert

Function : CIni_IdToIndex<1,struct COMMUNITY_DATA,class shared_str,int,class CHARACTER_COMMUNITY>::GetById

File : e:\stalker\patch_1_0004\xr_3da\xrgame\ini_id_loader.h

Line : 134

Description : item not found, id

Arguments : green

 

Кто нить подскажет что ни так?

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

Люди вот я скину все что сделал а вы скажите, что поправить:

 

В dan_dailog:

function escape_stalker_kalter_have(task, objective)

if db.actor ~= nil then

return db.actor:object("af_medusa") ~= nil

end

return false

end

 

function escape_stalker_kalter_done(first_speaker, second_speaker)

dialogs.relocate_item_section(second_speaker, "af_medusa", "out")

second_speaker:set_relation(game_object.friend, first_speaker)

end

 

В character_desc_escape:

<actor_dialog>escape_stalker_kalter</actor_dialog>

<actor_dialog>escape_stalker_kalter2</actor_dialog>

Приписал к Сидору(у меня его зовут КыС)

 

 

В dialogs_escape:

<phrase id="0">

<text>escape_stalker_kalter_0</text>

<next>1</next>

</phrase>

<phrase id="1">

<text>escape_stalker_kalter_1</text>

<next>2</next>

<next>3</next>

</phrase>

<phrase id="2">

<text>escape_stalker_kalter_2</text>

<action>dan_dialog.escape_stalker_kalter_have</action>

</phrase>

<phrase id="3">

<text>escape_stalker_kalter_3</text>

<action>dialogs.break_dialog</action>

</phrase>

</phrase_list>

</dialog>

<dialog id="escape_stalker_kalter2">

<phrase_list>

<phrase id="0">

<text>escape_stalker_kalter2_0</text>

<next>1</next>

</phrase>

<phrase id="1">

<text>escape_stalker_kalter2_1</text>

<next>2</next>

</phrase>

<phrase id="2">

<text>escape_stalker_kalter2_2</text>

<next>3</next>

</phrase>

<phrase id="3">

<text>escape_stalker_kalter2k_3</text>

</phrase>

</phrase_list>

</dialog>

 

 

В stable_dialogs_escape:

<string id="escape_stalker_kalter_0">

<text>Слышь,Кыс, знаешь че нить про сталкера по кликухе Кальтер?</text>

</string>

<string id="escape_stalker_kalter_1">

<text>В принципе кое-что могу сказать, но раз ты у нас новичок, Скаут, за медузку расскажу кой чего!</text>

</string>

<string id="escape_stalker_kalter_2">

<text>Ну ты и ... ладно жди достану тебе медузу, жмот ты наш.</text>

</string>

<string id="escape_stalker_kalter_3">

<text>А ты новичок непроженный!Ну ка иди ищи медузу и без разговорчиокв!</text>

</string>

<string id="escape_stalker_kalter2__0">

<text>Привет Кыс, не забыл наш уговор?.</text>

</string>

<string id="escape_stalker_kalter2_1">

<text>Да помню-помню было такое,долго же ты,а еще меня жмотом называл,а сам... ну ладно принес?.</text>

</string>

<string id="escape_stalker_kalter2_2">

<text>А как же держи,попотеть пришлось.</text>

</string>

<string id="escape_stalker_kalter2k_3">

<text>Ну в нашем деле не без этого проходи че стоишь.Так вот, про него узнаешь у сталкера Креста, что в деревне у новичков, но информация маленькая, а попотеть тебе пришлось, держи презент</text>

</string>

</string_table>

 

Вот и вылетает с логом: Expression : no_assert

Function : CIni_IdToIndex<1,struct COMMUNITY_DATA,class shared_str,int,class CHARACTER_COMMUNITY>::GetById

File : e:\stalker\patch_1_0004\xr_3da\xrgame\ini_id_loader.h

Line : 134

Description : item not found, id

Arguments : green

 

Подскажите что поменять пжлст :rolleyes:

Изменено пользователем CkayT
Ссылка на комментарий

Люди! Ну кто-нить поможет? Я уж сообщение день назад отослал! :huh: ! Поиск слова green по измененным фалам ничего не дал :huh:

 

Добавлено через 6 мин.:

Где оштбка незнаю, второй день уже мучаюсь :dash3:

Ссылка на комментарий
Function : CIni_IdToIndex<1,struct COMMUNITY_DATA,class shared_str,int,class CHARACTER_COMMUNITY>

 

дай посмотреть Характер_Деск героев квеста :-)

 

 

----------

 

хм, тут без пол литра не разберешь твою проблему..

Изменено пользователем XMK
Ссылка на комментарий

XMK,

<specific_character id="escape_trader" no_random = "1">

<name>ПавликыС</name>

<icon>ui_npc_u_trader</icon>

<bio>escape_trader_bio</bio>

 

<class>trader</class>

<community>trader</community>

<visual>actors\trader\trader</visual>

 

<rank>330</rank>

<reputation>23</reputation>

<money min="100000" max="100000" infinitive="1"/>

<supplies>

[spawn] \n

wpn_knife \n

</supplies>

 

<start_dialog>escape_trader_start_dialog</start_dialog>

<actor_dialog>escape_trader_sidor</actor_dialog>

<actor_dialog>sidor_repair_dialog</actor_dialog>

<actor_dialog>about_life_heart_41_dialog</actor_dialog>

<actor_dialog>about_life_heart_42_dialog</actor_dialog>

<actor_dialog>start_update_outfit_sidor</actor_dialog>

<actor_dialog>update_outfit_sidor</actor_dialog>

<actor_dialog>escape_stalker_kalter</actor_dialog>

<actor_dialog>escape_stalker_kalter2</actor_dialog>

<actor_dialog>artmod_433_dialog</actor_dialog>

<actor_dialog>artmod_523_dialog</actor_dialog>

<actor_dialog>artmod_643_dialog</actor_dialog>

<actor_dialog>trade_dialog_sidor</actor_dialog>

<actor_dialog>tm_trader_dialog</actor_dialog>

<actor_dialog>tm_trader_reward</actor_dialog>

<actor_dialog>escape_trader_done_blockpost_box</actor_dialog>

<actor_dialog>escape_trader_talk_info</actor_dialog>

<actor_dialog>escape_trader_jobs</actor_dialog>

<!---<actor_dialog>escape_trader_repair</actor_dialog>--->

<actor_dialog>escape_trader_miniquest</actor_dialog>

<actor_dialog>petr_sidor_vzyt</actor_dialog>

<actor_dialog>petr_sidor_zabrat</actor_dialog>

<actor_dialog>escape_trader_flamethrower_dialog</actor_dialog>

<!---<actor_dialog>escape_trader_story</actor_dialog>---->

<actor_dialog>escape_trader_factions</actor_dialog>

<actor_dialog>sidor_amulet_vzyt</actor_dialog>

<actor_dialog>sidor_amulet_prines</actor_dialog>

 

</specific_character>

 

 

Добавлено через 14 мин.:

Может что еще надо написать?А?

Изменено пользователем CkayT
Ссылка на комментарий

Может кто-нибудь очень подробно описать процесс вставки диалога, квеста, выдачи награда от одного персонажа к другому(например диалоги и квесты Кузнецова/Макса Любера...какому-нибудь Пуле/Арни и т.п ? Заранее благодарен. (прошу это ввиду смерти некоторых персонажей, которые дают квесты, читерить не хочется, поэтому предполагаю вставку/добавление "личности" умершего, кому-нибудь из ныне живущих, чтобы все таки пройти квесты).

з.ы. Темы читал, ни к чему вразумительному ни привило, поэтому и прошу кого-нибудь "разложить все по полочкам"

з.ы.ы. Прошу обходится без сообщений "убейсяапстену", "юзай поиск" и т.п. :rolleyes:

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

Ну, мне понятно как создать новый квест у Сидоровича, но не могу понять как "скопировать" диалоги/квесты/награды от одного НПС к другому + всё же если кто то возьмётся объяснить, опишите зарнее как определять секции определённого персонажа

 

Вопрос закрыт.

Изменено пользователем DiavoliK
Ссылка на комментарий

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

Function : CXML_IdToIndex<class CInfoPortion>::GetById

File : d:\xray-svn\xr_3da\xrgame\xml_str_id_loader.h

Line : 112

Description : item not found, id

Arguments : guitar_quest_start

 

что не так? Заранее спасибо за ответ

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

novice,

Игра не может найти инфопрошень с названием "guitar_quest_start" на сколько я понял. Возможно ты его забыла прописать...

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

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

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

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

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

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

Войти

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

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

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