What's new?
- Bugfix: Fixed misc stack overflows found by ASAN.
- Enhancement: Fix crosshair scaling too large on ultrawide setups. Crosshair scaling now only increases with screen height.
- MoTS (experimental):
- Fixed player selection GUI positioning
- Implemented most of Force Powers menu (rank limitations, force defense, choose N text).
- Fixed player not getting damaged.
- Fixed enemies not dropping weapons.
- Fixed music installation for tracks 0-9.
- Fixed music playback for tracks 0-9 if they are named ie
Track02.ogginstead ofTrack2.ogg.
- JK Unofficial Patch support:
- Support has been added for the "JK 2013"/"Unofficial Patch" additions.
- This fixes loading for the TODOA mod's intro and first level.
- The maximum Thing limit has been increased from 641 to 32000.
- The COG stack size has been increased from a depth of 64 to 0x10000.
- Stubs have been added for all
JK-Extension.dllverbs, with implementations for some.
About these builds
Currently, I am only providing 64-bit builds for Windows and MacOS to find regressions and undefined behavior; Linux can download via Flathub or compile manually (See BUILDING.md for instructions). It is recommended to backup any savedata you place significant value on before running.
About Experimental JK MoTS support
- MoTS cannot be completed yet! However, I will gratefully accept any bug reports on game behavior, because it helps me to keep track of what needs to be done. There's a lot, the debug menu is your friend :)
- MoTS mode can be launched by adding the
-motsCompatcommand line argument. This will move asset searching toopenjkmotsinstead ofopenjkdf2and unlock all additional COG verbs and other changes.
Running
- Windows: Extract the distribution zip so that
openjkdf2-64.exeis in the same directory as JK.EXE, then runopenjkdf2-64.exe. - MacOS: Copy
OpenJKDF2.appinto your Applications folder and run it. You may need to right click -> Open to get around Gatekeeper. - Linux: Install via Flathub, or compile and copy
openjkdf2into the same directory as JK.EXE and run.
If game assets are missing, an install prompt will show on startup and ask for either:
- An existing GOG/Steam/original installation
- An original Disk 1, followed by Disk 2
To transfer saves, copy your old player folder to:
- Windows:
%APPDATA%\Local\openjkdf2\ - macOS:
~/.local/share/openjkdf2/($XDG_DATA_HOME/openjkdf2) - Linux:
~/.local/share/openjkdf2/($XDG_DATA_HOME/openjkdf2) - Linux Flatpaks:
~/.var/app/org.openjkdf2.OpenJKDF2/data/openjkdf2
If you are not using custom shaders, delete resource/shaders/ to revert to the default graphical settings.
My game crashed, what do I do?
I'm looking for regressions and crashes! File an issue or email me at mtinc2@gmail.com with a crash stacktrace. If it's reproducible, a savefile or instructions to reproduce would also be appreciated.
- Windows: Copy the crash log from
openjkdf2-64.RPT. - MacOS: Cmd+Space, type
Console.appand copy the entire crash report fromopenjkdf2-64. Alternatively, copy the crash log fromcrash.log - Linux: Copy the crash log from
crash.logor the console output.
Crash logs will be located in directory assets are located:
- Windows:
%APPDATA%\Local\openjkdf2\ - macOS:
~/.local/share/openjkdf2/($XDG_DATA_HOME/openjkdf2) - Linux:
~/.local/share/openjkdf2/($XDG_DATA_HOME/openjkdf2) - Linux Flatpaks:
~/.var/app/org.openjkdf2.OpenJKDF2/data/openjkdf2
QoL feature notes:
- Built-in jkgfxmod texture pack support
- IPv6 Multiplayer support, based on Valve's GameNetworkingSockets
- SDL2 controller/joystick support, with up to 32 buttons bindable.
- Emissive Textures, Bloom, Screenspace Ambient Occlusion (SSAO)
- Music is loaded from audio tracks at
MUSIC/Track<12..32>.oggin Ogg Vorbis format (same as the GOG/Steam releases), if they are present. Music can also be loaded fromMUSIC/1/Track<1..11>.oggandMUSIC/2/Track<1..11>.oggfor installs made from original disks. The music looping bug is also fixed. - Menus, cutscenes and the game viewport auto-rescale to the window size, with appropriate aspect ratios (ultrawide, or at least wide-er monitor support).
- Game runs at full framerates by default instead of 30FPS/50FPS in Singleplayer (validated up to 144FPS)
- FPS can be capped to any value in Setup > Display
- VSync can be enabled or disabled in Setup > Display
- Weapon waggle is scaled properly with FPS
- FOV is adjustable in Setup > General
- HiDPI is configurable in Setup > General
- HUD elements are scaled with screen resolution
- LOD and mipmap distances are scaled with render resolution to ensure textures and models don't degrade noticeably on higher-resolution screens.
What isn't working:
- Using plus or minus to resize the screen (with SDL2, resolution auto-resizes to window size)
- In-game screenshots