STAR WARS™ Jedi Knight: Dark Forces II

STAR WARS™ Jedi Knight: Dark Forces II

View Stats:
How to break the 30fps limit while fixing weapon animations
Well, this is a weird-♥♥♥ piece of tech. As most have noticed, even if you get a solid 60 fps from the engine the first-person view only updates at 30 fps (maybe less?), and first-person weapon models animate far too quickly. Terrible experience.

Someone on the GoG forum[www.gog.com] found that 47 (48 in my testing, while 50 is definitely busted again) fps is a sweet spot where if you limit the game to that amount you will get smoother first-person movement and normal-speed weapon animations. I have been using RivaTuner Statistics Server to do this, as suggested in that post. Highly suggest trying this.

Something to add to that: 47 fps still looks kinda bad because it's not an even divisor of any monitor refresh rate (I usually run 120hz). However, when I limited JK to 40 in Riva the game suddenly became waaaay smoother, just as regular, in terms of framepacing, as it had been at 30 fps. Only the 10 extra frames per second add a lot of extra apparent smoothness.

I thought this game was a lost cause to get running in any decent manner but I'm now pretty satisfied.

If you only have a 60hz monitor you should probably limit the game to 30 fps (you'll at least get proper weapon speeds) or 47/48 fps if you don't mind some framepacing stutter.

Now I'm wondering if you could use dgVoodoo to wrap the game to DX11 and inject ReShade? Seems like yes. Too lazy to test after going through all these JK shenangans just now.
Last edited by Showtime, Synergy!; Oct 24, 2015 @ 8:05pm
< >
Showing 1-4 of 4 comments
Big Trov Oct 28, 2015 @ 12:39pm 
To make framerate limiting easier, I modified aqrit's ddwrapper to improve the "fake vsync" setting. Just put the two files in the game directory (unless you use DgVoodoo, then see below)

{LINK REMOVED}

It uses TimeGetTime() insead of GetCurrentTick() which makes its framerate limiting much MUCH more consistent. It also ensures that there is no tearing no matter the specified framerate. So you can use 47FPS with this.



To use it with DgVoodoo, you must rename the ddraw.dll from this download to bdraw.dll, then open up JK.EXE in a hex editor and replace instances of "ddraw" with "bdraw".

It works for both 3D Hardware Accelerated and Software modes.

To use it, edit aqrit.cfg, make sure FakeVsync is 1 and FakeVsyncInterval is set to your desired framerate. Due to the unit (milliseconds) used in the Sleep() command, your framerate might be a frame or so less than the desired one. So, setting the limit to "47" will cap it to "45" or so, but as far as I can tell there's still no tearing and it's still notably smoother than locking to 30. By my testing the game starts getting stuttery if it goes above 47.000 FPS.
Last edited by Big Trov; Oct 28, 2015 @ 12:41pm
Kyle07 Nov 5, 2015 @ 2:42am 
I don't understand what you are talking about. For me, the whole game felt like low fps, but only the weapon animations looked like 60 FPS. But you talk the opposite, that the First-Person is with a fps cap. I don't see that. I see that the camera (first and third person) has low fps and only the weapon animation (by walking for example) looks very smooth.

But I don't thing its only the camera of the game. If I look for example for a lying weapon which flies 360° it doesn't look smooth either. It is crazy in how many aspects this game has to be fixed. I hope I will never be forced to buy the GoG version. Paying once for this game should be enough.

I will try Tervis' fix and look how smooth the game will be.
But is there any explanation why this is so weird in the game? Happened the same in the 90s with the game?
Last edited by Kyle07; Nov 5, 2015 @ 2:43am
Your first paragraph describes the issue as I experience it. We are in agreement. The fix is to lock the framerate to 47fps or less. That creates a compromise between decent framerate and normal-speed animations.

I don't remember how it ran in the '90s; my video card was too slow to run it at 60 back then, too.
Kyle07 Nov 5, 2015 @ 3:27pm 
Oh we are in agreement. Then I have understood your post wrong. Ok, thx for the explaination. I will try the 47 fps way.
< >
Showing 1-4 of 4 comments
Per page: 15 30 50

Date Posted: Oct 21, 2015 @ 5:11pm
Posts: 4