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

Ковыряемся в файлах ОП 2.1

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

Привет всем. @Gregory67, всё по Ц.З. в файле gamedata / config / misc / cycle_tasc. Оружие и объяснение в самом низу.

@FoxGun, не те правки вы смотрели. В шапке темы прекрасная функция примирения. И ещё показометр. Тоже прекрасно выполняет свои функции. Инструкция в архиве. Вот примирение, подробно изложено.

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

 

gamedata / scripts / ui / ui_main_menu
 прописываем после
-- elseif     dik == DIK_keys.DIK_Q then --winsor:дурацкая затея...
            -- self:OnMessageQuitWin()

вот это
elseif dik == DIK_keys.DIK_M then
   npc_drug()

Далее после return true
end
прописываем

function npc_drug() 
  local npc = level_object_by_sid(9506) 
    if npc and npc:alive() then
      npc:set_relation(game_object.friend, db.actor)
    end
end
function level_object_by_sid( sid )
  local sim = alife()

  if sim then
    local se_obj = sim:story_object( sid )
    if se_obj then
      return level.object_by_id( se_obj.id )
    end
  end

  return nil
end

 

Удачи всем.

  • Нравится 3

Т.Ч. Наследство Коллекционера-форум


Подарки

  • 3
  • 2
  • 2
  • Ссылка на комментарий
    5 часов назад, Gregory67 сказал:

    Где можно посмотреть, кто какое оружие (рандомное) может выдать в качестве награды по ЦЗ?

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

    [random_0]
    wpn_abakan
    wpn_abakan_m1
    wpn_abakan_m2
    wpn_acr
    wpn_aek971
    wpn_ak74
    wpn_ak74m
    wpn_ak74_m2
    wpn_ak103
    wpn_ak104
    wpn_ak105
    wpn_ak107
    wpn_ak108
    wpn_ak9
    wpn_akms
    wpn_aks47
    wpn_aks74m
    wpn_apb
    wpn_ba5short
    wpn_beretta_m1
    wpn_bizon
    wpn_bizon1
    wpn_famas_p3_sk1
    wpn_fn2000
    wpn_fn57
    wpn_fn_fal
    wpn_g3
    wpn_g36
    wpn_g36e
    wpn_g41
    wpn_galil
    wpn_glock19
    wpn_glock22
    wpn_glock25
    wpn_groza
    wpn_k98
    wpn_kriss_super_v
    wpn_l85
    wpn_l85_m1
    wpn_l85_m2
    wpn_lr300
    wpn_m1891_30_scope
    wpn_m4_a3
    wpn_m4a1
    wpn_m4super90
    wpn_m16a2_sk1
    wpn_mg42
    wpn_mossberg590
    wpn_mp5sd
    wpn_mp5_m3
    wpn_mp7a3
    wpn_p90
    wpn_ppsh41_sk2
    wpn_protecta
    wpn_raging_bull
    wpn_rem870short
    wpn_rpk47_sk1
    wpn_rpk74_sk1
    wpn_saiga12c
    wpn_sbr
    wpn_sg552_sk1
    wpn_sig550
    wpn_sig552camo
    wpn_sig_m1
    wpn_sks_s
    wpn_spas12
    wpn_svu
    wpn_tavor
    wpn_val
    wpn_val_m1
    wpn_vepr
    wpn_vitjaz
    wpn_uzi
    wpn_wincheaster1300
    wpn_xm8_para_sk2

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

    level_4 = {
            "wpn_ak9",
            "wpn_awm",
            "wpn_g3",
            "wpn_rpk74_sk1",
            "wpn_g41",
            "wpn_l85_m2",
            "wpn_sr25_mk11_mod0_sk1",
            "wpn_mp5_m3",
            "wpn_vint14"
        },

     

    @FoxGun, с Шерстюком и без правок у Сидора можно помириться.

    • Спасибо 1
    • Нравится 3
    • Не нравится 1
    Ссылка на комментарий

    @акадрhttps://www.amk-team.ru/forum/topic/13904-kovyryaemsya-v-faylah-op-21/?do=findComment&comment=1323045

    вот пост, там всё написано. В место Серый пропишите, что я вам скинул и поменяйте спавн ид.

    Если не получается, вот подробно прописал 

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

     

    gamedata / scripts / ui / ui_main_menu
     прописываем до
    -- elseif     dik == DIK_keys.DIK_Q then --winsor:дурацкая затея...
                -- self:OnMessageQuitWin()

    вот это
    elseif dik == DIK_keys.DIK_M then
       perespawn()

    Далее после return true
    end
    прописываем

    function perespawn() 
     local obj 
            for i=1,65534 do 
              obj = alife():object(i) 
                if obj and obj:name() == "bar_dolg_ivancov" then 
                  alife():release(obj) 
              break 
                end 
            end 
     alife():create(6488)
     
     end

     

     

    Изменено пользователем Kashafoch
    • Спасибо 1
    • Полезно 2

    Т.Ч. Наследство Коллекционера-форум


    Подарки

  • 3
  • 5
  • 4
  • Ссылка на комментарий

    Всем привет! Я вот не могу тут найти правку на отключение радиации на Болотах. Есть у кого готовая или скажите как самому это сделать?

    Добавлено lexa.3012,

    Путь: OP-2.1\gamedata\scripts\binders\bind_actor.script 
    Найти: marsh_radiation.update() и сделать так: --marsh_radiation.update()

    Ссылка на комментарий

    Всех приветствую. Бесит, что при обыске зомбированных, получаешь смачную "оплевуху" можно ли как то это убрать, если возможно, то что именно подправить, смотрел в интернете не нашёл(может слепой)?

     

    Добавлено lexa.3012,

    Путь: OP-2.1\gamedata\scripts\binders\bind_stalker.script  

    Найти: sak.zombie_checkup() и сделать так: --sak.zombie_checkup()

    • Нравится 1
    Ссылка на комментарий

    Привет всем. Поковырялся в исходниках движка и нашёл интересный файл _matrix.h. Собственно вопрос этот файл часто используется в игре? Я думаю что там частично можно распараллелить умножение матриц с помощью OpenMP.  

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

    // Multiply RES = A[4x4]*B[4x4] (WITH projection)
        ICF    SelfRef    mul            (const Self &A,const Self &B)
        {
            VERIFY    ((this!=&A)&&(this!=&B));
            m[0][0] = A.m[0][0] * B.m[0][0] + A.m[1][0] * B.m[0][1] + A.m[2][0] * B.m[0][2] + A.m[3][0] * B.m[0][3];
            m[0][1] = A.m[0][1] * B.m[0][0] + A.m[1][1] * B.m[0][1] + A.m[2][1] * B.m[0][2] + A.m[3][1] * B.m[0][3];
            m[0][2] = A.m[0][2] * B.m[0][0] + A.m[1][2] * B.m[0][1] + A.m[2][2] * B.m[0][2] + A.m[3][2] * B.m[0][3];
            m[0][3] = A.m[0][3] * B.m[0][0] + A.m[1][3] * B.m[0][1] + A.m[2][3] * B.m[0][2] + A.m[3][3] * B.m[0][3];

            m[1][0] = A.m[0][0] * B.m[1][0] + A.m[1][0] * B.m[1][1] + A.m[2][0] * B.m[1][2] + A.m[3][0] * B.m[1][3];
            m[1][1] = A.m[0][1] * B.m[1][0] + A.m[1][1] * B.m[1][1] + A.m[2][1] * B.m[1][2] + A.m[3][1] * B.m[1][3];
            m[1][2] = A.m[0][2] * B.m[1][0] + A.m[1][2] * B.m[1][1] + A.m[2][2] * B.m[1][2] + A.m[3][2] * B.m[1][3];
            m[1][3] = A.m[0][3] * B.m[1][0] + A.m[1][3] * B.m[1][1] + A.m[2][3] * B.m[1][2] + A.m[3][3] * B.m[1][3];

            m[2][0] = A.m[0][0] * B.m[2][0] + A.m[1][0] * B.m[2][1] + A.m[2][0] * B.m[2][2] + A.m[3][0] * B.m[2][3];
            m[2][1] = A.m[0][1] * B.m[2][0] + A.m[1][1] * B.m[2][1] + A.m[2][1] * B.m[2][2] + A.m[3][1] * B.m[2][3];
            m[2][2] = A.m[0][2] * B.m[2][0] + A.m[1][2] * B.m[2][1] + A.m[2][2] * B.m[2][2] + A.m[3][2] * B.m[2][3];
            m[2][3] = A.m[0][3] * B.m[2][0] + A.m[1][3] * B.m[2][1] + A.m[2][3] * B.m[2][2] + A.m[3][3] * B.m[2][3];

            m[3][0] = A.m[0][0] * B.m[3][0] + A.m[1][0] * B.m[3][1] + A.m[2][0] * B.m[3][2] + A.m[3][0] * B.m[3][3];
            m[3][1] = A.m[0][1] * B.m[3][0] + A.m[1][1] * B.m[3][1] + A.m[2][1] * B.m[3][2] + A.m[3][1] * B.m[3][3];
            m[3][2] = A.m[0][2] * B.m[3][0] + A.m[1][2] * B.m[3][1] + A.m[2][2] * B.m[3][2] + A.m[3][2] * B.m[3][3];
            m[3][3] = A.m[0][3] * B.m[3][0] + A.m[1][3] * B.m[3][1] + A.m[2][3] * B.m[3][2] + A.m[3][3] * B.m[3][3];
            return *this;
        }

        // Multiply RES = A[4x3]*B[4x3] (no projection), faster than ordinary multiply
        ICF    SelfRef    mul_43        (const Self &A,const Self &B)
        {
            VERIFY    ((this!=&A)&&(this!=&B));
            m[0][0] = A.m[0][0] * B.m[0][0] + A.m[1][0] * B.m[0][1] + A.m[2][0] * B.m[0][2];
            m[0][1] = A.m[0][1] * B.m[0][0] + A.m[1][1] * B.m[0][1] + A.m[2][1] * B.m[0][2];
            m[0][2] = A.m[0][2] * B.m[0][0] + A.m[1][2] * B.m[0][1] + A.m[2][2] * B.m[0][2];
            m[0][3] = 0;

            m[1][0] = A.m[0][0] * B.m[1][0] + A.m[1][0] * B.m[1][1] + A.m[2][0] * B.m[1][2];
            m[1][1] = A.m[0][1] * B.m[1][0] + A.m[1][1] * B.m[1][1] + A.m[2][1] * B.m[1][2];
            m[1][2] = A.m[0][2] * B.m[1][0] + A.m[1][2] * B.m[1][1] + A.m[2][2] * B.m[1][2];
            m[1][3] = 0;

            m[2][0] = A.m[0][0] * B.m[2][0] + A.m[1][0] * B.m[2][1] + A.m[2][0] * B.m[2][2];
            m[2][1] = A.m[0][1] * B.m[2][0] + A.m[1][1] * B.m[2][1] + A.m[2][1] * B.m[2][2];
            m[2][2] = A.m[0][2] * B.m[2][0] + A.m[1][2] * B.m[2][1] + A.m[2][2] * B.m[2][2];
            m[2][3] = 0;

            m[3][0] = A.m[0][0] * B.m[3][0] + A.m[1][0] * B.m[3][1] + A.m[2][0] * B.m[3][2] + A.m[3][0];
            m[3][1] = A.m[0][1] * B.m[3][0] + A.m[1][1] * B.m[3][1] + A.m[2][1] * B.m[3][2] + A.m[3][1];
            m[3][2] = A.m[0][2] * B.m[3][0] + A.m[1][2] * B.m[3][1] + A.m[2][2] * B.m[3][2] + A.m[3][2];
            m[3][3] = 1;
            return *this;
        }

     

    • Полезно 1
    Ссылка на комментарий

    Народ, всем привет.

    Столкнулся с таким траблом - после того, как телепортировался в Лабиринт пропало оружие. Прицел отображается, а выстрелить никак( Хотя в слоте  ствол есть, так же не могу воспользоваться ни холодным, ни фотиком. После перезагрузки визуал оружие появляется, можно стрелять, но стоит убрать ствол - его уже не достать((( Как это лечить?!?! 

     

    Изменено пользователем terrazoid
    повтор текста сообщения
    Ссылка на комментарий

    @terrazoid, откатываться на момент до появления этой траблы. Чтоб её не возникало в будущем, лучше установить комплексную правку на неубирание оружия для всех случаев (обыск трупов, доставание ПДА, гравик и экза-невидимка). Всё это можно найти в готовом виде в шапке.

    • Нравится 1
    • Не нравится 1
    • Согласен 1
    • Полезно 1
    Ссылка на комментарий

    @Пивкабы xD

    3 часа назад, Пивкабы xD сказал:

    Не на стрелу, а в воду в стороне.

    Очень медленно (мелкими шажками) в телепорт входи. Или прыгуном на стрелу запрыгни. Я бывало, бегом в телепорт забегал и промахивался (если узкие места, типа стрелы и т.д.).

    Добавлено lexa.3012,

    Немного дополню ответ автора поста:  Уважаемый, ни Мод.Движки, ни правки не влияют на данные "кривые" приземления. Влияет конкретно ваше знание механики данной игры(ГГ в полёте движется). В телепорты нужно заходить очень медленно и как он сработает -- сразу отпускать клавишу движения, иначе Вы просто промажете(так же, есть телепорты с малым радиусом, когда с одного в другой). Это касается не только Островов, но и Волозара.

    Заметка изменена

    • Нравится 3
    • Согласен 1
    Ссылка на комментарий

    Не мог бы кто выложить батник на 4 или 8 ядерный.(патч 8.2) Раньше было файлом, на форуме не нашел. По примеру в шапке, сделать не получается, видимо тямы не хватает.

    Добавлено lexa.3012,

    Ненужно никаких "батников". Прописывается единожды через консоль. (Одно ядро оставляем системе).

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

     2020-11-15-172614.png

     

    Заметка изменена

    • Спасибо 1
    • Полезно 1
    Ссылка на комментарий

    Какой файл ковырять, дабы убрать остановку ГГ и уборку оружия при открытии инвентаря?

    Добавлено lexa.3012,

    Данная правка давным-давно была: пере собрана и переименована(дабы не возникало проблем с "Маск.Экзой").

    Нынешнее название: "17.Маск.Экза не портится, оружие не прячется при использовании всего". (Сама правка находится:   50 правок + Мод.Движок).

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

    Комплексная правка на маскировочный экзоскелет. С данной правкой он становится многоразовым + можно использовать оружие. Для патча 8к.2

    Так же, с данной правкой появляются возможности: бегать с открытым рюкзаком, рюкзак не будет закрываться после съедания чего-либо, или лечении. Так же, оружие не будет убираться из рук: при съедания чего-либо, или лечении.

    Установка: поместить папку "gamedata" в игру. При пересечении файлов, адаптировать друг к дружке.

    И самое главное: данная правка как и все остальные, ставится Вами на свой страх и риск.

     

    Заметка изменена

    Intel Core i5-12400F, 32 GB RAM DDR4, NVIDIA 3060 8gb VRAM

    Ссылка на комментарий

    Всем доброго, не нашел праввку на гравипушку для увеличения радиуса захвата, если есть подскажите где взять или где поправить?

    Добавлено lexa.3012,

    Здесь посмотри: OP-2.1\gamedata\scripts\binders\bind_ggun.script

    В строках: 266 и 326, замени 13, на нужное. (С дури много ставить только ненужно)..............

    Заметка изменена

    • Нравится 2
     

    ОП-2,2; железо:матьMAXIMUS VI FORMULA:,DDR3(2000Mhz)-32Гб,Intel Core i7-4770K 3.5GHz, GeForce RTX 4070 , ssd-248gb,win11prof.x64

    Ссылка на комментарий

    Позвольте поинтересоваться, есть ли отдельный параметр, влияющий на меткость нпц в ОП 2.1? 

    Знаю про eye_fov  и  eye_range, но  дальность видимости и угол обзора уменьшать не хотелось бы, так весь реализм пропадёт. 

    Или может быть, кто-то знает, где меткость завязана на уровень сложности? 

    Нравится играть на реализме, но когда босяки тебя ваншотят с километра, тут им и не пахнет - хотелось бы перестрелки. А уровень снижать - это куча параметров снизится, которые меня устраивают.

     

     

     

    Ссылка на комментарий
    Гость
    Эта тема закрыта для публикации сообщений.
    • Недавно просматривали   0 пользователей

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

    AMK-Team.ru

    ×
    ×
    • Создать...