Перейти к содержанию
Infest

OpenMW. Перспективная замена Gamebryo.

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

Ub7BVes.png

 

Официальный сайт OpenMW
Страница загрузки
Страница с самым последним билдом для Win (обновляется ежедневно)

Баг-трекер
Репозиторий с исходным кодом на GitHub

 

Что такое OpenMW? 

OpenMW - это попытка воссоздать игровой движок для популярной RPG Morrowind, полноценную реализацию всех особенностей игры с открытым исходным кодом. Для запуска TESIII с помощью OpenMW понадобятся ресурсы от оригинальной игры.
Для того, чтобы вы имели более полное представление о проекте, вот несколько ключевых особенностей будущего OpenMW:

  • полноиграбельная реализация Morrowind.
  • кроссплатформенность, запуск на Windows, Linux, MacOS X.
  • поддержка уже существующего контента, включая Tribunal и Bloodmoon и львиную долю созданных пользователями плагинов.
  • значительная модифицируемость: изменение игровой механики, создание новых эффектов заклинаний, доработка ИИ и т.д.
  • исправление ошибок системного проектирования: "грязные" GMST записи в плагинах, проблема "удвоения" в сейвах.
  • улучшение интерфейса и игрового дневника.
  • улучшение игровой механики, физики, боевой системы и ИИ.
  • поддержка мультиплеера.
  • улучшение графики путем поддержки функциональности современного аппаратного обеспечения.

 

Это очень амбициозный список, и ещё многое предстоит сделать, чтобы эти задачи стали реальностью.
OpenMW выпущен под лицензией GPLv3, весь исходный код написан с нуля.

 

*От себя добавлю, что данный проект уже может позиционировать себя, как перспективную и будущую замену для Gamebryo. Совсем недавно, одним и разработчиков проекта была добавлена поддержка bsa/ba2 ресурсов из Fallout3/NV, Oblivion/Skyrim; полноценная поддержка их esp/esm. В данный момент идёт активная разработка по внедрению полноценной поддержки NIF, анимаций, различных функций, а также первые пробы FaceGen. 


Полезные ссылки:
Wiki-статья о совместимости модов для Morrowind'а с OpenMW
Руководство по портированию ретекстуров в OpenMW
OpenMW на Youtube
OpenMW на ModDB
OpenMW на GitLab

Сторонние проекты, основанные на OpenMW:
TES3MP - реализация мультиплеера для OpenMW.
Тема OpenMW на 4PDA - здесь можно найти сборки OpenMW для Android 5+ и гайды по решению проблем.
Патчи, разрабатываемые на этом форуме - здесь мы пытаемся реализовать функционал, для которого требуется изменение исходного кода движка.

 

Небольшой FAQ по проекту

(Часть информации взята с официального русскоязычного ресурса FullRest.Ru).

Спойлер

Чем OpenMW отличается от ванильного движка Morrowind?

  • Встроенная поддержка macOS, Linux и Windows
  • Улучшена физика и ИИ
  • Дальний рельеф
  • Cохранения/Загрузки организованно по персонажам
  • Улучшения UI
  • Настраиваемое автосохранение
  • Карта мира автоматически подстраивается под новые земли из модов, таких как например Tamriel Rebuilt
  • Поддержка до 2147483646 загруженных модов (по сравнению с 255 в оригинальном  движке Morrowind, да и в целом с движками Gamebryo)
  • Так как движок был написан с нуля, практически нет ошибок в работе движка, тянущегося со времён оригинального  Morrowind
  • И многое другое

 

Кроме того, OpenMW можно использовать для создания совершенно новых игр, созданных с помощью OpenMW-CS (разрабатываемый аналог редакторов для TES и Fallout).

 

В чём разница между "старым" и "новым" OpenMW?

Старый OpenMW был написан на языке D с небольшими кусками кода на C++. Позже главный разработчик решил полностью перейти на C++, потому весь код проекта был заново переписан.

 

Нужен ли оригинальный Morrowind для OpenMW?

И да, и нет.

ДА. Прежде чем использовать OpenMW, вы должны легально приобрести и установить Morrowind на ваш компьютер. OpenMW воcпроизводит только техническую сторону игры, и не содержит в себе каких-то материалов, защищенных авторским правом. Используются только данные уже установленной игры, либо с установочных файлов с диска или цифровой копии игры.
Серьезно, если у вас нет Морровинда, идите и купите его! В отличие от большинства новых игр, он отрабатывает каждую потраченную копейку. Это редкость в наши дни.

НЕТ. OpenMW - самостоятельный игровой движок. Он может быть базой для тотальных конверсий, не использующих файлы Morrowind.

 

Каково текущее состояние проекта?

Статус

OpenMW уже находится в состоянии "бета": из основных игровых функций нет только теней (работа в процессе).
Кроме этого есть ряд проблем, в основном с физикой и поддержкой модов, использующих баги и недокументированные возможности оригинального движка.
OpenMW играбелен (можно нормально пройти сюжет игры и аддонов, ветки гильдий и т.д.), хотя и уступает MGE в качестве графики, но выигрывает по стабильности, а на многих машинах и по производительности и скорости загрузки локаций.
Также OpenMW реализует некоторые опции, которых не было в оригинальной игре.

Поддерживаемые платформы

Проект переписан на чистом C++, потому должен работать на большинстве платформ, поддерживаемых OpenSceneGraph и остальными инструментами. В том числе на Windows XP (и старше), Linux, MacOS X, FreeBSD.
Если вы хотите помочь портировать OpenMW на другие платформы, мы будет рады видеть вас на нашем форуме.

 

Какие технологии вы используете?

OpenMW построен с использованием различных библиотек и инструментов с открытым исходным кодом:

  • Языки программирования: C++, GLSL
  • Графика: OpenSceneGraph
  • Физика: Bullet
  • Звук: OpenAL
  • Ввод: OIS
  • Скриптовый язык: Самостоятельная реализация скриптов Morrowind
  • Интерфейс: MyGUI
  • Поиск пути для ИИ: Recast & Detour


Код загрузки ESP/ESM и BSA был написан с нуля, но с помощью документации, созданной сообществом. Кроме того, и код загрузки NIF был написан с помощью имеющейся в сети информации.
Особая благодарность NIFLA/NifTools!

Главный разработчик Marc Zinnschlag (Zini) о OpenMW 1.0:
Целью OpenMW 1.0 является полная замена Morrowind.exe. Не больше, не меньше. Это также означает, что практически все улучшения оригинальной игры на данный момент исключены. Я настаивал на этом подходе, так как это самый безопасный способ завершить версию 1.0 наиболее быстро.
Релиз 1.0 будет очень важным этапом, ведь OpenMW наконец станет полноценной игрой. Мы надеемся, что OpenMW 1.0 привлечет много внимания, новых разработчиков и активных тестеров.

В некоторых случаях мы можем отклонятся от оригинала, даже до релиза 1.0.

Во-первых, я не считаю нужным копировать любые нефункциональные особенности. Бессмысленно имитировать сбои и различные ошибки. Равно как и ограничения игры (к примеру, глубину вложенности скриптов).
В общем, мы имеем полную свободу действий со всем, что не работает в Морровинде. Обратите внимание, что это не относится к какой-либо плохой игровой механике. Плохая не значит нефункциональная.

Во-вторых, мы можем изменять всё, что не является частью внутриигрового опыта. Например, опции командной строки и файлы конфигурации OpenMW выглядят совершенно иначе, чем в Морровинде. Сюда же входит и лаунчер.

В-третьих, мы не обязаны использовать те же технические детали реализации, что и в Морровинде. Для игрока всё выглядит аналогично оригиналу, но принципы работы "под капотом" могут быть совсем иными.

И, наконец, в-четвертых. В крайних случаях мы можем сознательно отходить от канонов Морровинда, если это делает реализацию проще или перспективнее. Идеальная копия не наш вариант, так как есть моменты совершенно без будущего, которые после релиза 1.0 пришлось бы удалять и заново переписывать.

 

Предлагаю тем, кто опробовал данный проект, делится своими впечатлениями. Кто ещё с ним не знаком, советую ознакомится!

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Изменения (с начала 2019)

Январь

С 07.01.2019

Спойлер

akortunov:

  • Время обновления физики и остального мира профилировщиком считается отдельно.
  • Вес расы больше не влияет на вид от первого лица, как и в Морровинде, что позволяет исправить кривое прицеливание из лука для рас, у которых отношение "рост к весу" не 1:1.
  • Размер шрифта больше не достаётся каждым виджетом отдельно.
  • Заклинания и способности, добавляемые знаком рождения, не добавляются каждый раз при загрузке сейва. То, что было раньше, Морровинд не делает и совместимость с модами ломало. Вообще это был костыль для правильной работы импортера сейвов, который плохо умеет активные эффекты импортировать, но лучше импортер доделать, чем остальное ломать.
  • Исправлены последние известные ошибки, найденные Coverity
  • Где возможно в кодовой базе вместо stringstream используются простые string (с использованием std::to_string, если необходимо), что позволяет заметно сократить код

 

