STAR WARS™ Jedi Knight: Dark Forces II

STAR WARS™ Jedi Knight: Dark Forces II

239 ratings
OpenJKDF2: Simple Jedi Knight on Modern Machines
By Vortikai
OpenJKDF2 is described by the project developers as a "a function-by-function reimplementation of DF2 in C, with 64-bit ports to MacOS and Linux." Essentially, it is a project that reversed engineered major parts of Jedi Knight and added quality of life improvements to the game. This means it makes it easy to run Jedi Knight on modern machines with modern aspect ratios, monitor sizes, current generation graphic cards, and operating systems. It also now natively supports JKGFXMod—all of this simply by placing the contents of a zip file into your Jedi Knight directory!

This guide serves to set up Jedi Knight for you in stages that progressively change the look from vanilla to something akin to a mid 2000s Star Wars game, depending on your taste.

NOTE: OpenJKDF2 is in beta and may contain bugs. Because it easier to install than JKGFXMOD and players haven't noticed any major issues, it is still recommended to install it, as it is better than using the vanilla Steam version. If you come across any bugs please report them on the issue tracker[github.com].
4
7
3
4
   
Award
Favorite
Favorited
Unfavorite
Introduction

OpenJKDF2 with JKGFXMod enabled for emissive textures (lightsaber, blaster bolts), EMJK for updated models and textures (Kyle model, water), and JKNUP for upscaled textures not covered by EMJK

I'm normally a vanilla person. It's my favorite flavor. However, I absolutely think this is fantastic work. Recently there has been active development with a few remaining people of Massassi began on a relatively large scale project with multiple smaller-scale projects. These projects revolve around JKGFXMod, which includes nifty updates that allow JK to run on modern machines, and also some update the look of Jedi Knight to be slightly more modern.

After JKGFXMod, shinyquagsire23's reverse engineering Jedi Knight project gained traction. This allowed further ease in setting up Jedi Knight to run on modern systems, and allows JK to be more "open" per its namesake. It still requires a valid copy of Star Wars: Jedi Knight Dark Forces II, however.

This guide instructs how to install Jedi Knight on modern machines in stages, starting with vanilla looks with QoL improvements that come with OpenJKDF2. It progressively becomes more modded, allowing you to stop at any stage, to play the game how you want based on how it looks through the other stages: JKNUP, JKNUP: Annex, and EMJK.

Features
OpenJKDF2
  • Graphical: SSAO, bloom, texture filtering, FOV slider, optional vertical (Horizontal+) FOV, FPS limiter, VSync, HiDPI settings, adjustable gamma, 32-bit color, ambient occlusion, parallax mapping, improved performance, HUD scaling
  • Multiplayer: improved netcode, co-op support for story, IPv6 support on Valve's GameNetworkingSockets API
  • Launch from Steam, Steam overlay works, even when using a community-made patch for fixes
  • Easy to install
  • Optional disabling of corpse despawning
  • Alt+Tabbing is painless
  • Future-proof: install now, update mods later without risk to save game file

OpenJKDF2 or JKGFXMod with Jedi Knight: Neural Upscale Pack (JKNUP) and/or Enhancement Mod for Jedi Knight (EMJK)
  • Textures that have lights in them now emit lights (e.g. walls with lights on them, Star Wars buttons, Nar Shadaa lights, etc.). This means lightsabers actually glow and weapon projectiles that should emit light do, just like in the films!
  • Textures upscaled using artificial intelligence

Three Mods to Make Jedi Knight Look Great
The first is OpenJKDF2[github.com]. This is essentially a project that reverse engineers functions of Jedi Knight: Dark Forces 2 and writes them in C. Currently it offers 64-bit ports for MacOS and Linux, along with other platforms, and could even reach a point that Android/iOS implementations could be made. A WebAssembly demo has been made available[maxthomas.dev] as an example of what this can do--make Jedi Knight run on most things that were limited before. It also adds the ability to implement new Quality-of-Life improvements, such as to graphics and the netcode, to work on modern machines. This is the basis of the guide. It also now includes loading of JKGFXMod textures and already incorporates many features from JKGFXMod natively!

The second is the Jedi Knight Neural Upscale Texture Pack, which is an AI-made higher-resolution version of JK's original textures. This also includes said emissive textures that JKGFXMod enables the function of, as JKGFXMod on its own does not include the textures. The MODDB page has comparison shots of vanilla vs. upscaled. Requires OpenJKDF2 or JKGFXMod.

