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

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


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

@Купер, эээ кто???:blink:

 Моя нычкаНычка в арендованном у Опричника холодильнике  

Мы хорошие ребята, жаль патронов маловато:):ukostra:

UriZzz.gif

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

@monk, это на широкоформатах, наверное, так? Из-за сжатия иконки по горизонтали, когда она в слоте, такое происходит. Если бы она не сжималась, то аддон был бы на своём месте, но иконка была бы растянутой. Тут в движке надо править - при сжатии иконки положение аддона по Y тоже изменять на тот же коэффициент.

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

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

naxac.gif

Ссылка на комментарий
11 часов назад, monk сказал:

Всем привет

Когда предмет меняет свой размер при перемещении из рюкзака в слот - это выглядит не хорошо.

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

Отношения между людьми- главная ценность в человеческом обществе.
Любая полученная информация- это только повод для размышлений, а не побуждение к действию.
Это должен знать каждый: уроки боевой подготовки Дяди Саши https://yadi.sk/d/60Ec2B06goLAE
Накопано и накнопано:https://yadi.sk/d/mzVY5jQEspwpt

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

Тут в движке надо править - при сжатии иконки положение аддона по Y тоже изменять на тот же коэффициент.

Вообще-то, уже было поправлено. Если на любом мониторе, пропорции иконок сохраняются, (а там именно это достигнуто), то и поворот на 90 градусов им ничего не перекосит.

 

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

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

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

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

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

@UriZzz, Военные Склады, оригинал:

edc8ed33bce372242b4e06c39bfa7fc45eb51f37

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

[3547]
...
; cse_alife_item_weapon properties
ammo_current = 90
addon_flags = 2    <- 2 - гранатомет
upd:condition = 1
upd:addon_flags = 2 <- 2 - гранатомет

c6f709b8669adda5ce8fb04590767d165eb51f37

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

[3548]
...
; cse_alife_item_weapon properties
ammo_current = 90
addon_flags = 1 <- 1 - прицел
upd:condition = 1
upd:addon_flags = 1 <- 1 - прицел

Наверняка, в SDK есть подобные параметры. Но смотреть лень - по причине наличия/отсутствия на данный исторический момент. :biggrin:

  • Согласен 1
Ссылка на комментарий
9 часов назад, Купер сказал:

калашматы-коротыши

:rofl2:

 

23 минуты назад, Купер сказал:

Наверняка, в SDK есть подобные параметры

Да наверное в кастом дате смотреть, где же ещё. Я тоже посмотреть не могу сейчас, далеко от компа.

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

 Моя нычкаНычка в арендованном у Опричника холодильнике  

Мы хорошие ребята, жаль патронов маловато:):ukostra:

UriZzz.gif

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

Кое-чего выяснил в процессе копания в update-части нет-пакета оружия.

Нижеследующие параметры есть у любого оружия

1) upd:weapon_flags

Значения: 0 - оружие спрятано, 1 - оружие в руках

2) upd:ammo_elapsed

Остаток патронов в стволе

3) upd:addon_flags

Навешанные аддоны. Бинарный флаг по сути, но распишу подробней:

0 - нету

1 - прицел

2 - гранатомет

3 - прицел+подствольный гранатомет

4 - глушитель

5 - прицел + глушитель

6 - подствольный гранатомет + глушитель

7 - все сразу

4) upd:ammo_type

Тип патронов. 0 - обычные, 1 - бронебойные. Если есть еще - идут в порядке повышения убойности (так вроде)

Если не полностью расстрелять магазин и поменять тип патронов, upd:ammo_type изменится для всего магазина.

5) upd:weapon_state

Самое интересное. Это состояние оружия:

0 - в руках, idle

1 - стрельба выстрел пулей/дробью (или удар ножом)

2 - альтернативный удар (только нож)

3 - перезарядка

4 - достается

5 - убирается (или выбрасывается)

6 - спрятано

7 - заклинило

8 - ??? выстрел из подствольника (в режиме огня "А"-автомат)

9 - включение/выключение подствольного гранатомета

6) upd:weapon_zoom

Состояние зума оружия: 0 - обычное состояние, 1 - прицел (зажатая правая мышка).

 

Нижеследующие параметры есть у всего, кроме ножа

7) upd:current_fire_mode

Текущий режим огня. 0 - одиночными, 1 - два патрона, 2 - очередью. Если режима по 2 патрона у оружия нет, то режим очередью будет 1.

 

Нижеследующие параметры есть только у стволов с возможностью крепления подствольника

7) upd:grenade_mode

Режим подствольника. 0 - выключен, 1 - включен

 

Нижеследующие параметры есть только у дробовиков и ружей

8) upd:ammo_ids

Количество оставшихся патронов в стволе. Полностью дублирует upd:ammo_elapsed, зачем - непонятно.