Capostrophic:

  • Фиксы для улучшения совместимости с Sotha Sil Expanded:
  • GetSpellEffects, GetSpell и GetEffect возвращают 0 для неактёров, что позволяет скрипту компилироваться даже в таком случае. Частично улучшает ситуацию с головоломкой в Интерьерах Иллюзии Хранилища Магнуса, но в скрипте всё ещё надо поправить "else if" на "elseif", чтобы он собрался.
  • Если в записи актёра нет записи AIDT (данных ИИ, то есть рейтингов действий и услуг, которые оказывает актёр), что чаще всего связано с нулями в рейтингах при сохранении плагина в OpenMW-CS, например, правильно используются нули вместо произвольных данных, туда попавших.
  • Флаг прыжка игрока, возвращаемый GetPCJumping не сбрасывается, если активен эффект замедленного падения. Позволяет снова правильно работать Ногам Сехта, у которых способность с этим эффектом добавляется игроку на время прыжка.
  • К сожалению, вряд ли получится достигнуть идеальной совместимости с "чистым" SSE в скриптах, но Trainwiz предложил сделать патч для OpenMW и поместить его на странице мода, если нужно, и навёл на мысль по поводу одной проблемы.
  • Возможно, перебрал с чисткой кода от ненужного.
  • Фиксы нескольких циклов: игрок в режиме бога мог сломать применение урона к соседним неписям на опасных моделях типа лавы, попытка убедиться, что существует эффект призыва, в одном месте, не прекращалась даже после достижения полученного, спаун случайных существ прекращался вовсе, если из уровневого списка по какой-то причине не доставалось существо, а не просто пропускал итерацию

 

tackeart:

  • В документацию добавлен полезный совет насчёт удаления затесавшихся NiTextureEffect из модели скопом в NifSkope.


Пока ожидают времени:
Capostrophic:

  • Снова фиксы регрессий 0.45.0
  • Где имеет смысл, заменены макросы численных пределов из C

 

akortunov:

  • Исправлен потенциальный конфликт между постоянными эффектами (корпрусом) и обыкновенными в сейвах, делающий невозможным их загрузку
  • Несколько словарей в скиннинге заменены на векторы, работа с элементами которых происходит быстрее при просмотре каждого их элемента по порядку. Это, например, срезает почти миллисекунду на кадр при использовании Robert's Bodies, Better Clothes и Better Morrowind Armor, немного сокращает время первого кадра после загрузки сейва (в который происходит вынужденная "дозагрузка" игры, инициализация скелетов и т.д.)

 

bzzt:

  • Судя по всему эпохальные оптимизации и фиксы ландшафта и конкретно удалённого ландшафта. Многообещающие, правда, с автором я уже повздорил.

 

 

С 14.01.2019

Спойлер

fredz10:

  • crashcatcher вновь работает на FreeBSD.

 

zear:

  • Сравнения названий папок и файлов в Wizard теперь регистро-независимые, что позволяет установить игру с дисков на Linux и может обойти какие-то другие проблемы.

 

Александр Колодеев:

  • Контент-селектор перестанет пытаться очищать файлы, если никаких файлов для очищения нет, что позволяет избежать ошибки assert при создании нового плагина в редакторе, собранном в режиме Debug.

 

Stomy:

  • Попытки гарантировать уникальность номера вновь созданного/клонированного/перемещенного экземпляра объекта в большинстве ситуаций в редакторе.

 

Azdul:

  • Портирована поддержка BSA-архивов Oblivion, Fallout 3, Fallout New Vegas и Skyrim из ветки cc9cii.
  • GoogleTest/GoogleMock можно собирать на Windows прямо при сборке движка и покрывать код юнит-тестами.

 

Capostrophic:

  • Коллизии актёра будут обновляться в кадр телепортации (через PositionCell), даже если телепортация произошла в ту же ячейку. Позволяет правильно работать скрипту трубы из Sotha Sil Expanded (если в нём поправлено использование else if вместо elseif, для чего висят отдельные фиксы): он прекратит отключать управление персонажем непосредственно после телепортации из-за запоздалого обновления коллизий.
  • Перед декларацией Begin в скрипте может быть произвольное количество специальных символов без прекращения компиляции, они просто игнорируются. Позволяет собираться двум скриптам рычагов какой-то головоломки из Sotha Sil Expanded.
  • Поправлена вышеуказанная поддержка на не-Windows-системах, а кроме того, генерация хэша, совместимого с форматом, заменена на собственноручно написанную функцию вместо кода из BSAOpt (короче в два раза, быстрее на 25%, функционально разницы никакой).

 

akortunov:

  • Исправлено несколько предупреждений сборки.
  • Меши с частицами с выключенным флагом Has Sizes могут отображаться спокойно.

 

elsid:

  • Предотвращен потенциальный фриз, если рендеринг навмешей отключен.


 

 

С 29.01.2019

Спойлер

Capostrophic:

  • Перед тем, как воспользоваться стандартными звуками, даже если свои звуки у существа или существа, от которого она наследует звуки, отсутствуют, или само такое существо отсутствует, существо попытается воспользоваться звуками первого существа с той же моделью, как активаторы и как это происходит в Морровинде.
  • Нормалмапы правильно отображаются на инвертированных/зеркально отраженных UV, т.е. при этом рельеф не инвертируется на отраженных частях. Скопирован подход Unity.
  • Когда игрок ворует предмет, актёр, у которого он был украден, больше не пытается быть найден дважды, дабы уточнить, мёртвый ли он.
  • Когда коллизии восстанавливаются для актёров, которые вновь попали в диапазон обработки актёров, они не восстанавливаются для таких, у которых анимация смерти закончилась. Это временное решение, которое позволяет побыстрее выкатить 0.45.0.*
  • Когда состояние прыжка насильственно обновляется, например, когда меняется перспектива или когда экипируется оружие,  анимация не начинается сначала, если актёр в воздухе.*
  • Анимации прыжка снова имеют меньший приоритет, чем анимации движения, кроме анимаций поворота. Идл не отключается во время анимации приземления, чтобы избежать другой проблемы, но должно быть решение поумнее.*
  • Стандартный звук приземления не проигрывается несколько раз, когда актёр соскальзывает с крутого выступа.*
  • Освещение ночью больше не перевернутое, солнечный источник света вновь прыгает от 0 градусов до 180 днём и обратно ночью, как это происходит в Морровинде, более хитрые решения в процессе обсуждения для будущих релизов.*
  • Цвета, выбранные пользователем для соответствующих полей записей в редакторе (цветов света от источников света, цветов освещения в ячейках и т.п.), правильно сохраняются.*
  • Когда выбор цвета был отменен, вместо смены цвета на черный не происходит ничего.*


akortunov:

  • Визуальные эффекты магических эффектов обновляются сразу после того, как обновляются сами эти эффекты, что позволяет избежать возможного ложного истекания магических эффектов в некоторых случаях, что приводит к отсутствию визуальных эффектов у NPC, например, в некоторых условиях.
  • Обновлена статья по TrueType-шрифтам в документации.
  • Большая часть данных риггинга кэшируется, что позволяет немного ускорить загрузку ячеек.
  • Проверка на поддержку разделенных групп анимаций больше не осуществляется для каждого из объектов анимации, а производится только один раз.
  • Меши в формате Glow in the Dahrk (со специально именованным узлом NiSwitchNode) теперь будут менять свое состояние по ночам.
  • У фракций в редакторе теперь есть таблица рангов.
  • При загрузке сохранений, сделанных в 0.44.0 и ранее, больше не может произойти ситуации, что цель ИИ-пакетов, таких как AiEscort и AiFollow, поменялась чудесным образом на игрока.*
  • Когда в редакторе на NPC экипирован шлем, слот волос отключается.*


*Это фиксы регрессий, они попадут в 0.45.0.
 
Тени AnyOldName3 наконец-то по сути закончены. Остались только некоторые организационные моменты и тестирование.
 
Новостной пост в основном о настоящем и будущем TES3MP.
 

 

Февраль

С 17.02.2019

Спойлер

elsid:

  • Когда объект перемещен в другое место, тайлы навмешей вокруг него правильно обновляются.
  • Навигацию по навмешам можно отключать.


Capostrophic:

  • Заскриптованные объекты больше не стакаются, дабы их локальные переменные не были общими на весь стак.
  • Исправлена горизонтальная скорость персонажа, находящегося в воздухе в стойке бега или "крадучись" (регрессия 0.45.0)
  • Поправлен центральный кириллический алфавитный индекс, который включался, а не выключался при нажатии на кнопку заданий. Три столбика индекса используются, только если размер потенциально используемого TTF-шрифта больше стандартного (центральный индекс был добавлен в 0.45.0 и в нем же не будет поломан).


