[Nvidia Forceware Drivers] Probably THIS is the real fix..

neo27

Chieftain
Joined
Dec 13, 2003
Messages
9
Hi guys, i've read several threads over the past few days claiming rolling back to forceware 71.xx solves the problem. While i do not question the genuine intent in helping fellow civ fans here, rolling back drivers isn't exactly any sort of solution in my humble opinion. Granted the older versions might have been the ones used by the civ developers during beta testing, but more often than not, newer (at least for nvidia) drivers do not break already existing functionalities. The driver updates aim at tweaking for better performance or adding support for newer cards. Existing interfaces should not have been broken with newer drivers.

That said, let me go into the problem itself. Like many of you, I am using a Nvidia card myself, 6600gt to be exact. The original drivers I was using was the 78.01, and that worked pretty alright, other than the occasional (probably once every 5 hrs of gaming) bsods and CTDs. I wasn't pleased at all, given such a game shouldn't require extreme high end stuff. Following various advices from civfanatics as well as apolyton forums, I tried rolling back to 71.xx, tried upgrading to the latest official 80 series drivers, with dismay results for both. Rolling back resulted in severe performance hit, the screen lagged pretty obviously even at 2x antialiasing, while using the latest 8x.xx only created frequent CTDs (less than 10mins). Trying my luck further, I installed 81.85 beta, as well as 81.87 beta. In fact, the 78.xx and 8x.xx drivers had pretty decent performance. Speed-wise, definitely better than 71.xx. However, CTDs remained.

I was a little disturbed by the fact that this shouldn't be happening. For a problem associated with a specific break in algorithm at driver level, it shouldn't exhibit varying degree (as well as forms) of crashes for so many different driver revisions. I then started experimenting with the settings themselves and guess what, I have just completed 4hrs straight, superb performance, no CTDs on 81.87 beta (yes, and its a beta somemore).

Not keeping you guys in suspense, and of course putting a disclaimer first, I am merely offering my findings, you have the choice to adopt them or otherwise and I will not be responsible for any major hiccups (though changing of settings can hardly do much harm, just undoing the changes will safely revert to the previous state).

I've observed that prior to the CTDs that happened ever so often on the 80 series drivers, my hdd started thrashing real badly, and screen updates become sporadic, pointing to the fact that the graphics end was doing badly. So I looked at the civ4 ini file and saw this:

; Sync input to smooth interface (may run slower)
SyncInput = 1

What I think this is for is probably vsync. Original setting was 0, I set it to 1 so that the graphics card wouldn't process frames in advance. This is normally enabled in games to avoid tearing, but I guess in civ4 it helps in stability.

; Enable Trilinear Filtering for the Minimap
MinimapTrilinearFilter = 0

This is basically what it says it is. Trilinear filtering for minimap. No big deal over this, you can set it to 1 if you like. For me, bilinear or trilinear makes no difference. ;)

; Set max frame rate clamp (0 means none)
SetMaxFrameRate = 40

This setting, together with the vsync setting, is probably where the problem lies. Limiting the fps to 40 does not in anyway impair gameplay, this is not a First Player Shooter. For comparison, normal movies have 28fps thereabouts. Human eyes cannot discern significant difference from 30fps and above. So there is absolutely no reason to allow civ4 to attempt to process extraordinarily high framerates, which might be the reason why it breaks, probably due to problems with buffer or memory overwriting.

; Specify the number of turns between autoSaves. 0 means no autosave.
AutoSaveInterval = 1

This is (very likely) not related to the graphics problems. But many people are using this for convenience. Basically the game autosaves every x turns you specified.

; Enable D3D9 Queries
D3D9Query = 1

This is another area which might have caused stability issues. Original setting was 0. I set it to 1 since my card is Direct9 compliant. Another note for gen6 and gen7 nvidia card users, rolling back drivers is a bad idea because directx9c was constantly updated for its runtime components even up till today. You really ought to be using the latest drivers for better directx9c support.


Next, I looked into my forceware driver settings. Under "Performance and Quality Settings", in order to complement the civ4 ini settings and not introduce driver-level forced settings, basically here's what i set for most of the settings:

Antialiasing/Anisotropic = both application controlled
Image setting = Performance
Vertical sync = application controlled
Force mipmaps = Bilinear (Trilinear probably works as well, but you know me..)
Extension limit = off
Conformant Texture clamp = on
Triple buffering = off

Probably just ensuring vsync is app controlled would be enough, but I hadn't got the time to test it out with other values for the other settings. And this i what I have that got me through 4hrs of non-stop, god-speed civ4 gaming. :p . Hope this helps!

