Slow Load Times With V-Sync Disabled? [Nvidia GeForce GTX 560 SE][Windows XP 32-bit]
I know that V-Sync is mentioned as a reason for slow load times, but I have it disabled both in Nvidia's drivers and by the game, and the load times still seem slow, slower than I remember v1.2 load times to be.
Comments (35)
-
-
reporter It's not a mobile chipset. The driver is set for max performance.
AMD Phenom II X4 955 8 GB RAM GeForce GTX 560 SE
Not new by any means but considering how more advanced games have shorter load times (Quake 2 takes maybe a second or two to load a map versus about 15 seconds for Daikatana?) I don't have a SSD but still, the game is not fragmented on the disk. Weird.
What if I replaced the sound the game uses for loading (it's disabled but maybe it still waits on it) with a sound with 0 length? That's all I can think of if the original v1.2 bug involved playing the sound all the way through.
Are there any files in \data\ that I can add to a new PAK file to reduce the number of files?
-
Quake2 might be a better game, but it's not more advanced - it's older, has smaller data and better code (in the parts where Daikatana and Quake2 are different). If I remember correctly, Daikatana was known for slow loading times when it was new, while Quake2 wasn't.
There are more reasons why Daikatana might be slower:
- Daikatana .pak format allows compressing files, so they need to be decompressed first which is slower than just reading them
- Daikatana has lots of files that are not in paks (mainly mp3 sound files). Loading lots of files from a .pak tends to be faster than loading them from the filesystem
- Maybe the small mp3s (not music) are even decompressed on load? Not sure about that though..
At least the .mp3 files can not be put in a .pak, the code relies on reading them directly from a real path on the hard disk
-
15 seconds is just plain wrong. The game should literally take like no more than 5 seconds on any computer made in the past 10 years. I mean I can load a map in 5 seconds on an SSD on a Pentium 3 with a Voodoo 5.
Does the game have erratic frame rate? Nvidia has this newer mode of trying to be clever with speed throttling for games that run too fast and personally I don't think it works very well. You can use nvidia inspector to force the "low power" modes to have the same frequency as the "turbo" modes. I had problems with very weird frame rate dips in Quake 1, 2 and DK and sometimes slow loading until I disabled that.
-
reporter I haven't noticed any framerate craziness. I have the base profile set to cap everything at 60 FPS to fix problems with some older games that run faster than that and behave strangely as a result but I don't think all games even follow it. The game does start up almost instantly but map loads are always slow. I thought maybe DEP might have been slowing it down as sometimes older games don't work right with it but it acts the same even when added as an exception. Turning the load sound on it does clearly play each 'tick' noise perfectly spaced out every single time, which is fun because if you die or backtrack or reach the next map (which happens pretty quick since the map segments are so small) you get to sit through it again. It's like Half-Life, except Half-Life can load each piece in an instant. Even Unreal, which had some rather long single player maps by comparison, can beat it handily. I'm not aware what all Daikatana has to do on each map load, so it makes me wonder if the bot pathing for the sidekicks is part of it.
-
No, this is very very wrong. Start the game, drop to console and type snd_shutdown. Then hit escape to get back to the main menu and try to load a map. If it is still slow then you have some frame limiting going on somewhere.
You said you have the base profile to cap everything at 60fps? This sounds like you're forcing the card to do some sort of vsync, maybe adaptive? Disable that and do this instead: in console do cl_async 1; r_maxfps 60. That will limit the gameplay to 60fps, but loading and downloads won't be restricted.
Daikatana isn't as complex with BSP loading as you think it is. It's basically loading the same things Quake 2 does: textures, models, sounds, etc. Again, on a modern machine it should sound like a ripping noise instead of the ticks that's how fast it loads. There is a console command to disable the loading screen sound but you'll have to check the Readme.pdf as I don't know it offhand.
-
Also, this is the second time now someone has mentioned DEP and old games. Can you name a specific game this is a problem with? I'm pretty sure the Quake-engine games do not have this problem. All my engine projects are compiled with VS2005 these days and typically cross-compiled with GCC4 so any serious warnings have been cleaned up. Daikatana doesn't have this luxury of having all warnings cleaned up, yet (there's a lot!) but Linux builds run fine.
-
reporter The original Half-Life (Steam release) will either take a long time to load or will crash as a result of DEP. With DEP set to AlwaysOn it starts spreading to other programs like the 1964 emulator that do memory injections.
Went through these steps and it still does it. Do you know what sound gets used for the progress bar? I figured I'd swap it for null.wav just as a test. What if there was an option to eliminate the progress bar and simply display "loading"?
Also, I noticed that when you first encounter Mikiko, there is a warning about one of her MP3s not being found.
-
I've never heard of this DEP issue before, but anyways... If you did these steps and it's still doing it it indicates frame throttling coming from YOU. It has nothing to do with the sound ticks or the sound file itself.
You have vsync or some kind of throttling enabled somewhere. You have to find out where.
Load a map, and type /timerefresh a few times in the console. Is the resulting number always the same? If so, or mostly the same, what is the number?
-
Other things to think about:
#Is your machine or video card overclocked? #Are you running antivirus? If yes, what kind? #What OS? 32-bit or 64-bit? #Are you loading the game from an external drive? If yes, is it an IDE to USB controller? Is it a thumb drive? Is it from a network share? Are they old drives? #Are you literally using an old 5200 RPM IDE drive?
When you do /timerefresh just moving around to various spots and try it. If the result is always the same/close to it no matter where you are in the map then you have some sort of speed throttling enabled.
-
reporter - No
- Yes, but on-access scan is disabled.
- XP 32-bit
- No/No/No/No/No
- No
I noticed another interesting tidbit: the HUD weapons along the right side. They normally rotate at a certain speed but at certain times the rotation slows way down. Also I've noticed times when the mouse sensitivity will jump up temporarily. Will test /timerefresh now.
-
The fact you mention XP makes me think that you need to use the nvidia inspector utility to disable the speed throttling. When I built a new PC last year and upgraded from a 7800 GTX 512 (yeah it's been a long time!) to a GTX 960 I found I had these kinds of weird issues with old games.
It was only resolved after I used Nvidia Inspector to set the power modes to have the same clock frequencies for all of them. Otherwise, you could watch the hardware monitor in nvidia inspector and see the drivers being unable to make it up its mind if it wanted like 200mhz or 2000mhz (making up a number here but you get the idea).
For some reason the XP drivers don't have the ability to set the power modes properly from the driver control panel. I had to use nvidia inspector.
The fact you're seeing the HUD spinning icons slowing down/speeding up is almost confirming what I'm suggesting. You can also set /show_fps 1 in the console to show an in game FPS counter above the bottom HUD to see if the frame rate is unable to maintain a consistent framerate.
Again, these are all problems I had after upgrading to a newer nvidia card. Enable that, and let me know what you seem to average as well as the timerefresh averages. You should be able to get at least 100fps in this game as long as you don't have AA enabled. I don't know what penalty you'll get with AA enabled as I don't bother to play with AA personally.
-
reporter I don't use AA. I have Nvidia inspector installed. What do I need to do in it exactly?
-
I'm on a business trip so I don't have any of this in front of me. But basically you want to click the overclocking button, note the highest performance level (I believe it's P0) from the overclocking pulldown menu. Note the frequencies and voltage ranges. Write it down.
From the overclocking pulldown menu select the other power levels. Click the two buttons next to it to unlock the min/max clocks. For each power level make them the same as the P0/highest performance level.
Hit apply. Leave nvidia inspector open, and open up the game. See if it works properly. If it does you can click Create clocks shortcut in Nvidia inspector and it should make an icon on your desktop for this power profile. If so, then close out of nvidia inspector.
There is a way to make a batch file that will automatically apply these clocks at startup. Again, I'm out of town and I won't be home until Thursday evening so if this is your problem I won't be able to clarify and simplify the solution until then. But, I'm pretty sure this is the problem.
Also, just for good measure please give me the frame rate.
-
- changed title to Slow Load Times With V-Sync Disabled? [Nvidia GeForce GTX 560 SE][Windows XP 32-bit]
-
reporter What does cl_async do?
-
Asynchronous rendering. This allows network frames and render frames to happen independently.
Basically the 125hz jumping bug will be erradicated because the network frames are limited to 60fps (can be changed with net_maxfps, usually 30 or 40fps is enough, but sometimes jumping can get a bit stuttery at this rate so we default to 60fps).
This also has an extra benefit, since the network frames are separated from the renderer the code doesn't have to wait as long during connect sequences. This allows you to get into the game slightly faster, but HTTP downloading benefits a lot from this. You can see this effect in R1Q2 as well.
If you don't like async, turn it off and just use cl_maxfps to control the framerate. Otherwise, if async is on then framerate is controlled wtih r_maxfps.
-
reporter Does the game have a quicksave ability? Since it uses a modified Quake 2 engine I would think that it would have it, even if there is no mention of it.
-
It does, but first. Did you even fix your problem?
-
If nvidia inspector worked for you here is my batch file I have it load at startup:
start nvidiaInspector.exe -setGPUClock:0,1,1240 -setGPUClock:0,2,1240 -setMemoryClock:0,1,3004 -setMemoryClock:0,2,3004 -setFanSpeed:0,100 start nvidiaInspector.exe -setGPUClock:0,1,1240 -setGPUClock:0,2,1240 -setMemoryClock:0,1,3004 -setMemoryClock:0,2,3004 -setFanSpeed:0,100 start nvidiaInspector.exe -setGPUClock:0,1,1240 -setGPUClock:0,2,1240 -setMemoryClock:0,1,3004 -setMemoryClock:0,2,3004 -setFanSpeed:0,100
GPU clock for my card is 1240mhz and Memory clock is 3004Mhz. It will obviously be different for yours.
I set fan speed to 100% all the time because it doesn't bother me, but it does bother me hearing it go off and on at various times. So you can remove that line if you don't want that ability.
I have it load nvidia inspector 3 times in the batch file because under Windows XP (for me personally) the first time around it wouldn't always automatically change the settings. You don't see anything popup beyond the batch file for a split second so it's doing no harm.
-
Hello? I'd like to get this issue resolved. If it requires nvidia inspector then I'd like to note this in the readme.pdf for other people who may run into this problem.
-
reporter Sorry for the wait, unfortunately it doesn't seem to work. Additionally, using the latest version of Nvidia Inspector simply crashes for me. Also, the framerate can only be capped by the driver, because using r_maxfps 60 and cl_maxfps 60 produce another bug where certain random events in the game, such as switching weapons, cause certain game actions to occur too quickly or too slowly, one of which is a sudden increase in mouse sensitivity. It can be observed by watching the weapons on the HUD along the right side as they will spin at different speeds so it's like different parts of the game are running on different clocks so I might switch weapons and for 15 seconds Hiro's run speed might be increased while the weapons on the HUD rotate slower than normal. Unreal was a game that I managed to get to behave normally by capping framerate, as the game would speed up and slow down, but it was the whole game and not certain components. Figured out binding save quick and load quick act just like other id-engine games. Load times I can deal with even if they're longer than they should be, but the other problem from capping framerate at the game level creates a problem that messes with gameplay. I don't want to take time away from other problems that you're working on. I've watched plenty of other people playing the game with similar load times and other than that the game works without any obvious quirks, where I have other old games that just flat-out refuse to start.
-
Nvidia inspector works on XP. But you clearly have something else fucked up with your computer.
Try this version, if it still doesn't load then you have some serious problem with your XP install or possibly a faulty hardware component or even a virus:
-
Also, I don't know where you have watched other people playing the game with asinine load times on a modern machine. If you were complaining about a long load time on a Pentium 2, then this would be a non-issue as I would expect it to load slow on a 5200RPM IDE drive from the 90s.
The sudden ramp up in speed is definitely not right. You also still have not given me a single frame rate measure. This is very important. We need to know if you're even maintaining real frame rates, which you're obviously not, but I want to know what you're averaging.
Just do me a favor, set r_maxfps 240 and cl_maxfps 240. Do show_fps 1. What is the framerate typically averaging on e1m1a. Go to a few spots, do timerefresh a couple of times. What does it usually say? When the game ramps up in speed what is the framerate?
Again, just so we're clear here, something is wrong with your setup. This has never been reported before. I've literally played the game to hell and back on a variety of laptops, "antique" hardware, and modern machines. We have our fellow bug resident, Milkey-wilkey, who would have definitely reported an issue like this a long time ago.
-
reporter - changed status to resolved
-
- changed status to open
How did you resolve the issue?
-
reporter I put it on a different computer. It's a trivial issue anyway. You were sounding angry and there could very well be stuff wrong with my main system so I feel like I started an issue that isn't really an issue when your bug resident didn't have it.
-
I was getting a bit agitated that I asked you to just run a few framerate tests so we can make sure. We can still fix this, as it sounds like you're unable to play other things as well.
If you run the framerate tests I can still help you. There is a new build that actually does fix slow loading with vsync enabled so you should see very fast map loads regardless if it is on or off.
-
reporter New build fixes it. It's about instant now.
Was there ever a startup video for Daikatana? It has a bink DLL and I always thought it strange that the game just goes straight to the single player menu.
-
Yes, but its basically just the ion storm logo and a prerendered quick intro. It was never officially part of the game binary itself though. There's no plans to add it back since bink is proprietary and it really adds nothing special to the game to have it.
-
reporter How do I view it? Someone on the Steam forums mentioned being able to point bink at the game folder to play it and being able to create a batch file to play it?
Also, you could play it without the use of bink by substituting in FFmpeg, which is how the RBDOOM3BFG port did it.
-
It's on the actual CD, here it is http://dk.toastednet.org/DK13/DK_Intro.7z
We're not adding it. It's totally useless, adds nothing to the gameplay experience. It's just extra headache for very little gain.
-
reporter When a centered message is displayed, why does it also display it a second time as a regular message behind it?
-
Options->Page 2->Message Queue->Classic if you don't like this behaviour.
-
- changed status to closed
- Log in to comment
Considering the game doesn't parse the configstrings in chunks for single player any more I don't know how this could be for you.
Is it a mobile chipset? If so, make sure maximum power/performance modes are enabled. On my machine with V-Sync disabled with a GTX 960 the game loads a map quite literally in less than a second, almost instantaneously.