Jump to content
Murarius

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

Recommended Posts

@Гризл, misc - effectors

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

[zoom_inertion_effector]
camera_move_epsilon    = 0.0185   ;0.03        ;разница между двумя векторами направления камера, когда считается что камера двинулась
disp_min        = 0.00     ;0.00    
speed_min        = 0.0125 ;0.0001
zoom_aim_disp_k        = 0.105     ;0.00     ;коэффициенты соотношения полной дисперсии стрельбы
zoom_aim_speed_k    = 0.006     ;0.00    ;и покачивания прицела
delta_time        = 2700     ;2000;время через которое эффектор меняет направление движения (в милисекундах)


всё по 0 сделай

Edited by Dmitry Sazonov
Добавлено lexa.3012,

Убираем раскачку прицела.

  • Thanks 1

Конфиг: Asus z-370 Prime A/ Intel Core i7 8700k 4.8gHz/ Geforce Palith GameRock 1080/ RAM Corsair Vengeance 4x8 Gb/ SSD WD 256Gb System/ HDD Seagate 3Tb Other

Share this post


Link to post
Share on other sites
lexa.3012    1,314

@Гризл, По поводу раскачки ствола: OP-2.1\gamedata\config\misc\effectors

                                                                             run_amplitude            =    0.0
                                                                             walk_amplitude            =    0.0
                                                                             limp_amplitude            =    0.0

Строки в низу файла не правил, стоят стоковые. Не один прицел не качает.

Edited by lexa.3012
  • Thanks 1

Жизнь - хорошая, но нестабильная игра. Рано или поздно всех игроков ожидает вылет..........

Share this post


Link to post
Share on other sites
Minya    426

@kulikulikuli  Посмотри.

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

Самое простое, без переигровки, с отстрелом всех заспавненых (fly_island.script):

function fli_chaes_set_range()
    local object_all
    for k, v in pairs (db.storage) do
        object_all = level.object_by_id(k)

        if object_all and object_all:section() == "fli_snp1" and object_all:alive() then
            object_all:set_range(450) -- это значение изменить на 10
        end
    end
end

 

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

Пост не сносить, вдруг кто сам в ручную захочет себе поправить. (Правка на Снегиря).

Edited

  • Downvote 1

MinyaUr.gif

Share this post


Link to post
Share on other sites
achavanin    306
1 час назад, roma160274 сказал:

Всем привет. Ребята подскажите, как отличить цз которые повторяются, и цз которые без лимита времени, за которые в конце всякие плюшки дают?

 

Если хочешь выполнить ЦЗ в которых приносишь предметы и получить хорошую плюшку за это, то смотри по приоритетам , как  правило в строке внизу; prior = 1,2,3- и далее , обычно до 10-16 приоритетов в таких наградах, может быть и больше или поменьше и соответственно  награда , например у Охотника в Баре награда;reward_item = wpn_toz, repair_item_xo, wpn_bush_tactik, af_power_1, и ачивка ; reward_info = acv_gluhar. Самые лучшие награды те, которые влекут за собой ачивку, т.е в описании ЦЗ всегда должна быть строка reward_info = acv ....., типа вышеприведенной у Охотника.

Edited by achavanin
  • Thanks 1

Intel Core i3-8100 CPU @ 3.60GHz Ram16,0ГБ.NVIDIA GeForce GTX 1060 6GB . ОС Windows 10 Pro 64-bit,Сталкер ТЧ 4-й патч,Народная Солянка от19.04+14.08+патч3.09 Пройдена 3 раза!Прошел ТТ2 +апдейт. Пройден Фотограф!Народная Солянка 2016г. пройдена!

Share this post


Link to post
Share on other sites
Dennis_Chikin    3,605

Неписи в друзьях, Шерстюк и Кузнецов - это как раз отдельные.

для шерстюка надо сделать actor:disable_info_portion( "sherstuk_enemy" )

 

