Перейти к контенту

[SoC] Ковыряемся в файлах


Рекомендуемые сообщения

19 часов назад, Kirgudu сказал:

А вот здесь сложнее...

В любом случае это уже простор для самостоятельных дополнительных изысканий.

Нашёл. В ОП2.2 делалось, в файле key_handlers.script

Скрытый текст

-- автозакрытие окна "взять все"
    ["car_body_take_all"]={
        func=function()
            if game_is_running() then
                timer("run", 0.1, "level.start_stop_menu(level.main_input_receiver(), true)")
            end
        end
    }

Как и куда это приживить в Радиофобии 3 - понятия не имею. Поможите, люди добрые!

Автор правки dotvet

@Купер "Очень интересно, но ничего не понятно!"

Даже не представляю, где это искать и что туда писать...

Знатоки, помогите, разъясните...

10 часов назад, Капрал Хикс сказал:

@Anikot , в движке.

А можно как - нибудь поменять предел ранга НПС в конфигах или же в скриптах с 1000 до 100 дабы НПС не могли поднимать свой ранг выше 100?!
Или всё это так или иначе задаётся в движке игры?

Странная штука - Жизнь. Она продолжается, даже когда превращается в выживание.

@Anikot , теоретически (я думал о таком костыле) можно в конфигах порезать всем ранг, поделив на 10 и посмотреть как будет расти меткость. А вот повышение ранга НПС явно в движке, вряд ли получится ограничение задать без него. Знающие пусть поправят...

Upd. с костылём выше значения рангов тоже менять придётся в скриптах.

Изменено пользователем Капрал Хикс
  • Спасибо 1
  • Полезно 1

Братцы! Подскажите, как можно (и можно ли вообще), увеличить радиус каста пламени у огненных полтергеев? спасибо!)

God save Hatsune Miku!

Добрый день, есть вопрос. Я правильно понимаю, что для правильного и плавного перехода от обычной погоды к выбросу и обратно можно сделать только с помощью динамической погоды?

Привет всем!!! Нашел правку на винтовку m1000 (Даггер) поставил на Сталкер ОП 2.2 но получил вот такой вылет:

Скрытый текст

[17.06.25 21:14:26.207]  
[17.06.25 21:14:26.207] FATAL ERROR
[17.06.25 21:14:26.207]  
[17.06.25 21:14:26.207] [error]Expression    : fatal error
[17.06.25 21:14:26.207] [error]Function      : CInifile::r_section
[17.06.25 21:14:26.207] [error]File          : Xr_ini.cpp
[17.06.25 21:14:26.207] [error]Line          : 397
[17.06.25 21:14:26.207] [error]Description   : Can't open section '%s'
[17.06.25 21:14:26.207] [error]Arguments     : identity_immunities
[17.06.25 21:14:26.207]  
[17.06.25 21:14:26.207]
[17.06.25 21:14:26.207] stack trace:
[17.06.25 21:14:26.207]

Может кто знает, что я не так поставил?

4 часа назад, Chtih сказал:

что я не так поставил?

В конфиге винтовки попробуй заменить первые строки вот на это

Скрытый текст

[wpn_m1000]:WP_SVD
min_radius                   = 50
max_radius                   = 150
description                    = enc_weapons1_wpn-m1000
ef_main_weapon_type            = 3
ef_weapon_type                = 8

 

  • Нравится 1

Всем салют. Как считаете? Стоит ли в ТЧ править impair улучшенных патронов на 1 (как это в ЗП и ЧН сделано) и "играться" с износом ствола только через condition_shot_dec?

Изменено пользователем bsanek628
2 часа назад, bsanek628 сказал:

улучшенных патронов

 

Скрытый текст

Что подразумевается под "улучшенными" патронами? Таких ведь нет в ТЧ, кроме неиспользуемых ammo_9x18_pbp (ammo_5.7x28_fmj и ammo_5.7x28_ap не в счёт потому, что нет в оригинале без правки FN P90 и FN Five-seven для которых они используются). Уточни какие именно. Ты новые патроны в игру добавил? Если через condition_shot_dec, то добавив только ещё ноль ты практически полностью для ТЧ уберёшь загрязнение оружие продуктами горения пороха, что в игре обыгрывается как один из видов "износа". Но это имеет смысл если не добавлены ремкомплекты, и техники, которые могут оружие ремонтировать. И тут изменения impair не имеют смысла если не = 10. Если же ты будешь править цифры в impair, то нужно учитывать, что патроны с индексом _ap должны иметь больший износ в отношении оружия, потому, что они бронебойные и имеют стальной сердечник, а он добавляет настоящий физический износ каналу ствола. Но патронам с индексом _ap в таком случает стоит добавить цифры в k_pierce, это бронебойность, которая в конфигах не обыгрывается, как правило указана в ЧН и ЗП = 1 и для_fmj и для _ap, что не правильно, в ТЧ разница k_pierce между обычными и бронебойными патронами мизерная, от неё отказалась компания-разработчик (признана нежелательной)*, всё "обнулив". Но бронебойность есть, должна быть, она влияет на поражающие свойства патронов.

k_pierce:
= 1.10  пробивает забор деревянный, 
= 1.35  стену пробивает в домиках деревни новичков, 
= 1.50  две стены, 
= 1.75 толстую сосну пробивает.

 

Изменено пользователем Челдон

Здравы будем.

Подскажите, пожалуйста, есть ли возможность сделать так, чтобы у торговцев не обновлялся ассортимент при перезагрузке игры, а обновлялся только при перезаходе на локацию? Ну или выходе/входе в зону действия switch_distance.