P.S. Just saying "hi" to all fellow Singaporean players..:goodjob:
 
Thank you for your effort...but its still unplayable on huge maps....swapping like hell. So i saiy again, you wanna fix it, then wait for a patch.
 
WoodenEye said:
Thank you for your effort...but its still unplayable on huge maps....swapping like hell. So i saiy again, you wanna fix it, then wait for a patch.

Care to state your specs? Its swapping pretty much all the time for me, but the sporadic sudden intensifying periods are now not showing. And I am playing a single-player custom game, all slots but 1 filled, on huge as well, and its smooth for me. I am pretty confident its the settings because prior to changing the settings, I was getting CTDs in less than 10mins (and not once but after many restarts of the game and the comp), but straight after changing the settings, I could play 4hrs straight. Do check your other settings. If your hdd is thrashing madly, it could be your pagefile size and memory. I am using 1gb physical memory, and civ4 eats around 500 odd mbs while i'm on my custom game, with the pagefile usage shooting to 1.1gb out of 1.5gb fixed for my system, and this is with no other major applications running, so I think civ4 does require a substantial amt of memory (both physical and virtual).
 
neo27 said:
; Set max frame rate clamp (0 means none)
SetMaxFrameRate = 40

This setting, together with the vsync setting, is probably where the problem lies. Limiting the fps to 40 does not in anyway impair gameplay, this is not a First Player Shooter. For comparison, normal movies have 28fps thereabouts. Human eyes cannot discern significant difference from 30fps and above.

You did some great research and hopefully it will help people, but the above statement is just simply wrong. There is no exact limit to what the human eye can discern, it varies with the amount of light, the colors in the picture and a lot of other variables. The actual number will be a lot more than 30 for almost any case (unless its very dark and there is very slow panning etc). I've heard this myth being repeated many times, the numbers vary from 24, 24 to 30 and 60. But it's just that, a myth.

That being said, I do agree that in a game like Civ, limiting to 40 won't hurt you. But since no other games require this to run stable, I doubt that it will help when the problem seems to be simply bad coding.
 
Thanks for the great post. I'll try it. I'm one of those who had huge amounts of BSOD, CTD, and reboots! I went back to ver 6.x of Forceware (same card: 6600gt). It only crashes once an hour now. But one thing that bugs me, is why in heck is this game so processer intensive? It is crippling our highend machines moreso than a FPS, which we all know are meant to be graphics intensive. This is a turn based game for gods sakes. My system seriously thrashes sometimes, but I only have 512 MB of RAM; this game will almost definately force me to upgrade.

It's certainly fun though; I haven't managed to win even on Warlord level...so the AI is pretty good and I'm a pretty pathetic gamer (apparently). I'm glad I shelled out the $50 for this one (first game I actually bought when it came out, usually i wait 6-12 months).

Anyway i'll try these new settings and the new drivers and see what happens.
 
madman1981 said:
You did some great research and hopefully it will help people, but the above statement is just simply wrong. There is no exact limit to what the human eye can discern, it varies with the amount of light, the colors in the picture and a lot of other variables. The actual number will be a lot more than 30 for almost any case (unless its very dark and there is very slow panning etc). I've heard this myth being repeated many times, the numbers vary from 24, 24 to 30 and 60. But it's just that, a myth.

That being said, I do agree that in a game like Civ, limiting to 40 won't hurt you. But since no other games require this to run stable, I doubt that it will help when the problem seems to be simply bad coding.

You're right, in a way, to say that. As far as fps is concerned, and let's just talk about the average person, the amount of difference jumping from 30fps to 60fps is not significant, and by that i mean create enough distraction to the gamer. The rationale for capping to 40 is not to solve the underlying problem, but to cause it not to manifest, or at least reduce the chances of that. :)


Pyrion said:
Forcing D3D9 queries caused the game to BSOD upon opening a savegame, when I tried it.
What graphic card and drivers are you using? As I've mentioned, my 6600gt is directx9c compliant and I'm also using updated, albeit beta, drivers. Also, you can set it to 0, and I think that probably will cause to game to rely on d8 api instead.


To all, kindly state your specs along with your problems encountered so others may get a better perspective as to how to go around solving it. Thx!
 
I've just completed another 3hr run, no CTDs. So far, the only case where a CTD occurred was when I scrolled downwards really fast, causing a rapid zoom-out that might have triggered the 'bad programming' part.. :/

But otherwise, playing works perfectly fine.
 
neo27 said:
; Sync input to smooth interface (may run slower)
SyncInput = 1