Вместо "actor" вписывать то, что надо в зависимости от места, где добавляем. В спкрипте. Если, к примеру, в bind_actor - то self.object:disable_info_portion( "sherstuk_enemy" )

 

 

Главный квест ОПы - научиться редактировать файлы и понимать, что где находится.

Все ведь хотят реализма? Ну так вот он самый реалистичный реализм.

Edited by Dennis_Chikin
  • Thanks 2
  • Like 2
  • Haha 2

Share this post


Link to post
Share on other sites
achavanin    306
5 минут назад, _Kot-MatRosKin_ сказал:

Доброго времени суток! Знает ли кто, как прицелу прикрутить автозахват? 

Прицелу не пробовал, а для оружия с несъемным прицелом  вот так

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

Автозахват ставится только на сам ствол.

При активации функции автозахвата оружие будет стрелять только одиночными.

Если это устраивает, то делаем следующее:

1. Меняем класс оружия.

class = WP_BINOC

2. В любом месте до секции худа (например после прописанных звуков) вставляем следующее:

snd_gyro         = weapons\binoculars_gyro

snd_zoomin     = weapons\binoculars_zoomin

snd_zoomout   = weapons\binoculars_zoomout

 

vision_present = true

vis_frame_speed = 4

vis_frame_color = 0.7,0.7,0.7,1.0

found_snd = detectors\DA-2_beep1

 

  • Thanks 1
  • Like 1
  • Полезно 2

Intel Core i3-8100 CPU @ 3.60GHz Ram16,0ГБ.NVIDIA GeForce GTX 1060 6GB . ОС Windows 10 Pro 64-bit,Сталкер ТЧ 4-й патч,Народная Солянка от19.04+14.08+патч3.09 Пройдена 3 раза!Прошел ТТ2 +апдейт. Пройден Фотограф!Народная Солянка 2016г. пройдена!

Share this post


Link to post
Share on other sites
Nevada47    369
24 минуты назад, pere20 сказал:

Подскажите как прописать Борова в нейтралы,

Можно попробовать как в ОП 2

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

 

В gamedata\scripts\ui_main_menu.script 

После строк 

    elseif dik == DIK_keys.DIK_Q then
            self:OnMessageQuitWin()

добавить

 

elseif dik == DIK_keys.DIK_M then
   npc_drug()

Далее в самый конец файла добавляем:

function npc_drug() -- Делаем непися другом
  local npc = level_object_by_sid(425) --( ... ) сюда писать story_id из алл.спавна. 425 - это Фанат.
    if npc and npc:alive() then
      npc:set_relation(game_object.friend, db.actor)
    end
end

Вызов из главного меню клавишей М.

 

 

Edited by Nevada47
  • Thanks 1
  • Like 1
  • Полезно 1

«Ну и жесть!» Сказал асфальтовый каток, оглянувшись назад на бывшую "копейку".

Nevada47.gif

Share this post


Link to post
Share on other sites
36 минут назад, Sergii Udod сказал:

Подскажите пожалуйста как можно подправить user.ltx

 

https://www.amk-team.ru/forum/faq/

Тебе в раздел: Оптимизация.

Edited by Алексей.1.2.3.

%D0%90%D0%BB%D0%B5%D0%BA%D1%81123%D0%B5%D0%B9.gif

Share this post


Link to post
Share on other sites
Begemooto    7
43 минуты назад, _Kot-MatRosKin_ сказал:

Кто может поделится скриптом, прыжок на 3-5 метров

 Кто то ранее выкладывал в этой теме

В ui_main_menu scripts добавил это в конце:

 

elseif dik == DIK_keys.DIK_F2 then
                        db.actor:set_actor_position(device().cam_pos:add(device().cam_dir:mul(5.0)))
                get_console():execute("main_menu off")
        elseif dik == DIK_keys.DIK_F3 then
                        db.actor:set_actor_position(device().cam_pos:add(device().cam_dir:mul(10.0)))
                get_console():execute("main_menu off")

        end

 