And finally, the Enhancement Mod for JKGFXMod (EMJK), which is a compilation of other high resolution model & texture packs (JKE, darthbabe96's models and conversions, the FGR/SMLiberator-made saber + emissive explosion effects, etc.) This mod is hosted in the TODOA moddb page and requires either OpenJKDF2 or JKGFXMod, and JKNUP.
Install OpenJKDF2
OpenJKDF2 is required for all optional mods below this section (JKNUP, JKNUP: Annex, and EMJK).
  1. Install Jedi Knight: Dark Forces II via Steam, GOG or discs. I highly recommend starting with a clean install since you can download the game in a minute nowadays. This includes uninstalling the game through Steam, then delete the contents of \Steam\steamapps\common\Star Wars Jedi Knight before reinstalling.
  2. Install OpenJKDF2's latest version[github.com] by going to the Assets section of the latest release, expanding it, and downloading e.g. win64-debug.zip.
  3. Place the contents of the assets of the latest version in \Steam\steamapps\common\Star Wars Jedi Knight, overwrite when prompted.
  4. To be able to launch from Steam, rename JediKnight.exe to JediKnightOriginal.exe. Then, rename openjkdf2-64.exe to JediKnight.exe.
OpenJKDF2 is now installed. This is what your Jedi Knight will look like without the optional mods that follow this section.



If you're happy with it, you can end here and launch the game through Steam. Your game is mostly vanilla with The Force Within co-op multiplayer support. Also included are graphical improvements such as color correction, ultrawide support with scaling HUD, readable text, painless ALT+Tabbing, and a bunch of other QoL features you may find out more about on its GitHub page. Some optional features, such as SSAO and Bloom, can be enabled in Settings -> Display.



For example, you may enable bloom in Settings -> Display to activate some (not all) emissive textures:

(Optional) Install Jedi Knight Neural Upscale Pack (JKNUP)
JKNUP requires OpenJKDF2.

Install the Jedi Knight Neural Upscale Texture Pack by placing the contents of JKNUP.zip into \Steam\steamapps\common\Star Wars Jedi Knight\jkgm\materials.

JKNUP is the AI-upscaled textures for Jedi Knight that includes and allows emissive light textures (e.g. see the lights on the wall in this screenshot compared to the screenshot above). Your game will now look like this if you skip the optional mods below this section.

(Optional) Install Jedi Knight Neural Upscale Special Effect Annex (JKNUP: Annex)
JKNUP: Annex requires OpenJKDF2 and JKNUP.

Install JKNUP: Annex by downloading the mod and placing and extracting its contents to \Steam\steamapps\common\Star Wars Jedi Knight.

JKNUP: Annex is the mod that includes emissive textures on lightsabers, and weapon projectiles such as Stormtrooper Rifle bolts.

(Optional) Install Enhancement Mod for JKGFXMOD (EMJK)
EMJK requires OpenJKDF2 and JKNUP.
  1. Install Jedi Knight: Dark Forces II's Unofficially Patched[community.pcgamingwiki.com] version of the game by extracting the contents of the zip file's Jedi Knight - Dark Forces II folder into your Jedi Knight directory. Alternatively, you can patch the .exe yourself[cdn.discordapp.com] but the instructions for that are not covered in this guide.
  2. Install FastGamerr's Enhancement Mod for JKGFXMOD (EMJK) textures by placing the contents of EMJKv0336.7z into the Jedi Knight directory. Your game will now look like this.
Troubleshooting
For support on OpenJKDF2, you can try the Issues page[github.com] on the GitHub page. You may also submit bugs you notice there.

For general support, The Massassi Discord[discord.gg] could be a good bet.

For things on your own to try, try a new profile and/or new game to see if the issue still persists.
301 Comments
Lennyguy20 May 5 @ 12:08pm 
is the game crashing before even the opening titles for anyone else?
Vortikai  [author] Mar 12 @ 10:10am 
I have my own issues with Jedi Knight Remastered, especially for the MotS version. The guide is relevant to people not wanting to use it.
Vortikai  [author] Mar 12 @ 10:09am 
Sir Hooby: I'm not sure myself, I'd ask shiny here: https://github.com/shinyquagsire23/OpenJKDF2/issues I don't think it matters where the source game comes from (Steam or GoG)
Максим Митин Mar 11 @ 3:21pm 
The guide is no longer very relevant, Jedi Knight Remastered 3.3 is posted on Nexus Mods, which already includes 4K textures and all existing mods. So it's no longer necessary to install everything separately.
Sir Hooby Jan 29 @ 11:46pm 
I have two separate questions:

Firstly, how do you find games with the new Valve GNS implementation? Do you still need to send each other IPs and port-forward for that to work? A guide to getting multiplayer set up for OpenJKDF2 would be a great addition.

Secondly, when playing multiplayer, does it matter who's playing on what install? I imagine the same version of OpenJKDF2 is needed, but what about the base games? Could someone playing with a Steam copy theoretically play with someone with a GOG or Disc copy?

The documentation on the actual Github page for OpenJKDF2 doesn't really have a tutorial for configuring multiplayer, which is why I figured I'd ask.
Yale Jan 29 @ 11:10am 
As someone else said before, OpenJKDF2 doesn't add a jkgm folder. Are you supposed to just create these missing folders?
Vortikai  [author] Jan 26 @ 12:42pm 
We have fiddled with AI-upscaled cutscenes in MOTS since they are pre-rendered, and thus are awful. We've made some progress before stopping waiting on the mod author's decision on how to handle the cutscenes, but so far it looks like it's gotten as far as it'll go. It's very, very difficult, especially for MOTS, but possible.

Modders are just not interested in putting in effort at the moment.

We haven't touched JK cutscenes at all. They're pretty decent as is all things considered.
Razdor Jan 24 @ 9:58am 
Is there any AI-Upscaled cutscenes for this sourceport?
Vortikai  [author] Dec 29, 2023 @ 2:25pm 
No idea, sorry. I'd try the github page to get help directly from the developer
CanisLupus Nov 27, 2023 @ 7:34am 
Hello, if anyone can help I would be grateful. I downloaded files from release 0.9.1. and put in JKDF2 folder. However when I want to launch the mod exe file, I get error "The procedure entry point CreateFile2 could not be located in the dynamic link library KERNEL32.dll"
Running on win7, kernel32.dll is in its folder, security packages are all installed. Any tip? Anyone else experiencing the same? Thank you.