STALKER: Shadow of Chernobyl Tweak Guide
[Page 10] Neat Stuff & Conclusion
This section brings the guide to a conclusion, but has some important tips and tweaks, so it should not be skipped.
For those of you simply having problems getting used to the rather brutal and sometimes confusing world of The Zone, here are some resources and tips you may find useful. For the basics, be sure to read the game manual which can be found in electronic format under your \Program Files\THQ\S.T.A.L.K.E.R. - Shadow of Chernobyl directory. Some more basic tips include:
If you get stuck and aren't sure where to go or what to do, you can check the STALKER Gamespot Guide. You can also use this Full Map of The Zone with all major areas displayed. Finally, remember that you can adjust the difficulty on the fly, so check your game difficulty and if things are too tough, lower it temporarily.
Disabling Introductory Movies
Although this has already been covered in the Advanced Tweaking section, I'll spell it out again as it is a very useful tweak. If you find that the introductory movies/logos which play at STALKER's startup are annoying, you can skip them completely by going to your STALKER launch icon, right-clicking on it and selecting Properties. Then in the Target box, one blank space after the last character, insert the -nointro switch and click OK. Your Target box contents should look similar to this:
"C:\Program Files\THQ\S.T.A.L.K.E.R. - Shadow of Chernobyl\bin\XR_3DA.exe" -nointro
The next time you go to launch STALKER using this icon, it will quickly open at the main menu.
Speeding Up Loading Times/Reducing Stuttering
One of STALKER's annoyances is the way in which there are regular loading pauses/stuttering as you wander The Zone. You can reduce this by lowering your Textures Detail setting (See In-Game Settings section), however regardless of your settings it will still occur as different areas are loading up once you enter them. The extent to which you'll get this stutter depends on how much RAM you have, and how fast your hard drives are, as well as your Windows hard drive and memory management-related settings. Check the Drive Optimization and Memory Optimization chapters of the TweakGuides Tweaking Companion for more help.
However, there is one thing you can try which not only greatly speeds up initial loading times, but may also reduce stuttering: the -noprefetch command line switch. This switch is covered on the previous page of this guide, and instructions for using it are similar to the ones provided further above for the -nointro switch. Once you've enabled the -noprefetch switch, it will disable the prefetching which occurs when STALKER loads up a saved game, preventing the game engine from preloading a range of resources into memory. This obviously speeds up the loading of saved games. However you'd think that in return this would increase in-game stuttering, yet on my system it also helped to reduce in-game stutter and loading pauses as well. I suspect it may be that STALKER is too aggressive in preloading unnecessary game elements, taking up too much RAM perhaps, which then forces the game to pause longer as data is swapped when new areas are entered. Disabling prefetching seems to allow smoother loading of smaller amounts of data more regularly.
Your results may vary based on how much RAM you have, and more importantly how fast your hard drives are, but it is well worth trying. Even if the stutter remains the same, at least your game loading times will be greatly reduced.
Update: Using the -noprefetch switch may cause problems if you're using the Float32 Shader Mod as covered on page 4 of this guide. It may also not be optimal for dual core users as of the 1.0004 patch, so experiment to see whether it helps things or not on your system.
Newer games like Crysis have successfully incorporated Motion Blur to provide enhanced and more realistic visuals without a major drop in performance. Fortunately, although STALKER doesn't have any in-game options to enable motion blur, the developers of the game did build the function into the game. To enable motion blur in STALKER, you first need to add the -mblur switch to your STALKER launch icon. To do this, right-click on your launch icon, select Properties, and in the target box one blank space after the last character add -mblur so that it looks something like this:
"C:\Program Files\THQ\S.T.A.L.K.E.R. - Shadow of Chernobyl\bin\XR_3DA.exe" -mblur
Once this is done, motion blur will still not be enabled. To actually enable motion blur, you then need to use the r2_mblur command variable to specify the amount of blurring to be shown. The range of valid values goes from 0.000 (no blur) to 1.000, and you can test this in the console to find the value which suits you best (I personally use 1.000). See the Advanced Tweaking section for details of how to access the console and use command variables, and also how to implement a command variable permanently once you've found the amount of blurring you wish to implement. The performance impact of using motion blurring is minimal, but the way it enhances the reality of the visuals can be quite striking, and incidentally it also helps to cover up the jaggedness due to lack of anti-aliasing quite well.
STALKER & Dual Core CPUs
The developers of STALKER have clearely stated that STALKER benefits from Dual/Quad Core CPUs. This is evident in the Readme.txt file found under your \Program Files\THQ\S.T.A.L.K.E.R. - Shadow of Chernobyl directory which specifically says that "S.T.A.L.K.E.R.: Shadow of Chernobyl should utilize your dual and quad core processor natively and automatically. Running a dual or quad core processor is one of the best ways to improve performance."
Unfortunately in testing STALKER on a dual core CPU, I've found that in general while I've had no problems, it doesn't seem to utilize both cores completely; like most non-multithreaded games it only uses around 50% of each CPU, or 100% of one core and around 0% of the other. I haven't found any switches which force STALKER to run in multithreaded mode, and I'd suggest that given the game began development over six years ago, it's unlikely most of it is multithreaded enough to truly take advantage of multi-core CPUs. Perhaps a patch will fix this - stay tuned.
Update: As of the 1.0004 Patch STALKER has been further optimized for dual core CPUs. In my own testing it still doesn't appear as though the combined CPU usage is going much above 50% on average, but any improvement is welcome.
Max Frames to Render Ahead
This tweak gained prominence with Oblivion, and has been known to help reduce control lag in other games. The setting in question is called 'Max Frames to Render Ahead' or 'Maximum pre-rendered frames'. It is available by default in the Forceware Control Panel for Nvidia graphics cards, or by using RivaTuner to change the 'Prerender limit' setting which is the same thing. You can find out more about this setting as well as RivaTuner in the Nvidia Forceware Tweak Guide. For ATI users, you can adjust the 'Flip Queue' setting which is the equivalent setting to the one above by installing and using ATI Tray Tools. The same values apply to both brands of cards.
In both cases, by lowering the value for this setting you may improve the responsiveness of your character's control in the game. However this is not a tweak for improving FPS as such; in fact the general recommendation to change this setting from its default of 3 down to 0 will actually reduce performance on most systems. So you should first try reducing this value to 2 to see its impact, and if you still have control lag, lower it to 1. Remember, most mouse lag is due to low FPS and the best solution is to improve your framerate by lowering various settings or switching to the Static Lighing renderer. There are no magical fixes for 'lag' if your system is getting low FPS.
Measuring FPS, Taking Screenshots & Capturing Movies
If you want to measure FPS or take screenshots in STALKER, you can use the rs_stats on console command to bring up an FPS/Statistical display, and you can use the F12 key or the screenshot console command to take screenshots, which will then be stored under your \Documents and Settings\All Users\Documents\STALKER-SHOC\screenshots directory in .JPG format (or use the -ss_tga command line switch to take them in both .JPG and high quality .TGA format).
However if you wish to do the above, and also capture in-game movies in .AVI format in a much easier way, you can use the free FRAPS utility instead.
To play back a time demo in STALKER, you will need a pre-recorded demo file/savegame such as the one in this thread. The saved game and its associated .xrdemo file should be placed under your Documents and Settings\All Users\Shared Documents\STALKER-SHOC\savedgames\ directory, then launch STALKER and load up this saved game. Next open the console and type demo_play [savename]. The game will run through a preset demo, and at the end you will have to open up the console to see the minimum, maximum and average FPS figures for the demo run.
Note that the file in the link above only works with version 1.0 of the game. You can instead rename the obr.xrdemo file to the name of a saved game you have (in place of the obr) and follow the instructions above to see how this works. I still don't know how to record a custom demo in STALKER, so if you know how to successfully do this please Email Me with the relevant details.
Update: As of the 1.0003 Patch, the demo_record command has been added to the game, allowing you to record custom timedemos for benchmarking purposes. Use the demo_record [demoname] command in the console, and the game will begin recording your demo - you can then use left mouse button to move the camera forward, right mouse button to move it back, and A and D to move the camera left or right, W or S to move it up or down. You must press SPACE to regularly append key frames, and then press ESC when you want to finish recording. The demo is saved with the .xrdemo extension under your Documents and Settings\All Users\Shared Documents\STALKER-SHOC\savedgames\ directory. To play it back, first load up the relevant saved game you used to record the demo, then type demo_play [demoname].
That brings the STALKER Tweak Guide to a conclusion, and I hope you've found some useful pieces of information in this guide. If you believe there are any significant tips or tweaks missing from this guide, please Email Me with the details and I will look into it further, updating the guide as required. Unfortunately I can't provide personal tech/tweak support and I also don't provide permission for the guide to be reproduced elsewhere for several reasons.
In any case, thanks for taking the time to read the guide, and until next time take care!