Open re-implementation of Medal of Honor: Allied Assault including Spearhead and Breakthrough expansions with modern features and bugfixes from ioquake3 with cross-platform support
Find a file
2023-05-21 02:05:06 +02:00
build/main/models/omtests Hard reset 2016-03-27 11:49:47 +02:00
code Added RefreshShaderNoMip 2023-05-21 02:05:06 +02:00
docker Added more libs to install 2023-05-11 22:48:36 +02:00
docs/images Updated README with new screenshot 2023-05-19 20:51:51 +02:00
misc Moved restuff 2023-05-08 17:42:54 +02:00
.gitignore Added .gitignore 2023-02-05 14:33:53 +01:00
CHANGELOG.txt Hard reset 2016-03-27 11:49:47 +02:00
CMakeLists.txt Set the project name to openmohaa 2023-05-18 20:24:09 +02:00
COPYING.txt Hard reset 2016-03-27 11:49:47 +02:00
cross-make-mingw.sh Hard reset 2016-03-27 11:49:47 +02:00
LAYOUT.md Renamed LAYOUT.txt to LAYOUT.md (Markdown) 2023-02-05 01:54:57 +01:00
make-macosx-ub.sh Hard reset 2016-03-27 11:49:47 +02:00
README.md Spelling fix 2023-05-20 15:09:43 +02:00
TargetArch.cmake Added s390x in TargetArch 2023-02-03 22:33:48 +01:00
TODO.TXT Hard reset 2016-03-27 11:49:47 +02:00

OpenMoHAA

 / _ \ _ __   ___ _ __ |  \/  |/ _ \| | | |  / \      / \
| | | | '_ \ / _ \ '_ \| |\/| | | | | |_| | / _ \    / _ \
| |_| | |_) |  __/ | | | |  | | |_| |  _  |/ ___ \  / ___ \
 \___/| .__/ \___|_| |_|_|  |_|\___/|_| |_/_/   \_\/_/   \_\
      |_|

Discord

Discord Banner 1

Current State

OpenMoHAA is still in its early days.

Server

The server version can successfully be built. Some stuff are not working as intended, such as Actor or Vehicle. These systems are both almost fully implemented, but not really in stable state.

Overall the server part and the game module are almost fully implemented, but the stability may vary, there may be some minor bugs and crashes.

Client

The client version of OpenMoHAA is partially implemented and not stable currently. The cgame module is partially implemented as well, but is compatible with the original MOH:AA game. Credits to Heavy Metal: F.A.K.K. 2's SDK for the cgame module.

Here is the current working state for each part of the engine:

Part name Full Almost Half Early Bad Not working Comment
Audio x Very basic implementation from Quake III
CG Module x Missing FX, Marks and decals
Client x Missing GameSpy, server list, binds, map picker, ...
Collision x
Model/TIKI/Skeletor x
Renderer x Missing ghost, marks, sphere lights, sky portal, sun flare, swipe
Server x Probably a few bugs remaining
Server module (fgame) x Actor, vehicle, and few gameplay bugs
UI x Has core features only (menu, widgets, console, hud, urc loading)

Running

Backup existing mohaa files, cgamex86.dll and gamex86.dll (set their extension to .bak)

a) extract archive to your MOHAA installation directory.

-or-

b) Copy all pak*.pk3 files and the sound/ directory from your MOHAA/main directory into openmohaa's 'main' directory.

If you have problems running the game :

You may need to install Microsoft Visual C++ 2015/2017/2019/2022 Redistributable from

https://learn.microsoft.com/en-US/cpp/windows/latest-supported-vc-redist?view=msvc-170

You can now start a local OpenMOHAA server or play on a server.

Compiling

OpenMoHAA supports both x86 and x64 architectures, and although the target platform is Windows, it still can be compiled for other platforms, and even other architectures.

These are the tools required for all platforms :

  • CMake >= 3.5
  • Flex and Bison (currently not used)
  • A C++11 compiler is required.

The installation directory can be set to MOHAA directory.

The client build can be built by adding -DWITH_CLIENT=1 to the CMake command line. This will compile the cgame module and the full app with rendering, ui and sound suppport, alongside the dedicated server version.

Linux

These are the tools required on Unix :

  • Clang >= 3.3 or GCC >= 4.8.1

clang-3.5 and gcc-4.8.5 should work (tested on Ubuntu 16.04).

1 line install command with latest clang version : sudo apt-get install -y ninja-build cmake make clang-15 lld-15 flex bison

Windows

Visual Studio (2019 or 2022) is generally preferred.

Screenshots

Third party

SDL

http://www.libsdl.org/

download Source code, compile

OpenAL

https://www.openal.org/ download OpenAL soft source

run cmake on OpenAL, compile

LibMAD

http://www.underbit.com/products/mad/

download source code, compile

cURL

https://curl.se/

Libogg

https://github.com/gcp/libogg

Libvorbis

https://xiph.org/vorbis/

Libopus

https://opus-codec.org/

URLs and communities