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

OpenMW или мечты иногда сбываются


MEZON

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

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

Wiki

Список задач до релиза 1.0

Репозиторий с исходным кодом на GitHub
IRC: #openmw на irc.freenode.net
Полезные ссылки:
Wiki-статья о совместимости модов для Morrowind'а с OpenMW
Руководство по портированию ретекстуров в OpenMW
OpenMW на Youtube
OpenMW на ModDB
OpenMW на GitLab
Диздоки планов развития после 1.0
 
Сторонние проекты, основанные на OpenMW:
TES3MP - реализация мультиплеера для OpenMW.
Тема OpenMW на 4PDA - здесь можно найти сборки OpenMW для Android 5+ и гайды по решению проблем.

OpenMW для VR - основан на OpenXR, готовые сборки (устаревшие) есть только для Windows.

Порт на Switch - к сожалению, в настоящее время им никто не занимается.

Что такое OpenMW?

 


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

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

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

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

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

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

И да, и нет.

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

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

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

Статус

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

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

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

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

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

  • Языки программирования: C++, GLSL
  • Графика: OpenSceneGraph
  • Физика: Bullet
  • Звук: OpenAL
  • Ввод-вывод: SDL2
  • Скриптовый язык: Самостоятельная реализация скриптов 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 пришлось бы удалять и заново переписывать.

 
Я не программист, как я могу помочь проекту?

 

 

1. Можно просто играть и отсылать багрепорты
2. Можно тестировать разрабатываемый код, до того, как он попадёт в основную ветку. Там же можно вести обсуждение и предлагать изменения.
3. Можно тестировать моды. Основная цель - выявить проблемы с совместимостью.
4. Можно исследовать механики оригинального движка, особенно актуально в области тонкостей работы скриптов.
5. Можно обновлять Wiki.

6. PR тоже не помешает, особенно если он позволит привлечь тестировщиков и плагиностроителей.

7. Можно донатить разработчикам на Patreon'е:

  • psi29 — проджект лид, поможете закрыть траты на хостинг
  • Capostrophic — тысяча и один фикс + вагон фич
  • AnyOldName3 — тени в ОпенМВ
  • David Cernat — работа над TES3MP
Изменено пользователем akortunov
Ссылка на комментарий
Поделиться на другие сайты

  • 1 год спустя...
  • Ответов 3 тыс
  • Создана
  • Последний ответ

Топ авторов темы

Топ авторов темы

Изображения в теме

UnPinned posts

Очень просто определяет - генератор Distant Land считает травой любой статик с моделью из папки Grass. Морровиндовский движок же сам траву не обрабатывает, т.к. моды с ней не подключаются к самой игре.

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

Очень просто определяет - генератор Distant Land считает травой любой статик с моделью из папки Grass. Морровиндовский движок же сам траву не обрабатывает, т.к. моды с ней не подключаются к самой игре.

Понятно. А в ОпенМВ модуль отрисовки теней просто берёт имеющиеся объекты вне зависимости от того, где они лежат? То есть в нынешней ситуации нельзя ему просто запретить реагировать на меши из отдельных каталогов, я правильно понял?

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

Можно, но этот костыль вряд ли примут, т.к. моды на траву в принципе не рассчитаны на то, чтобы их к игре подключали.

А если их не надо подключать, зачем лишние костыли сейчас вводить, особенно учитывая тот факт, что тени сами по себе ещё экспериментальные?

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

Можно, но этот костыль вряд ли примут, т.к. моды на траву в принципе не рассчитаны на то, чтобы их к игре подключали.

А если их не надо подключать, зачем лишние костыли сейчас вводить, особенно учитывая тот факт, что тени сами по себе ещё экспериментальные?

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

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

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

Изменено пользователем Sup
Ссылка на комментарий
Поделиться на другие сайты

Вопрос, собственно, можно ли такое реализовать в опенМВ на данный момент (патч, плагин и т.д.), и в частности на Тес3МП?

Насколько мне известно, нет.

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

С 5 сентября:

akortunov:

  • По наводке Хрнчамда поведение сообщения том, что о вашем преступлении стало известно полицаям, изменено так, чтобы только появляться, если за прошедший кадр изменился штраф, который игрок выплатит. Раньше оно могло появиться во многих экземплярах, если игрок украдет несколько предметов нажатием "взять все", в то время как Морровинд тупо не обрабатывает события преступлений в реальном времени и обрабатывает их все разом за кадр вне паузы. Нам же требовался другой подход.

я:

  • Если замок слишком сложен, чтобы его открыть слабым заклинанием, отмычкой или снять с него ловушку щупом, сей акт все равно будет считаться преступлением, как это и должно быть. Замечено TR'овцами.
  • Поправлено то самое предупреждение Qt, что появляется всегда, когда лаунчер запускается через терминал/консоль. То, что об открытии незакрытого файла дважды.