akortunov:

  • LOD и Switch-узлы теперь могут быть корневыми без неопределенного поведения. Вылетов, например, на Windows.


AnyOldName3:

  • Т Е Н И .


lysol:


 

 

C 22.02.2019

Спойлер

akortunov:

  • Изначальная прозрачность актёра назначается при его попадании на сцену, чтобы он в течение кадра полностью непрозрачным не был на большом расстоянии.
  • Исправления нескольких проблем, найденных PVS-Studio.
  • Добавлена поддержка NiRollController.
  • Большая автоматическая чистка ненужных зависимостей (по всему движку)
  • В редактор добавлены окошки с краткой информацией об OpenMW-CS и Qt


Capostrophic:

  • Небольшая ручная чистка ненужных зависимостей в механике (в основном).
  • Добавлена опция для отключения обработки событий контроллеров (Enable Joystick, включена по умолчанию). Пока что она "работает" и тогда, когда собственно контроллера и нет, как и другие настройки его управления. Может, потом будет решение получше.
  • SetJournalIndex не трогает статус квеста и меняет исключительно индекс.
  • Journal всегда меняет статус квеста, даже если индекс не изменился или уменьшился.
  • "Красться" можно в воздухе, при этом появится индикатор и будет повышаться навык.
  • GetPCRunning и GetPCSneaking, когда персонаж в воздухе, будут возвращать 1, если соответствующие стойки включены.
  • Все актёры, включая существ, теперь могут пользоваться Idle-репликами, если только они не в бою или являются спутниками, а не только актёры с AiWander. Другие условия сохраняются, в т.ч. необходимость иметь Hello больше 0. То есть Ягрум Багарн и друзья не заговорят без модов.
  • Существа теоретически могут пользоваться репликами Attack. Как здесь.
  • Попытки воспользоваться заклинаниями телепортациями теперь можно обнаружить через скрипты (GetTeleporting), даже если телепортация отключена.
  • NPC будут использовать скелет из назначенной им в записи модели, а не только анимации, которые на стандартном скелете могут поломаться.
  • Чтобы урон дальнего боя считался "обычным", и оружие, и снаряд должны считаться обычными. Перед тем, как пойдёт возмущение, я скажу, что благодаря Андрею и пробуждению моей отсутствующей совести я добавил выключенную по умолчанию опцию для возвращения старого поведения (при котором исключительно снаряд должен быть не-обычным для обхода сопротивления/слабости к обычному оружию). Эта опция доступна в лаунчере.
  • boost::array больше не используется и заменен std::array.
  • boost::format больше не используется в движке, но не esmtool, заменен костылем
  • boost::replace_all больше не используется
  • boost::algorithm::to_lower не используется
  • Ещё пара ненужных инклюдов буста выкинуто
  • Рейтинг Hello теперь 16-битное целое
  • Рейтинги ИИ по умолчанию у NPC без записи AIDT (в основном игрока) — Alarm 0, Fight 30, Flee 30, Hello 30
  • Рейтинги ИИ по умолчанию у существ без записи — Alarm 0, Hello 0, Fight 90, Flee 20
  • Вышеупомянутые дефолтные значения не ретроактивны. В 0.45.0 эти значения у актёров без AIDT совершенно произвольны, потому что берутся из неинициализированной памяти. В более раннем 0.46.0 эти значения нулевые.
  • В несколько заголовочных файлов интерфейса добавлены заголовки <memory> ради используемых там умных указателей, теперь можно снова собрать движок на Raspberry Pi


Azdul:

  • Поправлен юнит-тест кэша тайлов навигатора, ломающегося на Windows из-за других размеров некоторых типов.
  • Контекст ESM-reader теперь всегда инициализируется, что позволяет исправить использование неинициализированной памяти в одном юнит-тесте.
  • Исправлен выбор функции сравнения строки в NAME и строки C на Windows, который отличался от выбора под GCC из-за теоретически большего соответствия стандарту, что опять же исправляет юнит-тест на Windows.


jrivany:

  • Кнопка превью для уровневых списков в редакторе отключена. Потому что у них нет модели. Теоретически можно показывать ряд из моделей предметов/существ, существующих в уровневом списке, но это уж как-то сложно и малополезно.


Ananace:

  • На любой сборке под Windows (которая использует официальный скрипт для сборки) шрифт профилировщика будет выглядеть корректно.


AnyOldName3:

  • Добавлена документация по одной из настроек теней, которая её не смогла ранее получить.
  • На версиях Boost начиная с 1.65 будет использоваться не-deprecated заголовок для наибольшего общего кратного


elsid:

  • Сид RNG можно установить аргументом командной строки

 

 

Март

С 03.03.2019

Спойлер

очень много фиксов регрессий и предупреждений при сборке.
 
akortunov:

  • Относительное время анимации теперь используется только для луков/арбалетов. Позволяет improved thrown weapon projectiles немного корректнее работать. Но есть непонятки с обработкой дубликатов ключей.
  • В GUI и в мире используются диапазонные for-циклы для сокращения и улучшения читабельности кода.


Capostrophic:

  • Добавлен вариант инструкции Journal с явным указанием вызывающего объекта. Он теперь не отбрасывается. На практике он должен был использоваться как объект, на основе которого работают вещи типа %Name в тексте дневниковой записи, непонятно, работало это, или нет, но теперь точно работает и не логируется предупреждение, что это не работает.
  • Строка и символ, которые выводит верификатор скриптов в редакторе, перемещены после текста предупреждения, а номер строки поправлен (нумерация начинается с 1, а не 0).
  • Флаги форсированного попиксельного освещения и привязки освещенности к [0,1] перемещены в глобальные шейдерные определения, заметно сокращая связанный код.
  • Прелестные существа под названием раки (называются так и в единственном числе, не путать с членистоногими) из Skyrim: Home of the Nords теперь могут нормально двигаться. При определении корневой кости существа для определения, на основе чего будет высчитываться перемещение анимацией модели, bip01 имеет больший приоритет, чем узел с названием root bone.


elsid:

  • Заданный начальный скрипт будет использоваться во всех случаях обхода главного меню через командную строку.
  • Исправлено деление на 0 при прохождении времени при timescale, равном 0
  • Библиотеки OpenSceneGraph помечены System, чтобы не было предупреждения при сборке с кастомной сборкой


bzzt:

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


 

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

С 10 марта:
 
Снова фиксы регрессий.
 
bzzt:

  • Генерация буферов вершин ландшафта должна проходить на 20% быстрее.
  • Формат цветов вершин соответствует вводу.
  • В RigGeometry убраны ненужные обратные вызовы.
  • Пустые ячейки отвергаются при генерации удаленного ландшафта, но пустые ячейки вокруг игрока все равно будут загружаться. Сильно сокращает использование памяти удаленным ландшафтом, поведение примерно как в 0.43.0 и раньше (но там пустые ячейки не отображались вообще при использовании удаленного ландшафта). SHOTN и PC снова играбельны при использовании удаленного ландшафта.
  • Ландшафт за пределами расстояния прорисовки не загружается, что опять же сильно сокращает использование памяти.


Capostrophic:

  • В сборках с статически связанным OSG включен плагин OSG для FreeType, чтобы всегда шрифт в профилировщике выглядел корректно на Linux и macOS независимо от происхождения сборки.
  • В консоли можно напрямую модифицировать переменные выбранного объекта. В выводе showvars для объектов без скриптов убран лишний пробел.
  • Используемая версия SDL логируется.
  • Правки оптимизатора портированы из эквивалента в нынешнем OSG.
  • Слайдеры поля зрения, расстояния прорисовки, расстояния обработки актёров и сложности сохраняют целочисленные значения. Поправлен цвет подписи к слайдеру анизотропной фильтрации, он теперь совпадает с другими подписями. Стрелки у этого слайдера теперь по одному делению за раз проходят, а не от 1 до 16 и обратно. У расстояний обработки актёров и прорисовки показываются значения.
  • Большую часть возможных к порту правок из форка OpenMW/OSG портировал в OSG 3.6.4. Правда, переход на 3.6.4 со стороны опенмв пока сомнителен.
  • Музыка в главном меню зациклена (но только если не был совершен обход главному меню или какой-либо ещё возврат к нему).
  • К вышеуказанным оптимизациям ландшафта добавлен обход проблемы отсутствующего ландшафта из-за того, что расстояние прорисовки ландшафта — радиус, а расстояние прорисовки — расстояние до линии от камеры, на которой прорисовка прекращается, при высоких FOV.


elsid:

  • Много улучшений навмешей и фиксов мелких технических недочетов


akortunov:

  • При совпадении индекса и ID текстуры из более новых записей ландшафтных текстур будут заменять текстуры старых.
  • На неоткрытых окнах при использовании Qt5 больше не обмениваются буферы, приводя к предупреждению.
  • Вышеуказанные оптимизации ландшафта и множитель расстояния прорисовки доведены до ума.
  • FOV ограничен значениями от 1 до 179.


AnyOldName3:

  • Блеск объектов был случайно захардкожен scrawl'ом, когда он реализовывал спекулярные карты, и в итоге в Вестли какие-то головы оказались слишком блестящие из-за наличия NiSpecularProperty, а канал блеска в спекулярных картах попросту не работал. Теперь вместо 128 используется нужный параметр.


unelsson:

  • Из таблицы экземпляров объектов в редакторе можно просматривать экстерьерные ячейки, в которых экземпляры объектов находятся.


 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

С 18 марта:
bzzt:

  • Слои текстур удаленного ландшафта удаляются в фоновом потоке, что должно ещё немного сократить возможные фризы.
  • Сборка текстур удаленного ландшафта не конфликтует с добавлением вещей в эту очередь и может происходить одновременно с ней, что должно ускорить время загрузки.
  • Источники света включаются напрямую, а не через виртуальный вызов. Ведет к сокращению времени создания каждого набора состояний в менеджере источников света на 1 микросекунду.
  • Глобальная/локальная карты были сильно оптимизированы, что ведёт к сокращению времени перехода по ячейкам.


elsid:

  • Множественные улучшения поведения поиска путей, в частности в местах, где нет путевых сеток. Должно сделать ИИ заметно поумнее, даже если навмеши не используются.


Capostrophic:

  • По возможности используются адаптивная вертикальная синхронизация, при которой фреймрейт не становится привязан к значению, более низкому, чем частота обновления монитора. Если вертикальная синхронизация не поддерживается, она отключается.
  • Портированы некоторые фиксы оригинального osgQt (используется для просмотра сцены в редакторе).
  • Исправлено по сути неопределенное поведение при отсутствии записей WerewolfHead/WerewolfHair и наличия в игре вервольфа, они теперь как обычные головы NPC обрабатываются (то есть в этом случае голов у волков не будет).
  • Лишний текст после объявлений локальных переменных в скриптах игнорируется с логированием предупреждения. Fair Magicka Regen будет работать без патчей.
  • Лишний текст после оператора else игнорируется, но опять же логируется предупреждение. Ведет к более близкому к оригиналу поведению в Bloodmoon и исправляет, наконец, сборку пары важных скриптов в Sotha Sil Expanded.
  • Клавиши F3, F4, F10, F11 нельзя забиндить в настройках, как зарезервированные. На системах кроме macOS также нельзя назначить клавишу Windows/Meta.
  • Вычищена нафиг неиспользуемая и недоделанная фича по упаковке 4 слоев блендмапов текстур ландшафта в одну текстуру, по мотивам правок bzzt. Код усложняла.


akortunov:

  • Исправлено несколько предупреждений Coverity.
  • Поправлены анимации вервольфов (тип актёра был неверный при инициализации анимации NPC, что вело к довольно интересным результатам).
  • Текущее состояние анимации атаки сбрасывается при полном обновлении анимаций. Исправляет застревающие анимации у вервольфов при трансформации во время атаки.
  • Упрощенные карты текстур ландшафта используются на в 4 раза меньшем расстоянии при включенном удаленном ландшафте. Внешне разницы практически никакой, но фреймрейт повышается.


AnyOldName3:

  • Исправлено неопределенное поведение при сортировке наиболее подходящих для нажатых клавиш действий в сборках редакторах, собранных в режиме отладки.


 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Вышло обновление 0.46. 

Далее на английском.

 

Цитата

 

The OpenMW team is proud to announce the release of version 0.45.0! Grab it from our Downloads Pagefor all operating systems. This release brings yet another horde of bug fixes and several new features, including support for per-group KF animation replacers, 360° screenshots, and the ability to brew a whole stack of a potion at once.

 

If you haven’t tried OpenMW out already, now is the big chance! Bethesda’s free giveaway of Morrowind got extended, so you are still able to get Morrowind for free until March 31st!

 

Check out the release video and the OpenMW-CS release video by the illustrious Atahualpa, and see below for the full list of changes.

 

 

 

Known Issues:

  • Shadows are not yet re-implemented
  • There’s currently no way to redirect the logging output to the command prompt on Windows Release builds — this will be resolved in version 0.46.0
  • To use generic Linux binaries, Qt4 and libpng12 must be installed on your system
  • On macOS, launching OpenMW from OpenMW-CS requires OpenMW.app and OpenMW-CS.app to be siblings

