openMERC is a GPL engine for Soldier of Fortune (2000). It runs the files from your own copy. The download has none of the game in it.
Since 0.2.3
Glass traces its own reflection. A slanted window mirrors the room, lamps show up in the pane, dirt softens the reflection, and a thin sheet bends the view along the streaks in the texture. In the rain, each drop has its own refraction and is, in essence, a tiny lens.
A lightning strike lights the clouds around the bolt, glares into the lens, and falls on the floor through the window. Each strike keeps its own thunder.
Fog is one calculation for the whole frame. World, characters, effects, glass and water take the fog along the view, so a body standing in a fog volume is in that fog. This is in openMERC's own game module.
On sib3 the blast doors open again after the checkpoint button. A character standing near the world origin was holding every sliding door on the map.
A PNG, TGA or JPG replacement keeps the original texture's size, animation and damage image. A 4x pack used to draw four times too big.
Mac and ARM are in this release
0.2.3 shipped Windows and Linux x86_64. 0.2.4 adds the other two.
Windows 10/11 - openMERC-0.2.4-win32.zip into the game folder, then openMerc.exe. The original 32-bit game DLLs still work here as a fallback.
Linux x86_64 - openMERC-0.2.4-linux-x86_64.tar.gz, then ./openMERC.sh. SDL and OpenAL are in the archive.
Linux arm64 - openMERC-0.2.4-linux-arm64.tar.gz, same layout. Built on Debian 13 arm64. Player movement rounds the same way as on x86, so an arm64 client and an x86 server stay in step. That was off by 1 unit/s, including on a Rock 5B.
macOS, Apple Silicon - the arm64 build, OpenGL 3.2 on Apple's OpenGL 4.1 (the Metal-backed one). Unit tests pass, and a level loads. Intel Macs are not built. The original DLLs are 32-bit Windows, so a Mac runs openMERC's own modules. This build wants Homebrew's SDL 3 and OpenAL Soft.
You need Soldier of Fortune 1.07f, retail with the patch or GOG. The look in the clip is the High preset. Every new effect has its own switch back to the original drawing.
https://github.com/sidreshot/openMERC/releases/tag/v0.2.4
There are problems, but we’re working on them - we’re effectively shooting down these issues on a regular basis. Things keep getting better with every release.
On Windows, if a mission stalls, the original DLLs are the fallback. Multiplayer is openMERC to openMERC.
I am testing the game on AMD and Debian 13.
Thanks for your attention.