В данной теме вы можете задавать любые вопросы касательно 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 по основным вопросам моддинга - обращаемся в ЛС.
Как осуществить спавн предмета через определенный промежуток времени
saxar, в ЗП через каждые 12 часов происходит подспавн предметов в персональные ящики ГГ, при получении им ачивок . Вся реализация подспавна есть в файле bind_stalker.script Зачем спрашивать то, что находится у Вас "под носом"? Может просто нужно немного самому приложить усилие?
Иногда появляется, когда в каталоге с текстурами появляется скрытый системный файл (Thumbs.db). Данный файл - кеш эскизов. Удали его и вылет исчезнет. Если не поможет - тогда нужно "снести" игру, почистить реестр и заново все установить.
Здраствуйте! Очень интересует подобный вопрос: возможно ли как-то сделать определенный предмет в инвентаре невидимым? Не через банальную уборку альфа-канала его иконки в ui_icon_equipment а действительно - что но есть - но его нельзя обнаружить - как оригинальный детектор аномалий, счётчик Гейгера и прочие объекты подобного рода. Зависит ли это от класса - O_INVBOX или от script_binding = bind_physic_object.init?
Сообщение отредактировал GunnerShadow - Понедельник, 02.12.2013, 17:10
wind, поставь перед нужным диалогом precondition, в котором скрипт на проверку нужных предметов
Добавлено (02.12.2013, 17:24) --------------------------------------------- GunnerShadow, можно попробовать в конфиге предмета поставить размеры иконки 0
GunnerShadow, да, есть какой-то скрипт, то ли от erlik, то ли от кого.. не помню. Скрипт его юзается в скриптах для рюкзаков, слотов и т.п. и сей скрипт спавнит невидмые предметы, чтобы вышеуказанные моды работали корректно.
Всем привет, кто знает - в компиляторах ЗП стадия Build UV mapping что означает? Что компилятор на этой стадии делает, с чем работает. Кто что знает, расскажите плиз, очень важно
Сообщение отредактировал Винторез94 - Понедельник, 02.12.2013, 19:54
Всем привет, кто знает - в компиляторах ЗП стадия Build UV mapping что означает? Что компилятор на этой стадии делает, с чем работает. Кто что знает, расскажите плиз, очень важно
Точно сказать тебе не смогу, но похоже на этой стадии создается (а вернее конвертируется под формат игры) развертка текстур разных объектов локации. Возможно это связано с лодовой текстурой, где она применена. Возможно, с другими - с самими данными для моделей, что зашиты в геометрии, о наложении текстур на свои места - дабы они сидели на своих местах как в СДК или 3Д-редакторе. Причин судить тому у меня те, что UV mapping - название серии модификаторов в 3д-максе, связанные с работой над текстурами. Хотя что такое аббревиатура UV - сказать не могу.
GunnerShadow, да, есть какой-то скрипт, то ли от erlik, то ли от кого.. не помню. Скрипт его юзается в скриптах для рюкзаков, слотов и т.п. и сей скрипт спавнит невидмые предметы, чтобы вышеуказанные моды работали корректно.
А можешь припомнить сам скрипт? Или дай ссылку на сам мод.
Пытаюсь совместить 2 мода: ИИ твики от alundaio и" По одежке встречают"(то эсть нпс будут реагировать на вас в зависимости от вашего костюма).
Значит 2 вылета(пока)
Expression : !m_error_code Function : raii_guard::~raii_guard File : D:\prog_repository\sources\trunk\xrServerEntities\script_storage.cpp Line : 748 Description : .... - call of pripyat\gamedata\scripts\xr_logic.script:1308: attempt to index local 'obj' (a nil value)
Expression : !m_error_code Function : raii_guard::~raii_guard File : D:\prog_repository\sources\trunk\xrServerEntities\script_storage.cpp Line : 748 Description : ...ripyat\gamedata\scripts\smart_terrain_control.script:65: attempt to index field 'actor' (a nil value)
Вот собственно код второго мода.
local idOutfit = nil
function outfit_npc() local oActor = db.actor local oOutfit = oActor and oActor:get_current_outfit() local sCommunity = "actor" if oOutfit then if oOutfit:id() == idOutfit then return else idOutfit = oOutfit:id() --/ таблица соответствий группировок костюмам (секциям) local tCommunityByOutfit = { ["novice_outfit"] = "stalker", ["specops_outfit"] = "army", ["military_outfit"] = "army", ["stalker_outfit"] = "stalker", ["scientific_outfit"] = "ecolog", ["exo_outfit"] = "stalker", ["svoboda_light_outfit"] = "freedom", ["svoboda_heavy_outfit"] = "freedom", ["cs_heavy_outfit"] = "ecolog", ["dolg_outfit"] = "dolg", ["dolg_heavy_outfit"] = "dolg", ["reduce_dolg_heavy_outfit"] = "dolg", ["reduce_dolg_outfit"] = "dolg", ["reduce_cs_heavy_outfit"] = "ecolog", ["reduce_svoboda_heavy_outfit"] = "freedom", ["reduce_svoboda_light_outfit"] = "freedom", ["reduce_exo_outfit"] = "ecolog", ["reduce_scientific_outfit"] = "ecolog", ["reduce_stalker_outfit"] = "stalker", ["reduce_military_outfit"] = "army", ["reduce_specops_outfit"] = "army", ["reduce_novice_outfit"] = "bandit" } sCommunity = tCommunityByOutfit[oOutfit:section()] or sCommunity end elseif idOutfit then idOutfit = nil else return end if sCommunity ~= oActor:character_community() then oActor:set_character_community(sCommunity, 0, 0) end end
а вот функция в bind_stalker
if actor_outfit then actor_outfit.outfit_npc()
Собственно со вторым вылетом, проблема очевидна в db.script
actor = nil
на что надо изменить чтобы переменная "актор" не выдавала нил?
а вот со вторым мне непонятно. надеялся поможете.
вот строка кода
local npc_id = obj:id()
в функции
function pstor_retrieve(obj, varname, defval) local npc_id = obj:id()
if db.storage[npc_id].pstor ~= nil then local val = db.storage[npc_id].pstor[varname] if val ~= nil then return val end end if defval ~= nil then return defval end --abort("xr_logic: pstor_retrieve: variable '%s' does not exist", varname) return nil end
Сообщение отредактировал mwesten1 - Вторник, 03.12.2013, 00:49