Джеймс Стефенс:

  • Как в Морровинде, звук закрытия или открытия не-телепортирующей двери прекращается, если дверь остановилась из-за касания об неё актера. Ранее он не прекращался, что приводило к довольно странным последствиям (дверь "захлопнулась", а физически не закрылась). Не всем может быть по нраву такое решение проблемы, но пусть пока так будет.

unelsson:

  • Для удобства окраски ландшафта текстурами окрашиваемые куски ландшафта теперь можно выбирать. Этот день мы отдаляли, как могли, но Zini уже почти год нет на месте.
Изменено пользователем Capostrophic
Ссылка на комментарий
Поделиться на другие сайты

 

С 5 сентября:

akortunov:

  • По наводке Хрнчамда поведение сообщения том, что о вашем преступлении стало известно полицаям, изменено так, чтобы только появляться, если за прошедший кадр изменился штраф, который игрок выплатит. Раньше оно могло появиться во многих экземплярах, если игрок украдет несколько предметов нажатием "взять все", в то время как Морровинд тупо не обрабатывает события преступлений в реальном времени и обрабатывает их все разом за кадр вне паузы. Нам же требовался другой подход.

я:

  • Если замок слишком сложен, чтобы его открыть слабым заклинанием, отмычкой или снять с него ловушку щупом, сей акт все равно будет считаться преступлением, как это и должно быть. Замечено TR'овцами.
  • Поправлено то самое предупреждение Qt, что появляется всегда, когда лаунчер запускается через терминал/консоль. То, что об открытии незакрытого файла дважды.

Джеймс Стефенс:

  • Как в Морровинде, звук закрытия или открытия не-телепортирующей двери прекращается, если дверь остановилась из-за касания об неё актера. Ранее он не прекращался, что приводило к довольно странным последствиям (дверь "захлопнулась", а физически не закрылась). Не всем может быть по нраву такое решение проблемы, но пусть пока так будет.

unelsson:

  • Для удобства окраски ландшафта текстурами окрашиваемые куски ландшафта теперь можно выбирать. Этот день мы отдаляли, как могли, но Zini уже почти год нет на месте.

 

Это как раз вошло в сборку от 12 сентября?)

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

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

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

Првет, есть ещё вопросик:
Можно ли прикрутить к игроку анимацию, например танца, чисто теоретически? Тип, игрок нажимает кнопку, появляется менюшка, выбираем "танец" и анимация проигрывается несколько раз, потом уходит в idle обратно.

Изменено пользователем Sup
Ссылка на комментарий
Поделиться на другие сайты

Сейчас такого нет, теоретически возможно всё, если это кто-то реализует.

Неправильно поставил вопрос)) Каким путём это можно было бы сделать?

чтобы понимать,хотя бы, в какую сторону копать

Изменено пользователем Sup
Ссылка на комментарий
Поделиться на другие сайты

Неправильно поставил вопрос)) Каким путём это можно было бы сделать?

чтобы понимать,хотя бы, в какую сторону копать

Программированием. И в код анимаций лучше без нужды не лезть, особенно если опыта нет.

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

С 16 сентября:

я:

  • Причесал загрузчик нифов немного на основе своих наработок. Дополнительные данные и контроллеры именованных объектов теперь не стремно загружаются с технической точки зрения.
  • В оригинале был костыль — для спутников, использующих переменную companion из трибунала, если они не удовлетворяют никакому другому условию открытия конкретного окна при активации, теперь открывается окно инвентаря. Костыль теперь копируется, фиксит какой-то мод.
  • Большинство объектов кроме активаторов и предметов, которые невозможно активировать вообще теперь можно активировать, даже если они безымянные. Вместо имени в подсказках используется ID. Поведение более-менее теперь копирует оригинальное, а то были жалобы.
  • Почистил шейдер воды. Но вряд ли какая-то разница в производительности есть.
  • NiMaterialColorController теперь может контролировать конкретный цвет материала, как в оригинале, а не только Diffuse.
  • Больше ключевых слов теперь можно использовать как строковые аргументы в скриптах.
  • Глобальный/локальный конфиг (openmw.cfg конкретно) больше не должны иметь больший приоритет, чем пользовательский, и папки, в них обозначенные, не будут загружаться позже, чем таковые в пользовательском конфиге. Теоретически.
  • Исправлен шанс выпадения ничего для уровневых списков, которые находятся в уровневых списках. Теперь реален спаун некоторой Бладмуновской живности.

akortunov:

  • Из сундука с доказательствами (конфискованными украденными предметами) теперь никогда нельзя брать предметы без последствий.
  • Незаконное взаимодействие с предметом, который принадлежит фракции, теперь корректно изгоняет игрока из этой фракции
  • Подсказки с TFH показывают не номер ранга в гильдии, а название, если оно есть.
  • Выполнение скриптов продолжается после смерти игрока. То есть теперь реально его скриптом воскресить.
  • PCForce1stPerson/3rdPerson теперь действительно Force изменение перспективы камеры.
  • Клавиши быстрого переключения оружия/заклинания теперь не работают, когда окна инвентаря/заклинаний не включены (в чаргене, например).
  • Быстрые клавиши вообще не будут работать в чаргене.

