В данной теме вы можете задавать любые вопросы касательно 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 по основным вопросам моддинга - обращаемся в ЛС.
makdm, Вывод был основан на том, что если дать "телохранителю" оружие с патронами он всё же делал с него пару очередей а потом прятал. Если на патронах экономить то прятал сразу. Подчёркиваю это было только на "телохранителях" т.к. хотелось увеличить их эффективность. На других NPC попросту не обращал внимания по данному вопросу. Версия Sigerous на которой это замечено 1.5. Хотя возможно у телохранителя как раз и был подходящий ранг, могло совпасть но тем не менее подозрение в нехватке патронов есть по выше указанной причине.
Сообщение отредактировал ZLURov - Четверг, 15.10.2015, 12:33
Есть такой вопрос. Как можно правильно из одного мода, перенести модель оружия в другой мод, но не как новый ствол, а как замена аналогичному? Т.е просто заменить модель, ну и естественно чтобы работали все обвесы для перенесенного ствола.
Сложно ли это, или нет? Платформа ЗП.
Сообщение отредактировал Warleus - Четверг, 15.10.2015, 15:03
Есть такой вопрос: Никто хорошенько не ковырял файл в ЗП xr_reach_task.script? Обнаружил маленькую оплошность разрабов в функции add_reach_task_action, так вот там есть строчка
Warleus, Если знаешь что делаешь то это не сложно. А если понятия не имеешь, что нужно делать и руки из интересных мест то этот простой перенос станет большой головной болью и не только для тебя. castle, Ничего удивительного в скриптах разрабов встречаются и более крупные косяки нежели отсутствие определения переменной которую в итоге не используют.
ЦитатаGraff46 ()
сделай переход на нормальную секцию, а с нее уже на нил.
Цитата_Val_ ()
То бишь в принципе у товарища всё верно написано и ни к чему переходить к другой секции, чтобы уйти в нил.
За одним малюсеньким минусом, секция которая даже ничего не делает обрабатывается биндером в отличии от nil. А проверку которая и так выполняется нет необходимости писать.
Цитата_Val_ ()
Что за инфо и при каком условии выдается рестром? Учитывая что туда можно войти, а можно и выйти из него?
Зачем такой знающий человек задает такой вопрос? Изучите соответствующие скрипты и убедитесь, строка on_info в принципе не обязательно должна содержать какие то условия и указание какой то новой секции для перехода. А обработка строк on_info происходит при каждом проходе биндера, вне зависимости от выданных или не выданных инфопорций.
Сообщение отредактировал denis2000 - Пятница, 16.10.2015, 06:36
секция которая даже ничего не делает обрабатывается биндером в отличии от nil.
В логике у товарища черным по белому.
Код
[logic] active = sr_idle@one
[sr_idle@one] on_actor_inside = nil %+first_quest_start% END
Секция уходит в нил сразу при появлении ГГ в рестре. 1. Это как-то расходится с твоим утверждением? 2. Я призывал делать по другому? Пруф на базу. Далее
Цитата
А обработка строк on_info происходит при каждом проходе биндера,
Да кто же сомневается... [death] on_info = Срабатывает при смерти персонажа.
on_info = {+mil_dolg_attack -mil_dolg_mission_complete} walker1 Срабатывает само понятно когда.
Повторяю вопрос - как обработается: [sr_idle@] on_info = если условия вообще не указаны..? Если рестр сработает в любом случае, находится внутри ГГ или нет - то нафига вообще нужен рестр? Если вообще-то рестры нужны именно для проверки нахождения в них ГГ и т.д.?
Сообщение отредактировал _Val_ - Четверг, 15.10.2015, 20:44
Тем более на Янтаре ветераны с Винтореза у меня стреляют
Не там копаете. Копать нужно тег <rank>очки_ранга</rank> в <specific_character id= вашего персонажа. Посмотрите как меняется ранг у персонажей в файле character_desc_general.xml от новичка до мастера.
Вот переделал янтарь для ЗП. (http://firepic.org/images/2015-10/15/cam5rkxi7vu5.png) Для актора в npc profile поставил actor СДК ругаеться только на HOM, билдинг проходит нормально, компиляция тоже. Кидаю я левел в геймдату, конфиги также. yantar.spawn делаю в all.spawn и кидаю на место в папку. Но актор всеравно на затоне спавниться. чо писал в конфигах: game_graphs.ltx
142 = "yantar"
game_levels.ltx
level183
[level183] name = yantar caption = "yantar" offset = 12000.0, 1000.0, 10000.0 weathers = [default] id = 183
_Val_, Прошу прощения, по переходу на другую секцию, это не вам.
Цитата_Val_ ()
Это как-то расходится с твоим утверждением?
Я предлагал вместо on_actor_inside и спавна ГГ прямо в рестрикторе, писать просто on_info.
Цитата_Val_ ()
Я призывал делать по другому?
Да вы предлагали оставить ненужную проверку попадания в рестриктор, когда ГГ уже там изначально. Тем более что условие on_actor_inside обрабатывается в той же функции, что и on_info, но чуть дальше и требует достаточно сложных (с точки зрения CPU) вычислений попадания координат в зону с определенной конфигурацией.
Цитата_Val_ ()
on_info = {+mil_dolg_attack -mil_dolg_mission_complete} walker1 Срабатывает само понятно когда.
Так когда эта проверка срабатвает? Когда поймете каков ответ на этот вопрос, бессмысленным станет следуюший вопрос:
Цитата_Val_ ()
Повторяю вопрос - как обработается: [sr_idle@] on_info = nil %=give_task(first_quest)% если условия вообще не указаны..?
Вот ответ на всякий случай:
В первый же проход биндера будет проверена строка on_info, поскольку условия отсутствуют сработает строка:
Код
infop_conditions_met = true -- изначально считаем, что все условия переключения удовлетворены
и произойдет "переключение" секции с выполнением %....%. А поскольку следующая секция равна "nil", то объекту будет приписано: scheme="nil", section="nil". В результате объект хоть и будет обрабатываться биндером, но в самом минимуме проверок (По хорошему такой объект уже стоит просто удалить за ненадобностью).
Добавлено (16.10.2015, 08:05) --------------------------------------------- _Val_, Кстати вот вам интересный вопрос: какому объекту выдается инфопорция и как можно отследить ее выдачу? Как вызывается секция on_death и что в ней может быть прописано?
Сообщение отредактировал denis2000 - Пятница, 16.10.2015, 08:09
У меня вылетает при окончании моего диалога с таким логом
Expression : !m_error_code Function : raii_guard::~raii_guard File : D:\prog_repository\sources\trunk\xrServerEntities\script_storage.cpp Line : 748 Description : f:\stalker_cop\gamedata\scripts\news_manager.script:209: attempt to concatenate local 'news_text' (a nil value)
Скорее всего проблема в инфопоршне (если его убрать, то все норм). Только не пойму, что не так. news_manager.script вообще не трогал. Вот поршень и диалог