В данной теме вы можете задавать любые вопросы касательно S.T.A.L.K.E.R. моддинга.
Не флудить
Предварительно просматривайте раздел. Ответ на ваш вопрос может быть там.
В своем вопросе указывайте платформу моддинга - Тень Чернобыля, Чистое небо или Зов Припяти.
1. Какая стоит игра, с каким патчем? 2. Какой мод, версия мода? 3. Что правили своими ручками? 4. Конфиг компа. 5. Лог вылета и последние 25 строк (помещать под спойлер).
Структура папок и файлов в корневом каталоге игры:
...\S.T.A.L.K.E.R\gamedata\anims – папка содержит исполнительные файлы эффектов (например от ПНВ).
...\S.T.A.L.K.E.R\gamedata\config – папка содержит основные конфигурационные файлы (т. е. большинство настроек игры)
...\S.T.A.L.K.E.R\gamedata\meshes – содержит модели игровых предметов и персонажей...
...\S.T.A.L.K.E.R\gamedata\scripts – папка со скриптами (рабочими файлами содержащими в себе наборы функций) – основная папка, отвечающая за ответные действия игры и действия производимых игроком в игре.
...\S.T.A.L.K.E.R\gamedata\shaders – папка содержит в себе конфигурационные файлы шейдеров.
...\S.T.A.L.K.E.R\gamedata\sounds – здесь находятся все звуки игры (разложены по своим каталогам и папкам)
...\S.T.A.L.K.E.R\gamedata\spawns – содержит файл спавна – очень важный файл – не трогать без нужды!!!
...\S.T.A.L.K.E.R\gamedata\textures – содержит разложенные по каталогам и папкам текстуры используемые в игре.
Теперь разберем папки в каталоге «config»
...\S.T.A.L.K.E.R\gamedata\config\creatures - содержит массу конфигурационных файлов, в основном отвечающих за взаимодействие Главного героя игры (в дальнейшем ГГ) и прочего окружения в игре и ТТХ самого ГГ.
...\S.T.A.L.K.E.R\gamedata\config\gameplay – содержит конфиг. файлы персонажей игры (НПС) отвечающие за внешний вид, статус, снаряжение. Файлы: character_desc_ххх (где ххх – название локации) и character_desc_general (отвечает за зомбированного персонажа). Также содержит файлы диалогов и профилей НПС.
…\S.T.A.L.K.E.R\gamedata\config\misc – конфиг.файлы торговцев (папки с именами торговцев), артефактов, брони, квестовых предметов, уникальных предметов, файл отвечающий за награды за автозадания, файл эффектов (алкоголизма, ранения, ПНВ и прочих)...
…\S.T.A.L.K.E.R\gamedata\config\mp – среди прочих содержит важный файл mp_ranks – отвечающий за выпадение оружия и патронов из рук ГГ и НПС – без прописывания добавляемого в игру оружия в этот файл при выпадении нового оружия из рук ГГ\НПС будут следовать вылеты.
…\S.T.A.L.K.E.R\gamedata\config\text\rus – содержит файлы описаний всего и вся находящегося в игре (брони, артефактов, оружия, предметов и прочего).
…\S.T.A.L.K.E.R\gamedata\config\weapons – содержит конфиг.файлы оружия и боеприпасов используемых в игре.
…\S.T.A.L.K.E.R\gamedata\config\weathers – содержит конфиг.файлы настройки погоды на локациях.
Теперь немного подробнее о файлах.
...\S.T.A.L.K.E.R\gamedata\config\misc:
Папка shop_ххх (ххх – имя торговца) – содержит конфиг.файлы ассортимента торговца.
outfits – содержит секции конфигов костюмов.
artefacts - содержит секции конфигов артефактов.
items - содержит секции конфигов предметов.
monster_items - содержит секции конфигов частей монстров
postprocess - содержит секции конфигов пост. процессов (например: ПНВ).
quest_items - содержит секции конфигов квестовых предметов.
task_manager - содержит секции наград за автоквесты.
unique_items - содержит секции конфигов уникального оружия и костюмов.
У кого есть желание, создать FAQ по основным вопросам моддинга - обращаемся в ЛС.
В принципе разницы нет. Я нпс ставил в подвале в деревне новичков с этим параметром, на АТП с э\тим параметром - никто никуда не уходил.
Добавлено (08.01.2013, 13:00) --------------------------------------------- А в ЗП - НПС в прачечной (своего я поставил) - стоял на месте и хоть бы хны.
GunnerShadow, "я однажды заспавнил НПС, вообще не прописывал ему логику, даже профиль для него не делал - а он стоял, никуда не уходил, выполнял разного рода действия, ну там, например, когда я подходил - он рукой махал, когда поговорю с ним - он выполнял анимацию рукопожатия..." Продолжать!? Согласись - бред! На словах я тебе могу целую поэму расписать - приведи пожалуйста доказательства того, что данный параметр считывается схемами и работает. В противном случае - это пустой трёп.
Ты мне коды покажи. Причём не того, что ты понаписал, а того, что параметр считывается игрой и работает. Или ты мне видео или скрины кодов хочешь показать?
Сообщение отредактировал ColR_iT - Вторник, 08.01.2013, 13:11
ColR_iT, Я не знаю, какой скрипт в игре отвечает за файлы конфигурации логики, но когда я ставил в ремарке строчку но_муве - НПС не двигался. Не всегда, правда, поскольку если он попадал в кэмпы, рестрикторы некоторые, смарты - то он игнорировал у меня всю логику и выполнял то, что ему говорила сама логика кэмпа, смарта и прочего. Без этой строчки НПС шатался по околицах всегда. По логике можно ведь решить, читается этот параметр или нет?
GunnerShadow, воооот... С этого и надо было начинать. Ты не знаешь механики и утверждаешь то, что сам себе придумал. Убери no_move из правильно составленной схемы remark и НПС и так никуда не пойдёт. Причина одна - для данной схемы не предусмотрены точки пути, как таковые, и НПС привязывается к точке, на которой он перешёл под управление данной схемы. На этой точке он может выполнять указанную анимацию, говорить какую-то фразу (проигрывать любой звук) - для этого параметры как раз есть. Их вообще-то не очень то и много:
snd - звуковая тема из файла sound_theme.script, которая будет проиграна при переходе в данную схему; anim - анимация, из раздела "стоячее состояние", которая будет отыграна при переходе в данную схему; snd_anim_sync - синхронизировать ли пару звук - анимация? По умолчанию false; target - возможны следующие значения:
story_id - смотреть на персонажа с указанным story_id;
actor - смотреть на игрока;
nil - позиция вычисляется автоматически, как правило это то место, куда смотрел до этого;
<имя работы>,<имя гулага> - смотреть на сталкера, который находится на указанной работе, в указанном гулаге, если не указать имя гулага, то будет взят гулаг нашего НПС, т.е. тот, кто в данный момент находится под этой схемой remark.
<path_name>,<point_number> - смотреть в указанную вершину point_number указанного патрульного пути path_name. anim_reset - не очень понял, на что же конкретно влияет данный параметр, но у меня было замечено, при значении false (true по умолчанию), некоторые анимации сразу переходили в конечное состояние, не проигрывая анимацию полностью. tips - это не текстовая подсказка при наведении как можно подумать из названия параметра - это звуковая тема из файла news_manager.script из таблицы news (она находится в самом начале файла). Данный звуковой сигнал прозвучит по окончанию проигрывания установленной анимации. tips_sender - вообще не понять что за параметр. Передаётся в функцию send_tip_nosound в файле news_manager.script, в качестве третьего параметра, а это в свою очередь задержка на воспроизведение, то беж число, а параметр читается как строка, но если и это не такая уж и беда, то вот зачем он (параметр) обнуляется внутри самой функции send_tip_nosound, мне не ясно. Одним словом параметр не на что не влияет.
Игра читает в схемах только те параметры, которые ей предписаны, т.е. те, которые находятся в "управляющих" файлах отвечающие за ту или иную схему.
Теперь на счёт механики работы логики... В файле xr_motivator.script, который отвечает за ВСЕХ НПС, в функции net_spawn, которая отрабатывает при выходе НПС в онлайн, вызывается функция setup_gulag_and_logic_on_spawn из файла xr_gulag.script. Эта функция (setup_gulag_and_logic_on_spawn) устанавливает для НПС логику из его custom_data, либо его собственную, либо из гулага, если он находится под каким-то смартом. В любом случае в дальнейшем происходит вызов функции activate_by_section из файла xr_logic.script, назначение функции понятно даже из названия - она активирует схему. Если активация происходит впервые, то название схемы берётся из поля active секции logic, если нет, то из storage ("хранилища") НПС. Самой интересной строкой в функции activate_by_section является вот эта:
Код
_G[filename].set_scheme(npc, ini, scheme, section, db.storage[npc_id]["gulag_name"])
filename - это имя файла из которого нужно считывать параметры, имя определяется исходя из названия схемы считанное ранее, а set_scheme - это функция, в которой эти параметры инициализируются. Таким образом, игра будет определять ТОЛЬКО те параметры, которые прописаны в данной функции у каждой отдельной схемы, естественно для каждой схемы игра будет определять только её параметры.
А теперь попробуй найти параметр no_move хотя бы в одном файле схем. Да, ты найдёшь его... в файле xr_zoneguard.script, но только учти, что этот файл - балласт и в игре не используется. Это что касается ТЧ. В ЗП ты вообще нигде не найдёшь упоминания об этом.
Итого. Параметр в релизах всех частей НЕ РАБОТАЕТ. То, что ты якобы "видишь" работу данного параметра - это всего лишь особенности работы конкретно схемы remark (см. выше) и не более того.
P.S. в последнем посте Grey_Lord вылет происходит из второй "версии" логики, т.к. не указаны точки пути в файле way_локация.ltx, о чём он сам и сказал. А ошибка значения параметра no_move, в рабочей версии, лишний раз доказывает, что параметр - не что иное, как мусор.
Grey_Lord, разумеется нужно указывать точки для путей walker_stay_at_position_walk и walker_stay_at_position_look.
Ну ведь ты как-то указывал НПС логику? Через custom_data или может быть скриптами? GunnerShadow, да, но только до тех пор, пока находится под схемой remark, если его "спугнуть" то он отбежит, поскольку переключится на движковую схему боёвки, и назад уже не вернётся, останется там, где у него опять включится remark.
Сообщение отредактировал ColR_iT - Вторник, 08.01.2013, 14:40
GunnerShadow, не маяться ерундой и использовать для этого схемы по назначению. Возьми walker, пропиши ему пути для path_walk и path_look состоящие из одной точки каждый, поставь флаг синхронизации и будет счастье.