What I think this is for is probably vsync. Original setting was 0, I set it to 1 so that the graphics card wouldn't process frames in advance. This is normally enabled in games to avoid tearing, but I guess in civ4 it helps in stability.

I tried all your options, and this one cut my framerate down from ~15 to ~8.

P4 HT 2.8
FX 5200 128mb
512mb RAM

your other options didn't really improve my framerate, but I think they helped to keep the framerate higher when scrolling. I'm still looking for if my limitation is caused by RAM or video card.
 
Its not with video card...this game runs perfectly on huge maps with my brothers ancient cp....1 gig duron and gf4mx.
and my system its ****ed up. there must be somekind of bug with memory programming.
 
my system: Amd Athlon, 512 meg 400ddr, gforce5200fx..and i must say even my vid card is bad, i can play all other games without swapping like this.
 
WoodenEye said:
my system: Amd Athlon, 512 meg 400ddr, gforce5200fx..and i must say even my vid card is bad, i can play all other games without swapping like this.

WoodenEye said:
Its not with video card...this game runs perfectly on huge maps with my brothers ancient cp....1 gig duron and gf4mx.
and my system its ****ed up. there must be somekind of bug with memory programming.

Hi again WoodenEye, its not fair then to say the game is entirely at fault, when it worked flawlessly on your bro's comp?

I tend to think that its really a composition of 'problems' both on the game's graphics end, as well as on the graphics card side. My suggestions earlier on merely lowered (and possibly eliminated) chances of the bad programming/settings coming into play.

Also, the gf4mx is not even directx8 compliant, lacks any hardware pixel or vertex shaders, which might have resulted in the game taking the software rendering approach that might have avoided the problem entirely. Looking back at my original post, I mentioned that prior to the CTDs, the system appeared to be 'rushing' to process something, and the fact that capping the fps practically solved the bulk of the problem lead me to thinking that the game is trying to process over the limit, thus creating memory issues that very conveniently would have caused a break back to os in the python programming.

Therefore while there indeed is a problem if you simply let the game fly on its own, with proper control, you can actually circumvent the problem and have very playable experience. The reason why I brought up the graphics settings on the drivers' side is because the detonator drivers can be set to override certain application settings such as the antialiasing etc. This was just to highlight that for the game to function well, you've gotta pacify it a little by accomodating your system configurations to what its using as well.

And also, the swapping is not avoidable. The game's constantly loading/unloading many resources such as movies, sounds and graphics, on top of normal processing cache and game state. It happens on my system as well. But there is a difference if your graphics card is a good one, and you're suffering even at 640x480 with all low settings, then that simply point to a purely graphics problem. The only occasional lag I'm getting now is because my harddisk is still not fast enough (this game probably needs a raided hdd configuration to run smoothly), but other than that, I can tell the graphics end is working fine.



yo-yo~delta said:
I tried all your options, and this one cut my framerate down from ~15 to ~8.

P4 HT 2.8
FX 5200 128mb
512mb RAM

your other options didn't really improve my framerate, but I think they helped to keep the framerate higher when scrolling. I'm still looking for if my limitation is caused by RAM or video card.

Hi there, which drivers(and ver) are you using? Your ram is definitely limiting somewhat, and what size are you using for the pagefile?

Also, do note that your card, although being directx9 compliant, is not directx9c compliant, so just to point out you probably should not set D3D9Query = 1, use 0 for it instead.
In addition, you probably would want to upgrade the gfx card. FX5200 isn't exactly good for gaming. In pure raw performance, a gf4ti still beats it even though it belongs to the older gen.
 
Thanks Neo, this really seems to work!

I've been having problems since the beginning (P4 2.66 Gig, 512 RAM, Geforce 4 440MX 64MB) with stuttering movies, lags, hangs, and CTD's. I hadn't been able to actually finish a single game.

Usually I would get a final hang or CTD between game years 1750-1900 ADthat even reloaded as a saved game after a computer restart would be impassable.

However, applying your suggestions, I've gotten to 1950 AD with no hangs, freezes, or CTDs, and very litlte noticeable lag (probably what lag there is due to only 512 RAM and possible mem leak with game).

Intro movie (and the occasional --but not even majority of wonder movies) still stutters. But now the game is playable!!!!

Thanks!!!!!
 
Tried without changing D3DQUERY, didn't work. It still crashes every time I enter the civilopedia.
 
I also have a 6600GT, and I have also tried many driver versions.

I'm getting a hard lock, the game just sits there, playing music, and I can't move my mouse or anything until I reboot the CPU. No CTDs. Hopefully when whatever it is that's giving you all the CTD is fixed, it'll fix my problem too.

