The installation is divided in two steps: installing the open source engine OpenMW and the Morrowind game data from Bethesda.
If your distribution allows to install OpenMW with ease using its package manager (e.g., yum
, pacman
, apt-get
, …), that is the most straightforward and suggested way.
However, if the package is broken or you want another version. Then you need to compile yourself. Here are few notes how to do so.
To download the code, we find the version we want:
$ git ls-remote --refs 'https://gitlab.com/OpenMW/openmw.git' [...] 096b9f8d8a5a98a980a8a5f24bf03a10e239e771 refs/tags/openmw-0.44.0 e29e3248fcf57d6cfac6efd049955c133f2d9896 refs/tags/openmw-0.45.0 0abcb54f51ec4a3979039b2e94ccdc5aa57920ec refs/tags/openmw-0.46.0 bac679d5f5a252e479a576855c8b00bad9b67d6a refs/tags/openmw-0.47.0 [...]
The tag name on the right is the version. OpenMW 0.47 is the newest at time of writing. Let's say we want to compile it. From a temp directory we get the code. You can just skip the –branch
value if you just want the latest code.
$ git clone --depth 1 --branch openmw-0.47.0 'https://gitlab.com/OpenMW/openmw.git'
The compilation is set up by cmake
so:
$ cd openmw $ mkdir build && cd build $ cmake -DCMAKE_INSTALL_PREFIX=/ -DCMAKE_BUILD_TYPE=RelWithDebInfo .. $ nice -19 make -j `nproc --all`
The cmake
call may fail for lack of deps, install all it needs. If possible prefer the bullet library multithreaded to the regular one. As reference, here is the list of deps in archlinux: boost-libs
, bullet-multithreaded
, ffmpeg
, libxt
, luajit
, mygui
, openal
, openscenegraph
, qt5-base
, recastnavigation-openmw
, sdl2
, unshield
, and yaml-cpp
.
The call of make
is the compilation itself and may require a bit of time. If you want to keep using the computer while compilation is running you can check the output of nproc –all
(the number of processors) beforehand and call make
with a smaller number to keep more processing power free for you.
Finally we install in `~/openmw`, you can decide another directory if you prefer.
$ make DESTDIR=~/openmw install
in ~/openmw/bin
will be the binaries, so not in PATH. Remember to add to the directory to your path if you want to execute openmw
from any directory (i.e., export PATH=“$PATH”:~/openmw/bin
)
The gog setup file setup_tes_morrowind_goty_2.0.0.7.exe
needs to unpacked. In a temp directory we use innoextract to do so:
$ ls setup_tes_morrowind_goty_2.0.0.7.exe $ mkdir morrsetup && cd morrsetup $ innoextract ../setup_tes_morrowind_goty_2.0.0.7.exe [...] long output omitted [...] $ ls app tmp
The directory app
contains all the game data we need. Move where you want to install the game. As example we want install in a games directory under the home
$ cd "app/Data Files" $ for a in BookArt Fonts Icons Meshes Music Sound Splash Textures Video ;do convmv --notest --lower -r "$a" ;done $ cd ../.. $ mv app ~/games/tes_morrowind $ cd .. $ rm -r morrsetup
In the installation directory (i.e., ~/games/tes_morrowind
) is the Data Files
directory. In the original morrowind.exe engine all mods had to be installed there; in OpenMW each mod is installed in a separate directory; so we create a copy that we will keep pristine for OpenMW and we keep the original Data Files
if we need to use programs like the Construction Set that expect all their data to be in that directory.
$ cp -r 'Data Files' 'Data Files OpenMW'
If we need to reset the Data Files
directory to its original content, we can just delete it and copy back the OpenMW one.