Vadyanchikus 5 Опубликовано 14 Июля 2014 Поделиться Опубликовано 14 Июля 2014 (изменено) Kirgudu, я попробую удалить все эти теги и все эти условия с инфопоршнями вообще, но, по-моему, проблема не в этом. Вылеты происходили ещё до этого. А за плагин спасибо, посмотрю. Да, вылеты продолжаются, только что проверил. Изменено 14 Июля 2014 пользователем Vadyanchikus Ссылка на комментарий
Kirgudu 1 207 Опубликовано 15 Июля 2014 Поделиться Опубликовано 15 Июля 2014 Удалил целиком весь нижний комментарий?Выложи свежий вариант файлов, без «мусора», но с вылетом, посмотрим. Инструмент Ссылка на комментарий
Vadyanchikus 5 Опубликовано 15 Июля 2014 Поделиться Опубликовано 15 Июля 2014 (изменено) Нет, я по удалял открывающие теги: опять вылет. В итоге, я закомментировал мой диалог. Всё равно вылет . Попробую так - заново распакую ресурсы и вставлю свой диалог, при этом ничего другого не трогая (может, я до диалога что-то мог изменить, что вряд ли). А там посмотрим. Так, проблема решилась - диалог работает без вылетов. В чём проблема - не знаю, возможно, неправильный тег, который мне выдал плагин XML Tools (Kirgudu, спасибо!), хотя это, вроде, не должно быть движковой ошибкой. Теперь сделаю из этого диалога задание. Я не просто так спросил, удалил ли ты нижний закомментированный кусок целиком. Диалог внешне был совершенно правильным. Единственное место, из-за которого мог сбоить движок, было в том комментарии, вместе со всеми непарными тегами.Ну да ладно, проблема решилась - и хорошо. Kirgudu Изменено 15 Июля 2014 пользователем Kirgudu Ссылка на комментарий
Staffenberg 1 Опубликовано 15 Июля 2014 Поделиться Опубликовано 15 Июля 2014 (изменено) Доброго времени суток! В своём моде для ТЧ я хочу сделать возможность освободить Шустрого не только путём уничтожения бандитов на АТП, но и посредством переговоров с ними. С этой целью я добавил им главного, прописал в гулаг, но после этого квест сбился: после разговора с Сидоровичем индикатор активного задания переключается на "Забрать флешку у Шустрого", что должно произойти после зачистки АТП. Сами же бандиты хаотично бродят по территории АТП (только главный идёт на своё место), и, если их всё же убить, то ничего не произойдёт, ибо по заданию они уже числятся убитыми. Как это можно исправить? А ещё нужно, чтобы после разговора с Петрухой, в случае согласия зачищать АТП в одиночку, метка на карте переключалась на главного и появилось новое задание - "Поговорить с главой бандитов". Помогите, пожалуйста. Изменено 15 Июля 2014 пользователем Staffenberg Ссылка на комментарий
Хемуль36рус 1 789 Опубликовано 15 Июля 2014 Поделиться Опубликовано 15 Июля 2014 @Staffenberg, Чтобы было новое задание нужно в диалоге выдать <task>pogovor_banda</task> например. Но для начала, я бы тебе посоветовал почитать всё о том как делаются квесты. Если ты спрашивает о такой мелочи, то ты особо не понимаешь что делаешь. Без обид, я так же начинал и до сих пор еще многого не выучил. Intrel Core i5 9400F, msi gtx 1660 super ventus, RAM 16g-DDR4, HD 2000g, Win 10x64, SSD 256g, SSD m2 500g. Ссылка на комментарий
Staffenberg 1 Опубликовано 15 Июля 2014 Поделиться Опубликовано 15 Июля 2014 (изменено) Спасибо. Если честно, то это должен быть мой первый квест. А что с бандитами делать, чтобы они на своих местах находились и не числились убитыми раньше времени?) Изменено 15 Июля 2014 пользователем Ааз Ссылка на комментарий
Vadyanchikus 5 Опубликовано 15 Июля 2014 Поделиться Опубликовано 15 Июля 2014 (изменено) Я, наверное, криворук, но всё же мне опять нужна помощь. В общем, диалог рабочий вылетов нет (один, конечно, есть, но там понятная причина). В общем, в диалоге я прописал инфопоршень, который разрешает начать вести диалог только после принесения флешки от Шустрого, но не тут-то было: этот инфопоршень как будто в упор не читается и диалог можно начать сразу после инструктажа по КПК (поэтому собственно и вылет после пары веток в диалоге). При этом появляется сразу два диалога: на поиск арта и на его сдачу одновременно, причём я прописал, чтобы второй появился только после инфопоршней первого (немного запутано объясняю, поэтому выложу диалоги): Первый диалог, на получение задания <dialog id="esc_art"> <phrase_list> <has_info>esc_serious_talk</has_info> <has_info>tutorial_end</has_info> <phrase id="0"> <dont_has_info>esc_art_start</dont_has_info> <!--<dont_has_info>esc_art_gain</dont_has_info>--> <dont_has_info>esc_art_done</dont_has_info> <text>esc_art_dialog_0</text> <next>1</next> </phrase> <phrase id="1"> <dont_has_info>esc_art_done</dont_has_info> <dont_has_info>esc_arts</dont_has_info> <text>esc_art_dialog_1</text> <next>11</next> <next>12</next> </phrase> <phrase id="11"> <text>esc_art_dialog_11</text> <give_info>esc_arts</give_info> </phrase> <phrase id="12"> <text>esc_art_dialog_12</text> <next>121</next> <next>122</next> </phrase> <phrase id="121"> <precondition>escape_dialog.trader_need_art</precondition> <text>esc_art_dialog_121</text> <next>1211</next> <next>1212</next> </phrase> <phrase id="1211"> <text>esc_art_dialog_1211</text> <next>12111</next> </phrase> <phrase id="12111"> <text>esc_art_dialog_12111</text> <give_info>esc_art_start</give_info> </phrase> <phrase id="1212"> <text>esc_art_dialog_1212</text> <next>12121</next> </phrase> <phrase id="12121"> <text>esc_art_dialog_12121</text> </phrase> <phrase id="122"> <has_info>esc_art_done</has_info> <text>esc_art_dialog_122</text> </phrase> </phrase_list> </dialog> Второй диалог, на сдачу арта <dialog id="esc_art_done"> <phrase_list> <precondition>escape_dialog.have_esc_art</precondition> <!--<has_info>esc_art_gain</has_info>--> <dont_has_info>esc_art_done</dont_has_info> <phrase id="0"> <text>esc_art_done_0</text> <next>1</next> </phrase> <phrase id="1"> <text>esc_art_done_1</text> <action>escape_dialog.give_esc_art</action> <give_info>esc_art_done</give_info> </phrase> </phrase_list> </dialog> Повторюсь, что инфопоршни как будто не читаются, что касается и скриптовых строк, то есть precondition и action. Прошу пользоваться тегами «code» и спойлерами. Kirgudu Изменено 16 Июля 2014 пользователем Kirgudu Ссылка на комментарий
Staffenberg 1 Опубликовано 15 Июля 2014 Поделиться Опубликовано 15 Июля 2014 (изменено) Я заспавнил на АТП нового бандита и вот к чему это привело:1)Сбился порядок выдачи инфопоршней в квесте с освобождением Шустрого (одновременно выдаётся задание "Поговорить с Волком" и "Забрать флешку у разведчика");2) Толик спавнится мёртвым;3) Бандиты хаотично бродят по территории АТП (кроме того самого, которого я заспавнил, его можно увидеть на 1:43).Подскажите, пожалуйста, как это можно исправить? http://www.youtube.com/watch?v=p61GZ9y2MN0Если все сделано так, как был оформлен пост - ничего удивительного.И вообще я бы предложил почитать темы, и попробовать сделать не все сразу, а что-то одно довести до рабочего состояния. dc Изменено 15 Июля 2014 пользователем Dennis_Chikin Ссылка на комментарий
Kirgudu 1 207 Опубликовано 16 Июля 2014 Поделиться Опубликовано 16 Июля 2014 (изменено) @Vadyanchikus, элементы has_info, dont_has_info и precondition могут являться подчинёнными элементами для элементов dialog и phrase, но никак не phrase_list. Понятно, что у тебя эти условия игнорируются.Почитай, наконец, уроки построения диалогов. Поиск на форуме работает, примеров и объяснений можно найти кучу. Навскидку:http://www.amk-team.ru/forum/index.php?showtopic=7450&p=466322http://www.amk-team.ru/forum/index.php?showtopic=6458&p=219306Самому же проще будет, чем тыкаться наугад и долго гадать, в чём причина ошибки. Изменено 16 Июля 2014 пользователем Kirgudu Инструмент Ссылка на комментарий
Vadyanchikus 5 Опубликовано 16 Июля 2014 Поделиться Опубликовано 16 Июля 2014 Ну, так в этом-то и дело, что я сначала расположил эти элементы сначала внутри phrase, а уже потом внутри phrase_list. Ладно, тогда почитаю, потом исправлю, что не так. В любом случае, спасибо большое за помощь. Ссылка на комментарий
Kirgudu 1 207 Опубликовано 16 Июля 2014 Поделиться Опубликовано 16 Июля 2014 (изменено) @Vadyanchikus, опять невнимательно читаешь. Если хочешь скрыть диалог целиком - условия для этого надо располагать внутри элемента dialog, а не внутри других подчинённых dialog элементов. Дискуссия уже выходит за рамки топика. Если будут вопросы по квестам - это одно. Если по созданию работающих диалогов - стоит переместиться в более подходящую тему. Диалоги, зачастую, - неотъемлемая часть квеста. Так что, как по мне, тема вполне подходящая. FantomICW +1. dc Изменено 17 Июля 2014 пользователем Dennis_Chikin Инструмент Ссылка на комментарий
Vadyanchikus 5 Опубликовано 17 Июля 2014 Поделиться Опубликовано 17 Июля 2014 (изменено) Это опять я. В общем, у меня проблемы с заданием: оно не создаётся в КПК (да и вообще не появляется каких-либо признаков, что я его взял), скрипт задания на выдачу награды не работает (то есть вообще ничего не происходит, что есть скрипт, что его нет). Кто может помочь - помогите, всё здесь: https://yadi.sk/d/KZfrN-NqWmoeJ. Мои изменения я пометил так: ***...***. Тексты я, пожалуй, скидывать не буду, ибо они не нужны. Изменено 17 Июля 2014 пользователем Vadyanchikus Ссылка на комментарий
Kirgudu 1 207 Опубликовано 17 Июля 2014 Поделиться Опубликовано 17 Июля 2014 (изменено) @Vadyanchikus, по самому квесту тебе ответит кто-нибудь ещё (ТЧ не моя епархия). Но вот что бросилось мне в глаза, так это ошибка в твоём скрипте. function give_esc_art(first_speaker, second_speaker) local artefact=first_speaker:object("af_vyvert") if artefact==nil then dialogs.relocate_item_section(second_speaker, "af_gravi", "out") else dialogs.relocate_item_section(second_speaker, artefact, "out") end dialogs.relocate_money(second_speaker, 1500, "in") end Что-то мне подсказывает, что функция relocate_item_section принимает на вход во втором аргументе либо строку (секцию), либо объект. Скорее строку, если судить по аналогичной функции в ЧН. А ты пытаешься в зависимости от условия передать и то и другое.Второй вызов должен выглядеть так: else dialogs.relocate_item_section(second_speaker, "af_vyvert", "out") Будь внимательней. Изменено 17 Июля 2014 пользователем Kirgudu Инструмент Ссылка на комментарий
Vadyanchikus 5 Опубликовано 17 Июля 2014 Поделиться Опубликовано 17 Июля 2014 (изменено) Хм... Хорошо, поправлю. Тогда ещё один вопрос: почему диалог на выдачу задания не выдаётся сразу после разговора с Сидоровичем про флешку. Раньше я мог говорить с ним после отдачи флешки. Я решил облегчить себе жизнь и выдать диалог сразу после получения задания про флешку, поэтому стёр соответствующий тэг. Но игра всё равно выдаёт диалог только после выполнения задания, никак не раньше, как мне надо. В чём причина? Всё, понял. Там с инфопоршнем одним намудрили, я не заметил. Изменено 17 Июля 2014 пользователем Vadyanchikus Ссылка на комментарий
Kirgudu 1 207 Опубликовано 17 Июля 2014 Поделиться Опубликовано 17 Июля 2014 (изменено) Семён Семёныч! Условия появления диалога проверяй сам, какое-то из них не выполняется, вот и диалог не виден. А вот что у тебя здесь? <info_portion id="esc_art_start"></info_portion> <task>esc_art</task> <article>zone_artifact_af-vyvert</article> <article>zone_artifact_af-gravi</article> <article>zone_anomalies_gravi</article> С каких это пор элементы article и task являются самостоятельными элементами в данном конфиге? Ну посмотри хоть пониже, в том же файле есть рабочие примеры.Естественно, задание не выдаётся, поскольку инфопорция (элемент инфопорции) о нём ничего не знает. Ещё раз повторяю, будь внимательнее! Банальные же ошибки. Всего-то стоит посмотреть то, что уже до тебя сделано и работает. Изменено 17 Июля 2014 пользователем Kirgudu Инструмент Ссылка на комментарий
Vadyanchikus 5 Опубликовано 17 Июля 2014 Поделиться Опубликовано 17 Июля 2014 Спасибо большое, помогло. Есть теперь несколько недочётов, но они не приводят к вылетам, надеюсь, сам найду решение (если интересно, то проблемы следующие: нет одного пункта в задании в КПК (думаю, я знаю, в чём проблема), задание не переносится в Выполненные и опять же не забирается артефакт Выверт и отдаётся артефакт Грави, которого у меня в инвентаре нет). Ссылка на комментарий
AndreySol 215 Опубликовано 18 Июля 2014 Поделиться Опубликовано 18 Июля 2014 (изменено) и опять же не забирается артефакт Выверт и отдаётся артефакт Грави, которого у меня в инвентаре нет Чуток на эту тему: ф-ция типа relocate_item_section НЕ проверяет наличие необходимого предмета, а передает его путем создания\спавна. Следовательно, необходимо использовать какой-то прекондишн на проверку - а есть ли у ГГ требуемый предмет в инвентаре(то-бишь в рюкзаке). Если есть - передаем, если нет - блокируем ветку в диалоге на передачу предмета. Изменено 18 Июля 2014 пользователем AndreySol Ссылка на комментарий
Vadyanchikus 5 Опубликовано 22 Июля 2014 Поделиться Опубликовано 22 Июля 2014 Чуток на эту тему: ф-ция типа relocate_item_section НЕ проверяет наличие необходимого предмета, а передает его путем создания\спавна. Следовательно, необходимо использовать какой-то прекондишн на проверку - а есть ли у ГГ требуемый предмет в инвентаре(то-бишь в рюкзаке). Если есть - передаем, если нет - блокируем ветку в диалоге на передачу предмета. Хм... Я понял, о чём ты. Можно попробовать. Хотя одно условие уже есть, но используется не при выдаче награды, а при выполнении задания. Единственное, что я никак не пойму - задание механика Свободы на поиск водки (он потом прицел отдаёт). При выдаче награды используется как раз relocate_item_section, и никаких условий в скрипте нет. Может, у меня проблема из-за нескольких вариантов отдаваемого предмета? Ссылка на комментарий
Romann 619 Опубликовано 4 Октября 2014 Поделиться Опубликовано 4 Октября 2014 (изменено) Всем привет,в создании квестов столкнулся с проблемой : создал непися с диалогами и квестами(диалоги, квесты и инфопоршни работают) НПС на примере Кости, т.е. с такой логикой в кастом.дата : custom_data = <<END [smart_terrains] bar_kornet_camp = trueesc_kornet_brigada = trueroad_kornet_brigada = trueroad_kornet_brigada_end = truebar_kornet_camp = {-kornet_esc}esc_kornet_brigada = {+kornet_esc -kornet_road}road_kornet_brigada = {+kornet_road -kornet_road_kamp}road_kornet_brigada_end = {+kornet_road_kamp}[spawner]cond = {+kornet_bar}ENDstory_id = 10009spawn_story_id = 10009 т.е. по ходу сюжета , заданий срабатывают инфопоршни и НПС должен перемещаться по смартам,между локациями, но дело в том , что с самого начала,при появлении этого непися, он отказывается идти в первый смарт, а сразу ломится,почему-то на Агропром и там сидит..Или в гулагах нужно предикат юзать?Подскажите как правильно сделать ? Изменено 4 Октября 2014 пользователем Romann Мать: ASRock X470 Master SLI. Процессор: AMD Ryzen 9 3900X 12-Core(4200 MHz). Память: Patriot Memory 3200 C16 Series. DDR4-3200(1600МГц), 16Гбх2(32Гб). Видео: GeForce GTX 1060 6GB. Блок питания: CoolerMaster 750 Вт. Корпус: Zalman i3 Edge. Химера конечно сильный хищник, а все держится дома. Чего же ты пришел к ней домой и пытаешься её убить? © Болотный Доктор Ссылка на комментарий
AndreySol 215 Опубликовано 5 Октября 2014 Поделиться Опубликовано 5 Октября 2014 (изменено) bar_kornet_camp = true esc_kornet_brigada = true road_kornet_brigada = true road_kornet_brigada_end = true это лишнее, ведь ниже у тебя указаны условия активности для всех этих смартов. а сразу ломится,почему-то на Агропром и там сидит Какой-то из вышеперечисленных смартов находится на Агро ? И где именно он "сидит" - в каком гулаге ? Изменено 5 Октября 2014 пользователем AndreySol Ссылка на комментарий
Рекомендуемые сообщения
Создайте аккаунт или авторизуйтесь, чтобы оставить комментарий
Комментарии могут оставлять только зарегистрированные пользователи
Создать аккаунт
Зарегистрировать новый аккаунт в нашем сообществе. Это несложно!
Зарегистрировать новый аккаунтВойти
Есть аккаунт? Войти.
Войти