New Features:

  • Non-actor objects display visual effects during spellcasting (#1645)
  • Creatures without any collision box use auto-generated ones (#2787)
  • Launcher: File paths of selected content files can be copied via context menu (#2847)
  • Actors play casting animations during scripted spellcasting (#3083)
  • As an option, barter deals permanently modify merchant disposition (#3103)
  • Ranged weapons deal critical hits to unaware opponents (#3703)
  • 360° screenshots of various kinds can be made (#4222)
  • ‘ToggleBorders’ debug instruction (“tb”) available in console (#4256)
  • Sound generator keys in activator animations are supported (#4285)
  • On macOS, function key shortcuts can be used (#4324)
  • Some of the debug settings previously available as command line arguments can be set up in the launcher (#4345)
  • Support for per-group KF animation replacers has been added (#4444)
  • Shader water is rougher during bad weather (#4488)
  • The number of enchanted items in a stack is shown in the Spells window (#4509)
  • The actual chance of hitting the target is used for AI weapon rating instead of just the skill (#4548)
  • The real potential damage of a weapon is used for its rating (#4549, #4697)
  • A bonus is applied to the rating of ranged weapons if the attacker is far enough from the target (#4550)
  • As an option, the Strength attribute affects Fatigue and Health damage in hand-to-hand combat (#4579)
  • The logging system has been heavily reworked (#4581)
  • AI no longer uses magic effects that affect hit chance if the enemy has not taken the appropriate stance (#4624)
  • AI uses the root mean square of melee-weapon damage for more precise weapon rating (#4625)
  • AI accounts for weapon speed when rating a weapon (#4626)
  • Various vanilla GMSTs regarding combat action rating are utilised (#4632)
  • ‘sTo’ GMST (“to”) replaces hyphen in the Spellmaking menu (#4636)
  • New count field in the Alchemy window allows you to brew multiple potions at the same time (#4642)
  • To improve performance, actors outside of the AI processing range are no longer rendered but faded out (#4647)
  • AI processing range can be configured via an in-game slider and a configuration option (#4647)
  • If the animated creature model lacks a collision box, the non-animated model’s collision box is used as a fallback (#4682)
  • Tooltips of thrown weapons show the actual in-game damage (twice the base-record damage) the projectiles have (#4697)

New Editor Features:

  • All top-bar dropdown menu options and most context menu options have icons (#912, #4506)
  • Actors are rendered in Scene view (#1221)
  • Verifier functionality covers Enchantment records (#1617)
  • Added a check box to execute a case-sensitive global search (#2606)
  • Shift + C is default shortcut for viewing cells (#2845)
  • Shift + V is default shortcut for previewing records (#2845)
  • Global search has a status bar (#3276)
  • Frame rate in Preview window can be limited (#3641)
  • Log files are created in case of a crash (#4012)
  • Previously sorted-by-ID lists, such as magic-effect lists, are now alphabetically sorted (#4404)
  • As an option, base records are ignored in verifier runs (#4466)
  • Already existing marker models for light sources and creature levelled lists are now used (#4512)

Bug Fixes:

  • All actors (not only those in active cells) restore Health and Magicka during player character rest (#1875)
  • Precise times of sunrise and sunset are now recovered from the imported Morrowind INI file (#1990)
  • Actors now properly aim during scripted spellcasting (#2131)
  • Skills and attributes that affect trading no longer cause low selling prices if they’re too high (#2222)
  • Landing sound behaviour for NPCs and the player character has been reworked (#2256)
  • Scripted movement of an object now adjusts the position of actors standing on top of that object (#2274)
  • The last equipped item of a certain type is automatically re-equipped once a bound-item spell of the same type expires (#2326)
  • Restore effects can restore drained stats (#2446)
  • Attacks from unarmed, non-bipedal creatures no longer degrade armour (#2455)
  • For the time being, actors are no longer allowed to activate teleport doors so that their abrupt cell change doesn’t cause a crash (#2562)
  • Using ‘Resurrect’ instruction on a dead player character fully resumes the game (#2626)
  • References to non-existent classes or factions no longer crash the game (#2772)
  • Weapons are visually unequipped before the start of a spellcasting stance transition (#2835, #4327)
  • The player character now gets a bounty when a player follower commits a murder (#2852)
  • To prevent issues on macOS, SDL is only initialised for the Graphics tab of the launcher when Qt5 is used (#2862, #3911)
  • Explicit reference calls no longer break [Tab] autocompletion in the console (#2872)
  • Naked expressions starting with a member operator are no longer allowed outside of the console (#2971)
  • The handling of Drain and Fortify effects for health, magicka, and fatigue has been reworked to match vanilla behaviour (#3049, #4231)
  • Enemies are no longer immune to ranged attacks at very close range (#3059)
  • Adding an item with a self-equipment script to an actor no longer causes a freeze (#3072)
  • Actors who are placed above the ground are now snapped down at a significantly larger distance when a cell is loaded, preventing them from falling to their death (#3219)
  • TrueType fonts are now properly rescaled (#3288)
  • Targets are now much easier to hit with on-touch spells (#3374)
  • The handling of scripted and death animations has been reworked to significantly improve mod compatibility (#3486, #4286, #4291, #4307)
  • ‘GetSpellEffects’ scripting function can now detect zero-duration effects (#3533)
  • Enemies are much easier to hit with low-reach weapons, since the intended start position of the attack raycast is now replicated (#3591)
  • Scripted sleeping interruptions no longer prevent the spawning of random sleep encounters (#3629)
  • Calling ‘AddSoulGem’ and ‘RemoveSpell’ scripting instructions with an extra argument no longer breaks script compilation (#3762)
  • ‘GetPCInJail’ scripting function has been reworked to more closely match vanilla behaviour (#3788)
  • Previous placeholder implementation of ‘GetPCTraveling’ scripting function has been replaced with a proper solution (#3788)
  • Message boxes can now have newline characters in the text argument (#3836)
  • Alignment of terrain texture painting has been corrected to match the vanilla look (#3876)
  • Attenuation of magic light sources is now properly calculated (#3890)
  • ‘Goodbye’ scripting function in dialogue results now makes any additional choices act like ‘Goodbye’ (#3897)
  • ‘RemoveSpellEffects’ scripting instruction now also removes permanent effects (#3920)
  • Movement prediction for spell aiming now uses the correct GMST to calculate the magic projectile’s speed (#3948)
  • Animated collision shapes are no longer erroneously optimised (#3950)
  • The terrain texture blending map is now upscaled to more closely match the vanilla look (#3993)
  • Issues with actors not returning to their initial position in various situations have been fixed (#3997, #4251, #4393)
  • AI packages with a non-unique target no longer choose a random target with the same ID (#4036)
  • On macOS, version numbers are now properly displayed in the application properties (#4047)
  • Text after the last end-of-line tag is no longer shown in books to match vanilla behaviour (#4215)
  • ‘FixMe’ script instruction has been reworked to more closely match vanilla behaviour (#4217)
  • Jumping on slopes is now less restrictive, preventing the player character from getting stuck in V-shaped terrain (#4221)
  • Pathgrid nodes which lie between an actor and that actor’s destination are now ignored (#4230)
  • Actors with an AiTravel package now stop near their target position if that position is blocked by another actor (#4230)
  • [Activate] key can no longer be held down to spam Persuasion and other kinds of repeatable actions (#4260)
  • Turning animations no longer reset idle animations (#4271)
  • Death animations from pre-0.43.0 savegames are now forward-compatible (#4274)
  • ‘CenterOnCell’ script instruction (“coc”) now teleports the player character to the accurate door marker or exterior position for interior and exterior cells respectively (#4292)
  • Faction members are now aware of faction ownership during barter (#4293)
  • AiWander packages which are placed before an AiFollow package in the AI package list no longer override vital functionality of that AiFollow package (#4304)
  • Key focus in containers is now automatically (re)set to the [Close] button to prevent players from accidentally stealing items (#4333)
  • Spellcasting stance transitions no longer interrupt movement animations (#4358)
  • OK button in the Settings window has key focus by default (#4368)
  • It’s no longer possible to cast an Absorb spell on oneself (#4378)
  • Non-audio files no longer crash the game when the engine tries to play them (#4416)
  • When there is a ‘NiStringExtraData’ node with MRK value in a NIF model node, only ‘NiTriShape’ meshes starting with “Tri EditorMarker” are ignored instead of the whole node (#4419)
  • ‘RotateWorld’ scripting instruction now rotates objects around the correct axis, while keeping the objects’ initial rotation (#4426)
  • Some issues with building OpenMW on Windows and macOS were fixed (#4429, #4613)
  • Applying the console command “Lock 0” to a door or a container now creates an unbreakable lock, like in vanilla Morrowind (#4431)
  • Actors without any AI packages now properly return to their initial position after combat or pursuit (#4432)
  • Guards with AiAlarm = 0 no longer attempt to arrest the player character when they observe a crime but no one reports it (#4433)
  • ‘Begin’ and ‘End’ script keywords can now be followed by a comma (#4451)
  • The default terrain texture no longer shines through terrain texture blending transitions (#4452)
  • Broken items are now ignored when trying to equip an item via quick key (#4453)
  • Actors now open doors more quickly (#4454)
  • Light sources which cannot be carried no longer prevent the AI from auto-equipping shields (#4457)
  • The handling of idle chances in AiWander packages has been reworked to more closely match vanilla behaviour (#4458)
  • ‘NotCell’ dialogue condition now supports partial name matches (#4459)
  • Scripted equipment now bypasses most standard equipping restrictions, e.g., those for beast races (#4460)
  • When a non-player object casts an Open spell, a player crime event is triggered if the player character is detected to ensure vanilla compatibility (#4461)
  • General-number formatting (“%g”) now works like in vanilla Morrowind and properly handles the fractional part (#4463)
  • Cancelled AI packages are now removed from the package cache (#4464)
  • Non-ASCII strings are now properly handled in the content selector and in the ESM reader (#4467, #4653)
  • Silt striders in abot’s “Silt Striders” mod are no longer rotated by 90 degrees (#4469)
  • The behaviour of weapon-using non-bipedal creatures has been reworked to make them less helpless in certain situations (#4470)
  • Actors who are vampires now display their regular record head when no vampire head is found (#4474)
  • Scripted animations no longer move actors away from their initial position (#4475)
  • Potential crashes in the quick-keys menu when an item is no longer available in the inventory no longer occur (#4480)
  • ‘Goodbye’ dialogue scripting instruction now disables hyperlinks in dialogue topics (#4489)
  • ‘PositionCell’ scripting instruction no longer tries to add local scripts to scripted items in the teleported player character’s inventory twice (#4490)
  • Training cap is now limited by the trainer’s modified skill instead of their base skill (#4494)
  • Crossbow reloading animations now only apply to the upper body (#4495)
  • Crossbows now use animations for one-handed weapons as a fallback (#4495)
  • Animations for turning in spellcasting stance are now used (#4496)
  • Animated meshes without slashes in their full path are now properly classified as animations (#4497)
  • Scripted spellcasting no longer increases the Alteration skill (#4503)
  • A potential zero division in the Fatigue calculation has been removed (#4510)
  • A knocked-down player character can no longer move or be moved in first-person view (#4519)
  • Some issues with sun specularity in the water shader have been fixed (#4527)
  • Movement animations without idle-animation fallback no longer trigger idle animations (#4531)
  • The game now switches between distorted (underwater) and undistorted sound effects based on the camera position instead of the player character’s head position (#4532)
  • The inventory paper doll is now affected by GUI scaling (#4539)
  • Items with an ‘OnActivate’ command present in their script (such as “cursed” items) no longer visually disappear when they are picked up in menu mode (#4543)
  • Creatures no longer incorrectly flee from werewolves (#4545)
  • Minimum and maximum sound ranges with zero value are now separately reset to their default ranges (#4551)
  • Non-actor objects can no longer have a dialogue window opened via script (#4553)
  • Dialogue topics with reserved names, e.g., “Barter” or “Repair”, now behave the same as in vanilla Morrowind (#4557)
  • Optimiser search for reserved node names is now case-insensitive (#4558)
  • Pinned windows are now properly updated (#4560)
  • Fast-travel logic now always depends on the type of the service NPC’s cell instead of the destination cell type (#4563)
  • The underwater viewing distance limit is no longer broken (#4565)
  • The player character no longer uses headtracking in first-person view (#4573, temporary workaround for another issue)
  • The handling of player character turning animations has been improved (#4574)
  • Several weapon animation inconsistencies during movement in first-person view have been fixed (#4575)
  • Idle animations are no longer reset in certain situations where they should be continuous (#4576)
  • If an innocent actor dies from the continuing effects of a player attack, the murder is now also reported if the player has already paid their fine (#4582)
  • Attack strength is now 0 if the player spams the [Attack] button (#4591)
  • The incorrect inequality operator “<>” is now interpreted as less-than operator “<” to ensure compatibility with certain mods (#4597)
  • Picking a stack of gold up in menu mode now grabs the whole item stack (#4604)
  • Scaling for animated collision shapes is no longer erroneously applied twice (#4607)
  • Fall damage is no longer erroneously applied twice (#4608)
  • The pseudo duration of instant magic effects has been adjusted in the spellmaking menu to match vanilla spell cost calculations (#4611)
  • A zero division occurring in ‘NiFlipController’ nodes without textures has been removed (#4614)
  • The flickering frequency of light sources and some light-related calculations have been fixed (#4615)
  • The sneaking offset in first-person view is now also applied when switching to sneak mode in midair (#4617)
  • Sneaking is no longer possible while flying (#4618)
  • Recharging enchanted items now always increases the Enchant skill regardless of success or failure, like in vanilla Morrowind (#4622)
  • NPC record entries Reputation, Disposition and Faction Rank are now loaded as unsigned variables (#4628)
  • Sneaking stance no longer affects speed if the actor is not actually sneaking (#4633)
  • ‘GetPCJumping’ scripting function has been reworked to match vanilla behaviour (#4641)
  • “%Name” string replacer can now be used in creature dialogue (#4644)
  • Force-equipping a weapon now resets ongoing attack animations (#4646)
  • HUD no longer displays an “item condition” for throwing weapons (#4648)
  • Levelling up no longer fully restores health but rather applies the gained health points (#4649)
  • Actors no longer fall from cliffs or run into obstacles when backing down from attackers (#4656)
  • Enabling collision with ‘ToggleCollision’ scripting instruction (“tcl”) now snaps the player character down to the ground (#4669)
  • The number of known ingredient and potion effects is now determined by the modified rather than the base Alchemy skill (#4671)
  • Pitch factor handling for crossbow animations has been streamlined to more closely match vanilla behaviour (#4672)
  • Journal can no longer be opened while the Settings window is open (#4674)
  • NPC fast-travel destination records without any data no longer crash the game upon loading (#4677)
  • Declared but empty script variable lists no longer crash the game upon loading (#4678)
  • The chance of a successful spell absorption is now multiplicative rather than additive, which is how the magic effect is designed in vanilla Morrowind (#4684)
  • Calling ‘Say’ scripting instruction with non-existent sound as argument no longer breaks script compilation (#4685)
  • Creatures that lack unique sounds now make use of fallback sound generator records (#4689)
  • Loading bars no longer obscure message boxes but are instead moved to the centre of the screen (#4691)

Editor Bug Fixes:

  • ‘Revert’ action now properly updates subviews (#3249)
  • A native colour picker is now used on all operating systems, fixing major issues on macOS (#3681)
  • ‘Undo’ and ‘Redo’ actions now keep assigned shortcuts (#4110)
  • Lock status of newly opened subviews is now correctly initialised (#4520)
  • Instance dragging, which was broken in 0.44.0, has been fixed (#4593)
  • Skeletons of animated objects are now properly initialised (#4654)
  • The Colour entry in Light Source records is now displayed as a coloured box instead of an integer number (#4668)

Other:

  • Windows builds in ‘Release’ mode no longer automatically open a command prompt window (#2490)
  • Race condition in terrain code has been fixed (#4584)
  • Skinning and AI optimisations (#4605, #4621)
  • Support for Rapture3D OpenAL driver has been added (#4606)
  • Record verifying functionality in OpenMW-CS has been revised (#4643)

 

  •  

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

С 25 марта:
 
bzzt:

  • Переработано кэширование, теперь доставание объектов из кэша занимает менее наносекунды вместо нескольких наносекунд. Ну, они довольно часто оттуда достаются...
  • Больше не происходит создания новых шейдеров при смене прозрачности персонажей.


akortunov:

  • Пересчитывание характеристик идёт один раз за любой вид "отдыха" (кроме собственно отдыха), а не один раз за час отдыха.
  • В русской локализации теперь правильно происходит автоматическое обнаружение гиперссылок в диалогах.


Capostrophic:

  • Поправлено срезывание текстур кнопок меню по вертикали.


 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Шикарные тени, которые ждут нас в 0.46 :good::dance3:

И это, подчёркиваю, в Морровинде О_О

 

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

То что проделали эти люди просто бесценно, я понимаю, хоть и дилетант в создании модов, насколько удобен этот редактор, всё для людей чесслово. Если на этот движок перенесут Вегас, будет мне ( и не только мне наверное) счастье. При условии что SFW на всём это запустится конечно.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
11 часов назад, Kronaton сказал:

То что проделали эти люди просто бесценно, я понимаю, хоть и дилетант в создании модов, насколько удобен этот редактор, всё для людей чесслово. Если на этот движок перенесут Вегас, будет мне ( и не только мне наверное) счастье. При условии что SFW на всём это запустится конечно.

Ну, для начала надо довести сам openmw до ума, тобишь до версии 1.0, потом уже начнётся разработка post 1.0, тобишь внедренние всяких фишек, дехардкординг кода моррки, ну и возможно перенос на другие платформы. Тварищ cc9cii уже работает над этим. Он уже внедрил систему новых esm/esp от Обливиона/Фолла3 и Вегаса/Скайрима, а также поддержку новых bsa и ba2. Кипит работа над полной поддержкой NIF и FaceGen.  

 

Примеры его работ:

Спойлер

 

 

 

 

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Надеюсь, что мы доживём хотя бы до OpenMW 1.0 - пока что всё это выглядит слишком хорошо.


Всегда расценивал OpenMW, как некий ключ к абсолютному бессмертию игр Бетесды.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
47 минут назад, haddarath сказал:

Надеюсь, что мы доживём хотя бы до OpenMW 1.0 - пока что всё это выглядит слишком хорошо.

Доживём, за это не стоит переживать) Те же наши соотечественники Akortunov и Capostrophic работают сломя голову, почти что каждый день что-то добавляя и что-то исправляя. Плюс большие работы над оптимизацией сейчас идут и новой навигационной системой. К слову, тени уже готовы. Странно только то, что товарищ Zini, глава проекта уже несколько месяцев не выходит на связь, ибо свинтил отшельником куда то отдыхать.

 

50 минут назад, haddarath сказал:

Всегда расценивал OpenMW, как некий ключ к абсолютному бессмертию игр Бетесды.

Не ты один, на OpenMW сейчас возложены большие надежды как минимум фанатов Обливиона и Фолла трёшки и Вегаса. 

А вообще OpenMW будет базироваться как самостоятельный движок под любые проекты. 

 

ps: очень надеюсь, что по мере выхода VSG, OpenMW перейдёт на него с OSG, ибо OpenGL уже устарел, будущее за Vulkan`ом. 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Круто что вы осветили этот проект, для меня было открытием что теперь рукастые товарищи ещё и новый движок вместо беспезды пишут, мда, если гора не идёт к Магомету... 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

С 30 марта:
 
bzzt:

  • Ликвидированы ненужные манипуляции поля просмотрщика в данных ландшафта, они теперь оставлены на волю компилятора.


Capostrophic:

  • Немного улучшены предупреждения парсера скриптов.
  • Дополнительные 2 аргумента к PlayLoopSound3D игнорируются, как к PlaySound и PlaySound3D. Позволяет работать одному из скриптов Animated Morrowind (правда, сидящие неписи всё равно пока вылезают из коллизий).
  • Корслунд давным-давно сделал хак, чтобы MultiMark.esp загружался: если 4-хбайтный заголовок записи с строкой пустой, то следующий байт пропускается. Но не было проверки на то, что запись-то на самом деле и впрямь закончилась. Фикс этого позволяет загружаться плагину мода The Return of Great House Dagoth, там заголовок одной из записей корректно указывает (отсутствующий) последующий текст пустого скрипта.
  • Когда scrawl узнал, что при включенной настройке "всегда использовать лучшую атаку" выбирается случайная атака при безоружном бое, он сделал выбор типа атаки случайным для безоружного боя вообще, что было некорректно, при отключенной настройке он должен от направления движения зависеть — поправлено.
  • Position и SetPos перемещают актёров в активную экстерьерную ячейку, если игрок находится в экстерьере, даже если актёр находится в интерьере, если новая позиция соответствует таковой ячейке. Это приблизительное копирование оригинального бага довольно странного поведения. Теперь Джулан и иже с ними будут более-менее правильно телепортироваться вслед за игроком. Спасибо, Хрнчамд.

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

C 1 апреля:
 
Capostrophic:

  • У озвучки без определенной позиции теперь анализируется громкость сэмплов, чтобы неписи, её произносящие (а именно только игрок) могли губами двигать. То есть даэдра и Тархиэль будут говорить из уст игрока, как в оригинале.
  • Когда игрок летит, нельзя отдыхать на земле.
  • Когда игрок не находится на земле, всё равно можно отдыхать в кровати.
  • Когда персонаж летит, у него нет никаких звуков шагов или плавания.


unelsson:

  • Добавлены различные функции перевода из одного типа координат в редакторе в другие.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

С 7 апреля:

 

bzzt:

  • Оптимизации и фиксы касательно взаимоотношений камеры с ландшафтом


akortunov:

  • Добавлена опция, позволяющая использовать анимации каста для заклинаний зачарований на предметах. Эквивалент опции задержки повторных использований предметов из MCP для цивилизованных людей.
  • В режиме бога предметы, подобные свиткам, больше не повышают навык зачарования.
  • 4 тип получения опыта навыка зачарования будет правильно использоваться при использовании зачарований, наносящихся при ударе, а не при использовании зачарованных предметов с зарядом или (в режиме бога) при использовании свитков.
  • Если ID объекта экземпляра объекта в сейве не совпадает с ID нового с тем же refnum в измененном плагине, который использовался в сейве, он отбрасывается. Спасибо, TESCS.
  • Большинство виджетов GUI могут подстраиваться под иные разрешения текстур.


Capostrophic:

  • Все заклинания при загрузке проверяются на корректность аргумента навыка/атрибута каждого эффекта и некорректные аргументы отбрасываются, дабы не кидалось исключений для модов с поломанными заклинаниями, которые делали бы игру неиграбельной.
  • Поправлено логирование версии NIF. Добавлена "поддержка" загрузки версии NIF 4.0.0.0 (на самом деле точно то же, что и 4.0.0.2), что позволяет некоторым моделям из последней версии Mesh Improvements Optimized загружаться без воплей о несовместимой версии NIF. Stuporstar готовит обнову и об этом казусе теперь в курсе.
  • Звук промаха проигрывается только для атак игрока.
  • Поддержка настроек постоянного затухания света -- UseConstant/ConstantValue в LightAttenuation Morrowind.ini. Постоянное затухание понижает (при отрицательном значени повышает) яркость всех источников света независимо от расстояния до освещенной вершины/пикселя.
  • Источник света эффекта Свет теперь использует глобальные настройки затухания вместо хардкода.
  • Есть шанс у магических эффектов иметь максимальную мощность


terrabyte25:

  • Быстрые клавиши не работают, когда отключены бой и колдовство


psi29a:

  • Пересели на C++14.


 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

С 14 апреля:


Akortunov:

  • Необрабатывающиеся актёры теперь не могут случайно утопиться
  • Убрана ошибочно добавленная в 0.45.0 зависимость расстояния обрабатывания цели пакета AITravel от расстояния обработки актёров
  • "Я на твоей стороне" орут только актёры, дружественные игроку


Capostrophic:

  • Поле зрения повышено до 60 градусов по вертикали (оригинального при соотношении 4:3)


Utopium:

  • Скорость неписей зависит от веса их расы, как в оригинале, дабы соблюдались более-менее точные тайминги в интро игры (стражник подходит к игроку на несколько секунд быстрее) и вкусы пуристов. Опция для возвращения старого поведения, как в фиче MCP, не зависящего от расы, будет. Всё равно, правда, есть проблема с тем, что актёры не умеют замедляться перед остановкой.
  • Скорость актёров зависит от их размера (то есть масштаба по сравнению с стандартным 1.0, устанавливаемого, например, setscale).

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

С 19 апреля:
 
Capostrophic:

  • Дубликатов звуков с одним ID для магических снарядов больше не добавляется, как это обычно со звуками на одном источнике происходит, что позволяет снарядам заклинания Гнева Дагота дагот ура, у которых семь эффектов с одинаковым звуком полета, не звучать так громко
  • PlaceAtPC принимает дополнительный численный аргумент, который будет игнорироваться, как это делает PlaceAtMe. Чинит скрипт в каком-то моде (уже не помню, каком)
  • Теперь поддерживается 8 типов крови, как в оригинале. Теоретический максимум 64 зашит в формат ESM, только воспользоваться им будет нетривиально.
  • Функции теперь могут использоваться вне выражений. Только они далеко не всегда будут что-то делать. Но вот OnActivate, например, будет блочить обычную активацию. Фиксит какие-то скрипты в MFR (Андрей насчитал 6 штук OnActivate).
  • Все визуальные эффекты, накладываемые на актёров (кроме NPC, у которых своя логика), масштабируются согласно размеру их коллизий, а не только эффекты каста заклинаний, и масштабирование было уточнено, чтобы соответствовать оригиналу. Понимание далеко не совсем полное, но лучше, чем раньше.
  • Первый спутник игрока теперь всегда катается на силт страйдерах и лодках платно.
  • Опция для нормализованной скорости рас, каковой она была раньше.


akortunov:

  • Визуальные эффекты постоянных заклинаний, добавляемых на персонажа AddSpell и болезнями, теперь правильно показываются. Наиболее очевидно на Дагот Уре в конце главного сюжета.
  • Всплывающие подсказки нескольких вещей теперь правильно меняют ширину согласно ширине строк в них, как в оригинале, а не имеют фиксированную ширину.
  • Исправлен порядок аргументов в добавленном в 0.45.0 вызове при обнаружении удара, из-за которого, например, можно было "попасть" оружием по актёрам без коллизий.
  • Для ошибок парсера используется общая система логирования.
  • При использовании OSG 3.6 с помощью добавленной там функции отключается какая-то потоковая вундервафля, вмешивающаяся в определение ядра, на которое попадут потоки навигатора актёров, и иногда приводящая к лютым тормозам. Эта вундервафля насильно отключена в форке OpenSceneGraph, используемом для официальных сборок, так что их это не касается, но так или иначе оно теперь должно работать правильно -- смотря как решит система пользователя -- на любой сборке OSG 3.6.


 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

С 25 апреля:

 

akortunov:

  • Статус "скрыто" у окон инвентаря сохраняется и загружается.
  • Для шкал загрузки и дыхания (под водой) всегда используется общая текстура.
  • NPC и существа перестанут убегать от персонажей с хамелеоном слабее 75%.
  • Исправлены странности с сбросом идл-анимации при прыжке и при атаке оружием/использовании инструмента из 0.45.0.
  • Оборотни прекратят закрывать морду лапой во время пепельной/моровой бури.


Capostrophic:

  • Время перехода от одной музыки к другой увеличено до 1 секунды (как в оригинале), что их делает ещё глаже.


Utopium:

  • Поля поворота в редакторе отображают значения в градусах, а не в радианах.


 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

С 1 мая:
 
akortunov:

  • Нативная поддержка бесплагинового гербализма. Формат примерно тот же, что в GH-MWSE. Документация будет как-нибудь потом.
  • Заменена иконка вкладки лаунчера Data Files.
  • Когда включен удаленный ландшафт, у игрового слайдера расстояния прорисовки расширяется множество допустимых значений.


Capostrophic:

  • У инструкций ForceGreeting, Position(Cell), PlaceItem(Cell) игнорируется дополнительный числовой аргумент (обнаружал в некоторых скриптах модов).
  • У инструкций AiTravel, RaiseRank, LowerRank и функций GetHealth/GetMagicka/GetFatigue/и т.д. и игнорируется дополнительный строковый аргумент (также обнаружал)
  • Get/SetAngle, GetStartingAngle, Get/SetPos, GetStartingPos, Rotate(World), Move(World) при некорректности заданной оси не выкидывают скрипт, а игнорируются
  • Починено шейдерное вершинное освещение, после добавления теней слегка поломанное
  • В нескольких полях записей NPC в редакторе больше не принимаются значения, при которых происходит переполнение.
  • Инструкция Drop работает только на актёрах, как в оригинале, но при этом на всех актёрах, а не только на актёрах с инвентарем
  • Drop проигрывает звук.
  • Drop создаёт новый стак предметов, если в инвентаре актёра предметов с заданным ID не хватает.
  • AddSoulGem/DropSoulGem/RemoveSoulGem работают только на актёрах с инвентарем, а не любой емкости.


xyzz:

  • Фиксы, связанные с Android.


 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

С 4 мая:


akortunov:

  • Окна инвентаря можно разворачивать Shift-ПКМ.
  • Исправлена гонка данных при изменении прозрачности объектов, потенциально приводившая к изменению прозрачности совершенно произвольных объектов
  • Исправлен порочный круг событий изменений разрешения, который мог привести к изменению разрешения до неверного значения при последовательном применении новых значений других настроек
  • Написана документация к нескольким фичам, добавленным за последний год
  • RaiseRank/LowerRank правильно работает


xyzz:

  • Для удобства Android-пользователей и пользователей, незнакомых с комбинацией Shift-ПКМ, выбранные заклинания можно удалять с помощью кнопки "Удалить" в окне заклинаний.


Capostrophic:

  • У персонажей игрока без знака рождения можно удалять заклинания вышеуказанной комбинацией
  • Подсказки для магических эффектов заклинаний могут показывать отрицательное значение силы эффекта. У ингредиентов не показывается никогда, т.к. ими самими не определяется.
  • При включенной настройке toggle sneak состояние нельзя переключить, если управление отключено DisablePlayerControls (при монологе Джиуба, например)
  • Ограничение эксплойта с перепродажей одного и того же предмета -- тот, что есть в MCP из-за схожей логики предлагаемой цены предмета -- действует только при торговле, т.е. когда продажа вообще возможна. Т.е. тренировать навыки и зачаровывать предметы вновь можно по той же цене, что в Морровинде, если у персонажа очень высокие навыки, связанные с торговлей.
  • GetWeaponType возвращает -2 для отмычек и -3 для щупов — подобно фиксу из MCP.
  • Существа получают рейтинг брони от эффекта Щита, а не не имеют никакой защиты вообще — подобно фиксу из MCP.
  • Как в MCP, окно зачарования при провале остается открытым, чтобы игрок мог ещё разок попытаться предмет зачаровать.
  • PCLowerRank теперь умеет выкидывать игрока из фракции, как в MCP.
  • Исправлена скорость проигрывания анимации крадучись от первого лица.
  • GetSpellEffects/RemoveSpellEffects не прекращают выполнение скрипта, если заклинания не существует


bzzt:

  • Слиты ещё несколько мелких фиксов-оптимизаций — карты, воды и её шейдера, обработки источников света. При переходе между ячейками туман войны не перерисовывается для всех активных ячеек, а только для той, в которую игрок попал, если только карта не уже видна с меньшим масштабом.


 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

С 15 мая:
 
Capostrophic:

  • Переписаны (ранее дичайше левые) вычисления шанса зачарования и отчасти связанных значений на основе исследований Хрнчамда.
  • По многочисленным голосам трудящихся в лаунчер добавлена кнопка "клонировать список контента". Она позволяет сохранить существующий порядок загрузки в отдельный список сразу, чтобы не принуждать пользователя создавать новый список и уже его подкручивать под свои нужды, чтобы он сохранился.


akortunov:

  • Исправлено несколько мелких гонок данных.
  • Убраны BOM из двух файлов, теперь можно собирать движок на LCC под архитектуру Эльбрусов.
  • Зависимости от Boost::Format больше нет.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

С 26 мая:


Capostrophic:

  • Несколько фиксов для аналогового движения на геймпадах — падение запаса сил пропорционально скорости, always run при движении без помощи клавиатуры не работает.
  • SayDone возвращает 1 в первый кадр после вызова Say, как оригинале. Какая-то значимая битва в Sotha Sil Expanded теперь работает без проблем.
  • В именах ячеек и регионов решётка (#) перестанет заставлять интерфейс начинать думать, что это цветовой код, и окрашивать часть её названия после "кода".
  • Используется правильная позиция Красной горы как источника пепельных и моровых бурь на основе инфы от Хрнчамда.
  • Анимация прикрытия лица рукой не убирается сразу после выхода из под действия бури, а ожидает реального прекращения своего текущего цикла проигрывания, имитируя оригинальное свое поведение
  • Добавлена заглушка для RepairedOnMe: функция всегда будет возвращать 0. Согласно Хрнчамду, в оригинале функция не работает, хотя часть кода имеет какое-то предназначение и все же написана.
  • Из записей заклинаний при загрузке вычищаются эффекты с некорректными индексами, дабы потом эти эффекты не ломали окружающую их логику.


akortunov:

  • Консоль обрабатывается отдельно от остальных режимов интерфейса и перестанет их скрывать.
  • TrueType-шрифты были опубликованы на Нексусе в настроенном виде для простоты установки; документация была обновлена.


bzzt:

  • Для кругов на воде при необходимости используются шейдеры, дабы не возникало неопределенного поведения при падении на них теней.
  • Оптимизирована генерация текстур земли, как они в итоге выглядят после смешивания: происходит примерно в 6 раз быстрее, заметнее всего разница при использовании distant terrain, т.к. она активно эксплуатируется и для генерации упрощенных текстур.


 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

С 6 июня


Capostrophic:

  • Для актёров, которые способны двигаться по вертикали (плавающих и летающих) рейтинг готовности к бою рассчитывается без учета вертикального расстояния до противника, так что даже если они находятся очень высоко, они с большей охотой на него нападут, примерно как в оригинале (улучшает, кхм, поведение скальных наездников)
  • В NiSwitchNode используется поле с номером изначально используемого дочернего узла
  • Операции по смене прозрачности различных фейдеров всегда применяют итоговое значение прозрачности по их окончании, независимо от того, каким оно оказалось в конце операции — например, если игра была свернута, когда персонаж обучался навыку, и затем игрок вернулся в игру, не будет больше черного экрана до перезагрузки игры.
  • Вызов Player->Cast не запускает сразу снаряд в произвольном направлении или кастует на самого игрока, а выбирает заклинание для каста, как если бы оно было выбрано в окне заклинаний.
  • В лаунчере и редакторе больше не показываются тезки файлов в папках данных с более низким приоритетом, которые на деле загружаться не будут.
  • Оптимизатор объединяет группы только "чистокровных" групп, но не специализированных, что позволяет исправить пропадание стекла фонарей в последней версии Morrowind Optimization Patch. Конкретно проблема была в том, что дочерние узлы безымянной NiLODNode попадали неизвестно куда из-за попытки их оптимизировать
  • Фиксы регрессий.


Александр Перепечко:

  • Магические эффекты заклинаний и их визуальные эффекты стираются не по смерти актёра, а по окончании анимации смерти актёра.


akortunov:

  • Полосы прокрутки теперь используют отдельные, более  качественные текстуры, которые можно заменять, а не кусок текстуры закладки дневника
  • Сообщение о том, что GDB не был найден, теперь показывает переменную PATH, в которой была попытка найти папку, которая бинарник GDB содержит


bzzt:

  • Снова заметные оптимизации использования памяти дальним ландшафтом.


bzzt работает над дальними статиками (скриншот, еще скриншот). Идет тяжело и в буквальном, и в переносном смысле.
 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

С 20 июня:
 
Capostrophic:

  • Любой четвертый аргумент инструкции AiTravel пока игнорируется (обычно это аргумент, ответственный за отсутствие сброса GetAiPackageDone с единицы после прекращения пакета, вызванного инструкцией; сейчас это и так происходит без особой на то причины).
  • Атаки существ без оружия вновь наносят урон состоянию щита при блоке.
  • Диапазон значений предела очков зачарования на одежде и на оружии изменен с [-32677; 32677] на [0; 65535], как в оригинале (в игре без модов реальные диапазоны изменены примерно с [-3267; 3267] на [0; 6553])
  • NiTriShape с названиями, начинающимися на Shadow или Tri Shadow, скрываются всегда, а не только когда на них есть соответствующий флаг. Поведение соответствует поведению TESCS, а не игры, потому что отключать шейпы исключительно для частей актеров нетривиально.
  • Анимация закрывания рукой лица во время бурь теперь применяется и к торсу, чтобы анимация бега выглядела корректно (соответствуя оригиналу).
  • Актеры больше не могут попытаться начать или продолжить бой с самими с собой, что выглядело довольно... интересно, но ломало различных спутников, полагающихся на проигрывание соответствующими вызовами скриптовых инструкций боевых фраз без побочных эффектов.
  • Существа кричат боевые фразы (топик Attack) в начале боя, если такая у них есть, не только во время боя, но и в непосредственном начале него.
  • Когда объект в окне зачаровании не выбран, стиль зачарования нельзя изменить. Когда окно зачарования закрывается и вновь открывается, стиль зачарования корректно сбрасывается.
  • Парализованные актеры больше не могут поприветствовать игрока (так они себя ведут в оригинале). Тем не менее, говорить в целом они могут.
  • Поправлен поворот при телепортации с помощью CenterOnCell (COC) для соответствия оригинальному.
  • Поправлены значения прозрачности при использовании эффектов Хамелеона и Невидимости для соответствия оригинальным по данным Хрнчамда


Assumeru:

  • Исправлена несовместимость шкал прокрутки с более новыми ревизиями MyGUI.


AnyOldName3:

  • Исправлено поведение тумана войны на новейших ревизиях OSG.


Utopium:

  • Файлы omwaddon можно открывать напрямую, и откроется OpenMW-CS с файлом, который можно редактировать.
  • Комбинация Shift-ПКМ откроет окно с данными об экземпляре объекта, на который кликает игрок.


jrivany:

  • На контроллерах можно прокручивать всякое, не двигая курсором
  • Чувствительность геймпадного курсора можно менять

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

С 5 июля:
 
jlaumon:

  • Исправлена нестабильность игры при отключенном звуке


Артем Николенко:

  • Переделано масштабирование окна с статами персонажа — левая панель реагирует на него более адекватно, примерно отражая оригинальное свое поведение.


Capostrophic:

  • Звук удара по персонажу в рукопашном бою проигрывается, только если урон по усталости, а не здоровью.
  • Звук при нехватке заряда у предмета при касте проигрывается только для игрока.


 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

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

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти

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