Assumeru:

  • Любой объект, имеющий визуальное представление, теперь можно закрыть/открыть скриптовыми инструкциями Lock/Unlock или (если его можно активировать) вскрыть отмычкой. Включая актеров (в оригинале при вызове на них Lock вылет).
  • Растения и сундуки гильдий больше нельзя закрыть/вскрыть заклинанием.
  • Поправлено неопределенное поведение при загрузке удаленных топиков.
Изменено пользователем Capostrophic
Ссылка на комментарий
Поделиться на другие сайты

  • 2 недели спустя...

Who are you?

 

I’m Alexei, a high school student from Central Russia.

Так это правда.

Ну что ж. Pay Respect!

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

Интервью с Capostrophic:

 

https://openmw.org/2019/interview-with-capostrophic/

Йеп, даешь EMBM в OpenMW (и хватит его уже фейковым бампом называть, ага)!
Ссылка на комментарий
Поделиться на другие сайты

Ну это не я называю, а lysol уточнил при редакции, чтобы путаницы не было, потому что часто отождествляют бампмапы и нормалмапы. Подбор слов неидеальный, да, но расчет на то, что как "стремно работающий бамп" техника лучше известна среди сообщества, в основном из-за проклятых светящихся камней.

 

Опыта в графике бы ещё набрать.

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

Скачал последний OpenMW, запустил, но:

  • Нет Distant Land :(  Я думал, что он поддерживается.
  • У меня мышь в винде назначена на левую руку (левая-правая клавиши меняются местами), но игра этого не понимает, и если назначить клавиши мыши на действия, они срабатывают случайнм образом.
  • Есть ли мод на то, чтобы при входе в инвентарь/диалог игра не останавливалась, как это делает Talky Morrowind?
Ссылка на комментарий
Поделиться на другие сайты

 

Скачал последний OpenMW, запустил, но:

  • Нет Distant Land :(  Я думал, что он поддерживается.
  • У меня мышь в винде назначена на левую руку (левая-правая клавиши меняются местами), но игра этого не понимает, и если назначить клавиши мыши на действия, они срабатывают случайнм образом.
  • Есть ли мод на то, чтобы при входе в инвентарь/диалог игра не останавливалась, как это делает Talky Morrowind?
  • Дистант ленд — сложна. Но можно просто повысить дальность прорисовки:
  1. Лезем в Documents\My Games\OpenMW
  2. открываем в блокноте settings.cfg
  3. в секции [Camera] в строке "viewing distance = хххх" ставим 20000
  4. Прописываем ручками секцию [Cells] и пишем:
  5.  

    [Cells]

    exterior cell load distance = 2

  6. Это не дистант ленд, просто повышаем дальность прорисовки и сдвигаем дистанцию подгрузки ячеек, если ваш компуктер — старое ведро, то фпс упадёт до плинтуса, если мощный, то просто упадёт.

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

 


 

Скачал последний OpenMW, запустил, но:

  • Нет Distant Land :( Я думал, что он поддерживается.
  • У меня мышь в винде назначена на левую руку (левая-правая клавиши меняются местами), но игра этого не понимает, и если назначить клавиши мыши на действия, они срабатывают случайнм образом.
  • Есть ли мод на то, чтобы при входе в инвентарь/диалог игра не останавливалась, как это делает Talky Morrowind?

Как это - нету дистанд лэнда? На месте он, в конфигах включается только, причём тремя способами: "правильный", стрёмный и очень стрёмно-тормозной)))

 

 

Второй как раз описал morrow - повысить дальность прорисовки через конфиг, при этом в игре ползунок не трогать. Первый способ такой:

 

[Terrain]
composite map level = -3
composite map resolution = 1024
distant terrain = true
lod factor = 1.0
max composite geometry size = 4.0
shader = true
vertex lod mod = 0

 

А третий даст наилучшую картинку, но игра еле с места сдвинется: это, как опять же писал morrow, повысить кол-во загруженных ячеек.
exterior cell load distance = 2 - тут можно выставить и 3, и 5, но адские тормоза обеспечены. Зато ВСЕ объекты видны, так-то))))

 

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

 

Не мультипости, если хочешь что-то написать сразу после имеющегося поста - дописывай в него, а не отправляй новый. Scarab-Phoenix.

Изменено пользователем Scarab-Phoenix
Ссылка на комментарий
Поделиться на другие сайты

Фу, я протупил с дистант лендом.

 

Подробное описание (но тут не всё и на английском) — https://openmw.readthedocs.io/en/master/reference/modding/settings/index.html

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

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

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

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

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

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

Войти

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

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

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