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

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


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

@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
Ссылка на комментарий

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

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

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

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

по звукам:


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 )

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

Кстати есть такая возможность сделать так: после отбития бандитов на АТП, на АТП появлялись не бандиты, а сталкеры. И чтобы еще бандиты шли например по дороге к АТП (из ТД) и отбивали территорию. Просто жалко Петруху и Шустрого, который почему то всегда появляется там где он сидел в плену.

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

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

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

@Svobodovec_Arbuz, ох и вопросы)
Отключи смарт-террейн.
{-name_infoportions}.
А на счёт второго - добавить смарт_террейн. Ночью будут бандиты сидеть возле тоннеля, днём - идти на АТП. Или как тебе угодно...
О логике можно почитать на сталкерине...

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

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

Вопрос по логике БТРа.

Есть БТР, который спавнится по поршню. Задана логика. Он должен поехать к цели.

[logic]
active = ph_car1

[ph_car1]
path_walk = путь
target = 1234
fire_range = 30
fire_repeat = 30
auto_fire = true
track_target = true

Вопросы:

1. Можно ли главную секцию логику писать с цифрой "1" или надо писать именно как active = ph_car (без еденички)

2. НПС с id=1234 к которому поедет БТР должен спавнится ДО, во ВРЕМЯ или ПОСЛЕ спавна БТРа ? Или это не важно ?

3. Влияет ли параметр здоровья БТРа (в оллспавне)

; cse_ph_skeleton properties
health = 0.1

на то, что БТР отказывается ехать к цели ?

4. Можно ли вместо НПСа заставить БТР ехать к любому другому обжекту, имеющему story_id, или это обязан быть человек ?

На Вики ничего не сказано по этому поводу.

"Кругом зомби.....у меня кончаются патроны...."

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

@BFG, ИМХО (если неправ, пусть меня поправят):

 

1. Без единички. Имя других секций может быть любым.

2. Полагаю, объект должен быть в онлайне (если это НПС/зверь).

3. Не знаю.

4. Опять же полагаю, к любому.

 

Все выше сказанное - мысли вслух. С БТРами еще не копался.

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

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

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

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

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

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

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

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

Войти

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

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

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