Releases: shinyquagsire23/OpenJKDF2
v0.7.5 64-bit Debug
↓ Scroll to the bottom for ZIP download links. ↓
What's new?
- Hotfix 2: Allow binding Forward/Move to mouse buttons.
- Hotfix: Fixed MoTS old/partial-loaded saves crashing on reload.
- Enhancement: Added
-enhancedCogVerbs
cmdline argument to enable MoTS verbs in DF2, as well as JK13 COG verbs and some Droidworks COG verb stubs. - Bugfix: Fixed a bug where polyline Things (lightsaber blades) would cause all subsequently drawn Thing geometry to light up fullbright.
- This was particularly noticeable in MoTS level 12.
- Bugfix:
slowmo on
cheat now works correctly. - MoTS (beta):
- Bugfix: Fixed turret not pitching the player/crosshair.
- Impl: All MoTS COG verbs are implemented (for real now).
- Impl: Savegames are now compatible with original MoTS executable savegames.
⚠️ This breaks savegame compatibility, but there is now a mitigation (see below)⚠️
- Enhancement: Old savegames can now be partially loaded. If an old save is detected, the level will instead be restarted with existing inventory values intact. There may be some slight bugginess with forcepower activations and keyitem pickups for now.
- This helps avoid a lot of really subtle bugs with COG deserialization, where static COGs like forcepower state could become corrupted (ie, the cost of a forcepower could corrupt from 250.0 to 12345.0 or other invalid values, and would persist across save loads).
About these builds
Currently, I am only providing 64-bit builds on all platforms to make it easier to find regressions and undefined behavior; 32-bit is supported but not provided. Windows/macOS zips are located in the Assets spoiler at the bottom, and Linux can download via Flathub or compiled 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 can now be completed! But some behavior may be missing. Any bug reports on game behavior (no matter how minor) are extremely appreciated, 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
-motsCompat
command line argument and following the install instructions, or by placingopenjkdf2-64.exe
(and the other required DLLs) in an existing MoTS install folder.
Running
- Windows: Extract the distribution zip so that
openjkdf2-64.exe
is in the same directory as JK.EXE, then runopenjkdf2-64.exe
. - MacOS: Copy
OpenJKDF2.app
into 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
openjkdf2
into 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, enter the main menu and select Expansions & Mods
, then click Open Resource Folder
. A window will open where you can copy your old player
folder to. You can also install any mods to mods/
and episodes/
.
mods.mp4
My game crashed, what do I do?
I'm looking for regressions and crashes! File an issue or email me at [email protected]
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.app
and copy the entire crash report fromopenjkdf2-64
. Alternatively, copy the crash log fromcrash.log
- Linux: Copy the crash log from
crash.log
or the console output.
To open the asset directory where the crash log is located, enter the main menu and select Expansions & Mods
, then click Open Resource Folder
, as shown in the above mp4.
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>.ogg
in Ogg Vorbis format (same as the GOG/Steam releases), if they are present. Music can also be loaded fromMUSIC/1/Track<1..11>.ogg
andMUSIC/2/Track<1..11>.ogg
for 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
↓ Downloads here ↓
v0.7.4 64-bit Debug
↓ Scroll to the bottom for ZIP download links. ↓
What's new?
- Bugfix: Fixed mutually exclusive sounds not playing.
- This fixes several hurt sounds, including the Rebels on MoTS lv1.
- MoTS (beta):
- Bugfix: Fixed force defense showing in SP force select.
- Bugfix: Fixed force select Quit button not working.
- Bugfix: Fixed force select Enter shortcut key not aliasing to the OK button.
- Bugfix: Fixed some statues not having blades.
- Bugfix: Fixed AI getting stuck after leaping (and some other targeting issues).
- Bugfix: Fixed water controls being inverted.
- Bugfix: Fixed Ysalimari red bubble rendering.
From v0.7.3
- Bugfix: Fixed COG aiclass variables not initializing correctly.
- MoTS (beta):
- Impl: Implemented AI
leap
andcharge
.- Vornskr will now leap at the player.
- Nogrhi should now charge at the player.
- Bugfix: Sith statues will now function correctly and engage the player. (COG fix)
- Impl: Misc AI implementation work.
- Opposing factions will now attack each other.
- Impl: Implemented AI
From v0.7.2:
- Hotfix: Fixed idle timer not getting reset for controller axis.
- Bugfix: Fixed misc crashes in co-op.
- Bugfix: Fixed yet another OOB/crash in
rdPuppet_BuildJointMatrices
. - Bugfix: Added infloop safeguards to
sithRender_Clip
,sithRender_RenderLevelGeometry
,sithRender_UpdateLights
. - Bugfix: Fixed a co-op infinite loop hang caused by calling
sithThing_EnterSector
twice with the same Thing. - Bugfix: Enabling fullscreen on Windows no longer gets stuck in fullscreen. When fullscreen is disabled, the window size and position is reset.
- MoTS (beta):
- Bugfix: Fixed slide left/right being flipped.
- You may have to go into controls and fix this if you have an existing player profile.
- Bugfix: Turrets can now pitch, and can no longer fly.
- Bugfix/Impl: Force powers should now show in the correct order, and Defense shouldn't be visible.
- Impl: Implemented remaining MoTS COG verbs
sendmessageexradi
,worldflash
,getsysdate
,getsystime
,aisetdistractor
,aiaddalignmentpriority
,airemovealignmentpriority
.⚠️ This may break savegame compatibility⚠️
- Impl: Sync type
DSS_MOTS_NEW_1
forsithCogFunctionThing_createThingAtPos_nr_Mots
. - Impl: Serialize
sithAI_aAlignments
intoDSS_ID_1F
.⚠️ This may break savegame compatibility⚠️
- Impl: Added stubs for remaining MoTS AI verbs:
lookforopposingtarget
,leap
,charge
.
- Bugfix: Fixed slide left/right being flipped.
thereisnotry
cheat to reload progress.
About these builds
Currently, I am only providing 64-bit builds on all platforms to make it easier to find regressions and undefined behavior; 32-bit is supported but not provided. Windows/macOS zips are located in the Assets spoiler at the bottom, and Linux can download via Flathub or compiled 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 can now be completed! But some behavior may be missing. Any bug reports on game behavior (no matter how minor) are extremely appreciated, 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
-motsCompat
command line argument and following the install instructions, or by placingopenjkdf2-64.exe
(and the other required DLLs) in an existing MoTS install folder.
Running
- Windows: Extract the distribution zip so that
openjkdf2-64.exe
is in the same directory as JK.EXE, then runopenjkdf2-64.exe
. - MacOS: Copy
OpenJKDF2.app
into 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
openjkdf2
into 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, enter the main menu and select Expansions & Mods
, then click Open Resource Folder
. A window will open where you can copy your old player
folder to. You can also install any mods to mods/
and episodes/
.
mods.mp4
My game crashed, what do I do?
I'm looking for regressions and crashes! File an issue or email me at [email protected]
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.app
and copy the entire crash report fromopenjkdf2-64
. Alternatively, copy the crash log fromcrash.log
- Linux: Copy the crash log from
crash.log
or the console output.
To open the asset directory where the crash log is located, enter the main menu and select Expansions & Mods
, then click Open Resource Folder
, as shown in the above mp4.
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>.ogg
in Ogg Vorbis format (same as the GOG/Steam releases), if they are present. Music can also be loaded fromMUSIC/1/Track<1..11>.ogg
andMUSIC/2/Track<1..11>.ogg
for 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
↓ Downloads here ↓
v0.7.3 64-bit Debug
↓ Scroll to the bottom for ZIP download links. ↓
What's new?
- Bugfix: Fixed COG aiclass variables not initializing correctly.
- MoTS (beta):
- Impl: Implemented AI
leap
andcharge
.- Vornskr will now leap at the player.
- Nogrhi should now charge at the player.
- Bugfix: Sith statues will now function correctly and engage the player. (COG fix)
- Impl: Misc AI implementation work.
- Opposing factions will now attack each other.
- Impl: Implemented AI
From v0.7.2:
- Hotfix: Fixed idle timer not getting reset for controller axis.
- Bugfix: Fixed misc crashes in co-op.
- Bugfix: Fixed yet another OOB/crash in
rdPuppet_BuildJointMatrices
. - Bugfix: Added infloop safeguards to
sithRender_Clip
,sithRender_RenderLevelGeometry
,sithRender_UpdateLights
. - Bugfix: Fixed a co-op infinite loop hang caused by calling
sithThing_EnterSector
twice with the same Thing. - Bugfix: Enabling fullscreen on Windows no longer gets stuck in fullscreen. When fullscreen is disabled, the window size and position is reset.
- MoTS (beta):
- Bugfix: Fixed slide left/right being flipped.
- You may have to go into controls and fix this if you have an existing player profile.
- Bugfix: Turrets can now pitch, and can no longer fly.
- Bugfix/Impl: Force powers should now show in the correct order, and Defense shouldn't be visible.
- Impl: Implemented remaining MoTS COG verbs
sendmessageexradi
,worldflash
,getsysdate
,getsystime
,aisetdistractor
,aiaddalignmentpriority
,airemovealignmentpriority
.⚠️ This may break savegame compatibility⚠️
- Impl: Sync type
DSS_MOTS_NEW_1
forsithCogFunctionThing_createThingAtPos_nr_Mots
. - Impl: Serialize
sithAI_aAlignments
intoDSS_ID_1F
.⚠️ This may break savegame compatibility⚠️
- Impl: Added stubs for remaining MoTS AI verbs:
lookforopposingtarget
,leap
,charge
.
- Bugfix: Fixed slide left/right being flipped.
thereisnotry
cheat to reload progress.
About these builds
Currently, I am only providing 64-bit builds on all platforms to make it easier to find regressions and undefined behavior; 32-bit is supported but not provided. Windows/macOS zips are located in the Assets spoiler at the bottom, and Linux can download via Flathub or compiled 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 can now be completed! But some behavior may be missing. Any bug reports on game behavior (no matter how minor) are extremely appreciated, 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
-motsCompat
command line argument and following the install instructions, or by placingopenjkdf2-64.exe
(and the other required DLLs) in an existing MoTS install folder.
Running
- Windows: Extract the distribution zip so that
openjkdf2-64.exe
is in the same directory as JK.EXE, then runopenjkdf2-64.exe
. - MacOS: Copy
OpenJKDF2.app
into 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
openjkdf2
into 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, enter the main menu and select Expansions & Mods
, then click Open Resource Folder
. A window will open where you can copy your old player
folder to. You can also install any mods to mods/
and episodes/
.
mods.mp4
My game crashed, what do I do?
I'm looking for regressions and crashes! File an issue or email me at [email protected]
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.app
and copy the entire crash report fromopenjkdf2-64
. Alternatively, copy the crash log fromcrash.log
- Linux: Copy the crash log from
crash.log
or the console output.
To open the asset directory where the crash log is located, enter the main menu and select Expansions & Mods
, then click Open Resource Folder
, as shown in the above mp4.
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>.ogg
in Ogg Vorbis format (same as the GOG/Steam releases), if they are present. Music can also be loaded fromMUSIC/1/Track<1..11>.ogg
andMUSIC/2/Track<1..11>.ogg
for 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
↓ Downloads here ↓
v0.7.2 64-bit Debug
↓ Scroll to the bottom for ZIP download links. ↓
What's new?
- Hotfix: Fixed idle timer not getting reset for controller axis.
- Bugfix: Fixed misc crashes in co-op.
- Bugfix: Fixed yet another OOB/crash in
rdPuppet_BuildJointMatrices
. - Bugfix: Added infloop safeguards to
sithRender_Clip
,sithRender_RenderLevelGeometry
,sithRender_UpdateLights
. - Bugfix: Fixed a co-op infinite loop hang caused by calling
sithThing_EnterSector
twice with the same Thing. - Bugfix: Enabling fullscreen on Windows no longer gets stuck in fullscreen. When fullscreen is disabled, the window size and position is reset.
- MoTS (beta):
- Bugfix: Fixed slide left/right being flipped.
- You may have to go into controls and fix this if you have an existing player profile.
- Bugfix: Turrets can now pitch, and can no longer fly.
- Bugfix/Impl: Force powers should now show in the correct order, and Defense shouldn't be visible.
- Impl: Implemented remaining MoTS COG verbs
sendmessageexradi
,worldflash
,getsysdate
,getsystime
,aisetdistractor
,aiaddalignmentpriority
,airemovealignmentpriority
.⚠️ This may break savegame compatibility⚠️
- Impl: Sync type
DSS_MOTS_NEW_1
forsithCogFunctionThing_createThingAtPos_nr_Mots
. - Impl: Serialize
sithAI_aAlignments
intoDSS_ID_1F
.⚠️ This may break savegame compatibility⚠️
- Impl: Added stubs for remaining MoTS AI verbs:
lookforopposingtarget
,leap
,charge
.
- Bugfix: Fixed slide left/right being flipped.
thereisnotry
cheat to reload progress.
About these builds
Currently, I am only providing 64-bit builds on all platforms to make it easier to find regressions and undefined behavior; 32-bit is supported but not provided. Windows/macOS zips are located in the Assets spoiler at the bottom, and Linux can download via Flathub or compiled 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 can now be completed! But some behavior may be missing. Any bug reports on game behavior (no matter how minor) are extremely appreciated, 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
-motsCompat
command line argument and following the install instructions, or by placingopenjkdf2-64.exe
(and the other required DLLs) in an existing MoTS install folder.
Running
- Windows: Extract the distribution zip so that
openjkdf2-64.exe
is in the same directory as JK.EXE, then runopenjkdf2-64.exe
. - MacOS: Copy
OpenJKDF2.app
into 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
openjkdf2
into 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, enter the main menu and select Expansions & Mods
, then click Open Resource Folder
. A window will open where you can copy your old player
folder to. You can also install any mods to mods/
and episodes/
.
mods.mp4
My game crashed, what do I do?
I'm looking for regressions and crashes! File an issue or email me at [email protected]
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.app
and copy the entire crash report fromopenjkdf2-64
. Alternatively, copy the crash log fromcrash.log
- Linux: Copy the crash log from
crash.log
or the console output.
To open the asset directory where the crash log is located, enter the main menu and select Expansions & Mods
, then click Open Resource Folder
, as shown in the above mp4.
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>.ogg
in Ogg Vorbis format (same as the GOG/Steam releases), if they are present. Music can also be loaded fromMUSIC/1/Track<1..11>.ogg
andMUSIC/2/Track<1..11>.ogg
for 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
↓ Downloads here ↓
v0.7.1 64-bit Debug
↓ Scroll to the bottom for ZIP download links. ↓
What's new?
- Bugfix: Fixed an ASAN-reported memory leak in stdGob.
- Bugfix: Fixed the cutscene disable setting sometimes not working.
- Bugfix: Fixed a bug which caused some surfaces to not save correctly (waterfall on DF2 level 4).
- This might also fix some multiplayer bugs, idk.
- MoTS (beta):
- Bugfix: Fixed E-11 scope zoom's vertical mouse sensitivity.
- Enhancement: Added support for MoTS cutscenes, including subtitles.
About these builds
Currently, I am only providing 64-bit builds on all platforms to make it easier to find regressions and undefined behavior; 32-bit is supported but not provided. Windows/macOS zips are located in the Assets spoiler at the bottom, and Linux can download via Flathub or compiled 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 can now be completed! But some behavior may be missing. Any bug reports on game behavior (no matter how minor) are extremely appreciated, 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
-motsCompat
command line argument and following the install instructions, or by placingopenjkdf2-64.exe
(and the other required DLLs) in an existing MoTS install folder.
Running
- Windows: Extract the distribution zip so that
openjkdf2-64.exe
is in the same directory as JK.EXE, then runopenjkdf2-64.exe
. - MacOS: Copy
OpenJKDF2.app
into 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
openjkdf2
into 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, enter the main menu and select Expansions & Mods
, then click Open Resource Folder
. A window will open where you can copy your old player
folder to. You can also install any mods to mods/
and episodes/
.
mods.mp4
My game crashed, what do I do?
I'm looking for regressions and crashes! File an issue or email me at [email protected]
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.app
and copy the entire crash report fromopenjkdf2-64
. Alternatively, copy the crash log fromcrash.log
- Linux: Copy the crash log from
crash.log
or the console output.
To open the asset directory where the crash log is located, enter the main menu and select Expansions & Mods
, then click Open Resource Folder
, as shown in the above mp4.
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>.ogg
in Ogg Vorbis format (same as the GOG/Steam releases), if they are present. Music can also be loaded fromMUSIC/1/Track<1..11>.ogg
andMUSIC/2/Track<1..11>.ogg
for 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
↓ Downloads here ↓
v0.7.0 64-bit Debug
↓ Scroll to the bottom for ZIP download links. ↓
What's new?
- Enhancement: Added symbols to the Windows builds which ~should result in Optimus (and similar AMD) setups using the dedicated GPU instead of integrated graphics.
- Bugfix: Fixed HUD text being partially cut off.
- MoTS can now be completed, and has moved from experimental to beta status! Some features may still be missing (for example, the undead AI on the final levels, as well as some multiplayer features).
- MoTS (beta):
- Bugfix: Fixed E-11 scope zoom with vertical FOVs.
- Bugfix: Fixed third-person FOV being zoomed in.
- Bugfix: Fixed jkGUISingleTally stars rendering incorrectly.
- Bugfix: Fixed player being invulnerable (again?)
- Bugfix: Fixed a rendering bug which caused bricks to render incorrectly (transparent) on Level 4.
- Bugfix: Fixed a UAF which caused the level 12 -> 13 transition to crash.
About these builds
Currently, I am only providing 64-bit builds on all platforms to make it easier to find regressions and undefined behavior; 32-bit is supported but not provided. Windows/macOS zips are located in the Assets spoiler at the bottom, and Linux can download via Flathub or compiled 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 can now be completed! But some behavior may be missing. Any bug reports on game behavior (no matter how minor) are extremely appreciated, 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
-motsCompat
command line argument and following the install instructions, or by placingopenjkdf2-64.exe
(and the other required DLLs) in an existing MoTS install folder.
Running
- Windows: Extract the distribution zip so that
openjkdf2-64.exe
is in the same directory as JK.EXE, then runopenjkdf2-64.exe
. - MacOS: Copy
OpenJKDF2.app
into 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
openjkdf2
into 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, enter the main menu and select Expansions & Mods
, then click Open Resource Folder
. A window will open where you can copy your old player
folder to. You can also install any mods to mods/
and episodes/
.
mods.mp4
My game crashed, what do I do?
I'm looking for regressions and crashes! File an issue or email me at [email protected]
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.app
and copy the entire crash report fromopenjkdf2-64
. Alternatively, copy the crash log fromcrash.log
- Linux: Copy the crash log from
crash.log
or the console output.
To open the asset directory where the crash log is located, enter the main menu and select Expansions & Mods
, then click Open Resource Folder
, as shown in the above mp4.
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>.ogg
in Ogg Vorbis format (same as the GOG/Steam releases), if they are present. Music can also be loaded fromMUSIC/1/Track<1..11>.ogg
andMUSIC/2/Track<1..11>.ogg
for 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
↓ Downloads here ↓
v0.6.16 64-bit Debug
↓ Scroll to the bottom for ZIP download links. ↓
What's new?
- Bugfix: Fixed music and SFX volume settings not saving to JSON registry.
- Enhancement: Added cutscene volume slider.
- Enhancement: The mission loading screen now pauses before entering the level, to allow text to be read.
- This can be disabled to the old behavior in
Setup
>General
>Disable mission start confirmation
.
- This can be disabled to the old behavior in
- Bugfix/Enhancement: macOS bundles should now target macOS 10.15 Catalina.
- MoTS (experimental):
- Bugfix: Fixed levels 6 and 9 not loading.
- Bugfix: Fixed player spawning out-of-bounds on levels 11 and 13.
- Bugfix: Fixed crash on loading level 12.
About these builds
Currently, I am only providing 64-bit builds on all platforms to make it easier to find regressions and undefined behavior; 32-bit is supported but not provided. Windows/macOS zips are located in the Assets spoiler at the bottom, and Linux can download via Flathub or compiled 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
-motsCompat
command line argument, or by placingopenjkdf2-64.exe
in an existing MoTS install folder.
Running
- Windows: Extract the distribution zip so that
openjkdf2-64.exe
is in the same directory as JK.EXE, then runopenjkdf2-64.exe
. - MacOS: Copy
OpenJKDF2.app
into 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
openjkdf2
into 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, enter the main menu and select Expansions & Mods
, then click Open Resource Folder
. A window will open where you can copy your old player
folder to. You can also install any mods to mods/
and episodes/
.
mods.mp4
My game crashed, what do I do?
I'm looking for regressions and crashes! File an issue or email me at [email protected]
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.app
and copy the entire crash report fromopenjkdf2-64
. Alternatively, copy the crash log fromcrash.log
- Linux: Copy the crash log from
crash.log
or the console output.
To open the asset directory where the crash log is located, enter the main menu and select Expansions & Mods
, then click Open Resource Folder
, as shown in the above mp4.
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>.ogg
in Ogg Vorbis format (same as the GOG/Steam releases), if they are present. Music can also be loaded fromMUSIC/1/Track<1..11>.ogg
andMUSIC/2/Track<1..11>.ogg
for 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
↓ Downloads here ↓
v0.6.15 64-bit Debug
↓ Scroll to the bottom for ZIP download links. ↓
What's new?
- Bugfix: Fixed alpha blending on transparent textures.
- Enhancement: Toned down the bloom a bit.
- Enhancement/Bugfix: Increased resource limits for TODOA mod.
- Maximum alpha surfaces deferred is now 1024, from 32.
- Maximum visible sectors is now 1024, from 128.
- Maximum cog linked symbols is now 2048, from 256.
- Maximum cog symbols is now 2048, from 512 (JK)/1024 (MoTS/Droidworks).
- MoTS (experimental):
- Fixed MoveToFrame interpolation (Fixes the lever in Carbon Freezing Chamber)
Previous alpha blending:
Current alpha blending:
About these builds
Currently, I am only providing 64-bit builds on all platforms to make it easier to find regressions and undefined behavior; 32-bit is supported but not provided. Windows/macOS zips are located in the Assets spoiler at the bottom, and Linux can download via Flathub or compiled 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
-motsCompat
command line argument, or by placingopenjkdf2-64.exe
in an existing MoTS install folder.
Running
- Windows: Extract the distribution zip so that
openjkdf2-64.exe
is in the same directory as JK.EXE, then runopenjkdf2-64.exe
. - MacOS: Copy
OpenJKDF2.app
into 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
openjkdf2
into 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, enter the main menu and select Expansions & Mods
, then click Open Resource Folder
. A window will open where you can copy your old player
folder to. You can also install any mods to mods/
and episodes/
.
mods.mp4
My game crashed, what do I do?
I'm looking for regressions and crashes! File an issue or email me at [email protected]
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.app
and copy the entire crash report fromopenjkdf2-64
. Alternatively, copy the crash log fromcrash.log
- Linux: Copy the crash log from
crash.log
or the console output.
To open the asset directory where the crash log is located, enter the main menu and select Expansions & Mods
, then click Open Resource Folder
, as shown in the above mp4.
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>.ogg
in Ogg Vorbis format (same as the GOG/Steam releases), if they are present. Music can also be loaded fromMUSIC/1/Track<1..11>.ogg
andMUSIC/2/Track<1..11>.ogg
for 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
↓ Downloads here ↓
v0.6.14 64-bit Debug
↓ Scroll to the bottom for ZIP download links. ↓
What's new?
- Bugfix: Fixed a bug where entering the character creator would cause texture cache mixups.
- Bugfix: Fixed a bug where exiting the character creator would crash.
- Bugfix: Misc UBSAN fixes.
- Bugfix: Fixed 1:1 aspect ratio not actually being 1:1.
- Bugfix: Fixed overdraw issues from previous aspect ratio correction implementation (stretched skybox, possibly decreased performance).
- Enhancement: Added a checkbox in General > Advanced to disable corpse despawning.
- MoTS (experimental):
- Implemented more
playeraction
COG hooks. This should ~maybe fix the security camera exit.
- Implemented more
From v0.6.12/v0.6.13
- Bugfix: Fixed saber sometimes not being extended on post-kill save reload.
- Bugfix: Don't spam splash sounds if an object is rapidly moved between sectors by a COG, but the object has no velocity.
- Bugfix: Misc rdPuppet ASAN OOB fixes.
- Bugfix: Fixed Z-near clipping on PoV models (especially noticeable at high FOVs)
- Bugfix: Fixed animations resetting on savegame load (and possibly some co-op animation sync issues)
- Bugfix: Fixed some animations lingering on savegame load
- Bugfix: Fixed the weapon holster animation not playing (and possible other animations?)
- Bugfix: Fixed some OOB access/memory corruption bugs in sithAIClass and rdPuppet
- Bugfix: Fixed SSAO rendering over saber blade
- Bugfix: Fixed saber blade rendering behind PoV model
- Bugfix: Fixed saber PoV animations not showing several other animations
- Enhancement: Improved jkgfxmod texture caching performance. Texture data is not unloaded when pressing ESC.
- Enhancement: Added the option to cache all textures at startup (default: enabled).
- This can be disabled in Setup > Display > Advanced
- MoTS (experimental):
- Fixed FOV not applying correctly
- Fixed some animations not loading
- Enhancement/Bugfix: Added support for jkgfxmod
albedo_factor
;emissive_map
no longer requiresemissive_factor
. - Enhancement: Improved the bloom implementation to not be as blown out:
About these builds
Currently, I am only providing 64-bit builds on all platforms to make it easier to find regressions and undefined behavior; 32-bit is supported but not provided. Windows/macOS zips are located in the Assets spoiler at the bottom, and Linux can download via Flathub or compiled 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
-motsCompat
command line argument, or by placingopenjkdf2-64.exe
in an existing MoTS install folder.
Running
- Windows: Extract the distribution zip so that
openjkdf2-64.exe
is in the same directory as JK.EXE, then runopenjkdf2-64.exe
. - MacOS: Copy
OpenJKDF2.app
into 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
openjkdf2
into 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, enter the main menu and select Expansions & Mods
, then click Open Resource Folder
. A window will open where you can copy your old player
folder to. You can also install any mods to mods/
and episodes/
.
mods.mp4
My game crashed, what do I do?
I'm looking for regressions and crashes! File an issue or email me at [email protected]
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.app
and copy the entire crash report fromopenjkdf2-64
. Alternatively, copy the crash log fromcrash.log
- Linux: Copy the crash log from
crash.log
or the console output.
To open the asset directory where the crash log is located, enter the main menu and select Expansions & Mods
, then click Open Resource Folder
, as shown in the above mp4.
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>.ogg
in Ogg Vorbis format (same as the GOG/Steam releases), if they are present. Music can also be loaded fromMUSIC/1/Track<1..11>.ogg
andMUSIC/2/Track<1..11>.ogg
for 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
↓ Downloads here ↓
v0.6.13 64-bit Debug
↓ Scroll to the bottom for ZIP download links. ↓
What's new?
- Bugfix: Fixed saber sometimes not being extended on post-kill save reload.
- Bugfix: Don't spam splash sounds if an object is rapidly moved between sectors by a COG, but the object has no velocity.
- Bugfix: Misc rdPuppet ASAN OOB fixes.
- Enhancement: Improved jkgfxmod texture caching performance. Texture data is not unloaded when pressing ESC.
- Enhancement: Added the option to cache all textures at startup (default: enabled).
- This can be disabled in Setup > Display > Advanced
From v0.6.12
- Bugfix: Fixed Z-near clipping on PoV models (especially noticeable at high FOVs)
- Bugfix: Fixed animations resetting on savegame load (and possibly some co-op animation sync issues)
- Bugfix: Fixed some animations lingering on savegame load
- Bugfix: Fixed the weapon holster animation not playing (and possible other animations?)
- Bugfix: Fixed some OOB access/memory corruption bugs in sithAIClass and rdPuppet
- Bugfix: Fixed SSAO rendering over saber blade
- Bugfix: Fixed saber blade rendering behind PoV model
- Bugfix: Fixed saber PoV animations not showing several other animations
- MoTS (experimental):
- Fixed FOV not applying correctly
- Fixed some animations not loading
- Enhancement/Bugfix: Added support for jkgfxmod
albedo_factor
;emissive_map
no longer requiresemissive_factor
. - Enhancement: Improved the bloom implementation to not be as blown out:
About these builds
Currently, I am only providing 64-bit builds on all platforms to make it easier to find regressions and undefined behavior; 32-bit is supported but not provided. Windows/macOS zips are located in the Assets spoiler at the bottom, and Linux can download via Flathub or compiled 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
-motsCompat
command line argument, or by placingopenjkdf2-64.exe
in an existing MoTS install folder.
Running
- Windows: Extract the distribution zip so that
openjkdf2-64.exe
is in the same directory as JK.EXE, then runopenjkdf2-64.exe
. - MacOS: Copy
OpenJKDF2.app
into 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
openjkdf2
into 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, enter the main menu and select Expansions & Mods
, then click Open Resource Folder
. A window will open where you can copy your old player
folder to. You can also install any mods to mods/
and episodes/
.
mods.mp4
My game crashed, what do I do?
I'm looking for regressions and crashes! File an issue or email me at [email protected]
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.app
and copy the entire crash report fromopenjkdf2-64
. Alternatively, copy the crash log fromcrash.log
- Linux: Copy the crash log from
crash.log
or the console output.
To open the asset directory where the crash log is located, enter the main menu and select Expansions & Mods
, then click Open Resource Folder
, as shown in the above mp4.
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>.ogg
in Ogg Vorbis format (same as the GOG/Steam releases), if they are present. Music can also be loaded fromMUSIC/1/Track<1..11>.ogg
andMUSIC/2/Track<1..11>.ogg
for 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