Overf1rst 1 500 Опубликовано 1 июля, 2020 Тема посвящена моддингу на платформе Тень Чернобыля. Правила темы: Здесь задают вопросы и получают на них ответы. Прежде чем задать вопрос, воспользуйтесь поиском, ответ на него, вероятно, уже есть. Если у вас произошёл вылет, проверьте лог и поищите информацию об ошибке в справочнике. Также будет полезно посмотреть справочник ошибок. Если у Вас вылетает какой-то мод, то следует написать в тему этого мода. Грамотно оформляйте свой пост, чётко доносите суть своего вопроса (ответа). Благодарность выражаем в личке или же ставим реакцию. Посты с благодарностями в теме будут удаляться. 6 4 1 3 1 3 6 Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
CiberZold 864 Опубликовано 1 августа, 2023 Stalkervernite а где условие combat_ignore_cond = always Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
imcrazyhoudini 1 116 Опубликовано 1 августа, 2023 [smart_terrains] none = true [logic] active = walker combat_ignore = combat_ignore [walker] path_walk = gar_rob_walker_2_walk path_look = gar_rob_walker_2_look combat_ignore_cond = always [remark] anim = claim snd = gar_dm_bandit_demand target = actor combat_ignore_cond = always [combat_ignore]Stalkervernite Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Stalkervernite 348 Опубликовано 1 августа, 2023 (изменено) del Изменено 30 июня пользователем Stalkervernite Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
frankenshtayn 17 Опубликовано 1 августа, 2023 В 30.07.2023 в 15:22, N42 сказал: он разбивает архивы? В самом первом есть папка sounds? sounds есть в 4 и 5 архиве. Проблема не в этом, повторю "условие задачи загадки"): - При наличии в корне игры папки gamedata, и отсутствии db-архивов (gamedata.db0-gamedata.dbb удалены, их нет в корне игры) - всё нормально, игра запускается, работает. Проблема начинается после упаковки геймдаты в db-архивы. Причем поисковик показывает, что эти файлы присутствуют по указанному в вылетах пути. В 31.07.2023 в 03:01, CiberZold сказал: frankenshtayn для распаковки и запаковки ТЧ архивов самый лучший это проверенный временем конвертер от Бардака, всё остальное дилетантская васня) Так с него и начинал) А вообще, пробовал разными конвертерами. ПС. Вообще склоняюсь в сторону "криворукости", хотя не понимаю каким образом - если кидаю свои звуки, модели, шейдеры в геймдату и упаковываю её в архивы, а скрипты, конфиги, аллспавн и т.д. в отдельный архив, то начинаются танцы с вылетами по [error]Description : Can't open wave file: [error]Arguments : d:\game\stalker\s.t.a.l.k.e.r. - shadow of hernobyl\gamedata\sounds\material\human\step\tmp_default4.ogg А вот если оригинал (урезанный) упаковать отдельно, а мои все файлы отдельно, то всё работает. Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
N42 700 Опубликовано 1 августа, 2023 frankenshtayn распакуй первый оригинальный архив и посмотри, как он устроен. Может в этом причина. Вроде как в первом архиве должны быть все папки (хоть пустые), но это не точно, не помню уже. Если не поможет - без понятия тогда 1 Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
frankenshtayn 17 Опубликовано 1 августа, 2023 В 31.07.2023 в 16:42, imcrazyhoudini сказал: по идеи нпс должен переходить в другое состояние (день-ночь, ночью спит, днём охраняет), но вместо того чтобы перейти в другое состояние он уходит в оффлайн как править? Ну может быть задать для каждого состояния то, что он должен делать? Т.е. Для состояния 0 - одна логика, для состояния 1 другая? Как пример простейшего гулага с двумя состояниями: гулаг.скрипт: Спойлер local t = {} function load_job(sj, gname, type, squad, groups) --'-------------------------------------------------------------------------- --' GARBAGE --'-------------------------------------------------------------------------- ------------------------------------------------------------------------------------------- ----------первый-------------- if type == "sv_st_smart_terrain" then t = { section = "logic@sv_st_smart_terrain_walker1", idle = 0, prior = 5, state = {0}, online = true, in_rest = "", out_rest = "", } table.insert(sj, t) end if type == "sv_st_smart_terrain" then t = { section = "logic@sv_st_smart_terrain_kamp1", idle = 0, prior = 5, state = {1}, online = true, in_rest = "", out_rest = "", } table.insert(sj, t) end ----------второй----------- if type == "sv_st_smart_terrain" then t = { section = "logic@sv_st_smart_terrain_walker2", idle = 0, prior = 5, state = {0}, online = true, in_rest = "", out_rest = "", } table.insert(sj, t) end if type == "sv_st_smart_terrain" then t = { section = "logic@sv_st_smart_terrain_kamp2", idle = 0, prior = 5, state = {1}, online = true, in_rest = "", out_rest = "", } table.insert(sj, t) end ------третий------------- if type == "sv_st_smart_terrain" then t = { section = "logic@sv_st_smart_terrain_walker3", idle = 0, prior = 5, state = {0}, online = true, in_rest = "", out_rest = "", } table.insert(sj, t) end if type == "sv_st_smart_terrain" then t = { section = "logic@sv_st_smart_terrain_sleeper", idle = 0, prior = 5, state = {1}, online = true, in_rest = "", out_rest = "", } table.insert(sj, t) end end function load_states(gname, type) if type == "sv_st_smart_terrain" then return function(gulag) if db.actor ~= nil then if ( level.get_time_hours() >= 5 and level.get_time_hours() <= 22 ) then return 0 -- день else return 1 -- ночь end else return gulag.state end end end end -------------------------------------------------------------------------- -- Dynamic ltx -------------------------------------------------------------------------- function load_ltx(gname, type) return nil end function checkStalker(npc_community, gulag_type, npc_rank, se_obj) --------- if gulag_type == "sv_st_smart_terrain" then return npc_community == "stalker" end return false end function checkMonster(npc_community, gulag_type) if gulag_type == "gar_boars_nest2" then return npc_community == "boar" end if gulag_type == "gar_boars_nest" then return npc_community == "boar" end if gulag_type == "gar_nest_flesh" then return npc_community == "flesh" end if gulag_type == "gar_dogs_nest" then return npc_community == "dog" end if gulag_type == "gar_dogs_nest2" then return npc_community == "dog" end return false end гулаг.лтх: Спойлер ;;;--------------------------------------------------- ;;;-- сталкер1 walker 0, днем) [logic@sv_st_smart_terrain_walker1] active = walker@odin_hodit on_hit = hit_w [hit_w] on_info = %=zasada_spawn% [walker@odin_hodit] path_walk = odin_walk danger = danger_condition def_state_moving1 = patrol def_state_moving2 = patrol def_state_moving3 = patrol meet = meet ;;;-- сталкер1 kamp 1, ночью) [logic@sv_st_smart_terrain_kamp1] active = kamp@odin_sidit on_hit = hit_k [hit_k] on_info = %=zasada_spawn% [kamp@odin_sidit] center_point = pole_kamp meet = no_meet ;;;---------------------------------------------------------------- ;;;-- сталкер2 walker 0, днем) [logic@sv_st_smart_terrain_walker2] active = walker@dva_hodit [walker@dva_hodit] path_walk = dva_walk danger = danger_condition def_state_moving1 = patrol def_state_moving2 = patrol def_state_moving3 = patrol meet = meet ;;;-- сталкер2 kamp 1, ночью) [logic@sv_st_smart_terrain_kamp2] active = kamp@dva_sidit [kamp@dva_sidit] center_point = pole_kamp meet = no_meet ;;;---------------------------------------------------------------------------- ;;;-- сталкер3 walker 0, днем) [logic@sv_st_smart_terrain_walker3] active = kamp@tri_sidit [kamp@tri_sidit] center_point = pole_kamp meet = meet ;-- сталкер3 sleeper 1, ночью) [logic@sv_st_smart_terrain_sleeper] active = sleeper@tri_slip [sleeper@tri_slip] path_main = moy_sleep wakeable = false meet = no_meet И всё нормально работает: Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
imcrazyhoudini 1 116 Опубликовано 1 августа, 2023 frankenshtayn да у меня такой же код ещё раз попробовал - уже в оффлайн никто не уходит, странная херня Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
frankenshtayn 17 Опубликовано 1 августа, 2023 21 минуту назад, N42 сказал: распакуй первый оригинальный архив и посмотри, как он устроен. Может в этом причина. Вроде как в первом архиве должны быть все папки (хоть пустые), но это не точно, не помню уже. Если не поможет - без понятия тогда Папки есть везде, не пустые. Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
N42 700 Опубликовано 1 августа, 2023 frankenshtayn у тебя самого на скрине в db0 4 папки только Дополнено 0 минут спустя Оригинальный этот архив посмотри 1 Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
frankenshtayn 17 Опубликовано 1 августа, 2023 13 минут назад, imcrazyhoudini сказал: да у меня такой же код ещё раз попробовал - уже в оффлайн никто не уходит, странная херня Разве? В скрипте для обоих состояний одна и та же логика, причем секции дублируются, например t = { section = "logic@esc_atp_bandit_kamp1" idle = 0, prior = 9, state = {0,1}, in_rest = "", out_rest = "", } t = { section = "logic@esc_atp_bandit_kamp1" idle = 0, prior = 9, state = {0,1}, in_rest = "", out_rest = "", } Чем они отличаются? Для чего это дублирование? Почему для обоих состояний 0 и 1 одна и та же логика? По идее тут должен быть вылет, ибо игра вряд ли может понять "кто есть кто", и кто что должен делать. Посмотри внимательнее, как сделано у меня - для каждого НПС в скрипте отдельный код для каждого состояния с ссылкой на РАЗНУЮ секцию логики, соответственно в конфиге для каждого НПС две секции логики для каждого состояния. Представь себе - работает))) Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
imcrazyhoudini 1 116 Опубликовано 1 августа, 2023 frankenshtayn да а с этим то какие проблемы? всё как в оригинале, 3 одинаковые логики использует и всё отлично работать, зачем кучу дубликатов создавать Дополнено 0 минут спустя пример с оригинала например: гулаг esc_specnaz Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
frankenshtayn 17 Опубликовано 1 августа, 2023 7 минут назад, N42 сказал: frankenshtayn у тебя самого на скрине в db0 4 папки только Дополнено 0 минут спустя Оригинальный этот архив посмотри Так эти 4 папки и весят 678 мГ, так же как и архив db0 Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
N42 700 Опубликовано 1 августа, 2023 (изменено) frankenshtayn я тебе про пустые папки говорю, ешкин кот, открой уже оригинальный db0 Изменено 1 августа, 2023 пользователем N42 1 Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
frankenshtayn 17 Опубликовано 1 августа, 2023 16 минут назад, imcrazyhoudini сказал: да а с этим то какие проблемы? всё как в оригинале, 3 одинаковые логики использует и всё отлично работать, зачем кучу дубликатов создавать Так чтобы не путаться) Ну в принципе моё дело предложить, я не настаиваю) 21 минуту назад, imcrazyhoudini сказал: пример с оригинала например: гулаг esc_specnaz Гм... И? Если мне память не отшибает, то у них у всех всего одно состояние, и они все кемперы, то бишь тусуются кучкой вокруг одной общей точки. Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
imcrazyhoudini 1 116 Опубликовано 2 августа, 2023 frankenshtayn ну если мне нужно чтобы 3 чувака тусили возле костра, то зачем разную логику им делать) дубликат всего-то а переход из одного состояния в другое сейчас происходит штатно Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Кефир 774 Опубликовано 2 августа, 2023 Есть ли в оружейных конфигах параметр, отвечающий за расположение оружия на спине у сталкера? Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
macron 995 Опубликовано 2 августа, 2023 5 минут назад, Кефир сказал: Есть ли в оружейных конфигах параметр, отвечающий за расположение оружия на спине у сталкера? Поищи в конфигах по слову strap. 1 Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
imcrazyhoudini 1 116 Опубликовано 2 августа, 2023 как заставить монстра смотреть куда мне нужно в mob_remark? Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Stalkervernite 348 Опубликовано 4 августа, 2023 Приветствую всех! Делаю кастцену, камера смотрит туда куда не надо, что делать? Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
imcrazyhoudini 1 116 Опубликовано 4 августа, 2023 Stalkervernite сделай чтобы смотрела куда надо. В чём проблема? Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Stalkervernite 348 Опубликовано 4 августа, 2023 (изменено) del Изменено 30 июня пользователем Stalkervernite Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
imcrazyhoudini 1 116 Опубликовано 4 августа, 2023 Stalkervernite при чём вэйпоинт к кат-сцене? Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Stalkervernite 348 Опубликовано 4 августа, 2023 (изменено) del Изменено 30 июня пользователем Stalkervernite Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
imcrazyhoudini 1 116 Опубликовано 4 августа, 2023 Stalkervernite что за бред? первый вэйпоинт - место, в котором ГГ окажется после того как кат-сцена закончится, второй вэйпоинт - место, в которое ГГ будет смотреть после окончания кат-сцены Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Stalkervernite 348 Опубликовано 4 августа, 2023 (изменено) del Изменено 30 июня пользователем Stalkervernite Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты