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

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

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

function rostok_chase3()
    if not rostok_strn3 then rostok_strn3 = alife():object( "bar_freedom_chasers_attack" ) end
    local g = rostok_strn3 and rostok_strn3.gulag
    if g and g.population_comed >= 1 then return false
    elseif actor:dont_has_info( "bar_ambush_dead" ) then
        actor:give_info_portion( "bar_ambush_dead" )
    end

    return true
end

 

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

 

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

Доброй ночи.

Откопал сегодня команду kEXT_1 в key_bindings. Оказывается, она в сингле используется, только вот не очень пойму, для чего, не силён в с++.. Случайно не через нее назначается кнопка для автонаведения прицела на врагов при виде от третьего лица?

Аддон для ОП-2.09.2: Яндекс/Google/GitHub

naxac.gif

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

@naxac, такое впечатление. Вроде как целится в ближайшего к актору живого моба, которого актора сейчас видит.

 

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

прива. не подскажете насчёт одного дела

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

У меня такая ситуация - после разговора с ГГ на другой локации спавятся (через скрипт) сталкеры. Я туда прихожу, они бегают по локации и мочат всех враждебных. Вопрос - как мне сделать так, чтобы эти боты после получения опр. поршня и его активации, прекратили свободное перемещение и привязывались сразу к нескольким гулагам?

 

Данные в spawn_sections:

 [ros_soldier]:stalker
$spawn             = "respawn\ros_soldier"
character_profile    = ros_soldier
spec_rank         = veteran
community         = soldier
custom_data         = scripts\my\ros_soldier_data.ltx

 

Данные в логике которую я составил

[smart_terrains]
ros_smart_stalker1         = {+bar_rescue_research_done}, {+bar_rescue_research_fail}
ros_smart_stalker3         = {+bar_rescue_research_done}, {+bar_rescue_research_fail}
ros_smart_stalker_bandits1 = {+bar_rescue_research_done}, {+bar_rescue_research_fail}
none                       = {-bar_rescue_research_done -bar_rescue_research_fail}

 

Можно ли вообще так сделать?

 

Изменено пользователем Han Sola

Лучше сделать мод с 0, чем пытаться залатать багованный.

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

@Han Sola, если я не ошибаюсь, то сталкеры заспавненные через скрипт не понимают [smart_terrains].
Кто-то мне это давно говорил, но я не проверял...

  • Согласен 1
  • Полезно 1

ищу человека, который смог бы заняться разработкой погоды на OGSR.
кто может помочь - пишите в ЛС.

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

Такая проблема, я хотел попробовать движок OGSR. Так, вообще вот:

Когда я поболтал с Волком, произошел краш (вот лог).

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

[error]Expression    : FATAL ERROR
[error]Function      : CScriptEngine::lua_pcall_failed
[error]File          : c:\projects\ogsr-engine\ogsr_engine\common_ai\script_engine.cpp
[error]Line          : 52
[error]Description   : [CScriptEngine::lua_pcall_failed]: [luabind::detail::class_rep::function_dispatcher] Caught unhandled exception!

Caught unhandled exception - Пойманное необработанное исключение (перевод с переводчика)

Подумав, я решил, что это скрипт какой-то не хочет работать. Поиграв со файлами скриптов кордона и диалогов, я выяснил, что скрипт dialogs.break_dialog перестал работать.

Как сделать так, что-бы этот скрипт заработал?

(в скриптах не силен)

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

Интересненько - а до этого ни с чем не игралось? С какими-нибудь файлами в смысле.

Раз тридцать говорила с Волком - пытаясь по ходу дела ради прикола адаптировать динамическую погоду. Никаких крашей))

А вообще...ОГСР это уже и не ТЧ как-бы. Тут где-то темка есть - где адепты тусуются.

 

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

Огср - это как раз почти ТЧ. Ну, в теории должно работать все, кроме мультплэера, который все равно не работал.

Если не работает что-то еще - или внимательно читать про изменения, которые надо внести, или сообщать разработчикам о проблеме.

 

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

@Ivan____, Сталкер 1.0006 GOG, OGSR_Engine_SHOC_EDITION_x64_1.0.527, папки bin_x64 и gamedata в папку с игрой. Запускать файл xrEngine.exe.

АТП зачистил, по Кордону побегал - вылетов нет...

AMD Athlon II X2 250, NVIDIA GTS 450, RAM 8.0 GB, WIN 7/64  правки Золотой Шар

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

Оказалось, с четвертым патчем плохо работает OGSR. Поставил на шестой патч, вылетов нет.

Изменено пользователем Ivan____
  • Смешно 4
Ссылка на комментарий

@Ivan____, Так аккурат диалоги и затрагивались ПЫСами в 6 патче по сравнению с 4.

  • Согласен 1

Сталкер - наше всё!

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

Вот тоже вопросов накопилось. Сразу решила их и вывалить))

1. Что означает и зачем вообще нужно в схемах логики нпс вот это:

team = 

И в каких схемах его можно применять, если вообще нужно?

2. Работает ли схема [zoneguard] ?

3. Что конкретно означают цифры в строке:

min_snd = 3, max_snd = 5, rnd = 100, prior = 5,...в скрипте sound_theme.script ?

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

