Новое на сайте:
Новости:
Файлы:
Статьи:
Топ пользователей:
Обновления сайта:
Группа "Гости" не имеет права просмотра модуля
| Форум S.T.A.L.K.E.R. - Моддинг Разбираем S.T.A.L.K.E.R. Разборочная комната ТЧ (Задаем вопросы по скриптам/конфигам и другим файлам игры) |
| Разборочная комната ТЧ |
|
Дата: Вторник, 17.04.2012, 22:43
Сообщение #1
Вы задаёте интересующий вас вопрос и тот, кто может вам на него ответить, пишет свой ответ. Правила темы: 1. Прежде чем задать вопрос, желательно прочитать все предыдущие страницы темы. Даже если вы не найдете там нужного ответа - я уверен, вы узнаете много нового. Второй вариант - воспользоваться поиском по ключевому слову. 2. Вы можете задавать вопросы, только непосредственно касающиеся создания модификаций и редактирования файлов игры 3. Личные вопросы не допускаются 4. Отвечать на вопросы желательно достаточно развернуто, задевая все аспекты касающиеся конкретного вопроса 5. Отвечать вы можете только в том случае если уверены в правильности ответа, если не знаете - просто не отвечайте. Авторы неправильных, вводящих в заблуждение ответов будут наказываться. 6.Соблюдайте грамотность и правильность построения вопросов и ответов, во избежание их удаления. "Спасибо / пожалуйста / не знаю" и прочие односложные и не несущие смысловой нагрузки сообщения, будут удаляться немедленно, а их авторы - наказываться. Основная цель темы - помочь новичкам-модостроителям, второстепенная - свести на нет тенденцию создания новых тем по каждому интересующему новичков вопросу.
|
|
Дата: Пятница, 12.09.2014, 15:58
Сообщение #1321
Привет сталкеры!!! А не проще сделать так:
Прибежал НПС на свое место(в рестриктор) получил поршень, например proba_dial, а в логику добавить строчку: [walker@g] path_walk = byk_walk3 path_look = byk_look3 on_actor_dist_le = 2| nil {+proba_dial} %=on_talk% meet = meet и все дела.... (Во всяком случае - работает нормально )
|
|
Дата: Пятница, 12.09.2014, 16:56
Сообщение #1322
Привет! Одно разочарование((((, да еще такой момент, этот перс чья логика в спойлере, уже на втором пути, свободно общается с гг, хотя стоит у него но_меет))) Что то не могу никак собрать. Кто нибудь подскажет в чем ошибка?!
Сообщение отредактировал WERTOix - Пятница, 12.09.2014, 19:44 |
|
Дата: Пятница, 12.09.2014, 21:55
Сообщение #1323
Сергей, данное описание ошибки говорит о том, что вызываемая функция или не существует, или просто напросто, не была загружена в окружение. Причина может быть даже не в самой функции, а в том, что находится перед ней (выше, по телу файла). Если, над функцией имеется малейшая ошибка (не приводящая к крашу игры), то всё, что находится под ... не читается, и не загружается в окружение. Соответственно, смотри последние коды, файла xr_logic.script . Ведь то, что у тебя не работает ни мой способ, ни предложенный Андреем-dimak, говорит о том, что ошибка не вэтом, а в чем-то другом... |
|
Дата: Пятница, 12.09.2014, 23:08
Сообщение #1324
WERTOix, если честно, то посоветовал бы лучше мод строить на базе мода АМК.
p.s. Парнишка 15-ти лет, на базе АМК, сделал неплохую глобалку под названием "Закоулки правды". Я 100 % уверен, что на скриптах оригинала он бы не сделал даже половины этого интересного мода. Ошибка в функции по логу. Далее не понятно вообще. Цитата ~~~ object 'Потап' Но имя нпс - Пот Как здорово быть тёртым сталкером! Не бояться каждого шороха, оружия не носить с собой много! |
|
Дата: Пятница, 12.09.2014, 23:20
Сообщение #1325
|
|
Дата: Суббота, 13.09.2014, 00:57
Сообщение #1326
WERTOix, Сергей, попробуй вот что. Поставь своему рестриктору радиус 2!!!! Дело в том, что "законное" расстояние для диалога с НПС - 2, а у тебя рестриктор - 4. и попробуй проверить работоспособность этого момента. Вот здесь и может быть глюк
|
|
Дата: Суббота, 13.09.2014, 01:31
Сообщение #1327
вот подтверждение:
здесь у меня в логике НПС стоит расстояние 2: on_actor_dist_le = 2| nil {+proba_dial} %=on_talk% т.е. оно соответствует конфиговскому. а вот здесь в логике уже изменено на 4: on_actor_dist_le = 4| nil {+proba_dial} %=on_talk% Как видно из видео (мой НПС в обоих случаях кемпер) мой НПС при подходе к нему начинает плевать на прописанную ему логику, окно диалога не открывается... Выход - либо изменять у себя радиус рестриктора, либо лезть в конфиги и править"разрешенное расстояние диалога", что конечно скажется наверное и на других НПС чутка оффтопика: http://www.youtube.com/watch?v=L7UkEfW1_L0&feature=youtu.be
|
|
Дата: Суббота, 13.09.2014, 17:40
Сообщение #1328
|
|
Дата: Суббота, 13.09.2014, 23:30
Сообщение #1329
Ну, видать, алгоритм в движке чё-то "не понимает", это из разряда "незадокументированных неожиданностей". Этот двигун и так уже вымучали со всех сторон за почти десяток лет, сюрпризов он продолжает выдавать как приятных, так и "неожиданных" - по-любасу низкий ему поклон, как и его авторам. Для информации в рамках топика: На собственном опыте построения валкеров с "боль-мень" сложной логикой - на "поле" карт существуют какие-то "чёрные дыры", которые нпс в "свободном плавании" самостоятельно обходят "крюком", хотя там и аи-сетка есть и всё остальное благополучно внешне - ну, внешне можно идти прямиком, ан нет, надо завернуть и обойти. Стоит только принудительно отправить непися в эту "зону" - всё, логика валкера виснет, хотя логика основная остаётся в действии - идти никуда не идёт, анимации не отрабатывает (всё по дефлоту - стоит торчком), тупо замирает на месте "мордой лица на север", хотя и отрабатывает все статичные моменты логики - говорит, обращает внимание, но всё другое "скриптовое" аннулируется. Похоже,что такое же происходит в массе случаев "замерзания" неписей во многих модах. Не знаю, как это "обходить", кроме как эмпирически подбирать приемлимые координаты. Конечно же, я многого не понимаю, но на "это" наткнулся и сразу "предупреждаю" возможные вопросы по этому поводу. Если кто-то сможет пояснить вразумительно данную "аномалию", очень прошу - разъясните. ЗЫ Возможно, что ещё связано и с "графпойнтами" - наверняка, многие замечали, что "стоишь в одной координатной сетке" - шаг в сторону и резкая смена , как г-вертекс, так и левел-вертекс. Мож, из-за этого, что движковый алгоритм расчёта "маршрута непися" не особо любит такие "перемены". Сообщение отредактировал Korpus - Суббота, 13.09.2014, 23:41 |
|
Дата: Воскресенье, 14.09.2014, 19:42
Сообщение #1330
Korpus, есть такое. К примеру в своем моде, Димон бежит по своей траектории и Фармацевт, когда благополучно переходит в ВЛ, незадолго до избушки деда Щукаря есть место, где он постоянно отклоняется от курса в сторону, далее возвращается и топает дальше, но логика обычная. Далее правка логики в моде АМК многое дает для мододелов. К примеру, если взять такой момент: В нлс и в нар.соли Фримен спавнится с внешней стороны бара и бежит в помещение бара, где у него прописан валкер. Если таким образом заспавнить его в оригинельной игре, то на подходе к бару словим вылет (лога не помню), и чтобы этого не произошло нужно Фримену добавить пару дополнительных путей. Одно время, когда начинал модить, в моде "Напарники", логику напарника присваивал Бармену. И только Бармен начинал выбегать из своего валкера, сразу вылетала игра, но только когда прописал несколько дополнительных путей, то все пошло. Бармен стрелял по собакам из всего, что у него было в продаже, даже из РПГ-7.
Как здорово быть тёртым сталкером! Не бояться каждого шороха, оружия не носить с собой много! |
|
Дата: Воскресенье, 14.09.2014, 20:27
Сообщение #1331
Ну, видать, алгоритм в движке чё-то "не понимает", это из разряда "незадокументированных неожиданностей". Это понятно, Саша. Но у меня представлена конкретная ситуация: функция принудительного открытия диалога нормально отрабатывается, если она вызывается на расстоянии 2 и менее метра от НПС. А вот если она вызывается на большем расстоянии от НПС, то и происходит такая вот "бяка"
|
|
Дата: Четверг, 18.09.2014, 20:54
Сообщение #1332
|
|
Дата: Четверг, 18.09.2014, 21:49
Сообщение #1333
Beeblebrox, при спавне через all.spawn такие параметры как количество шейпов, их тип, а также размеры и смещение считываются движком в нет-пакет объекта из секции спавна объекта. При спавне через скрипт движок создаёт объект с нулевым шейпом. По-русски - у вашей аномалии радиус действия равен НУЛЮ. Вот она и не хитует ГГ, так как для хита нужно быть внутри зоны действия, но нельзя быть внутри НУЛЯ. После скриптового спавна необходимо, до вывода объекта в он-лайн, переписать STATE часть его нет-пакета, в которой указать недостающие параметры. Терпение...... И все получится! |
|
Дата: Четверг, 18.09.2014, 21:56
Сообщение #1334
|
|
Дата: Суббота, 20.09.2014, 19:01
Сообщение #1336
Beeblebrox,
Инфа с antreg.ucoz.ru, можно так попробовать, но сам я, только предпочитаю спавнить скриптом - рестрикторы и обычный огонь костра. Цитата хотелось бы уточнить, эти функции куда кидать, в xr_eff...s или Нет, не нужно. Создашь свой скрипт, поместишь все содержимое нетпакета в него. В нем же создаешь функции для спавна аномалий, как показано выше. И функцию отыграешь, как тебе удобней. Скрипт регить нигде не нужно. Как здорово быть тёртым сталкером! Не бояться каждого шороха, оружия не носить с собой много! Сообщение отредактировал dimak - Воскресенье, 21.09.2014, 20:26 |
|
Дата: Воскресенье, 21.09.2014, 20:53
Сообщение #1337
Привет, я извиняюсь, но хотелось бы уточнить, эти функции куда кидать, в xr_eff...s или в свой созданный скрипт файл?! Ес!!! Отлично с первого раза заработало!!! Спасибо за помощь! Добавлено (21.09.2014, 20:53) --------------------------------------------- Всем привет! У меня есть еще один вопрос. Кто может объяснить, почему нпс по разному реагируют на собак? Допустим нпс_1 с простой логикой стоит себе спокойно когда псина метров за 50, а нпс_2 с логикой по сложнее, бежит ее искать))) когда она метров за 100??? Вот обе логики Сообщение отредактировал Beeblebrox - Воскресенье, 21.09.2014, 20:54 |
|
Дата: Понедельник, 22.09.2014, 00:45
Сообщение #1338
Beeblebrox, у тебя же непись переключается из состояний в состояния, так и сделай в секциях разных "состояний" тобой желаемое. А так в одном состоянии "реакция" одна, а в другом "другая". В частности про danger = danger_ignore . В каждом валкере прописывай и т.д. и т.п.
|
|
Дата: Понедельник, 22.09.2014, 08:09
Сообщение #1339
Привет всем!
Подскажите, как в определенный момент закончить игру? Т.е., чтобы после титров игра выходила в меню, как в оригинале ТЧ, при полном прохождении игры. Запускаю функцию game_credits из xr_effects - появляются титры, но при нажатии esc игра продолжается... Перепробовал все функции из этого файла, подходящиее по смыслу (after_credits, game_over и т.п.) - безрезультатно. Beeblebrox, мод делаю на ТЧ-1.0004. Вернее, сделал уже... Остался последний мазок. ------------------------- Всё, разобрался. Косяк был в ui_credits.xml . ...Я давно хотел вас спросить, как художник художника - вы рисовать умеете?.. Сообщение отредактировал Fagot - Понедельник, 22.09.2014, 13:22 |
|
Дата: Понедельник, 22.09.2014, 12:37
Сообщение #1340
|
| |||








)




Всем спасибо что откликнулись! 



