Larry76 0 Опубликовано 13 Июня 2010 Поделиться Опубликовано 13 Июня 2010 и без этой строчки вылет тот же.... А hello_dialog что приводить? Он как был,так и остался родным <dialog id="hello_dialog"> <init_func>dialog_manager.init_hello_dialogs</init_func> <phrase id="0" /> </dialog> Ссылка на dialog_manager в котором генерятся рандомные приветствия одно из полутора десятков. А в dialog_manager.ltx они прописываются группировкам. ( ну чтоб сталкеры или бандиты не кричали: Здравия желаю,товарищ майор! ) Правильно заданный вопрос- уже половина ответа! Ссылка на комментарий
KD87 718 Опубликовано 13 Июня 2010 Поделиться Опубликовано 13 Июня 2010 (изменено) Larry76, вылет у тебя оттого, что когда ты берешь квест, первый диалог, где выдается квест, становится недоступным. А у непися обязательно должен быть start_dialog, поэтому игра пытается извернуться. ты вот это <dont_has_info>quest_af_dummy_dummy_done</dont_has_info> <dont_has_info>quest_af_dummy_dummy_give</dont_has_info> перенеси из условий диалога в условия какой-то ветки. <start_dialog> должен быть активен в ЛЮБОМ СЛУЧАЕ. Изменено 13 Июня 2010 пользователем KD87 Ссылка на комментарий
Larry76 0 Опубликовано 13 Июня 2010 Поделиться Опубликовано 13 Июня 2010 (изменено) Хм...спасибо,помогло... но. Я сделал проверку попозже и перед ней разветвление диалога. <dialog id="esc_trader_meet"> <phrase_list> <phrase id="1111111"> <text>esc_trader_meet_1111111</text> <next>11111111</next> </phrase> <phrase id="11111111"> <text>esc_trader_meet_11111111</text> <next>111111111</next> </phrase> <phrase id="111111"> <text>esc_trader_meet_111111</text> <next>1111111</next> </phrase> <phrase id="11111"> <text>esc_trader_meet_11111</text> <next>111111</next> </phrase> <phrase id="1111"> <text>esc_trader_meet_1111</text> <next>11111</next> </phrase> <phrase id="111"> <dont_has_info>quest_af_dummy_dummy_done</dont_has_info> <dont_has_info>quest_af_dummy_dummy_give</dont_has_info> <text>esc_trader_meet_111</text> <next>1111</next> </phrase> <phrase id="1"> <text>esc_trader_meet_1</text> <next>11</next> </phrase> <phrase id="11"> <text>esc_trader_meet_11</text> <next>111</next> <next>777</next> </phrase> <phrase id="777"> <text>Пока</text> <action>dialogs.break_dialog</action> </phrase> <phrase id="111111111"> <text>esc_trader_meet_111111111</text> <give_info>quest_af_dummy_dummy_give</give_info> <action>dialogs_escape.give_af_dummy_dummy_quest</action> </phrase> <phrase id="22"> <text>esc_trader_meet_22</text> <next>222</next> </phrase> <phrase id="2"> <text /> <next>22</next> </phrase> <phrase id="222"> <text>esc_trader_meet_222</text> <next>2222</next> </phrase> <phrase id="2222"> <text>esc_trader_meet_2222</text> </phrase> <phrase id="0"> <text /> <next>1</next> <next>2</next> <next>4</next> <next>5</next> </phrase> <phrase id="44"> <text>esc_trader_meet_44</text> </phrase> <phrase id="55"> <text>esc_trader_meet_55</text> </phrase> <phrase id="4"> <text /> <next>44</next> </phrase> <phrase id="5"> <text /> <next>55</next> </phrase> </phrase_list> </dialog> Но теперь у меня почему-то не срабатывает инфопоршень <give_info>quest_af_dummy_dummy_give</give_info> Т.е. задание принести арт висит,но в диалоге фраза "вот твой артефакт" не появляется..... Что-то я по ходу перемудрил...... Пока арт не взял,вся ветка диалогов esc_trader_meet прокручивается до конца. Но если беру задание уже имея на руках арт,эта фраза в диалог добавляется. Изменено 13 Июня 2010 пользователем Larry76 Правильно заданный вопрос- уже половина ответа! Ссылка на комментарий
KD87 718 Опубликовано 13 Июня 2010 Поделиться Опубликовано 13 Июня 2010 (изменено) Larry76, а с чего ты взял, что не срабатывает? это же инфопоршень на взятие квеста. Инфопоршень на взятие арта ( и на открытие диалога) у тебя такой: <has_info>quest_has_af_dummy_dummy</has_info>. Ты ж его нигде не выдаешь. А причем тут этот диалог? у тебя диалог на взятие арта такой:<dialog id="af_dummy_dummy_quest_prines"> has_af_dummy_dummy_sidr - это что за функция? Да не надо совмещать. Ты вот что. Возьми бумагу и нарисуй свое дерево диалогов, с разветвлениями, прекондишнами, одним словом, разберись хорошенько, когда какой диалог и ветки активны. Сразу все понятно станет. Larry76, ты за сообщениями следишь? на следующую страницу глянь dialogs_escape.is_has_af_dummy_dummy_sidr - это значит, что тут запускается функция is_has_af_dummy_dummy_sidr в файле dialogs_escape.script. Покажи ее. Изменено 13 Июня 2010 пользователем KD87 Ссылка на комментарий
Larry76 0 Опубликовано 13 Июня 2010 Поделиться Опубликовано 13 Июня 2010 (изменено) Он у меня в другом диалоге.... <dialog id="af_dummy_dummy_quest_prines"> <has_info>quest_af_dummy_dummy_give</has_info> <precondition>dialogs_escape.is_has_af_dummy_dummy_sidr</precondition> <phrase_list> <phrase id="1"> <text>Спасибо, чувак. Выручил</text> <give_info>quest_af_dummy_dummy_done</give_info> </phrase> <phrase id="0"> <has_info>quest_has_af_dummy_dummy</has_info> <text>Вот твоя водяра</text> <action>dialogs_escape.transfer_af_dummy_dummy_to_sidr</action> <next>1</next> </phrase> </phrase_list> получается их в один совместить надо,что ли? Вот мне и надо,чтоб сработал другой диалог.Он срабатывает,если (опять повторюсь) я беру квест заведомо имея на руках арт.Т.е. не выходя из окна текущего диалога. если выйду,при повторном открытии окна этой фразы(вот твой арт) уже нету. Где-то я запутался,ткни носом пожалуйста, где? Блин...какое-то условие должно быть что-то типа if has_info или что-то в этом роде... По идее оно и есть,это проверка инфопоршня и при его наличии фраза должна быть..а её нету.... Изменено 13 Июня 2010 пользователем Larry76 Правильно заданный вопрос- уже половина ответа! Ссылка на комментарий
KD87 718 Опубликовано 13 Июня 2010 Поделиться Опубликовано 13 Июня 2010 (изменено) Larry76, Функцию покажи has_af_dummy_dummy_sidr. А лучше все используемые. С диалогами на первый взгляд теперь нормально стало. Изменено 13 Июня 2010 пользователем KD87 Ссылка на комментарий
Larry76 0 Опубликовано 13 Июня 2010 Поделиться Опубликовано 13 Июня 2010 (изменено) Сорри ступил,завис на предыдущей странице. Вот квест ;--//рюкзак пропавшего курьера-------------------------------------------------------------------------------- [quest_af_dummy_dummy_give] icon = ui_inGame2_PD_Svoy_paren prior = 2 storyline = false title = {=actor_has_item(af_dummy_dummy)}af_dummy_dummy_sidr_prinesti_name, af_dummy_dummy_sidr_naiti_name descr = quest_af_dummy_dummy_descr target = {=actor_has_item(af_dummy_dummy)}escape_trader condlist_0 = {+quest_af_dummy_dummy_done} complete А вот скрипт function give_af_dummy_dummy_quest() task_manager.get_task_manager():give_task("quest_af_dummy_dummy_give") end function is_has_af_dummy_dummy_sidr() if db.actor:object("af_dummy_dummy") then return true end return false end function transfer_af_dummy_dummy_to_sidr(first_speaker, second_speaker) dialogs.relocate_item_section_from_actor(first_speaker, second_speaker, "af_dummy_dummy") end Кстати,при взятии арта метка на Сидоре не появляется,на вояке при подобном квесте появляется,а на сидоре нет. Сидора спавнил аллспавном,а вояку скриптом. Квест от вояки отличается лишь названием того,что надо принести. ок. Сегодня попозже попробую.Спасибо. Увы не помогло... Так же диалог не появляется. Да и ещё,при попытке что-нить купить или продать ловлю вылет FATAL ERROR [error]Expression : !m_error_code [error]Function : raii_guard::~raii_guard [error]File : D:\prog_repository\sources\trunk\xrServerEntities\script_storage.cpp [error]Line : 748 [error]Description : ....e.r. - Зов Припяти\gamedata\scripts\xr_logic.script:622: attempt to call field '?' (a nil value) stack trace: 621 else 622 if xr_conditions[infop.func](actor, npc) then 623 if not infop.expected then 624 infop_conditions_met = false -- инфопоршен есть, но не должен присутствовать 625 break 626 end Изменено 16 Июня 2010 пользователем Larry76 Правильно заданный вопрос- уже половина ответа! Ссылка на комментарий
KD87 718 Опубликовано 13 Июня 2010 Поделиться Опубликовано 13 Июня 2010 (изменено) Larry76, должно быть так: function is_has_af_dummy_dummy_sidr() if db.actor:object("af_dummy_dummy") then db.actor:give_info_portion("quest_has_af_dummy_dummy") return true end return false end пробуй. И поставь прекондишн до <has_info> в диалоге. Изменено 13 Июня 2010 пользователем KD87 Ссылка на комментарий
AK74 4 Опубликовано 13 Июня 2010 Поделиться Опубликовано 13 Июня 2010 Доброго всем времени суток. Такой вопрос. В алл.спавне спавнится ствол. Каким параметром задается его техническое состояние? Ну, то которое влияет на цену и отказ при стрельбе. Спасибо. Ссылка на комментарий
Scarabay 98 Опубликовано 14 Июня 2010 Поделиться Опубликовано 14 Июня 2010 AK74, попробуй изменять параметр health Мой YouTube-канал Ссылка на комментарий
Pihan13 9 Опубликовано 14 Июня 2010 Поделиться Опубликовано 14 Июня 2010 Гляньте чего нашёл: http://www.youtube.com/watch?v=Mjmah3MpeOQ Локация "Жилище Картографа" Хелп по созданию смарт террейнов Ссылка на комментарий
nuklia 0 Опубликовано 14 Июня 2010 Поделиться Опубликовано 14 Июня 2010 Pihan13 , анимации классные, я их уже видел, была идея сценку-прикол сделать - чувак бродит в безделье скажем на том же баре Скадовска, сует палец к выключателю, а его бьет током и еффект электры. Да все руки не доходят. Ссылка на комментарий
andref 0 Опубликовано 14 Июня 2010 Поделиться Опубликовано 14 Июня 2010 Не подскажите, на что ругается ACDC при попытке вставить в all.spawn некоторые предметы: "Сan't use an undefined value as an ARRAY reference at stkutils/ini_file.pm line 156"? Ссылка на комментарий
AK74 4 Опубликовано 14 Июня 2010 Поделиться Опубликовано 14 Июня 2010 (изменено) 2 Scarabay Дико извиняюсь, но нет такого параметра в секции оружия. :ny_sad: andref Об ошибки в структуре секций. Доводилось встречать такое, но точную причину такого сообщения, увы не помню. :ny_sad: Pihan13 Мне кажется, что 2-я анимка хорошо подошла бы для постэффекта попадания под Выброс. Изменено 14 Июня 2010 пользователем AK74 Ссылка на комментарий
SanekKZN 0 Опубликовано 14 Июня 2010 Поделиться Опубликовано 14 Июня 2010 (изменено) Проблема No available phrase to say, dialog[hello_dialog] действительно есть. Попробовал сделать небольшой смар_террейн экологов. Ни у одного из них не прописан никакой диалог в профиле. Вообще. При попытке заговорить - вылет с вышеуказанным логом. Видимо действительно необходимо ковырять скрипты связанные с диалогами. Этот самый hello_dialog ссылается на dialog_manager.script и уже там он как то формируется. Но там для меня лес дремучий. Larry76, решение проблемы найдено! Добавил экологов и торговца в dialog_manager.script (везде, где добавлено в оригнале) + добавил в dialog_manager.ltx следующее: В list, в самый конец списка: [list] ... ... ... ... dm_hello_18 dm_hello_19 dm_hello_20 dm_hello_21 dm_hello_22 dm_hello_23 В конце файла: [dm_hello_18] category = hello npc_community = trader level = all [dm_hello_19] category = hello npc_community = trader level = all [dm_hello_20] category = hello npc_community = trader level = all [dm_hello_21] category = hello npc_community = ecolog level = all [dm_hello_22] category = hello npc_community = ecolog level = all [dm_hello_23] category = hello npc_community = ecolog level = all Ну и в text\rus\st_dialog_manager.xml прописал приветствия, по аналогии с имеющимися. И всё заработало. Изменено 14 Июня 2010 пользователем SanekKZN Ссылка на комментарий
Larry76 0 Опубликовано 14 Июня 2010 Поделиться Опубликовано 14 Июня 2010 (изменено) SanekKZNЯ добавлял.... но не помогало.Может не так добавлял? Ок,спасибо за наводку,посмотрю,действительно как в оригинальной геймдате от НЕБА сделано. А можно поподробнее что ты в Диалогс_менеджер_скрипт добавлял? в Диалогс_менеджер_лтх я добавлял [dm_hello_19] category = hello npc_community = hunter, trader level = all [dm_hello_20] category = hello npc_community = hunter, trader level = all а там где? Изменено 14 Июня 2010 пользователем Larry76 Правильно заданный вопрос- уже половина ответа! Ссылка на комментарий
KD87 718 Опубликовано 15 Июня 2010 Поделиться Опубликовано 15 Июня 2010 (изменено) Larry76, SanekKZN, ребят, вы, честное слово, делаете по методу индусского программирования. Вместо того, чтобы сделать нормальный <start_dialog>, имеющий активные ветки при любых наборах инфопоршней, вы лезете в скрипты. Ларчик-то просто открывается, зачем такие сложности? Upd. Попробую еще так. У меня сейчас Сидор заспавнен на кордоне, доступна торговля, диалоги, квесты и все, что угодно - без всякой правки скриптов. Вылетов нет. Изменено 15 Июня 2010 пользователем KD87 Ссылка на комментарий
Larry76 0 Опубликовано 15 Июня 2010 Поделиться Опубликовано 15 Июня 2010 (изменено) Ларчик-то просто открывается, зачем такие сложности? Костя,я с этим не спорю... но у меня же не открывается!!! Вот и пытаюсь,хоть как-то извернуться. В принципе, мы с тобой уже подошли к завершающему этапу,но у меня почему-то инфопоршень так и не захотел срабатывать. С твоими правками вообще,я могу сдать квест не беря арт!!НО... нельзя покидать текущего диалога,иначе строка о сдаче квеста больше не появится. Изменено 15 Июня 2010 пользователем Larry76 Правильно заданный вопрос- уже половина ответа! Ссылка на комментарий
KD87 718 Опубликовано 15 Июня 2010 Поделиться Опубликовано 15 Июня 2010 (изменено) Larry76, Потому что инфопоршень о том, что есть арт в инвентаре, по уму надо выдавать не в прекондишне диалога, а во внешней логике, в каком-нибудь рестрикторе. Например: [sr_idle] on_info = {=actor_has_item(af_dummy_dummy)} sr_idle@nil %+quest_has_af_dummy_dummy% [sr_idle@nil] Ну и избегай случаев, когда диалог по поршням доступен,а в нем нет доступных фраз. Вот так будет лучше: <dialog id="af_dummy_dummy_quest_prines"> <has_info>quest_af_dummy_dummy_give</has_info> <has_info>quest_has_af_dummy_dummy</has_info> <precondition>dialogs_escape.is_has_af_dummy_dummy_sidr</precondition> --если делать с рестриктором, эта строчка не нужна! <phrase_list> <phrase id="1"> <text>Спасибо. Выручил</text> <give_info>quest_af_dummy_dummy_done</give_info> </phrase> <phrase id="0"> <text>Вот твой артефакт</text> <action>dialogs_escape.transfer_af_dummy_dummy_to_sidr</action> <next>1</next> </phrase> </phrase_list> </dialog> Изменено 15 Июня 2010 пользователем KD87 Ссылка на комментарий
Stalk15 27 Опубликовано 15 Июня 2010 Поделиться Опубликовано 15 Июня 2010 (изменено) Блин, перерыл скрипты ЗП и что-то не нашел функцию, которая через диалог передает главному герою предмет...Не подскажете?...И еще не подскажете, как называется секция детектора "Велес", случайно не detector_elite? Все, нашел. Изменено 15 Июня 2010 пользователем Stalk15 Ссылка на комментарий
Рекомендуемые сообщения
Создайте аккаунт или авторизуйтесь, чтобы оставить комментарий
Комментарии могут оставлять только зарегистрированные пользователи
Создать аккаунт
Зарегистрировать новый аккаунт в нашем сообществе. Это несложно!
Зарегистрировать новый аккаунтВойти
Есть аккаунт? Войти.
Войти