F2 прыжок на пять метров F3 прыжок на десять

Неплохо бы было сделать как отдельную правку, но мало ли кто еще что то в этом скрипте может прописать.

Edited by Begemooto
  • Thanks 1
  • Полезно 1

Share this post


Link to post
Share on other sites
Dennis_Chikin    3,605
54 минуты назад, Dmitry Sazonov сказал:

вырезать метки на технические подуровневые мешки кто будет? 

Кому надо, тот и будет.


function set_spots()
    -- local obj = sim:object( "old_doc_4" )
    -- if obj then
    --    level.map_add_object_spot( obj.id, "artefact_location", obj:name() .. " y:" .. obj.position.y )
    -- end

    local c_af = clsid.artefact    -- clsid.artefact_s == electric_ball
    local c_ibox = clsid.inventory_box

    local t_spots = {    -- вписать ненужное
    --    ["gar_camp_fire_0002"] = true,
    --    ["gar_camp_fire_0003"] = true,
    --    ["gar_camp_fire_0005"] = true,
    --    ["gar_sniper_in_restrictor"] = true,
    --    ["gar_space_restrictor"] = true,
    }

    local obj, gvid, cls_id
    for i = 1, 65534 do
        obj = sim:object( i )
        if obj then
            cls_id = obj:clsid()
            if cls_id == c_af then
                if obj.parent_id == 65535 then    -- арты
                    gvid = obj.m_game_vertex_id
                    if gg:valid_vertex_id( gvid ) then
                        if gg:vertex( gvid ):level_id() == level_id then
                            log( "info", "found art: %s ( %.02f, %.02f, %.02f )", obj:name(),
                                obj.position.x, obj.position.y, obj.position.z )
                            level.map_add_object_spot( i, "artefact_location",
                                obj:name() .. " y:" .. obj.position.y )
                end    end    end

            elseif cls_id == c_ibox    -- and not онлайновый_ящик:is_inv_box_empty()
                and ( string_sub( obj:section_name(), 1, 1 ) == "m" or string_sub( obj:section_name(), 1, 1 ) == "e" )
                -- and string_sub( obj:section_name(), 1, 1 ) ~= "m"

                and obj.position.y >= -290    -- ящики Бака
              then    -- тайники
                gvid = obj.m_game_vertex_id
                if gg:valid_vertex_id( gvid ) then
                    if gg:vertex( gvid ):level_id() == level_id then
                        -- log( "info", "found treasure: %s", obj:name() )
                        local ini = obj:spawn_ini()
                        if ini and ini:section_exist( "logic" )
                          and ini:line_exist( "logic", "actor_item" ) then
                            level.map_add_object_spot( i, "habar_location",
                                obj:name() .. " y:" .. obj.position.y )
                        else level.map_add_object_spot( i, "habar_clear_location", --"treasure"
                            obj:name() .. " y:" .. obj.position.y )
                        end

                        --local item = level.object_by_id( i )
                        --if item then amk_particle.amk_particle( {
                        --    ["obj"] = item, ["looped"] = true,
                        --    ["particle"] = "explosions\\campfire_grill" } )
                        --end
                end    end

            elseif cls_id == 89 then
                gvid = obj.m_game_vertex_id
                if gg:valid_vertex_id( gvid ) then
                    if gg:vertex( gvid ):level_id() == level_id then
                        local ini = obj:spawn_ini()
                        if ini and ini:section_exist( "drop_box" ) then
                            -- log( "info", "found drop_box: %s", obj:name() )
                            level.map_add_object_spot( i, "green_location", obj:name() )
                end    end    end

            -- elseif c_anoms[cls_id] then
            --    gvid = obj.m_game_vertex_id
            --    if gg:valid_vertex_id( gvid ) then
            --        if gg:vertex( gvid ):level_id() == level_id then
            --            level.map_add_object_spot( i, "alife_combat_attack", obj:name() )
            --    end    end
            -- elseif cls_id == clsid.controller_s then
            --    gvid = obj.m_game_vertex_id
            --    if gg:valid_vertex_id( gvid ) then
            --        if gg:vertex( gvid ):level_id() == level_id then
            --            level.map_add_object_spot( i, "defend_lager_location", obj:name() )
            --            log( "info", "found: %s ( %.02f, %.02f, %.02f )", obj:name(),
            --                obj.position.x, obj.position.y, obj.position.z )
            --    end    end
            -- elseif string.sub( obj:section_name(), 6, 10 ) == "ameba" then
            --    gvid = obj.m_game_vertex_id
            --    if gg:valid_vertex_id( gvid ) then
            --        if gg:vertex( gvid ):level_id() == level_id then
            --            level.map_add_object_spot( i, "alife_combat_attack", obj:name() )
            --            log( "info", "found: %s ( %.02f, %.02f, %.02f )", obj:name(),
            --                obj.position.x, obj.position.y, obj.position.z )
            --    end    end

            -- elseif obj:section_name() == "lights_hanging_lamp" then
            --    gvid = obj.m_game_vertex_id
            --    if gg:valid_vertex_id( gvid ) then
            --        if gg:vertex( gvid ):level_id() == level_id then
            --            level.map_add_object_spot( i, "defend_lager_location", obj:name() )
            --            log( "info", "found: %s ( %.02f, %.02f, %.02f )", obj:name(),
            --                obj.position.x, obj.position.y, obj.position.z )
            --    end    end
            -- elseif t_spots[obj:name()] then
            --    log( "info", "found: %s ( %.02f, %.02f, %.02f ), lv: %s", obj:name(),
            --        obj.position.x, obj.position.y, obj.position.z,
            --        ( gg:valid_vertex_id( obj.m_game_vertex_id )
            --          and gg:vertex(sobj_gv):level_id() ) or "n/a" )
            --    level.map_add_object_spot( i, "defend_lager_location", obj:name() )
    end    end    end