@Купер, @UriZzz - всё верно, всё работает прямо, как и писал @KD87 здесь.

Заспавнил на полке калаш со всеми обвесами. Спасибо за помощь !

Изменено пользователем Space.Marine
  • Согласен 1
  • Полезно 2
Ссылка на комментарий

Привет всем! Я поменял начальное видео в тч(там где стрелка находит звездочет), но выходит след ошибка:

 

FATAL ERROR
 
[error]Expression    : fatal error
[error]Function      : CTexture::Load
[error]File          : E:\stalker\sources\trunk\xr_3da\SH_Texture.cpp
[error]Line          : 181
[error]Description   : <no expression>
[error]Arguments     : Can't open video stream

 

Сам файл: Log

В чем проблема? Хелп плиз

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

@ErCody_, что делал, как делал? Пока лог только выдаёт телепатическим методом, что видеофайл имеет не поддерживаемый движком игры формат.

Ссылка на комментарий
17 минут назад, Купер сказал:

имеет не поддерживаемый движком игры формат

Там, вроде, пишется invalid, а когда can't open, то проблема с кодеками на ПК. Но да, тут только телепатией пока заниматься.

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

Здрасьте.

 

В [textures\ui\] есть вариант рамки для окон КПК [ui_pda_frame_sub.dds] с описанием частей в одноименном INI-файле:

Spoiler

[frame]
shader		= hud\default
lt 		= 0,	0,	32,	32
l  		= 0,	32,	32,	32
lb 		= 0,	64,	32,	32
b  		= 32,	64,	32,	32
rb 		= 64,	64,	32,	32
r  		= 64,	32,	32,	32
rt 		= 64,	0,	32,	32
t  		= 32,	0,	32,	32
back 		= 32,	32,	32,	32

 

 

Изменил имя обоих файлов (при той же начинке) и указал новую ссылку в конфиге окна "Справка" (энциклопедия) – вылет "текстура не найдена". Знаю, что обычная текстура рамки привязана через XML-описание файла [ui_old_textures.dds], но хочется понять, действует ли в каком-нибудь виде способ с INI-файлом или это мусор, оставшийся от ранних билдов?

Мини-моды: ТЧ ЧН ЗП

Шпаргалка

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

@ErCody_, у тебя не правильно закодировано видео. У тебя сейчас AVC, а должен быть Theora.

Еще одно - ужасающее количество ошибок в выводимых титрах. Ты хотя бы проверь, прежде чем вставлять текст в видео.

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

@ErCody_, + весьма сомнительно, что движок воспримет формат "видео+аудио". Т.е. отдельно - видеоряд, отдельно - звуковая дорожка в соответствуюших форматах. Старенький faq, но для понимания принципа сойдёт.

  • Нравится 1
Ссылка на комментарий
Только что, Купер сказал:

сомнительно, что движок воспримет формат "видео+аудио"

Точно НЕ воспримет) был такой опыт.

  • Согласен 2

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

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

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

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

@Вася Сапляшо опять?

https://modfaq.ru/Распаковка_игровых_архивов

и поставьте же себе, наконец, это. Ну сколько можно мучиться и искать себе приключений :dash2:

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

Товарищи спецы, просветите. Платформа OGSR (да и XRE, в принципе).

Вводная: попытка реализации дискретных шлемов c отсечкой по костюмам. 

В bind_stalker соответствующий callback:

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

function actor_binder:net_destroy()
    self.object:set_callback(callback.on_slot, nil)

function actor_binder:reinit()
    self.object:set_callback(callback.on_slot, self.item_to_slot, self)

function actor_binder:item_to_slot(obj)
    inventory.check_remove_gasmask()

 

 

Сама проверка, нагло свистнутая ради эксперимента:

inventory:

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

 


function have_gasmask()
    local armor = db.actor:get_current_outfit()
    if not armor then return false end
    local armorname = armor:section()
    if string.find(armorname, "military_outfit") or
       string.find(armorname, "protection_outfit")
    then return true end
end

function check_remove_gasmask()
    local bio_belt = db.actor:item_in_slot(10)
    if not bio_belt then return end
    local sect = bio_belt:section()
    if sect == "af_maska_1" or sect == "af_maska_2" then
        if have_gasmask() then
            db.actor:move_to_ruck(bio_belt)
            update_inventory_window()
        end
    end
end

 

 

Выхлоп на горячей перезагрузке:

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

[error]Expression    : FATAL ERROR
[error]Function      : CInventory::DropItem
[error]File          : c:\projects\ogsr-engine\ogsr_engine\xrgame\inventory.cpp
[error]Line          : 236
[error]Description   : CInventory::DropItem: InSlot(pIItem): [af_maska_217160], id: [17160]

Что не докручиваю, куда копать, где подсмотреть? В общем, требуется перевод этого на технический русский.

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

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

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

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

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

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

Войти

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

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

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