But I can play it for like 25 minutes at a time, so I've been playing in fits and starts here and there. Enough to lose a game on noble, anyway, to my eternal shame.
 
Artagel said:
Thanks Neo, this really seems to work!

I've been having problems since the beginning (P4 2.66 Gig, 512 RAM, Geforce 4 440MX 64MB) with stuttering movies, lags, hangs, and CTD's. I hadn't been able to actually finish a single game.

Usually I would get a final hang or CTD between game years 1750-1900 ADthat even reloaded as a saved game after a computer restart would be impassable.

However, applying your suggestions, I've gotten to 1950 AD with no hangs, freezes, or CTDs, and very litlte noticeable lag (probably what lag there is due to only 512 RAM and possible mem leak with game).

Intro movie (and the occasional --but not even majority of wonder movies) still stutters. But now the game is playable!!!!

Thanks!!!!!

Glad to here that, :) .. Have fun, I'm at 2055 now.. hehe

Tul said:
Tried without changing D3DQUERY, didn't work. It still crashes every time I enter the civilopedia.

Hi Tul, could you describe more specifically the problem? If your's is consistently crashing every time you enter civilopedia, I doubt it is a graphics problem. May be faulty memory. Do state your specs, thx..

Naginata said:
I also have a 6600GT, and I have also tried many driver versions.

I'm getting a hard lock, the game just sits there, playing music, and I can't move my mouse or anything until I reboot the CPU. No CTDs. Hopefully when whatever it is that's giving you all the CTD is fixed, it'll fix my problem too.

But I can play it for like 25 minutes at a time, so I've been playing in fits and starts here and there. Enough to lose a game on noble, anyway, to my eternal shame.

Hi Naginata, what are the specs you're using? Graphics drivers ver? Very difficult to pinpoint what could have been the problem with what's provided. What are the results you'd got with other driver versions? Any overclocking done?
 
neo27 said:
Hi there, which drivers(and ver) are you using? Your ram is definitely limiting somewhat, and what size are you using for the pagefile?

Also, do note that your card, although being directx9 compliant, is not directx9c compliant, so just to point out you probably should not set D3D9Query = 1, use 0 for it instead.
In addition, you probably would want to upgrade the gfx card. FX5200 isn't exactly good for gaming. In pure raw performance, a gf4ti still beats it even though it belongs to the older gen.

I'm using 71.89, and I tried both with and without D3D9Query, didn't seem to make a difference, but by your suggestion I've turned it off.

I know it isn't a great video card, but it was cheap, had what I needed, and the highest end game I owned before was Diablo II, never thought I'd go higher. Should've though ahead =\.

Because it isn't DX 9.0c compliant, should I downgrade to DX 9.0b or base, if I can find them?
 
yo-yo~delta said:
I'm using 71.89, and I tried both with and without D3D9Query, didn't seem to make a difference, but by your suggestion I've turned it off.

I know it isn't a great video card, but it was cheap, had what I needed, and the highest end game I owned before was Diablo II, never thought I'd go higher. Should've though ahead =\.

Because it isn't DX 9.0c compliant, should I downgrade to DX 9.0b or base, if I can find them?
Could you try the latest 81.xx drivers? 71.89 is pretty outdated as far as directx9c compatibility updates is concerned. And I wouldn't be surprised if you still have slow framerates or lagginess since this game is pretty intensive at large res on huge maps. After updating to 81.xx, try again with settings i'd described earlier, and if necessary, try running at low res with low gfx settings to test if its really the gfx card that's the bottleneck.
Also, you should not downgrade your directx, that's the last thing you would do simply because the game was designed on directx9c. Downgrading might bring about more complications.
 
Yeah, sorry for the paucity of detail, I'm used to a place called "the internets" where no one helps anyone... so thanks for even making a reply post :)

In addition to the locks, I also have wonder movie sound stuttering, but that's the lesser of the two problems.

As for drivers, I've tried the 7189s, as well as the 8185s (which I'm on now).

No overclocking done, I have the side of the case off, and while I can't see the temp on the graphics card, for what it's worth, the cpu temp is pretty low (118ish)... and I played doom3 with the case on, so, well, take that for what it is; anecdotal.

The complete specs:

Asus A7V333
Athlon 1.8 GHz
1GB RAM
XFX 6600 GT
SB Audigy

I think that's about all that's relevant, bug me if I forgot something important.

I do have 2 monitors set up, I thought it might be related to that, but I disabled one, still hangs... I've tried all the obvious stuff, I think :)
 
Top Bottom