end

примерно так. убираем/добавляем что нам надо/не надо.

 

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

Не тереть.

  • Thanks 1

Share this post


Link to post
Share on other sites
Stariy    73

По Гарику то еще с оп 2.0 правка была.

В файле sak_dialog.script  1 меняем на 0.

Должно быть так:

function give_antirad(first_speaker, second_speaker)
    lost("antirad", 0)
end
function antirad_have()
    return has("antirad",0)

  • Like 1
  • Согласен 1

Share this post


Link to post
Share on other sites
lexa.3012    1,314

Слышал краем уха что кто-то, куда-то не пролазит?

                                                                                        ph_box1_size                 = 0.35, 0.65,  0.3
                                                                                        ph_box2_center              = 0.0,  0.4,   0.0 
                                                                                        ph_box2_size                 = 0.25, 0.4,   0.25

Поставь так. В текстуры провала не будет. (Под мост на Кордоне, залезешь как мышка, в полном присяде).

 

Edited by lexa.3012
  • Согласен 1

Жизнь - хорошая, но нестабильная игра. Рано или поздно всех игроков ожидает вылет..........

Share this post


Link to post
Share on other sites

Перевод костюмов,если кому надо

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

Белый научник монолита 
[scientist_suit_white]

Костюм пожарного
[fire_outfit]

Костюм пожарного доработанный Василием
[fire_outfit_m1]

Плащ психиатра
[psih_outfit]

КОСТЮМ НОВИЧКА
[novice_outfit]

Кожанный плащ Охотников (зелёный)
[novice_outfit_rain_1]

КОСТЮМ БАНДИТА
[bandit_outfit]

КОСТЮМ НАЕМНИКА
[killer_outfit]

КОСТЮМ МОНОЛИТОВЦА
[monolit_outfit]

КОСТЮМ Последнего Дня
[lastday_outfit]

