Это популярное сообщение. Dennis_Chikin 3 658 Опубликовано 16 Мая 2014 Это популярное сообщение. Поделиться Опубликовано 16 Мая 2014 Ковыряемся в файлах ТЧ Прежде чем писать в тему - внимательно читаем первый пост, и пользуемся поиском. Возможно, ответ на Ваш вопрос уже есть. Касательно телепатии: если Вы передаете Ваши файлы телепатическим путем - ответы будут передаваться тоже телепатически. Если Вы предлагаете угадать, отчего у Вас в подвале происходит странный стук - ответ будет передан стуком. 4 8 6 12 Солянка обезжиренная, диетическая, полезные советы по "солянке", текущий тестовый патч Ссылка на комментарий
андрей дронав 17 Опубликовано 4 Апреля 2022 Поделиться Опубликовано 4 Апреля 2022 @macron Подскажи как распаковать gamemtl.xr? Открываю в gmdc_03 вобще нечего не происходит. Командная строка даже отказывается запускаться. Ссылка на комментарий
macron 1 821 Опубликовано 4 Апреля 2022 Поделиться Опубликовано 4 Апреля 2022 @андрей дронав gamemtl.xr compiler/decompiler https://disk.yandex.ru/d/AlATQinuFY0EIA 1 2 Ссылка на комментарий
андрей дронав 17 Опубликовано 10 Апреля 2022 Поделиться Опубликовано 10 Апреля 2022 (изменено) Подскажите как убрать колижен (невидимую стену) на локациях? Спасибо, разобрался. Изменено 10 Апреля 2022 пользователем андрей дронав Ссылка на комментарий
macron 1 821 Опубликовано 10 Апреля 2022 Поделиться Опубликовано 10 Апреля 2022 (изменено) @андрей дронав 1.Перекомпиляция локации, удаление стен в SDK и прочий гимор. 2.Сейчас придумал: через "gamemtl.xr compiler/decompiler" в materials\MATERIALS\materials\fake.ltx заменить MF_ACTOR_OBSTACLE на MF_SHOOTABLE. Но в игре это применится ко всем материалам, использующим фейки. Изменено 10 Апреля 2022 пользователем macron 1 2 Ссылка на комментарий
андрей дронав 17 Опубликовано 11 Апреля 2022 Поделиться Опубликовано 11 Апреля 2022 (изменено) @macron Спасибо! Я так и сделал!))) Прострел тонких укрытий, и рикошет тоже тут настраивается/меняется? Изменено 11 Апреля 2022 пользователем андрей дронав Ссылка на комментарий
aromatizer 4 425 Опубликовано 11 Апреля 2022 Поделиться Опубликовано 11 Апреля 2022 3 часа назад, андрей дронав сказал: Прострел тонких укрытий За это отвечает k_pierce в конфиге патронов. 1 1 Отношения между людьми- главная ценность в человеческом обществе.Любая полученная информация- это только повод для размышлений, а не побуждение к действию.Это должен знать каждый: уроки боевой подготовки Дяди Саши https://yadi.sk/d/60Ec2B06goLAEНакопано и накнопано:https://yadi.sk/d/mzVY5jQEspwpt Ссылка на комментарий
shahvkit 3 509 Опубликовано 11 Апреля 2022 Поделиться Опубликовано 11 Апреля 2022 4 часа назад, андрей дронав сказал: Прострел тонких укрытий, и рикошет тоже тут настраивается/меняется? Разбор коэффициента k_pierce для Сталкер Тени Чернобыля - https://www.shadow-of-chernobyl.ru/index.php/topic,15277.msg546682.html#msg546682 1 3 Ссылка на комментарий
macron 1 821 Опубликовано 11 Апреля 2022 Поделиться Опубликовано 11 Апреля 2022 6 часов назад, андрей дронав сказал: Прострел тонких укрытий fShootFactor 6 часов назад, андрей дронав сказал: рикошет Конкретно для wooden_board, например, есть флаг MF_BULLET_NO_RICOSHET отключающий рикошет. 1 Ссылка на комментарий
dsh 3 824 Опубликовано 11 Апреля 2022 Поделиться Опубликовано 11 Апреля 2022 У меня есть такое мнение, что в ТЧ этот флаг движком не обрабатывается. Вот только недавно его обработку в свою версию OGSR перенёс из ЗП. 4 dsh mod: https://github.com/dsh2dsh/op2ogse Ссылка на комментарий
андрей дронав 17 Опубликовано 24 Апреля 2022 Поделиться Опубликовано 24 Апреля 2022 Народ подскажите, как в ТЧ сделать чтобы рандомная музыка играла в главном меню? Ссылка на комментарий
mole venomous 3 336 Опубликовано 24 Апреля 2022 Поделиться Опубликовано 24 Апреля 2022 @андрей дронав , файл ui_mm_main.xml - https://disk.yandex.ru/i/x1N-dXk7t5XINQ Здесь могла быть ваша реклама. Ссылка на комментарий
андрей дронав 17 Опубликовано 24 Апреля 2022 Поделиться Опубликовано 24 Апреля 2022 @mole venomous Спасибо большое! Вот только не пойму, то нормально все, то 2 трека играют одновременно, название у каждого разное, проверил все, косяков нет Ссылка на комментарий
LunInFog 1 Опубликовано 30 Апреля 2022 Поделиться Опубликовано 30 Апреля 2022 (изменено) Доброго времени суток! По идее это должна быть избитая тема, но два дня гуглежа и экспериментов не дали ответа. Как можно "оживить" уникального NPC в стоковом STALKER SoC? Конкретно интересует Петренко из Долга на локации Бар. Вообще почему я этим озаботился. Вступил в Свободу, используя стандартную в игре оставшуюся для этого возможность (выполнение квестов на Военных Складах в нужной последовательности). Дальше столкнулся с тем, что учёные стали агрессивными для ГГ. Поправил "\gamedata\config\creatures\game_relations.ltx" (между freedom - ecolog, ecolog - freedom и ecolog - act_fre, actor_freedom - ecolog, хотя саму freedom наверное трогать лишнее). Далее выяснил, что возможность получить СВДм-2 на среднем этапе игры есть только у Петренко и после выполнения квеста на Бульдог. А я же вступив в Свободу каждый раз продирался к Бармену с боем... И Петренко видимо в один из моих прорывов вылез на меня. То есть его труп уже давно лежит, и даже к нему в инвентарь заспавнить уже живому СВДм-2, чтобы отыграть, что типа с боем заполучил СВДм-2 (а такое, кстати, вроде возможно и так из-за бага, при котором он меняет старое вооружение на СВДм-2 после выполнения квеста на Бульдог, только не имеет смысла, так как тогда уже проще купить, она в продажу поступает). Нашёл конфиг Петренко в "\gamedata\config\gameplay\character_desc_bar.xml", но там у него какой-то странный синтаксис. По крайней мере в Sublime Text Editor 3 подсветка такая, будто весь блок закомментирован (видимо из-за не валидного использования символов "----" внутри комментария: Скрытый текст <!---------------------------DOLG PETRENKO----------------------> Сам блок описания Петренко: Скрытый текст <specific_character id="bar_dolg_petrenko" team_default = "1"> <name>bar_petrenko_name</name> <icon>ui_npc_u_stalker_do_balon_3</icon> <map_icon x="0" y="0"></map_icon> <bio>bar_petrenko_bio</bio> <class>bar_dolg_petrenko</class> <community>dolg</community> <terrain_sect>stalker_dolg_terrain</terrain_sect> <money min="100000" max="110000" infinitive="1"></money> <rank>459</rank> <reputation>0</reputation> <visual>actors\dolg\stalker_do_balon_3</visual> <snd_config>characters_voice\human_01\dolg\</snd_config> <crouch_type>0</crouch_type> <supplies> [spawn] \n wpn_walther \n ammo_9x19_fmj \n wpn_groza \n ammo_9x39_ap \n #include "gameplay\character_food.xml" \n #include "gameplay\character_drugs.xml" </supplies> #include "gameplay\character_criticals_6.xml" <start_dialog>bar_dolg_petrenko_start</start_dialog> <actor_dialog>tm_petrenko_dialog</actor_dialog> <actor_dialog>tm_petrenko_reward</actor_dialog> </specific_character> Я ему там прописать хочу в блок <supplies> wpn_svd и ammo_7.62x54_7h1. Тут я вижу, что вроде как id уникального персонажа "bar_dolg_petrenko". Он же фигурирует в распакованном all.spawn. Но попытка заспавнить его функцией Скрытый текст function main_menu:stalker_bar_dolg_petrenko_spawn() local obj local a = vector() local dir = db.actor:direction() a.x = 60.0173 a.y = -0.0025 a.z = 136.888 obj = alife():create("bar_dolg_petrenko", a, 27740, 1240) display_text_message = "Spawn bar_dolg_petrenko" news_manager.send_tip(db.actor, display_text_message, nil, nil, 30000) end приводит к ошибке Скрытый текст Expression : fatal error Function : CInifile::r_section File : E:\stalker\sources\trunk\xrCore\Xr_ini.cpp Line : 342 Description : <no expression> Arguments : Can't open section 'bar_dolg_petrenko' Не подскажете, как в итоге можно осуществить спавн уникального NPC, если он был убит до этого, без старта новой игры? Спавн обычных сталкеров через alife():create() происходил успешно. Изменено 30 Апреля 2022 пользователем LunInFog Ссылка на комментарий
mole venomous 3 336 Опубликовано 30 Апреля 2022 Поделиться Опубликовано 30 Апреля 2022 @LunInFog , вот кое-что из аналов древности https://disk.yandex.ru/d/EbziGqlJ3TMkVj Там, ЕМНИП, не всё гладко. Но для твоей конкретной задачи подойдёт. Можешь посмотреть коды или на готовом сделать уникальный арт для воскрешения. 1 2 Здесь могла быть ваша реклама. Ссылка на комментарий
AndreySol 215 Опубликовано 1 Мая 2022 Поделиться Опубликовано 1 Мая 2022 @LunInFog cse_alife_dynamic_object* create(int <индекс объекта в all.spawn> ) // создание объекта на основе секции в all.spawn Распакуй all.spawn, найди требуемый номер секции для твоего дохляка и пробуй заспавнить его вышеуказанной ф-цией. 2 Ссылка на комментарий
LunInFog 1 Опубликовано 1 Мая 2022 Поделиться Опубликовано 1 Мая 2022 @mole venomous , спасибо за ответ! Уже находил этот код на другом сайте с тем же readme, но до конца не понял. Раз тут посоветовали, то сел дальше его изучать и заметил, что он использует методы, которые, если я правильно понял, не являются стандартными для чистого SoC без модов. Например в строке "amk.convert_npc[id] = true". Поиск метода convert_npc по файлам gamedata папок, которые я сейчас использую ("config", "scripts", "sounds", "spawns", "textures") не дал результата. То же самое и с методами "read_stalker_params", "write_stalker_params". Не нашёл в lua_help.script: updhealth; killerid; game_death_time[number]; skeleton_flags; Стандартные: heart:parent() - насколько я понял, возвращает родителя для объекта (артефакта). Если он лежит в трупе, то это мёртвый NPC. class game_object {}. function id() - class game_object {} по lua_help.script, возвращает id объекта. level.main_input_receiver() - возвращает текущее активное окно. alife() - класс alife_simulator - получаем сам объект класса alife_simulator. function set_switch_online(number, boolean) - class alife_simulator {} - видимо установить статус онлайн объекта с идентификатором id при boolean = true (перевести объект в онлайн). set_switch_offline(id, boolean) - class alife_simulator {} - установить статус оффлайн объекта с идентификатором id при boolean = true (перевести объект в оффлайн). level.object_by_id(number) - клиентский объект по его id. Возвращает nil, если объект не в онлайне или не существует. Пространство имён level. function object() - class entity_action {} - ??? property health - class game_object {} - параметр "здоровье" объекта?.. function log(string) - ?.. (логирование куда-то?) @AndreySol понял. all.spawn уже распакованным болтается, но через него манипуляций пока не пробовал проводить, только изучал структуру. Получается, мне нужен файл, полученный из all.spawn, с префиксом "alife_", далее номер уровня и имя нужной локации с NPC ("alife_l05_bar.ltx"). В нём я уже находил секцию Петренко. Вот её код. Скрытый текст ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; [7212] ; cse_abstract properties section_name = stalker_trader name = bar_dolg_petrenko position = 207.565994262695, 0.429977655410767, 60.4622344970703 direction = 0, 1.57078814506531, 0 id = 65535 version = 118 script_version = 6 spawn_id = 3434 ; cse_alife_trader_abstract properties money = 5000 character_profile = bar_dolg_petrenko ; cse_alife_object properties game_vertex_id = 1203 distance = 9.8000002 level_vertex_id = 50435 object_flags = 0xfffffff7 custom_data = <<END [smart_terrains] none = true [logic] cfg = scripts\bar_petrenko.ltx END story_id = 506 ; cse_visual properties visual_name = actors\dolg\stalker_do_balon_3 ; cse_alife_creature_abstract properties g_team = 0 g_squad = 5 g_group = 4 dynamic_out_restrictions = dynamic_in_restrictions = ; cse_alife_monster_abstract properties equipment_preferences = 2, 0, 2, 1, 1 main_weapon_preferences = 2, 2, 2, 0 ; cse_ph_skeleton properties ; se_stalker properties upd:health = 1 upd:timestamp = 0 upd:creature_flags = 0 upd:position = 207.565994262695, 0.429977655410767, 60.4622344970703 upd:o_torso = 1.57078814506531, 0, 0 upd:g_squad = 5 upd:g_group = 4 ; cse_alife_human_stalker properties upd:start_dialog = ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; И в таком случае номером секции будет являться число в квадратных скобках "[]" = 7212? Думал, что это служебный ID, который присваивает перепаковщик, чтобы корректно запаковывать потом all.spawm обратно и сама игра про него не знает. Файл "alife_l05_bar.ltx" нужно куда-то подсовывать игре, или в директории игры вообще может не быть распакованного "all.spawn", и игра уже знает про номер секции, хоть этот ID и не имеет отношения к ID объекта? И, получается, раз есть функция для спавна по номеру секции, если про него знает игра, то возможно есть функция спавна по имени объекта (name = bar_dolg_petrenko)? Как только попробую оба способа, отпишусь. Ссылка на комментарий
mole venomous 3 336 Опубликовано 1 Мая 2022 Поделиться Опубликовано 1 Мая 2022 5 часов назад, LunInFog сказал: не являются стандартными для чистого SoC без модов Да, тебе нужна скриптовая база АМК, а именно файл amk.script. оригинальный 1 Здесь могла быть ваша реклама. Ссылка на комментарий
AndreySol 215 Опубликовано 2 Мая 2022 Поделиться Опубликовано 2 Мая 2022 @LunInFog В описании из Справочника по ф-циям и классам кажись ошибка - не номер секции нужен, а параметр spawn_id = ххх. Проверь, у меня такой спавн работает без проблем: local obj = alife():create(389) -- 389 - spawn_id какой-то псины на кордоне 1 Ссылка на комментарий
StrelokCj 0 Опубликовано 3 Мая 2022 Поделиться Опубликовано 3 Мая 2022 Подскажите, как в АМК 1.4.1 вернуть выбросы во фриплее? Код ниже в файле amk_mod.script комментировал (по совету ранее в теме), но выбросов так и не появилось. Хотя судя по коду в условии прописаны выбросы когда игрок на территории ЧАЭС. if bt==2 and amk.load_variable("freeplay",0)~=2 then return end Ссылка на комментарий
killersan6 184 Опубликовано 5 Мая 2022 Поделиться Опубликовано 5 Мая 2022 А может кто пояснить за расчет шанса осечки в ТЧ? Я вики почитал, но белых пятен все равно много. Ссылка на комментарий
Рекомендуемые сообщения
Создайте аккаунт или авторизуйтесь, чтобы оставить комментарий
Комментарии могут оставлять только зарегистрированные пользователи
Создать аккаунт
Зарегистрировать новый аккаунт в нашем сообществе. Это несложно!
Зарегистрировать новый аккаунтВойти
Есть аккаунт? Войти.
Войти