Привет всем! Тут у меня один вопрос, в общем мне кто-то рассказал как изменить ружье охотника, но есть одна проблема, если это оружие выкинуть на землю, то будет все равно обрез, хотя иконка, описание, название и оружие в руках это тоз-34. Подскажите в каком файле надо изменить, чтобы на земле был именно тоз?

Свобода - лучшие сталкеры в зоне!

Ссылка на комментарий
26 минут назад, Змея сказал:

3. Что конкретно означают цифры в строке:

min_snd = 3, max_snd = 5, rnd = 100, prior = 5,...в скрипте  sound_theme.script ?

min_snd и max_snd это минимальный и максимальный звук (ну типо тихий и громкий), а все остальное незнаю.

  • Смешно 1

Свобода - лучшие сталкеры в зоне!

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

@Svobodovec_Arbuz, если это ТЧ и ружьё охотника, то нужно в конфиг оружия добавить\изменить параметр visual.

  • Спасибо 1
  • Согласен 1

ищу человека, который смог бы заняться разработкой погоды на OGSR.
кто может помочь - пишите в ЛС.

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

Я тут еще вспомнил я давно об этом думал и только щас дошли руки спросить это. Если кто-то знает, то в многих модах и в билдах на многие оружия можно было ставить глушак, прицел и подствол. Я единственное понял это надо найти в конфигах оружия (w_...) но где именно я не знаю, подскажите а?

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

Свобода - лучшие сталкеры в зоне!

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

ищу человека, который смог бы заняться разработкой погоды на OGSR.
кто может помочь - пишите в ЛС.

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

по звукам:


function play_sound( npc, t_themes, timeout )
    local t, n = {}, 0    -- список тем
    local tt
    for k, v in pairs( t_themes ) do    -- проверяем существование и перекладываем в i-таблицу
        tt = t_list[v]
        if tt then n = n + 1; t[n] = v
        else
            log( "error", "play_sound, ivalid theme %s [%s]", to_str( v ), to_str( npc ) )
            return false
    end    end
    -- log( "info", "play_sound, themes: %s (%s)", n, to_str( npc ) )
    if n == 0 then return false end

    n = t[math.random(n)]    -- из списка тем выбираем одну
    t = { ["theme"] = n }
    get_sound( t_list[n], t, npc )    -- получаем настройки

    n = t.max_snd    -- проверяем корректность, t  - настройки
    if n then
        tt = t_grps[ get_key(npc) ]    -- tt - теперь группа для непися
        tt.idle = math.random( t.min_snd, n ) * 1000
    else    -- если, например, воюют, то таблица пустая, играть ничего не надо
        -- log( "info", "play_sound, busy ( theme: %s )", t.theme, to_str( npc ) )
        return false
    end

    n = t.into_max    -- последовательный список из настроек
    if n and n ~= 0 then
        local into = t.into_id
        tt = db.sound[npc:id()].last_snd    -- что играли до этого момента
        local id = tt[into]
        -- log( "info", "play_sound, check into: %s:%s, last id: %s (%s)", t.theme, into, tostring( id ), to_str( npc ) )
        if id then
            if id < n - 1 then id = id + 1
            else    -- вышли за пределы ( при n == 1 максимальный id == 0 )
                if t.into_cycled then id = 0
                else
                    -- log( "info", "play_sound, not cycled, already played (%s)", id )
                    return false    -- для xr_kamp !
            end    end
        else id = 0
        end
        tt[into] = id
        -- process_tutor_on_sound( t.theme )
        npc:play_sound( into, 1, 0, 1, 0, id )
        -- log( "info", "play_sound, into: %s:%s, id: %s (%s)", t.theme, into, id, to_str( npc ) )
        return true
    end
    n = t.rnd_max    -- выбираем 1 случайный звук
    if n and n ~= 0 then
        local rnd = t.rnd_id
        local id = 0
        if tt.last_snd then    -- а здесь мы проверяем id не непися, а группы
            tt = tt.last_snd
            if n >= 2 then    -- больше одного варианта, исключаем повторы
                if id == tt[rnd] then
                    id = math_random( n - 1 )    -- 0, если уже что-то было
                    if id == tt[rnd] then id = 0 end    -- криво, кстати
                else id = math_random( 0, n - 1 )    -- если новый, то сразу от 0
                end
            -- elseif tt[rnd] then tt[rnd] = false; return    -- нефиг попугайствовать
            -- пока закомментировано из-за того, что одноразовые определены как рэндом,
            -- взрывы вертолетов, например
            end
            tt[rnd] = id    -- сохраняем в группу играемый звук
        else    -- таблица last_snd почему-то не создана
            if n >= 2 then id = math_random( 0, n - 1 ) end
            tt.last_snd = { [rnd] = id }
        end

        -- log( "info", "play_sound, rnd: %s:%s, id: %s (%s), timeout: %s", t.theme, rnd, id, to_str( npc ), timeout or 0 )
        if timeout then npc:play_sound( rnd, timeout + 1, timeout, 1, 0, id )
        else npc:play_sound( rnd, 1, 0, 1, 0, id )
        end
        return true
    end
    return false
end

Ну и что именно здесь непонятно?

Изменено пользователем Dennis_Chikin
  • Полезно 1
Ссылка на комментарий

team - ну, например, xr_walker.script

self.move_mgr:reset( st.path_walk, t_walk, st.path_look, t_look, st.team, st.suggested_state )

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

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

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

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

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

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

Войти

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

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

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

AMK-Team.ru

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