КОСТЮМ ВОЕННОГО СПЕЦНАЗА
[specops_outfit]

АРМЕЙСКИЙ БРОНЕКОСТЮМ СКАТ-9М
[military_outfit]

АРМЕЙСКИЙ СПЕЦКОСТЮМ СКАТ-10
[militaryspec_outfit]

КОСТЮМ ОХРАННИКА В БАРЕ
[stalker_guard_outfit]

КОСТЮМ НЕЙТРАЛЬНОГО СТАЛКЕРА
[stalker_outfit]

Ветеран-1
[stalker_outfit_v1]

Ветеран-2
[stalker_outfit_v2]

Ветеран-3
[stalker_outfit_v3]

НАУЧНЫЙ КОСТЮМ НЕЙТРАЛЬНОГО СТАЛКЕРА ("Сева")
[scientific_outfit]

ЛЕГКИЙ КОСТЮМ СВОБОДЫ
[svoboda_light_outfit]

ТЯЖЕЛЫЙ КОСТЮМ СВОБОДЫ
[svoboda_heavy_outfit]

ОБЫЧНЫЙ КОСТЮМ ДОЛГА
[dolg_outfit]

ТЯЖЕЛЫЙ КОСТЮМ ДОЛГА
[dolg_heavy_outfit]

НАУЧНЫЙ КОСТЮМ ДОЛГА
[dolg_scientific_outfit]

ОБЫЧНЫЙ КОСТЮМ УЧЕНОГО
[ecolog_outfit]

УКРЕПЛЕННЫЙ КОСТЮМ УЧЕНОГО
[protection_outfit]

Scientific Freedom
[freedom_scientific_outfit]

Scientific merc
[merc_scientific_outfit]

Scientific Monolit
[monolit_scientific_outfit]

НАУЧНЫЙ КОСТЮМ Последнего Дня
[scientific_lastday_outfit]

Master_bandit
[bandit_master_outfit]

Soldier_outfit
[outfit_soldier_m1]

Veteran_bandit
[bandit_veteran_outfit]

ГРАВИКОСТЮМ /в Новой редакции/
[soldier_outfit]

Nano suit by Volazar
[nano_suit]

Нанозащитный костюм "Стальной Крыс"
[nano_outfit]

КОСТЮМ Тирекса  
[strelok_outfit]

ЛЕГКИЙ КОСТЮМ ЧИСТОГО НЕБА
[nebo_light_outfit]

ТЯЖЕЛЫЙ КОСТЮМ ЧИСТОГО НЕБА
[nebo_heavy_outfit]

НАУЧНЫЙ КОСТЮМ ЧИСТОГО НЕБА
[nebo_scientific_outfit]

КОСТЮМ МОНОЛИТОВЦА ЧЕРНЫЙ
[monolit_black_outfit]

КОСТЮМ МОНОЛИТОВЦА ЧЕРНЫЙ УЛУЧШЕННЫЙ
[monolit_black_outfit_plus]

ЭКЗОСКЕЛЕТ НЕЙТРАЛЬНОГО СТАЛКЕРА
[exo_outfit]

ЭКЗОСКЕЛЕТ НАЁМНИКОВ
[killer_blue_exoskeleton]

ЭКЗОСКЕЛЕТ ДОЛГА
[dolg_black_exoskeleton]

ЭКЗОСКЕЛЕТ СВОБОДЫ
[svoboda_exoskeleton]

ЭКЗОСКЕЛЕТ МОНОЛИТА
[monolit_exoskeleton]

ЭКЗОСКЕЛЕТ БАНДИТОВ (from SRP 0.2f)
[exo_bandit_outfit]

ЭКЗОСКЕЛЕТ ЧИСТОГО НЕБА
[nebo_exo_outfit]

ЭКЗОСКЕЛЕТ СНАЙПЕР "С"
[outfit_lethalspeed_exo_m1]

