S.T.A.L.K.E.R.: Call of Pripyat "Call of Chernobyl: Движок модификации Возвращение Легенды:Классика"

ВНИМАНИЕ! Данный движок будет использоваться в новой версии Legend Returns для Call of Chernobyl. Рабочее название Legend Returns:Classic В будущем авторы обещают x64 битный движок. x86 битный движок тоже будет.

xRay LR:C base engine (для CoC 1.4.22)

Суть проекта

Спойлер

"Проект некоммерческий, но очень интересный"

Использование движковой основы ещё не вышедшего LR:Classic, который является патчем на старую LR 0.9.2. Но так как используется лишь основа движка этой модификации, репозиторий не содержит правок из LR:C, которые меняют геймплей кардинально или очень зависисмы от изменений в gamedata.

Предоставление этой движковой основы любым разработчикам, всё ещё работающим на платформе Call of Chernobyl, но испытывающих трудности с оригинальным движком. Как пример, это проект MLR, по инициативе автора которого этот движок и стал открытым.

Движок содержит огромное количество исправлений и опциональных нововведений, если сравнивать с оригинальным движком CoC 1.4.22. К тому же может быть использован и попросту для комфортной игры в Call of Chernobyl или проектов на его базе.

Поддержка сборки как на Appveyor через готовый скрипт, так и на новых версиях Visual Studio.

Дается возможность любому открыто вносить свои изменения, предлагать идеи, сообщать о проблемах движка. Чуть позднее добавлю ссылку на Discord-сервер, если кому-то так будет удобнее.

Почти завершена адаптация x64 с возможностью собирать как x86-версию, так и x64.

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

Список изменений

Спойлер

Библиотеки:

  • движок переведен на VS2019, v142
  • LuaJIT обновлён до версии 2.0.5
  • LuaJIT добавлен спецраспределитель памяти
  • фиксы и костыли Luabind
  • отключена опция Zc:forScope-
  • частичная адаптация x64, при этом поддержка x86 остаётся на месте

Рендеры:

  • текстуры не дублируются в RAM и видеопамяти
  • исправление мерцания точечных источников света
  • исправлено отключение shadercache
  • фикс прорисовки сложных аддонов
  • оптимизация просчёта отрисовки саншафтов
  • фикс зебра-теней от костров
  • оптимизация отрисовки травы
  • возможность регулировать высоту травы
  • изменение размера ShadowMap через консоль
  • отображение прозрачных поверхностей на худе
  • создание скриншотов в оконном режиме
  • отключена квантизация в скелетных мешах
  • на рендерах выше R1 пропускаем загрузку B_SHADOW_WORLD
  • исправления для DX10

Основа:

  • создание бэкапа лога
  • фикс вылета при неправильном удалении камера-эффектора
  • динамический HUD_VIEWPORT_NEAR
  • часть логовых сообщений спрятана под ключ -verboselog
  • разблокированы расширенные слоты
  • отключена привязка к первому ядру
  • использованный предмет (аптечка, например) больше не мигает перед глазами на долю секунды
  • отключена ругань в консоль, что в регистре не найдена Зов Припяти
  • оптимизация партиклов
  • история сообщений в КПК теперь идёт точно по порядку
  • таймфактор влияет на звуки
  • добавлено линейное угасание звуков
  • новый сплэш, поддержка png-изображений для сплэшей

Мутанты и NPC:

  • оптимизация ворон
  • отключена коллизия трупов (будет опциональной через консоль)
  • псевдогигант мощным ударом своей лапы выбивает из рук оружие
  • возможностью скрыть вторую часть имени симуляционных сталкеров консольной командой

Оружейная часть:

  • если у оружия нет анимации, воспроизводим анимацию-пустышку, а не вызываем вылет
  • на лестнице и в машине блокируется всё оружие
  • оружие выбрасывается из инвентаря впереди актора, а не сбоку или сзади
  • возможность отключить равноценные слоты на манер ЧН и ТЧ
  • адаптирован метод использования нескольких секций аддонов, который использовался в CoC 1.5 (для прицелов, глушителей и гранатомётов)
  • адаптирован метод указания секций прицелов из STCoP
  • более верный подсчет веса обоймы, а значит и всего оружия в целом
  • исправлено "плавающее" в руках NPC оружие
  • у прицелов с возможностью регулировки зума исправлено чрезмерное дёрганье увеличения

В будущем планируется указать откуда взяты используемые правки других проектов, а так же указать какие коммиты связаны с указанным изменением. Пока что просто список.

Как установить и адаптировать

Спойлер

удалите в папке с игрой оригинальную папку bin

закиньте новую папку bin, скачанную из раздела релизов или собранную вами

переходим к папке gamedataпапку shaders можете попросту закинуть в gamedata с заменой файлов, если замена потребуется. Она нужна для корректной работы фикса на отключение квантизации в скелетных мешах от Shoker. Обязательно очистите кэш шейдеров по пути appdata/shadercache, если он там находится.

в папке configs/weapons лежит файл weapons.ltx. В нём добавлено буквально две строки, которые вы можете добавить себе самостоятельно, если вас сторонний или собственный оружейный пак (файл так же в некоторых оружейных аддонах может иметь название вроде weapons_addons.ltx или weapons_grenade_launchers.ltx)эти две строки это эти две строки это grenade_class = ammo_m209 и grenade_class = ammo_vog-25 в секциях соответствующих подствольных гранатомётов.

Комментарии: 2
Ваш комментарий

столько трудов на фри- плей модификации((

0