@Ворон545 , хранить время обновления в серверном объекте, а не в клиентском. Либо сделать свои условия обновления в trade_manager.script

  • Полезно 2

Аддон для ОП-2.09.2: Яндекс/Google/GitHub/Тема на AP-PRO

naxac.gif

Всем здравия.

Вот в чём может быть причина того, что НПС не занимает конкретно свое место в гулаге?

Решил создать обновлённый лагерь для Бара, куда вписал всех нужных мне персонажей, но конкретно двое из них наотрез отказываются занимать свои позиции.

На примере Иванцова:

Скрытый текст

t = { section = "logic@bar_dolg_ivantsov",
            idle = 0,
            prior = 5, state = {0},
            in_rest = "", out_rest = "",
            predicate = function(obj_info)
                    return obj_info.profile_name == "bar_dolg_ivantsov"
            end
        }
        table.insert(sj, t)

Скрытый текст

; Иванцов (ivantsov)
[logic@bar_dolg_ivantsov]
active = walker@bar_dolg_ivantsov
on_death = death@bar_dolg_ivantsov

 

[walker@bar_dolg_ivantsov]
path_walk = ivantsov_walk
path_look = ivantsov_look
meet = meet@bar_dolg_ivantsov
def_state_standing = guard

 

[death@bar_dolg_ivantsov]
on_info = %+sar2_death_41%

 

[meet@bar_dolg_ivantsov]
meet_state         = 5 | guard@talk_hello
meet_state_wpn     = 5 | guard@talk_hello
use             = true
use_wpn         = true
victim             = 5 | actor
victim_wpn         = 5 | actor

В конфигах самого Иванцова проблем нет - в игре он спокойно появляется и "живёт". Но свое законное место  в лагере он не занимает.

Сам лагерь в игре работает без сбое - другие долговцы спокойно свои позиции занимают.

Надо полагать, здесь всё в порядке, а не как в примере?

[smart_terrains]
none = true

И нет каких-то "внешних" конфигов, по типу секций dsh.gulag.override?

Здесь могла быть ваша реклама.

@mole venomous в каком плане "всё в порядке"?

 

НПС (иванцов) прописан к смарт-террейну с самого начала, но он не занимает отведённые под конкретно него точку, а встает на любую другую.

3 минуты назад, DarkSnowder сказал:

в каком плане

Я не знаю, что там за bar_dolg_ivantsov у тебя, а вот в all.spawn от AMK - мода я нашёл bar_dolg_ivancov, который на индивидуальной логике. Т.е. мой Иванцов не в гулаге. 

Скрытый текст

screenshot

Ну и на написание имени профайла обрати внимание, верно ли.

Здесь могла быть ваша реклама.

@mole venomous Дык мой иванцов  - это абсолютно новый НПС (я и старого пробовал вписать в логику гулага - такая-же история выходит, нив какую на свое законное место не встаёт. Решил создать новый профиль и попробовать вписать его - такая-же история.

18 часов назад, DarkSnowder сказал:

prior = 5

Попробуй приоритет сделать этой работы больше чем других.
Если не поможет, то смени проверку на такую:
 

Скрытый текст

            predicate = function(obj_info)
                             return obj_info.story_id == 5496
                           end

И стори айди назначишь ему, естесна.

  • Полезно 1

Нужен 3D-артист для правок геометрии локаций.
Кто может помочь - пишите в ЛС.

Вот ещё такой вопросец - есть в общем у меня фразы, которые НПС должен говорить при приближении к нему ГГ (типичная схема Бармена из ТЧ)

Скрытый текст

В script_sound:

[chern_ashot_hello_rnd]
сhern_trader             = 0,scenario\unic_nps\ashot_trader_meet_

 

В sound_theme:

chern_ashot_hello                = {min_snd = 2, max_snd = 15, rnd = 100, prior = 5, rnd_id = id(), into_id = id(), max_ids = {}},

 

В логике meet самого "Ашота"

 

[meet@ashot]
meet_state             = 2|nil@chern_ashot_hello
meet_state_wpn         = 2|nil@chern_ashot_hello
meet_talk_enabled     = true
victim                 = 2|actor
victim_wpn             = 2|actor
use                 = true
use_wpn             = true

 

НПС у меня сидит на стуле аля Новиков в ЧН (анимации я соответсвующие портировал, в игре всё пашет), но НПС наотрез отказывается произносить фразы. Исходя из аналогичной строки у бармена:

 

meet_state = 2|barman_talk_free@bar_bar_barmen_hello
meet_state_wpn = 2|barman_talk_free@bar_bar_barmen_hello

 

надо указывать анимацию, которая будет проигрываться перед произношением. Но Дело в том, что в таком случае НПС постоянно встает со стула и усаживается на него обратно. Выглядит нелепо, но походу что без анимационной затычки данный метод вызова особого приветсвия не работает (у Петренко и Воронина ак-же анимки ward\guard вписаны.

 

Вопрос - как сделать так, чтоб НПС и на месте сидел, и фразу говорил?

Создайте аккаунт или авторизуйтесь, чтобы оставить комментарий

Комментарии могут оставлять только зарегистрированные пользователи

Создать аккаунт

Зарегистрировать новый аккаунт в нашем сообществе. Это несложно!

Зарегистрировать новый аккаунт

Войти

Есть аккаунт? Войти.

Войти
  • Недавно просматривали   0 пользователей

    • Ни один зарегистрированный пользователь не просматривает эту страницу.
×
×
  • Создать...