Модостроение. Создание и редактирование квестов
|
|
denis2000 | Дата: Пн, 10.10.2011, 21:25 | Сообщение # 1 |
Полевой исследователь
Ученые сталкеры
Сообщений: 2399
| Создание и редактирование квестов Создание новых квестов и редактирование существующих Если у вас появились вопросы по созданию и редактированию квестов, изменению существующих и добавлению новых в игру. Задавайте их в этой теме - умные головы, модосторители и просто разбирающиеся в программировании люди вам ответят.
Много интересного материала здесь (wiki), Lua_help.script, Help из SDK 0.7
Сборник модостроения ЗП v10.10.11 (автор: XOBAH): *.CHM, *.HTML [cut noguest=Если у вас не открывается файл CHM]Если у вас не открывается файл: 1. Запустите [Пуск]=>[Выполнить] (либо хот-кей [WIN]+[R]) 2. Введите команду (без кавычек) "regsvr32 %windir%\system32\hhctrl.ocx" 3. Если вылезло окно об успешном завершении вы все сделали правильно и можете перезагружать компьютер (а может и не надо) Также: файлы МОГУТ не открываться если в пути к файлу есть: символы кириллицы, "_", "#" Также: есть не стандартные программы-просмоторщики CHM файлов. Например: FBReader[/cut]
[cut=Где найти лог игры после вылета]Что такое LOG ошибки, и как мне его найти? Это система отладки происходивших вылетов, которая подается игрой в форме текста, хотя не всегда. Для того чтоб найти LOG необходимо зайти вот сюда:
В Win хр лог находится:
C:\Documents and Settings\All Users\Документы\S.T.A.L.K.E.R. - Зов Припяти\logs
Затем открываете первый файл в формате TXT, и в нем отбираете с низу 25 строчек. После кидаете эти 25 строчек в сообщение на форум.
В Win7 лог находится C:\Users\Public\Documents\S.T.A.L.K.E.R. - Зов Припяти\logs
Путь к папке с логом можно найти открыв файл fsgame.ltx который находится в корневой директории ЗП, за это отвечает строка: ... $app_data_root$ = true | false| $fs_root$| users\(тут мы указываем что папка пользователя, будет хранится рядом с Fsgame.ltx) ... $logs$ = true| false| $app_data_root$| logs\(а тут мы указываем что в папке пользователя, в подпапке Logs будут храниться наши логи) ... [/cut][cut=Получение более подробной информации о вылете (ХОВАН)] Открываем файл _g.script и ищем такую функцию: function abort(fmt, ...) Там есть заккомментированная строчка "--error_log(reason)", ее и надо расскомментировать, должно получиться вот так: Code function abort(fmt, ...) local reason = string.format(fmt, ...) error_log(reason) end Вот для примера два одинаковых вылета, первый с функцией по умолчанию, второй - с поправленной функцией
Первый: Code Expression : !m_error_code Function : raii_guard::~raii_guard File : D:\prog_repository\sources\trunk\xrServerEntities\script_storage.cpp Line : 748 Description : ....a.l.k.e.r. - Зов Припяти\gamedata\scripts\_g.script:478: bad argument #2 to 'format' (string expected, got nil) Второй: Code Expression : 0 Function : ErrorLog File : D:\prog_repository\sources\trunk\xrServerEntities\script_engine_script.cpp Line : 49 Description : 'Attempt to read a non-existant string field 'path_walk' in section 'walker@mechanic' [/cut]
Перед тем, как задать вопрос в этой теме, прочтите все предыдущие страницы, статьи в wiki по ссылке из шапки и соседнюю тему "Курс молодого бойца", возможно Ваш вопрос уже рассматривался.
Если произошел вылет - выкладываем лог! Вопрос ставим четко, не забываем указывать версию игры, установленные моды их версии, установленные фиксы модов и подробно ваши правки. Помните чем подробнее вопрос, тем точнее ответ.
"Он ловко выхватил из-под себя табуретку и очень метко и сильно бросил ее в докладчика..." (Чугунный всадник)
|
|
|
Эти 0 пользователя(ей) поблагодарили denis2000 за это полезное сообщение: |
|
|
sergej5500 | Дата: Вт, 07.05.2013, 22:42 | Сообщение # 121 |
Полевой Исследователь
Ученые сталкеры
Сообщений: 3793
| Ааз, Вы в диалоге пишете dialog_zaton.jup_document_x17_create, а файл скриптов называется dialogs_zaton
|
|
|
Эти 0 пользователя(ей) поблагодарили sergej5500 за это полезное сообщение: |
|
|
yakuti | Дата: Ср, 15.05.2013, 20:11 | Сообщение # 122 |
Отмычка
Пользователи
Сообщений: 46
| Можете объяснить как реализовать квест как в оригинале: группа сталкеров встречает контролера и все зомбируются. При убийстве контра все обратно становятся сталкерами
|
|
|
Эти 0 пользователя(ей) поблагодарили yakuti за это полезное сообщение: |
|
|
sergej5500 | Дата: Ср, 15.05.2013, 20:36 | Сообщение # 123 |
Полевой Исследователь
Ученые сталкеры
Сообщений: 3793
| yakuti, Как вариант, можно удалить сквад сталкеров и заспавнить сквад зомби. Послу убийства контролера удалить сквад зомби и заспавнить сквад сталкеров. Пример кода из оригинала: on_timer = 1000 | sr_idle@duty_go_home %+jup_b4_monolith_squad_in_duty =remove_squad(jup_b4_squad) =create_squad(jup_b4_squad_duty:jup_b4) =create_squad(jup_b4_squad_duty_leader:jup_b4) =enable_ui%. После прохождения инфопорции jup_b4_monolith_squad_in_duty удаляется сквад Монолита (=remove_squad(jup_b4_squad)) и спавнится сквад Долга (=create_squad(jup_b4_squad_duty:jup_b4) =create_squad(jup_b4_squad_duty_leader:jup_b4)).
|
|
|
Эти 0 пользователя(ей) поблагодарили sergej5500 за это полезное сообщение: |
|
|
denis2000 | Дата: Ср, 15.05.2013, 21:19 | Сообщение # 124 |
Полевой исследователь
Ученые сталкеры
Сообщений: 2399
| yakuti, Или другой вариант сделать сквад врагами, а после смерти контролера нейтралами к ГГ, при помощи функций из xr_effects.script: Код function set_squad_enemy_to_actor function set_squad_neutral_to_actor
sergej5500, При этом важно чтобы ГГ не видел сквады иначе получиться фигня с исчезновениями и появлениями сталкеров. Другой вариант реализовать все это при помощи жесткой логики для всех НПС сквада, где можно организовать все гораздо лучше.
"Он ловко выхватил из-под себя табуретку и очень метко и сильно бросил ее в докладчика..." (Чугунный всадник)
|
|
|
Эти 0 пользователя(ей) поблагодарили denis2000 за это полезное сообщение: |
|
|
sergej5500 | Дата: Ср, 15.05.2013, 21:55 | Сообщение # 125 |
Полевой Исследователь
Ученые сталкеры
Сообщений: 3793
| denis2000, yakuti, В примере с Монолитом данная логика используется вместе с функциями =disable_ui и =enable_ui. Используя их, экран на время удаления и спавна сквадов можно погасить.
|
|
|
Эти 0 пользователя(ей) поблагодарили sergej5500 за это полезное сообщение: |
|
|
denis2000 | Дата: Ср, 15.05.2013, 22:08 | Сообщение # 126 |
Полевой исследователь
Ученые сталкеры
Сообщений: 2399
| =disable_ui и =enable_ui не гасят экран, а отбирают/возвращают управление персонажем игроку и управляют отображением ХУДа игроку. Затемнение: =run_postprocess(fade_in), где fade_in - имя .ppe файла Чтобы темнота продлилась нужное время =run_postprocess(black:8710:true), где black - имя .ppe файла, 8710 - уникальный идентификатор постпроцесса, true - постпроцесс зациклен Выключить черный экран: =stop_postprocess(8710), выключить постпроцесс с идентификатором 8710.
"Он ловко выхватил из-под себя табуретку и очень метко и сильно бросил ее в докладчика..." (Чугунный всадник)
|
|
|
Эти 0 пользователя(ей) поблагодарили denis2000 за это полезное сообщение: |
|
|
sniper777 | Дата: Пн, 24.06.2013, 15:06 | Сообщение # 127 |
Мастер
Пользователи
Сообщений: 598
| Надеюсь, что пишу по теме. Подскажите пожалуйста как удалить сюжетную линию в з.п. с самого первого квеста? Заранее благодарю!
[cut=тл][/cut]
|
|
|
Эти 0 пользователя(ей) поблагодарили sniper777 за это полезное сообщение: |
|
|
denis2000 | Дата: Пн, 24.06.2013, 15:35 | Сообщение # 128 |
Полевой исследователь
Ученые сталкеры
Сообщений: 2399
| sniper777, Уберите выдачу квестов во всех диалогах и всех рестрикторах.
"Он ловко выхватил из-под себя табуретку и очень метко и сильно бросил ее в докладчика..." (Чугунный всадник)
|
|
|
Эти 0 пользователя(ей) поблагодарили denis2000 за это полезное сообщение: |
|
|
Азазель | Дата: Вс, 30.06.2013, 13:50 | Сообщение # 129 |
Новичок
Пользователи
Сообщений: 77
| Доброго времени суток. Такая проблема. Сделал квест по уроку товарища Геонезиса на последовательный поиск предметов. Квест назначается. Но спавн предметов не происходит. Метка же появляется рядом с железным лесом. Но там нет назначеного предмета. Функции и прочее взять с урока. Заменены лишь инфопоршни и диалог. (структура почти та же, спавн предмета первого, назначение квеста)
|
|
|
Эти 0 пользователя(ей) поблагодарили Азазель за это полезное сообщение: |
|
|
mizabrik | Дата: Вт, 02.07.2013, 16:50 | Сообщение # 130 |
Почетный инженер «Свободы»
Свобода
Сообщений: 360
| Азазель, имя инфопоршней в скрипте поправлял?
Сообщение отредактировал VlAleVas - Вт, 02.07.2013, 16:51 |
|
|
Эти 0 пользователя(ей) поблагодарили mizabrik за это полезное сообщение: |
|
|
sniper777 | Дата: Вт, 16.07.2013, 17:21 | Сообщение # 131 |
Мастер
Пользователи
Сообщений: 598
| Можно пример квеста на тип: поговори с нпс, просто у меня выдача происходит, но при разговоре с нпс его завершение не происходит.
[cut=тл][/cut]
|
|
|
Эти 0 пользователя(ей) поблагодарили sniper777 за это полезное сообщение: |
|
|
sergej5500 | Дата: Вт, 16.07.2013, 18:40 | Сообщение # 132 |
Полевой Исследователь
Ученые сталкеры
Сообщений: 3793
| sniper777, Надо в диалоге с НПС прописать инфопорцию завершения квеста.
|
|
|
Эти 0 пользователя(ей) поблагодарили sergej5500 за это полезное сообщение: |
|
|
sniper777 | Дата: Вт, 16.07.2013, 21:34 | Сообщение # 133 |
Мастер
Пользователи
Сообщений: 598
| [off]sergej5500, дык, я прописал...[/off]
[cut=тл][/cut]
|
|
|
Эти 0 пользователя(ей) поблагодарили sniper777 за это полезное сообщение: |
|
|
sergej5500 | Дата: Вт, 16.07.2013, 21:51 | Сообщение # 134 |
Полевой Исследователь
Ученые сталкеры
Сообщений: 3793
| sniper777, Если квест не работает, значит где-то есть ошибка. Выложите свои правки, скрипты, диалоги, относящиеся к квесту. Тогда, возможно, будет ясно, в чём дело.
|
|
|
Эти 0 пользователя(ей) поблагодарили sergej5500 за это полезное сообщение: |
|
|
SpiderMen | Дата: Сб, 24.08.2013, 19:01 | Сообщение # 135 |
Удаленные
| Скажите пожалуйста, как сделать следующий квест? Меченный берёт задание у Сидоровича – найти и принести модифицированный форт, который находиться у Кузнецова под мостом. После этого Меченный подходит к Кузнецову, и у Кузнецова появляется ветка с диалогом и задание: Меченный - Говорят, что у тебя есть модифицированный пистолет? Кузнецов - Есть, а тебе какое дело. Меченный - Да… я просто люблю уникальные вещи, вот и все. Думал, может обменяешь его на что-нибудь. Кузнецов - Не дорос ты ещё, что бы иметь такой ствол. Хотя я и так им не пользуюсь, могу обменять его на ящик водки. Без ствола все равно не останусь, и если решишь через мост без разрешения пройти, мне и калаша хватит что бы тебе застрелить.
Интересует момент, как сделать что бы именно после взятия задания у Сидоровича, появлялась ветка с диалогом и задание у Кузнецова.
Что такое инфопоршен я не знаю!
|
|
|
Эти 0 пользователя(ей) поблагодарили SpiderMen за это полезное сообщение: |
|
|