MegaStalker 66 Опубликовано 12 Августа 2021 Поделиться Опубликовано 12 Августа 2021 (изменено) Люди, спасайте. Решил я перепройти ЧН, Вики меня просветила про часть особого оружия, которое выглядит интересным, но в игре не использутся(а не как раньше - только увеличили магазин, увеличили скорострельность и т.д.). LR-301 "Левша", SPAS-12 АВТ, Винторез-ВАЛ(оружие-гибрид), ну может еще что-то. Поставил мод OGSM 1.8.2. Захотел восстановить это оружие, но для начала посмотреть на его конфиги. Не могу конфиги найти! В папке weapons конфигов уникального оружия нет, попробовал гуглить - файла unique_items.ltx в папке misc тоже нет, о котором гугл упоминает. Как теперь найти или восстановить собственно конфиги оружия? Думаю, что прописать его персонажам или в качестве награды за квесты - достаточно просто, в первую очередь интересуют конфиги. Изменено 12 Августа 2021 пользователем MegaStalker Все зовут меня Пришедший из Ниоткуда...Почему?Потому что я пришел из ниоткуда и иду в никуда... Ссылка на комментарий
warwer 900 Опубликовано 12 Августа 2021 Поделиться Опубликовано 12 Августа 2021 @MegaStalker не слышал про то, что ты написал... Есть в конфигах такого плана записи: ; Уникальные ;----------------------------------------------------------------------------- [wpn_ak74_minigame]:wpn_ak74 ;new weapon for minigame "Shooting" это внизу в конфе АК прописано. В других конфах тоже есть по мелочи дописки, но это не то пальто думаю. Винторез-ВАЛ - что это? Должна быть модель специфичная... не встречал. HARDWARM☢D Ссылка на комментарий
MegaStalker 66 Опубликовано 12 Августа 2021 Поделиться Опубликовано 12 Августа 2021 1 час назад, warwer сказал: @MegaStalker не слышал про то, что ты написал... Есть в конфигах такого плана записи: ; Уникальные ;----------------------------------------------------------------------------- [wpn_ak74_minigame]:wpn_ak74 ;new weapon for minigame "Shooting" это внизу в конфе АК прописано. В других конфах тоже есть по мелочи дописки, но это не то пальто думаю. Винторез-ВАЛ - что это? Должна быть модель специфичная... не встречал. Это вырезанный контент, насколько я понял. Кину ниже ссылки на пару статей. https://stalker.fandom.com/ru/wiki/ТПс_«Левша» https://stalker.fandom.com/ru/wiki/Винтарь-ЛАВИНА https://stalker.fandom.com/ru/wiki/СВ-Ам Все зовут меня Пришедший из Ниоткуда...Почему?Потому что я пришел из ниоткуда и иду в никуда... Ссылка на комментарий
Lieutenant Novikov 15 Опубликовано 17 Августа 2021 Поделиться Опубликовано 17 Августа 2021 Здравствуйте. В общем дело такое: в ЧН почему-то отключёны звуки раненых НПС, то есть все они лежат ранеными молча. Я решил это исправить, для этого отредактировать файл xr.wounded.script, а конкретно эту часть: Скрытый текст wound_manager_state = xr_logic.pstor_retrieve(self.object, "wounded_state") wound_manager_sound = xr_logic.pstor_retrieve(self.object, "wounded_sound") local synsound = nil if wound_manager_state == "true" then local h = hit() h.power = 0 h.direction = self.object:direction() h.bone = "bip01_spine" h.draftsman = db.actor h.impulse = 0 h.type = hit.wound self.object:hit(h) else -- является ли текущий звук синхронным для текущего стейта for k,v in pairs(self.a.syndata) do if v.state == wound_manager_state and v.sound == wound_manager_sound then synsound = wound_manager_sound end end --' жрание аптечек и прочей срани. --' Использовать можно только если нам можно сейчас есть аптечку. if self.a.use_medkit == true then wound_manager:eat_medkit() end local emerg = nil if wound_manager_state == "psy_shoot" then emerg = {animation_nout = true} end state_mgr.set_state(self.object, wound_manager_state, nil, nil, {look_object = victim}, emerg, synsound) end if synsound == nil then -- нужно отыграть фоновый if self.sound ~= wound_manager_sound then self.sound = wound_manager_sound if self.sound == "nil" then -- xr_sound.set_sound(self.object, nil) else -- xr_sound.set_sound(self.object, wound_manager_sound) end end else -- нужно зарубить фоновый if self.sound ~= nil then self.sound = "nil" -- xr_sound.set_sound(self.object, nil) end end end Сначала я попытался просто раскомментировать строки (чтобы стало как SoC), затем поставил local перед wound_manager_sound, затем заменил xr_sound.set_sound(self.object на xr_sound.set_sound_play(self.object:id()(), но постоянно сталкиваюсь с следующей ошибкой Скрытый текст FATAL ERROR [error]Expression : fatal error [error]Function : CScriptEngine::lua_error [error]File : E:\priquel\sources\engine\xrServerEntities\script_engine.cpp [error]Line : 180 [error]Description : <no expression> [error]Arguments : LUA error: ....t.a.l.k.e.r. - clear sky\gamedata\scripts\_g.script:975: bad argument #2 to 'format' (string expected, got nil) При том в логе пишется перед вылетом: ! [LUA][ERROR] ERROR: INCORRECT LOAD [_sound_actor_save].[0][138229]. Помогите кто нибудь, вообще не могу понять что тут за проблема, даже приблизительно. Ссылка на комментарий
MegaStalker 66 Опубликовано 18 Августа 2021 Поделиться Опубликовано 18 Августа 2021 15 часов назад, Lieutenant Novikov сказал: Здравствуйте. В общем дело такое: в ЧН почему-то отключёны звуки раненых НПС, то есть все они лежат ранеными молча. Я решил это исправить, для этого отредактировать файл xr.wounded.script, а конкретно эту часть: xr.wounded.script (Скрыть) wound_manager_state = xr_logic.pstor_retrieve(self.object, "wounded_state") wound_manager_sound = xr_logic.pstor_retrieve(self.object, "wounded_sound") local synsound = nil if wound_manager_state == "true" then local h = hit() h.power = 0 h.direction = self.object:direction() h.bone = "bip01_spine" h.draftsman = db.actor h.impulse = 0 h.type = hit.wound self.object:hit(h) else -- является ли текущий звук синхронным для текущего стейта for k,v in pairs(self.a.syndata) do if v.state == wound_manager_state and v.sound == wound_manager_sound then synsound = wound_manager_sound end end --' жрание аптечек и прочей срани. --' Использовать можно только если нам можно сейчас есть аптечку. if self.a.use_medkit == true then wound_manager:eat_medkit() end local emerg = nil if wound_manager_state == "psy_shoot" then emerg = {animation_nout = true} end state_mgr.set_state(self.object, wound_manager_state, nil, nil, {look_object = victim}, emerg, synsound) end if synsound == nil then -- нужно отыграть фоновый if self.sound ~= wound_manager_sound then self.sound = wound_manager_sound if self.sound == "nil" then -- xr_sound.set_sound(self.object, nil) else -- xr_sound.set_sound(self.object, wound_manager_sound) end end else -- нужно зарубить фоновый if self.sound ~= nil then self.sound = "nil" -- xr_sound.set_sound(self.object, nil) end end end Сначала я попытался просто раскомментировать строки (чтобы стало как SoC), затем поставил local перед wound_manager_sound, затем заменил xr_sound.set_sound(self.object на xr_sound.set_sound_play(self.object:id()(), но постоянно сталкиваюсь с следующей ошибкой Error (Скрыть) FATAL ERROR [error]Expression : fatal error [error]Function : CScriptEngine::lua_error [error]File : E:\priquel\sources\engine\xrServerEntities\script_engine.cpp [error]Line : 180 [error]Description : <no expression> [error]Arguments : LUA error: ....t.a.l.k.e.r. - clear sky\gamedata\scripts\_g.script:975: bad argument #2 to 'format' (string expected, got nil) При том в логе пишется перед вылетом: ! [LUA][ERROR] ERROR: INCORRECT LOAD [_sound_actor_save].[0][138229]. Помогите кто нибудь, вообще не могу понять что тут за проблема, даже приблизительно. Ну вот тебе же пишут: _g.script, что-то не так с форматом. Попробуй сравнить фрагменты из SoC и CS, вдруг там найдется решение. И кстати, если заработает - скинешь мне? Хочу посмотреть, опробовать. Все зовут меня Пришедший из Ниоткуда...Почему?Потому что я пришел из ниоткуда и иду в никуда... Ссылка на комментарий
Lieutenant Novikov 15 Опубликовано 18 Августа 2021 Поделиться Опубликовано 18 Августа 2021 45 минут назад, MegaStalker сказал: Ну вот тебе же пишут: _g.script, что-то не так с форматом. Попробуй сравнить фрагменты из SoC и CS, вдруг там найдется решение. И кстати, если заработает - скинешь мне? Хочу посмотреть, опробовать. Да уж сравнивал, и SoC файлом, и c COP файлом, даже копировал эти фрагменты, не помогает. Последняя надежда, на то что проблема в script_sound, там какое-то странное несовпадение с аналогичным в COP, но пока понять не могу почему. А лог на _g.script — самый бесполезный, ибо он вообще информации не даёт, как я понял. Этот лог у меня вообще выскакивал даже когда я просто в профиле бандита, в строчке:<snd_config>characters_voice\human_01\bandit\</snd_config> пробел лишний поставил. Вот и вся информационная "польза" этого лога, который ссылался на _g.script, вообще не имевшего к ошибке отношения. Тут единственная зацепка это:! [LUA][ERROR] ERROR: INCORRECT LOAD [_sound_actor_save].[0][138229], но что это значит не могу понять. Я скину конечно, если смогу от ошибки избавиться Ссылка на комментарий
MegaStalker 66 Опубликовано 18 Августа 2021 Поделиться Опубликовано 18 Августа 2021 1 час назад, Lieutenant Novikov сказал: Да уж сравнивал, и SoC файлом, и c COP файлом, даже копировал эти фрагменты, не помогает. Последняя надежда, на то что проблема в script_sound, там какое-то странное несовпадение с аналогичным в COP, но пока понять не могу почему. А лог на _g.script — самый бесполезный, ибо он вообще информации не даёт, как я понял. Этот лог у меня вообще выскакивал даже когда я просто в профиле бандита, в строчке:<snd_config>characters_voice\human_01\bandit\</snd_config> пробел лишний поставил. Вот и вся информационная "польза" этого лога, который ссылался на _g.script, вообще не имевшего к ошибке отношения. Тут единственная зацепка это:! [LUA][ERROR] ERROR: INCORRECT LOAD [_sound_actor_save].[0][138229], но что это значит не могу понять. Я скину конечно, если смогу от ошибки избавиться Трудно сказать, т.к. я сам не очень разбираюсь в этом. Могу лишь подозревать, что какая-то беда со звуком - как-то он неправильно загружается(incorrect load). Добавлено warwer, 18 Августа 2021 Зачем цитировать весь предыдущий пост?! Нет смысла и запрещено правилами форума. Все зовут меня Пришедший из Ниоткуда...Почему?Потому что я пришел из ниоткуда и иду в никуда... Ссылка на комментарий
h0N0r 324 Опубликовано 18 Августа 2021 Поделиться Опубликовано 18 Августа 2021 Точнее не самим звуком, добавляя / удаляя секции звуков в script_sound_карта.ltx нужна новая игра. Так сделано в xr_sound.script (actor_save / actor_load), что список звук.тем сохраняется в сейв и потом читается (а нужно динамически). Поэтому, после патчей для модов чн/зп с такими правками, всегда нужна новая игра. 1 https://sites.google.com/view/xray-sdk-0-4-smg Ссылка на комментарий
Lieutenant Novikov 15 Опубликовано 18 Августа 2021 Поделиться Опубликовано 18 Августа 2021 h0N0r Спасибо большое, это помогло! Так вообщем выкладываю результат: В файле xr_wounded.script Скрытый текст wound_manager_state = xr_logic.pstor_retrieve(self.object, "wounded_state") wound_manager_sound = xr_logic.pstor_retrieve(self.object, "wounded_sound") local synsound = nil if wound_manager_state == "true" then local h = hit() h.power = 0 h.direction = self.object:direction() h.bone = "bip01_spine" h.draftsman = db.actor h.impulse = 0 h.type = hit.wound self.object:hit(h) else -- является ли текущий звук синхронным для текущего стейта for k,v in pairs(self.a.syndata) do if v.state == wound_manager_state and v.sound == wound_manager_sound then synsound = wound_manager_sound end end --' жрание аптечек и прочей срани. --' Использовать можно только если нам можно сейчас есть аптечку. if self.a.use_medkit == true then wound_manager:eat_medkit() end local emerg = nil if wound_manager_state == "psy_shoot" then emerg = {animation_nout = true} end state_mgr.set_state(self.object, wound_manager_state, nil, nil, {look_object = victim}, emerg, synsound) end if synsound == nil then -- нужно отыграть фоновый if self.sound ~= wound_manager_sound then self.sound = wound_manager_sound if self.sound == "nil" then -- xr_sound.set_sound(self.object, nil) else -- xr_sound.set_sound(self.object, wound_manager_sound) end end else -- нужно зарубить фоновый if self.sound ~= nil then self.sound = "nil" -- xr_sound.set_sound(self.object, nil) end end end Скрытый текст wound_manager_state = xr_logic.pstor_retrieve(self.object, "wounded_state") wound_manager_sound = xr_logic.pstor_retrieve(self.object, "wounded_sound") if wound_manager_state == "true" then local h = hit() h.power = 0 h.direction = self.object:direction() h.bone = "bip01_spine" h.draftsman = db.actor h.impulse = 0 h.type = hit.wound self.object:hit(h) else --' жрание аптечек и прочей срани. --' Использовать можно только если нам можно сейчас есть аптечку. if self.a.use_medkit == true then wound_manager:eat_medkit() end if tostring(wound_manager_state) == "nil" then print_table(self.a.hp_state) print_table(self.a.hp_state_see) abort("wrong wounded animation %s", self.object:name()) end state_mgr.set_state(self.object, wound_manager_state, nil, nil, {look_object = victim}, nil) end -- нужно отыграть фоновый if wound_manager_sound == "nil" then xr_sound.set_sound_play(self.object:id(), nil) else xr_sound.set_sound_play(self.object:id(), wound_manager_sound) end end дальше в файле script_sound.ltx добавляем в начале в список help_heavy далее [help_heavy] type = npc npc_prefix = true avail_communities = (группировки которые будут озвучиваться ) path = help\wounded_heavy\help_ shuffle = rnd idle = 4,8,100 Начинайте новую игру Ещё я восстановил звуки спящим НПС (может кому понадобиться): Скрытый текст В файле xr_sleeper.script заменяем строчки -- xr_sound.set_sound(self.object, "sleep") -- xr_sound.set_sound(self.object, nil) на строчки: xr_sound.set_sound_play(self.object:id(), "sleep") xr_sound.set_sound_play(self.object:id(), nil) дальше в файле script_sound.ltx добавляем в начале в список sleep далее [sleep] type = npc npc_prefix = true avail_communities = (группировки которые будут озвучиваться ) path = states\sleep\sleep_ shuffle = rnd idle = 7,13,100 2 Ссылка на комментарий
MegaStalker 66 Опубликовано 19 Августа 2021 Поделиться Опубликовано 19 Августа 2021 (изменено) Нужна помощь. Взялся восстанавливать уникальное оружие, которое из ЧН отменили - информация о нем на Вики есть. За базу взял OGSM. Вот взял я один ствол, Большой Бэн. Описание - есть. Конфиги - есть(сделано как часть файла w_desert_eagle.ltx). В игру оружие тоже прописал(пораскидывал по тайникам и НПС). В тайнике нашел - работает. Но не улучшается! Ни один техник его не хочет апгрейдить - у него не появляются апгрейды, только чинить могу. Скрытый текст [wpn_eagle_m1]:wpn_desert_eagle ;Большой Бэн $spawn = "weapons\uniq\wpn_eagle_m1" upgrades = up_gr_ab_desert_eagle, up_gr_cd_desert_eagle, up_gr_e_desert_eagle, up_gr_f_desert_eagle installed_upgrades = upgrade_scheme = upgrade_scheme_u10a_ogsm description = st_wpn_eagle_m1_descr inv_name = st_wpn_eagle_m1 inv_name_short = st_wpn_eagle_m1 ammo_class = ammo_9x39_sp5, ammo_9x39_ap, ammo_9x39_pab9 hit_power = 0.77 condition_shot_dec = 0.0004 Подскажите, где я ошибся, что не так делаю? Почему обычное оружие механики улучшают, а созданные мной "уникумы" не хотят? Изменено 19 Августа 2021 пользователем MegaStalker Все зовут меня Пришедший из Ниоткуда...Почему?Потому что я пришел из ниоткуда и иду в никуда... Ссылка на комментарий
alex5773 1 330 Опубликовано 19 Августа 2021 Поделиться Опубликовано 19 Августа 2021 @MegaStalker, потому что их надо добавить в скрипт. Подробно и более точно не могу написать. Т.к за два года уже по забывал всё, да и нет сейчас под руками ноута и Сталкера. Смотри в скриптах. wpn вбей в поиск по файлам в скриптах чистой игры, и найдёшь. Ссылка на комментарий
Norman Eisenherz 309 Опубликовано 19 Августа 2021 Поделиться Опубликовано 19 Августа 2021 @MegaStalker Списки для каждого механика: [configs\misc\stalkers_upgrade_info.ltx]. Схемы прокачки: [configs\ui\inventory_upgrade.xml] + то же для 16:9. 1 Мини-моды: ТЧ ЧН ЗП Шпаргалка Ссылка на комментарий
alex5773 1 330 Опубликовано 19 Августа 2021 Поделиться Опубликовано 19 Августа 2021 @Norman Eisenherz, а в скрипте наверное тогда чтоб исключать определённый ствол из ремонта. Чтоб нельзя его было ремонтировать. Ну да, точно, добавлял туда все уники. Правда у меня уники наоборот были. Типа изношенные стволы, и не подлежат ремонту. Позабывал уже всё, надо будет всё снова вспоминать Ссылка на комментарий
Купер 2 824 Опубликовано 19 Августа 2021 Поделиться Опубликовано 19 Августа 2021 @MegaStalker , букварь. Смотри, что упустил. В CS практически аналогично. 1 Ссылка на комментарий
MegaStalker 66 Опубликовано 20 Августа 2021 Поделиться Опубликовано 20 Августа 2021 (изменено) Чекал насчет схем прокачки и списков для механиков. Схемы прокачки мне точно не нужны, т.к. я использую уже готовые, прописанные для ванильного оружия, они должны работать(т.к. они уже есть в inventory_upgrade). Добавил ствол в списки механиков, но это не помогло пока что. P.S. Всем спасибо за помощь, разобрался. Не хватало ссылки в файле inventory_upgrades, теперь все работает. Изменено 20 Августа 2021 пользователем MegaStalker Все зовут меня Пришедший из Ниоткуда...Почему?Потому что я пришел из ниоткуда и иду в никуда... Ссылка на комментарий
ZeeK 57 Опубликовано 22 Сентября 2021 Поделиться Опубликовано 22 Сентября 2021 Кто нибудь знает за что отвечает строчка:distanse = значение в цифрах (например 100) в типовых квестах ЧН "принеси что нибудь"? Это дистанция отряда НПС до квестового предмета в которой возможна выдача квеста? Не соответствует. N6260 Ссылка на комментарий
ZeeK 57 Опубликовано 23 Сентября 2021 Поделиться Опубликовано 23 Сентября 2021 (изменено) Еще вопрос: кто нибудь делал, например в ОГСМ и т.д., фикс исчезновения предметов на станции переработки аномальной дряни на болотах ЧН? Помню были такие фиксы для "фантомных" гаражей в Припяти в ТЧ. И еще вопрос: Как прописать новые ID в game_story_ids? Простое присвоение новых номеров ведет к вылетам с отсылкой, что ID не найден. Изменено 23 Сентября 2021 пользователем ZeeK Не соответствует. N6260 Ссылка на комментарий
warwer 900 Опубликовано 24 Сентября 2021 Поделиться Опубликовано 24 Сентября 2021 @ZeeK distanse = не используется. Про исчезновения - не понял... Стори ай ди присваивается в аллспавне, допрописывается в конфигах. 1 HARDWARM☢D Ссылка на комментарий
Painter 3 368 Опубликовано 24 Сентября 2021 Поделиться Опубликовано 24 Сентября 2021 (изменено) Цитата Про исчезновения - не понял... @warwer, судя по всему, имелась ввиду проблема с отображением части геометрии уровня при нахождении в определёной точке. Пример с аналогичной проблемой из ЗП. Изменено 24 Сентября 2021 пользователем Painter Портфолио Ссылка на комментарий
ZeeK 57 Опубликовано 24 Сентября 2021 Поделиться Опубликовано 24 Сентября 2021 1 час назад, warwer сказал: Стори ай ди присваивается в аллспавне, допрописывается в конфигах. 1) Можно поподробнее? 2) Да, Painter верно отметил про исчезающую геометрию. Не соответствует. N6260 Ссылка на комментарий
Рекомендуемые сообщения
Создайте аккаунт или авторизуйтесь, чтобы оставить комментарий
Комментарии могут оставлять только зарегистрированные пользователи
Создать аккаунт
Зарегистрировать новый аккаунт в нашем сообществе. Это несложно!
Зарегистрировать новый аккаунтВойти
Есть аккаунт? Войти.
Войти