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

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

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

Как то еще, кроме того чтобы засунуть проверку в коллбэк правильного скрипта?

P.S. извиняюсь, если не точно сформулировал: как-то еще, кроме того что уже подсказал Zander_driver?

Спрашиваю, т.к. это срабатывает с некоторой задержкой, иногда когда второй раз нажимаю "обыскать". Боюсь, что первый раз может не сработать, и игрок просто пройдет мимо.

 

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

@Muzafir, можно вызвать из treasure_manager, проверяя НПС по имени/профилю/группировке/и т.п. или не проверяя ничего, в функции CTreasure:use(npc):

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

if npc and db.actor then 
        if npc:name() == "finder" then
            krot_treasure.give_treasure_esc()
        end
    end

Тогда может выдать сразу два схрона, один из которых запланированный, а другой рандомный.

Изменено пользователем mole venomous
  • Спасибо 1

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


Подарки

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

    Всем спасибо, нашел статью о вызове функций и засунул ее в bind_stalker.script, теперь работает, как надо

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

    Привет. Заранее извиняюсь, если такой вопрос был (искал в этой теме - не нашёл). Как при нажатии на ветку диалога проиграть звуковой файл с озвучкой? Вроде смотрел конфиги, скрипты в игре, но ничего такого не увидел...

    Ну, да поможет Вам F1, да сохранит Вас F2, во имя Control`а, Alt`а и святого Delet`а. Enter.


    Подарки

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

    @Котошметик, вызвать функцию через нужную реплику.

     

    <phrase id="1">
    	<text>text_1</text>
    	<action>my_script.play_snd</action>
    	<next>2</next>
    </phrase>
    <phrase id="2">
    	<text>text_2</text>
    	<action>my_script.play_snd2</action>
    	<next>3</next>
    </phrase>

    Т.е добавляешь action. В скрипт пишешь такой код для проигрыша звука (это пример. Можешь найти другие, способов воспроизведения десятки, наверно)

    function play_sound(sound,obj)
    	if obj == nil then obj = db.actor end
    	xr_sound.get_safe_sound_object(sound):play_no_feedback(obj, sound_object.s2d, 0, vector(), 1.0)
    end
    
    function play_snd()
        play_sound([[my_sound\dialog_1]])
    end
    
    function play_snd2()
        play_sound([[my_sound\papka\papka2\dialog_2]])
    end

    где my_sound имя папки в коренной папке sounds (ее указывать не надо), а dialog_1/2 имя аудио-файла без расширения *.ogg. Путь/имена могут быть любые, есс-но, это пример. Функция play_sound рабочая, пишется один раз и трогать ее не нужно. Если нужно добавить еще звуки, просто создаешь функцию аналогичную play_snd с другими путями ко звуку.

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

    GTA 3 MAP X-Ray | NFS U:2 MAP X-Ray | RTCW MAP X-Ray | L2D | Куча раритетных модов на моем облаке — на память о былом.

    JNCR — Coming Soon...

    i5-10400F / RAM 16GB / GTX 1660 Super / 1TB HDD+256GB SSDm2 / Win 11 PRO x64 / Samsung Curved 27" x2


    Подарки

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

    @Zander_driver, Именно. Поименованная должным образом фраза будет воспроизводиться автоматом. Я когда пытался переозвучить диалоги, это методом научного тыка понял.

     

    В чистой игре там еще раровский архив лежит.

    Изменено пользователем AndrewMor
    • Согласен 2

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

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

    Просто вопрос. Всегда интересовало, от какого показателя берется расчет восстановления жизней на артефактах. Как-то странно видеть надпись "Жизнь + 450%". Давным-давно я думал, что это типа полоска жизни увеличится, а не реген, ну да ладно. Вопрос вообще в том, как можно изменить отображение этих чисел, скажем просто разделить на 100. Текст-то менять где я знаю. Желательно еще и саму формулу знать, и где она лежит, и как это вычисляется. Чтобы можно было сделать И тогда будет понятно, что идет регенерация 4,5% от максимума жизни в секунду. Чтобы выдавало "Реген + 4,5%" и это было именно так. Т.е. собрав 10% (1000, оно же в конфиге 0.001) было ясно видно, что идет реген одной десятой хп за секунду. Смысла в этом вообще-то уже давно нет, это просто для личного изучения вопроса.

    Ссылка на комментарий
    Только что, neosquall сказал:

    Желательно еще и саму формулу знать, и где она лежит, и как это вычисляется.

    В исходниках движка.

    xrGame/ui/ui_af_params.cpp

    Применительно к цифрам "здоровья", на артефактах. В оригинале, если не ошибаюсь, они пишутся в процентах от скорости регена самого ГГ. А не от количества его здоровья.

    Если к примеру, поменять актору реген хп в его конфиге, но не менять конфиги артов. То, цифры в описании артов изменятся.

    • Нравится 3
    • Полезно 1

    Мод, где не бывает одинаковых путей - Судьба Зоны. (Лучшее, что у меня получилось на X-Ray) На базе модифицированного движка OGSR Engine.

    Бывший мододел на X-Ray / Начинающий игродел на Unreal Engine. Программист.

    AMD Ryzen 9 7950X (16 ядер, 5.7ГГц); RTX 3080; 128 ГБ DDR5; Arctic Liquid Freezer II-420; 3 ТБ SSD PCIe 4.0; 4ТБ HDD.

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

    Всем привет! Есть какой не будь фикс для ТЧ , что бы не было видно аномалии ночью через ПНВ? Или для этого нужно движок править?

    Pir%40t%40s.gif

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

    @Pir@t@s, именно ночью? 
    Вообще, в оригинале видимость конфигами детекторов настраивается. Необязательный параметр night_vision_particle. Это если про то, что думается. :biggrin:.

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

     

    Т.е. в конфиге детектора может указываться соответствующий параметр:

    [detector_advances]:identity_immunities

    ...

    night_vision_particle = damage_fx\heli_burn

    который и обеспечивает "подсветку" аномалий назначенным партиклом при включении ПНВ.

     

     

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

    @Купер, именно ночью. Я правил конфиги аномалий - сделал их невидимыми.Что бы повысить цену детекторов. Но ночью, при включённом ПНВ, все правки теряют смысл.

    Днем https://yadi.sk/i/zrMbYQDkm0xRJg

    Ночью https://yadi.sk/i/rhFBU5yRFRTaNw

    @Купер, Большое спасибо. Проблема решена, вопрос снят.

    Pir%40t%40s.gif

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

    Такая ситуация. Когда в обойме пистолета нет патронов, то затвор отодвигается назад, а при ходьбе возвращается в другое положение, будто пистолет заряжен. Не подскажите, в чём проблема?
    Вот так это выглядит:
     

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

    ss-houdini-12-17-20-11-53-49-l01-dead-ci
    ss-houdini-12-17-20-11-53-51-l01-dead-ci

     

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

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

    @Houdini_one, а анимация ходьбы с затворной задержкой (anim_idle_moving_empty) в модели присутствует?

    А движок её читает?

    Зы. "чистый" ТЧ не читает точно*, X-Ray extensions - требуется скрипт - как в ранних версиях "Нового Арсенала".

     

    * наверное....

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

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

    @nasar75, нет, такой анимации нет. Получается, это её добавить нужно и правкой конфига не обойтись?
    Стоит оружейка из NLC (выдернул из адаптации этой оружейки под OGSM).

    Движок OGSR у меня если что...

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

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

    @Houdini_one,  

    Для начала надо глянуть omf файл анимаций пистоля (или худ модель - где там анимации содержатся) - вдруг там что и есть...

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

     

    Зы. Я тоже брал стволы из НЛС Переосмысление, так раскачку стволам я сам делал, в 3д-максе...

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

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

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

    @nasar75, раскачка включена, всё равно не работает.
    Что странно, так на оригинале всё работает, а здесь вот такое.

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

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

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

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

    Что-то я заклинило :biggrin:. Товарищи спецы, надоумьте чем-нибудь полезным.

    Вводная: имеется строковая "a b", необходимо получить "a" и "b". Как это культурно сделать?

    Лезет в голову сомнительное:

    string.match("a b", "^[%w%-%_]+")

    string.match("a b", "[%w%-%_]+$")

    Но как-то оно совсем... :az1000106:

    Изменено пользователем Купер
    Ссылка на комментарий

    @Купер, вроде вот это оно самое и делает. Результат - список элементов исходной строки. Правда, с разделителем как пробел - не пробовала. 
     

    --=============================================================================
    -- Взято из аддона Naxac'a
    local to_ptrn = {
      [ " " ] = "%s",
      [ "." ] = "%.",
      [ "%" ] = "%%",
      [ "*" ] = "%*",
      [ "-" ] = "%-",
    }
    string.explode = function( div, str, clear )
    -- div   -- разделитель
    -- str   -- строка
    -- clear -- обрезать ли пробелы по краям строк (false/true)
      local ret = {}
      for s in str:gmatch( "([^" .. ( to_ptrn[ div ] or div ) .. "]+)" ) do
       table.insert( ret, ( clear and s:trim() or s ) )
      end
      return ret
    end
    --=============================================================================
    

     

    • Полезно 3

    След от кругов на воде - это тоже след (с)

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

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

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

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

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

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

    Войти

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

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

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

    AMK-Team.ru

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