ЭКЗОСКЕЛЕТ  СНАЙПЕР "НС"
[outfit_lethalspeed_exo_m2]

ЭКЗОСКЕЛЕТ "ШТУРМОВИК"
[exo_military_outfit]

ЭКЗОСКЕЛЕТ "Черного Доктора"
[exo_doktor_outfit]

МОДИФИЦИРОВАННЫЙ ЭКЗОСКЕЛЕТ НАЁМНИКОВ ("killer green") 
[killer_green_exoskeleton]

ВОЕННЫЙ ЭКЗОСКЕЛЕТ
[voen_exo_outfit]

НАУЧНЫЙ ЭКЗОСКЕЛЕТ
[exo_scientist_outfit]

ЭКЗОСКЕЛЕТ ЭКОЛОГОВ
[exo_ecolog_outfit]

ЭКЗОСКЕЛЕТ "Дон Кихот"
[exo_knight_outfit]

НОВЫЙ ЭКЗОСКЕЛЕТ, прототип СКАТ-15М
[exo_mil_exoskeleton]

ПРОТОТИП ЭКЗОСКЕЛЕТА
[neytral_exo_gaz_outfit_m1]

ЭКЗОСКЕЛЕТ Последнего Дня
[exo_lastday_outfit]

Модернизированная "Сева"
[seva_scient_outfit]

БРОНЕКОСТЮМ ГАГАРИН
[gagarin_outfit]

БРОНЕКОМБИНЕЗОН ВОСХОД
[voshod_outfit]

НОВЫЙ ГРАВИКОСТЮМ
[akill_soldier_outfit]

Аномальная куртка новичка
[outfit_novice_m1]

Уплотненный бандитский костюм
[outfit_bandit_m1]

Бандитский плащ повышенной выносливости
[bandit_master_outfit_m1]

Охотничий комбинезон Долга
[outfit_dolg_m1]

Укрепленный комбинезон Наемника
[outfit_killer_m1]

Модифицированный армейский бронекостюм ("Лечебный Берилл")
[outfit_specnaz_m1]

Комбинезон Призрака
[outfit_stalker_m1]

Куртка и рюкзак бывалого (костюм туриста)
[outfit_stalker_m2]

Комбинезон Стрелка
[stalker_outfit_m3]

Модифицированный комбинезон свободы
[outfit_svoboda_m1]

Мас. Халат: Меченый (Стрелок)
[meceniy_outfit_new]

 

  • Thanks 3
  • Like 1

Christian-Viper.gif

Share this post


Link to post
Share on other sites
alex00g    0

Помогите,вылет на агропроме.

Expression    : vertex || show_restrictions(m_object)
Function      : CPatrolPathManager::select_point
File          : patrol_path_manager.cpp
Line          : 155
Description   : any vertex in patrol path [esc1_rebyta1_walk] in inaccessible for object [esc_buusty_team_848535]

 

Добавлено polkooovnik,

Ребятки басти зашли туда куда нельзя им заходить

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

Данного вылета давно нет, но оставим на авось.

Лечение: удалить через меню "esc1_rebyta1_walk".

Share this post


Link to post
Share on other sites
Dennis_Chikin    3,605

Oversized netpacket before write! [8202 > 8192]
...

s\op-2.1\gamedata\scripts\binders\binder_safe.script:61 ...

 

Предупреждали же: не пихайте все в один рюкзак. Лучше положить 10 рядом, и заполнять так, чтобы список влезал на одну страницу.

 

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

Не тереть.

Share this post


Link to post
Share on other sites
Nevada47    369
11 часов назад, Сергей Северов сказал:

Подскажите как убрать хиты при обыске зомб. сталкеров

В bind_stalker.script закомментить строку sak.zombie_checkup().

  • Thanks 3

«Ну и жесть!» Сказал асфальтовый каток, оглянувшись назад на бывшую "копейку".

Nevada47.gif

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.


AMK-Team.ru

×
×
  • Create New...