Это популярное сообщение. Dennis_Chikin 3 658 Опубликовано 27 Мая 2014 Автор Это популярное сообщение. Поделиться Опубликовано 27 Мая 2014 Ваши правки и разнообразное "народное творчество." Хотелось бы видеть преимущественно куски кода/конфигов/и прочего с подробным разбором: что это, зачем, что здесь не так, почему, и как исправить. Перед тем, как задавать вопрос, читаем ПЕРВЫЙ ПОСТ в теме, и вообще саму тему. Также настоятельно рекомендуется: Как, Где, и Что - Шпаргалка АМК 1. https://yadi.sk/d/GcZ4wqkugYgtx 2. https://www.sendspace.com/file/jd4r4f 3. http://rusfolder.com/13002611 Ссылка на пост Ссылка на файл Ковыряем ОП-2.rtf Как называется и где найти - поиск в файлах игры или мода Не работает оружие с автозахватом (установлен репак от Lus'a) - заменить папку bin на эту: ссылка Упорный постинг в тему "дайте мне" и "сделайте мне", не удосужившись прочитать хотя-бы первый пост, и напрочь игнорируя поиск - явлется флудом, и оценивается соответственно (2.1.1 правил). 12 8 2 8 22 Солянка обезжиренная, диетическая, полезные советы по "солянке", текущий тестовый патч Ссылка на комментарий
alen_fantom 653 Опубликовано 7 Июля 2014 Поделиться Опубликовано 7 Июля 2014 (изменено) ...то в файле \gamedata\scripts\kostya_dialog.script есть изменения и именно в том месте где требуется закомментировать строки . И что сейчас делать мне не понятно... Изменено 25 Апреля 2015 пользователем Dennis_Chikin исправил Ссылка на комментарий
Olgred 5 Опубликовано 7 Июля 2014 Поделиться Опубликовано 7 Июля 2014 alen_fantom Да, совершенно верно, я как и говорил ранее, воспользовался советом romale. За оперативную помощь благодарю. И в то же время хотелось поинтересоваться с учетом фразы function kuv_hit(who) end может быть все-таки надо было оставить ? dc какой ещё есть метод по отключению усталости при использовании кувалды?И если есть - то лучше он или хуже выше указанного? Ссылка на комментарий
Dennis_Chikin 3 658 Опубликовано 7 Июля 2014 Автор Поделиться Опубликовано 7 Июля 2014 Если мы убираем тело функции, оставляя, как я предложил, само описание - достаточно только этого изменения, остальные файлы изменять не надо. Соответственно, всякие патчи/фиксы/другие правки, которые не затрагивают этот файл - можно использовать, что называется, не глядя. Хуже тем, что все лишние вызовы несколько подтормаживают. Если мы убираем функцию полностью - нужно убрать все ее вызовы отовсюду. Если оставить хоть один - будет вылет. Если убираем вызовы - функцию можно не трогать. Это просто мусор в файле, который ни на что не влияет. Плюс такого решения: чуть меньше тормозит, но чтобы заметить эффект - нужна массовая чистка, не только этой конкретной хрени, но и всего остального в том же духе. Кроме того, тогда стоит еще убирать сразу и обрамление типа всяких if чего-то там ... вызов() end. Недостаток - польза заметно меньше, чем затраченное время. Пример: смотрите посты 2, 3, 4. Вот в этом примере достаточно убрать только сам вызов, но проверки, которые перед ним - достаточно сильно тормозят, и ошибка была (и есть) именно в них. Поэтому лучше убрать несколько строк. В случае с кувалдой - при любом из методов задержка будет в несколько десятков раз меньше минимально заметного. Про телепорты всем отвечу, как время будет. config\misc\zone_teleport.ltx смотрите, строчки idle_particles = что-попало Солянка обезжиренная, диетическая, полезные советы по "солянке", текущий тестовый патч Ссылка на комментарий
slesar6razriada 320 Опубликовано 7 Июля 2014 Поделиться Опубликовано 7 Июля 2014 (изменено) некоторые сообщения не выводятся на экран Правка вывода не всех СМС на экран. Мне помогла эта правка, хоть она и под патч 1.0004, но у меня работает нормально, монитор 1920х1080: SMS_correct_for_16x9 ТЧ 1.0004 https://yadi.sk/d/4QK--_OxWAApN Изменено 25 Апреля 2015 пользователем Eugen81 озаглавил 1 Мой канал на Youtube Мои заглушки музыки для модов Ссылка на комментарий
Dennis_Chikin 3 658 Опубликовано 9 Июля 2014 Автор Поделиться Опубликовано 9 Июля 2014 (изменено) Разбор очередного скрипта, на этот раз meceniy_work.script в части, что касается костюма нудиста и убирания оружия: -- Невидимость В Костюме local idle_time, game_time, outfit_act, prev_outfit_act, time_to_set_range -- local invisible = nil -- local warning90 = nil -- local gravisak = nil -- три довольно бессмысленные строки. Записывается так: local invisible, warning90, gravisak function set_invisible() -- включение невидимости outfit_act = db.actor:item_in_slot( 6 ) -- проверяется наличие надетого костюма if outfit_act and outfit_act:section() == "meceniy_outfit_new" then if not invisible then -- включается невидимость, если еще не включена invisible_on() invisible = true gravisak = nil time_to_set_range = time_global() -- похоже, 2 очередных "античита" fly_island.chaes_fail() kostya_dialog.stealth_fail_task() -- вывод предупреждения, если кончается время невидимости -- elseif game.get_game_time():diffSec( game_time ) >= idle_time*0.9 and not warning90 then -- give_warning90() -- warning90 = true -- отключение невидимости -- elseif game.get_game_time():diffSec( game_time ) >= idle_time then -- invisible_off() -- make_meceniy_outfit_used( outfit_act ) -- invisible = nil -- Нормальные люди делают это так: elseif warning90 then -- проверка для вывода предупреждения if game.get_game_time():diffSec( game_time ) >= idle_time * 0.9 then give_warning90() end -- проверка для выключения elseif game.get_game_time():diffSec( game_time ) >= idle_time then invisible_off() -- отключение невидимости -- make_meceniy_outfit_used( outfit_act ) -- порча костюма invisible = nil end -- ну или убрать все это, чтобы работал бесконечно -- ослепление неписей (поправлю сразу) if time_to_set_range <= time_global() then set_range( 2 ) time_to_set_range = time_global() + 1000 end elseif invisible then -- костюм снят invisible_off() -- отключение невидимости -- внимание, если кто-то уйдет в офлайн раньше - останется слепым ! -- make_meceniy_outfit_used( prev_outfit_act ) -- порча чего попало, или просто вылет invisible, idle_time, time_to_set_range = false, false, false -- поправил графоманию end -- if outfit_act and string.find( outfit_act:section(), "soldier_outfit" ) then -- if not gravisak then -- bind_stalker.hide_weapon() -- gravisak = true -- end -- elseif gravisak then -- bind_stalker.restore_weapon() -- gravisak = nil -- end -- здесь был бред про убирание оружия -- prev_outfit_act = outfit_act -- а это бред с порчей костюма end function invisible_on() -- включение невидимости -- даже исправлять не буду, по тому что проще проверки выше отключить, и навсегда о них забыть idle_time = 27 * 60 -- время невидимости game_time = game.get_game_time() -- текущее время warning90 = false -- убрать информацию о том, что было выведено предупреждение bind_stalker.hide_weapon() -- убрать оружие level.add_pp_effector ("teleport.ppe", 1111, false) -- спецэффекты level.set_pp_effector_factor(1111, 1.0) end function invisible_off() -- выключение невидимости if get_hud():GetCustomStatic( "cs_inviz" ) then -- убирает сообщение о невидимости get_hud():RemoveCustomStatic( "cs_inviz" ) end warning90 = false -- убирает информацию о выводе предупреждения bind_stalker.restore_weapon() -- включает оружие set_range( 80 ) -- выставляет неписям "видеть актора и врагов на расстоянии 80 метров" -- к воопросу о бешеных неписях. В солянке ставилось 60, и из этого рассчета -- расставлялись собственно неписи. end function give_warning90() get_hud():AddCustomStatic( "cs_inviz", true ):wnd():SetText( "Вас могут увидеть!" ) end function set_range( range ) -- принудительное выставление всему живому расстояния, -- на котором они всех видят -- переписал это медленнное и печальное глюкало сразу local cls_id local lobj_by_id = level.object_by_id -- чтобы тормозило хоть чуток меньше for k, v in pairs( db.creatures ) do -- в creatures живое добавляется v = lobj_by_id( k ) -- есть ли еще такой ? if v and v.alive then -- и имеет ли смысл для него что-либо проверять ? cls_id = v:clsid() -- класс объекта -- проверка, что непись или монстр, и он живой if ( IAmAStalker[cls_id] or IAmAMonster[cls_id] ) and v:alive() then v:set_range( range ) end end end end function make_meceniy_outfit_used( outfit ) -- замена одного костюма на другой local parent = outfit:parent() local obj = alife():object( outfit:id() ) -- отсюда и далее переписал глюкало if obj then alife():release( obj, true ) if parent then alife():create( "meceniy_outfit_used", vector(), 0, 0, parent:id() ) else alife():create( "meceniy_outfit_used", vector(), 0, 0, 0 ) end end end function have_meceniy_outfit() -- для диалогов: возвращается экза, если есть return db.actor:object( "meceniy_outfit_used" ) or db.actor:object( "meceniy_outfit_new" ) end function give_meceniy_outfit() -- для диалогов: удаляется экза if db.actor:object( "meceniy_outfit_used" ) then amk.remove_item_from_inventory_by_name( "meceniy_outfit_used", db.actor ) elseif db.actor:object( "meceniy_outfit_new" ) then amk.remove_item_from_inventory_by_name( "meceniy_outfit_new", db.actor ) else return end news_manager.relocate_item( db.actor, "out", "meceniy_outfit_new" ) -- новости: "потерян предмет" end Адаптации ни каких других вариантов невидимости делать не буду, потому что иначе полезет куча глюков из других мест, и пока их все выловишь - авторы еще 3 новых "патча" выпустят, а далее см. п1. Но вообще нормальные люди делают это через xr_combat и mob_combat, как и всяческие "переодевания" и прочие "амулеты наемников/монолитов/чего попало". Готовый вариант для 2.09-2 - https://yadi.sk/d/mU-QorGAmAiGK shahvkit Изменено 11 Декабря 2015 пользователем shahvkit Перевел код в луа, для читабельности комментов. 1 2 1 Солянка обезжиренная, диетическая, полезные советы по "солянке", текущий тестовый патч Ссылка на комментарий
groks 439 Опубликовано 9 Июля 2014 Поделиться Опубликовано 9 Июля 2014 @Dennis_Chikin, Спасибо за разбор пролётов полётов. А что по античитам? Мне показалось, что изменение этого файла вызывает безлоговые вылеты. Конфликт? С точки зрения игрока вообще данный девайс в этом моде потерял актуальность. 1. Сразу от Сидоровича телепортимся на Янтарь, оттуда в Лабиринт, оттуда на ЧАЭС-2. По окончании опупеи уж как нибудь заскочить к Сидору получится. 2. К ГГ-наёмнику НПС отнеслись с пониманием(что наверное породит очередной анекдот). Ссылка на комментарий
Dennis_Chikin 3 658 Опубликовано 9 Июля 2014 Автор Поделиться Опубликовано 9 Июля 2014 Это часть файла, касающаяся невидимости. Там еще есть глючное зомбирование и какие-то телепорты (кстати, о птичках). Античит, полагаю, следует оторвать. Солянка обезжиренная, диетическая, полезные советы по "солянке", текущий тестовый патч Ссылка на комментарий
BlooderDen 233 Опубликовано 10 Июля 2014 Поделиться Опубликовано 10 Июля 2014 Господа, вот такой вопросс. Ксо играет ОП-2 с Авророй из шапки. В начале выброса, после "краснухи" и какраз после затемнения экрна (иногда вылет в затемненности иногда после того как она проходит), перед тем как начинаются "взрывы и громы" ловлю эту дрянь stack trace: XXXX:XXXXXXXX XR_3DA.exe, CEnvAmbient::get_rnd_sound_time() Читал что это связано с тем что движок не находит звук. Открыл env_embient.ltx от Авроры, и опустил голову. Пока найду каких звуков не хватает - 100 лет пройдет. Если отключить папку конфигов погоды Авроры - вылета не будет. (думаю если отключить env_embient.ltx то тоже не будет, но мне те звуки тоже очень нравятся) Кто сталкивался ? Не хочу погоду менять. Оригинальная - "сероватая" (имхо) Сталкер: Когда человек родится, он слаб и гибок, когда умирает, он крепок и черств. Когда дерево растет, оно нежно и гибко, а когда оно сухо и жестко, оно умирает. Черствость и сила спутники смерти, гибкость и слабость выражают свежесть бытия. Поэтому что отвердело, то не победит. из фильма 1979 года режиссёра Андрея Тарковского по сценарию братьев Стругацких. Мои звуки и прочее для dsh_mod , Мои звуки АК, Модифицирование NLC 6 Long Way Mod, Умное выпадение запчастей мутантов для ОП-2 Ссылка на комментарий
STASker 27 Опубликовано 10 Июля 2014 Поделиться Опубликовано 10 Июля 2014 (изменено) Запилил адаптацию худа от Мерцающего на ОП-2. Пили для себя, но может быть кому-то тоже не по вкусу стандартный худ ОП-2. Делал не под широкоформат. Скачать...Здесь HUD Heroin_Zero ver.2 для ОП2. Евген. Изменено 25 Апреля 2015 пользователем Eugen81 Ryzen 7 5800X3D; RTX3080Ti; 32Gb RAM 3800MhZ Ссылка на комментарий
groks 439 Опубликовано 10 Июля 2014 Поделиться Опубликовано 10 Июля 2014 (изменено) @Dennis_Chikin, Вооот. Я тогда опять со своим OICW-ом. Имеем файлы конфигурации, где задано соответствие оружия с его визуалом. На ПКМ виузал просто зуммируется? Вроде да. Если стоит прицел, то визуал замещается и картинка зуммируется. Если использован подствольник, то визуал заменяется и по ПКМ опять же зуммируется. Заменить прицел в основном режиме не трудно - меняем в конфигурационном файле имя прицела и будет вызываться уже его визуал. Это не требует знания того, что происходит между, т.е. системы управления. Я хочу заменить картинку в режиме ПКМ подствольника. Понятно, что нужно сделать, но непонятно где и как. Вопрос уместен? @alen_fantom, Это если я хотел бы переделать прицеливание со скобы на "по стволу" или наоборот, то всё решилось бы координатами. Но в данном случае это не даст результата. Однако навёл на мысль. Вполне может оказаться, что это неразрешимая задача. @Dennis_Chikin, Там профиль несколько иной. Но посмотрим. Зато в процессе нашёл неправильное но рабочее решение - прописать гранату 20х85 как основной боеприпас и переключаться соответствующей кнопкой. Прицел есс поменять на с меньшей кратностью и большим полем зрения. Изменено 19 Июля 2014 пользователем Dennis_Chikin Ссылка на комментарий
alen_fantom 653 Опубликовано 10 Июля 2014 Поделиться Опубликовано 10 Июля 2014 (изменено) groks: смещения HUD для режима приближения ... режим подствольника - играй с координатами.... Это если я хотел бы переделать прицеливание со скобы на "по стволу" или наоборот, то всё решилось бы координатами. Но в данном случае это не даст результата.Т.е. типа такого , не годиться..? Тогда это точно не в тему худов. Спрашивай у оружейников и модлеров - анимацию, без правки модели, не изменить... Изменено 19 Июля 2014 пользователем Dennis_Chikin Ссылка на комментарий
Ааз 489 Опубликовано 10 Июля 2014 Поделиться Опубликовано 10 Июля 2014 (изменено) На вскидку, можно сделать сквозной прицел, и тогда прицеливание всегда будет смотреться одинаково, без смещения в режиме гранатомета.В конфиге оружия есть две секции, одна для ствола, вторая для него же с подстволом, так вот, при сквозном прицеле. вы осуществляете прицеливание как-бы через мехприцел, при этом он выглядит как коллиматор или оптика, но текстура при этом не подключается, поэтому, при переключении на подствол, вы можете настроить прицеливание через тот же мехприцел. Изменено 13 Июля 2014 пользователем Dennis_Chikin объединил Ссылка на комментарий
groks 439 Опубликовано 11 Июля 2014 Поделиться Опубликовано 11 Июля 2014 (изменено) alen_fantom сказал(а):Т.е. типа такого Нет. Дело в том, что у настоящей прицел работает и на подствольнике. Там пулевой ствол довольно слабый и выполняет функцию АПС, которым вооружали наших гранатомётчиков - т.е. для самообороны в ближнем бою. Калибр гранатомёта небольшой, настильность хорошая, поэтому прицел вполне применим. Ааз сказал(а):можно сделать сквозной прицел Ну так вот к этому и стремимся. Но как? Наверное следует заблокировать переключение визуала, но вот где. Ааз сказал(а):В конфиге оружия есть две секции Но в конфиге оружия я не понимаю, что поправить, если есть что править вообще. [wpn_oicw_hud] shell_point = 0.019,0.0005,-0.175 shell_dir = 0.0, 1.0, 0.0 fire_point = 0.00000,-0.0000025,0.09000 fire_point2 = 0.00000,0.000005,0.1100090 fire_bone = wpn_body orientation = 3, 2.35, 0 position = 0.12,-0.025,0.10 visual = weapons\oicw\wpn_oicw_hud.ogf grenade_bone = wpn_grenade anim_idle = idle anim_idle_aim = idle_aim anim_reload = reload anim_draw = draw anim_holster = holster anim_shoot = shoot anim_idle_sprint = idle_sprint ;анимации с подключенным подствольником ;(режим стрельбы из подствольника) anim_idle_g = idle anim_idle_g_aim = idle_aim anim_reload_g = shoot_grenade anim_shoot_g = shoot_grenade anim_switch_grenade_on = switch_on anim_switch_grenade_off = holster ;switch_off anim_draw_g = draw anim_holster_g = holster ;(режим обычной стрельбы) anim_idle_gl = idle anim_idle_gl_aim = idle_aim anim_reload_gl = reload anim_draw_gl = draw anim_holster_gl = holster anim_shoot_gl = shoot Если в анимации с подствольником подставить анимацию основного режима? Т.е. убрать там _g практически. Не прошло однако. Вылет при загрузке. Кстати "надёжный" вариант с дописыванием гранат в основной боеприпас провалился. Ствол понял гранаты как пулевые патроны. Изменено 11 Июля 2014 пользователем groks Ссылка на комментарий
Ааз 489 Опубликовано 11 Июля 2014 Поделиться Опубликовано 11 Июля 2014 (изменено) @groks, зачем тебе анимации, тебе нужно будет найти модель с "сквозным прицелом" и просто отрегулировать вот эти секции: zoom_offset = -0.112400,0.016800,-0.115000 zoom_rotate_x = 0.000200 zoom_rotate_y = 0.017500 zoom_hide_crosshair = true ;to hide crosshair in zoom ; same as above, but for attached grenade launcher for ; in NORMAL shoot mode grenade_normal_zoom_offset = -0.112500,0.014000,0.000000 grenade_normal_zoom_rotate_x = -0.000900 grenade_normal_zoom_rotate_y = 0.017200 ; same as above, but for attached grenade launcher for ; in GRENADE mode grenade_zoom_offset = -0.039600,-0.433100,0.000000 grenade_zoom_rotate_x = -0.538700 grenade_zoom_rotate_y = -0.033800Пункты:zoom_offset grenade_normal_zoom_offset grenade_zoom_offset должны будут иметь по сути одинаковые координаты. Изменено 25 Апреля 2015 пользователем Eugen81 Убрал мега пробелы. Ссылка на комментарий
dedbanzai 65 Опубликовано 11 Июля 2014 Поделиться Опубликовано 11 Июля 2014 (изменено) в квест_итемс находи его и меняй quest_items = true на false Не могу найти секцию этого предмета. По запросу amulet блокнот ничего не находит. Поиск в config\text по названию, находится файл string_table_enc_equipment.xml Там будет секция item_amulet. Поиск в config\misc по секции: находим файл arhara_items.ltx Следующего, кто задаст подобный вопрос - расстреляю. dc Изменено 11 Июля 2014 пользователем Dennis_Chikin 1 Ссылка на комментарий
alen_fantom 653 Опубликовано 11 Июля 2014 Поделиться Опубликовано 11 Июля 2014 (изменено) groks, зачем тебе анимации, тебе нужно будет найти модель с "сквозным прицелом" и просто отрегулировать вот эти секции: Может я не правильно понял: у groks в режиме grenade_zoom выскакивает прицельная сетка..(?) И делал ли кто модель OICW c "сквозным прицелом"..? groks, попробуйте сделать так: делаем новый оицв, под основной патрон 20х85, и обычный оицв под 5,56. При смене оружия происходит подмена одного ствола другим, как это реализовано в моде ув. тов-ща Kirag'а, только там было с прицелами, а тут будет скриптовая подмена одного карамультука другим. Понимаете, что я имел ввиду? Ааз, https://yadi.sk/d/y3YLfOXKWRudj . ================== Ааз, ссори - нет. Может у оружейников ..? Изменено 19 Июля 2014 пользователем Dennis_Chikin Ссылка на комментарий
groks 439 Опубликовано 11 Июля 2014 Поделиться Опубликовано 11 Июля 2014 (изменено) модель с "сквозным прицелом" Поясни терминологию. Модель оружия, у которого прицел в основном режиме и в гранатомёте одинаков? И подогнать точку прицеливания. Но такого оружия вроде бы нет в игре. @alen_fantom, Да нет сетки. Что и у тебя на скрине. А при ПКМ вообще чёрная блямба неактивного прицела. @Elz, Мысль понял. С реализацией надо почесать затылок. Изменено 13 Июля 2014 пользователем Dennis_Chikin Ссылка на комментарий
Ааз 489 Опубликовано 11 Июля 2014 Поделиться Опубликовано 11 Июля 2014 (изменено) Ух ты, зачем усложнять то, скиньте мне пожалуйста модель, текстуры, конфиг и текстуру прицела этого ствола, посмотрю что можно сделать. @alen_fantom, вот жесть то, а другой модели нет? Изменено 19 Июля 2014 пользователем Dennis_Chikin Ссылка на комментарий
Dennis_Chikin 3 658 Опубликовано 13 Июля 2014 Автор Поделиться Опубликовано 13 Июля 2014 (изменено) По идее защита от пуль должна стать 25%, а становится 0% Интересно, а еще у кого-нибудь такое есть ? Ну, то есть, удаление артов в inventory.script - оно их с пояса убирает (кстати отрываем в function update()убираем строчку check_immunities() ). А вот чтобы 0 было... Кстати, к вопросу о том, как перевесить что-то с пояса и обратно: смотрим этот же скрипт, и делаем по аналогии с, да хоть "идолом монолита" и т.д. По зачищенным постам: нет, не буду я смотреть ничего вида: "взял какой-то файл не знаю откуда, что-то в нем изменил и положил не знаю куда". И сомневаюсь, что кто-то будет. Что-то меняете - меняйте в файле из той игры, для которой меняете. И еще: вот очень жаль, что приходится писать руководство по "войнам правок", но раз уж так получается, повторюсь еще раз: если вы отрываете, скажем, откуда-нибудь тз диалогов какой-то очередной, допустим, "античит", то имело бы смысл зачистить оторванное в скриптах полностью, если бы вы вели полностью свою разработку. А так - завтра другая сторона выпускает 10 "патчей" вообще ничего не меняя, потом один с одной измененной буковкой, потом еще 10 одинаковых. И вы будете каждый раз все это просматривать, и в каждом делать совершенно не нужную работу. Вам оно надо ? Так что оторвали в одном файле - работает - так и оставьте. P.S. По поводу самого последнего патча и правкосборок - нет, xml'ы я тщательно просматривать тоже не буду. Проще протестировать, и поправить, ежели что не так. А на беглый взгляд - вроде, правильно все. Изменено 13 Июля 2014 пользователем Dennis_Chikin Солянка обезжиренная, диетическая, полезные советы по "солянке", текущий тестовый патч Ссылка на комментарий
Dennis_Chikin 3 658 Опубликовано 13 Июля 2014 Автор Поделиться Опубликовано 13 Июля 2014 за цену продажи рецептов у Информатора в Баре? dialogs_bar.xml Строки типа <precondition>sak_dialog.actor_has_money_150000</precondition> - проверка наличия денег <action>sak_dialog.give_money_150000</action> - отъем денег. Вызываемая функция должна, естественно, существовать. Солянка обезжиренная, диетическая, полезные советы по "солянке", текущий тестовый патч Ссылка на комментарий
Рекомендуемые сообщения