How to Tweak the Unreal Engine
- 1). Locate the directory of the game you want to modify. Unreal uses an ".ini" based file structure for its external configurations. The files are always located in the system directory of the game. For example, if you wanted to modify the game "Raven Shield", you would go to the Raven Shield folder and locate the subfolder named system. There you will find the various ".ini" files. The main configuration file will be the game title followed by ".ini". So, in this example you would look for "RavenShield.ini"
- 2). Right click on the configuration file that you wish to modify. Open it with a text editor. You may use anything from the notepad program to a more advanced text editor. The notepad application will suffice for almost everything.
- 3). Search within the configuration file for the section [Engine.GameEngine]. The first setting that is always in that section is "CacheSizeMegs=X" (Where X equals the default variable).
This setting relates to the amount of game data that can be stored within system RAM. By default, this value is set to a conservative value to meet the needs of a wide range of systems. Usually the default values are 32 or 64. However, if you exceed the minimum memory requirement and have at least the recommended amount, this can be safely increased.
Increasing this value can improve load times and reduce stuttering. If you are configuring for gameplay, try values such as 128 or 256. If you are configuring this for a game server try values such as 368 or 512. - 4). Go to the section named [D3DDrv.D3DRenderDevice]. This is the heart of the graphics quality and performance settings. Here you will find settings that are often not in the GUI of the game. Below is a list of the common variables you will find in this section and their meanings:
HighDetailActors=True: This setting involves increasing the amount of polygons that are used to render the characters. If you need a performance boost. Setting this to false will yield a higher frame rate for only a slightly lower image quality.
UsePrecaching=True: This setting tells the engine to cache the game data before the match or level has launched. This reduces in game stuttering and ensures the game runs as smooth as possible. This setting can increase load times, if you have a fast hard drive you may try setting this to False.
UseTrilinear=True: Trilinear filtering is a texture filtering process that allows images to appear crisper and more defined. If your video cards ram is only the minimum requirement. Setting this value to false will yield you a frame rate boost. However, the image quality will suffer.
ReduceMouseLag=False: Mouse Smoothing uses your CPU to perform an algorithm instruction on your input device that makes it perceive as though it is moving "smoother" across the screen. If you often notice that your mouse movements seem to jerk across the screen, try setting this value to True to see if you notice an improvement. This setting is more beneficial to the older ball mice than it is to optical or lasers. Please note that setting this to True will add more use to the CPU in game. The difference is slight, however, if you are trying to increase performance, leave this at the default value.
UseTripleBuffering=False: This setting determines the use of three frame buffering. This setting only works if you are using vertical sync. Triple Buffering will usually provide an increase in performance when vertical sync is also used. However, this particular element of the engine is flawed in a lot of the unreal based games and has been known to actually decrease performance.
UseCubemaps=True: Used to make "fake" reflections on things like in game glass, water or plastic. This setting can be changed to false with a minimal loss in image quality.
UseCompressedLightmaps=True: This setting compresses the light textures of the game. The compression process almost provides no image quality drop. However, if you set this to False the light on textures will appear slightly more crisp and defined. Depending on the game and hardware this could potentially have a dramatic effect on your performance. Unless your system greatly exceeds the games requirements. It's best left at default.
UseVSync=False: Vertical Sync prevents your games frame rate from exceeding your monitors refresh rate. By syncing the engines output frames to the horizontal lines of your monitor. If you have high end equipment and want the smoothest image, enable this setting with a fairly hefty performance penalty.
MinDesiredFrameRate=30.000000 The Unreal engine will scale back its advanced graphical settings once your frame rate has dropped below this variable. It will start reducing settings that have the least amount of an effect on the appearance of the game first. Then gradually reduce more and more settings until it has achieved the value you have input here. If you want a zero loss in quality, regardless of the frame rate, enter extremely low values such as 10 or even one.
AvoidHitches=False: This setting attempts to keep your frame rate from being wildly variable. The engine will attempt to constrain your FPS within an average that your machine is capable of consistently running. Consequently, this setting will reduce your overall frame rate and increase your CPU usage. If your CPU is a higher class than your Graphics Card this setting may be turned to True to prevent excessive frame rate fluctuation. If however, you have a fairly balanced system or your CPU is the bottleneck in your system. Leave this value at False. - 5). Scroll down to the section [Engine.Player] Look for the following value:
ConfiguredInternetSpeed=xx This setting refers to the bandwidth allocation in bytes per second that you have for the game. If you are on a fast connection you can set this to 20000. Please note that servers cap this rate. However, setting it as high as you can use will ensure you have the available bandwidth coming to you on servers that use high value caps. If you are experiencing lag or if you have a low upload speed you can lower this value to prevent saturation. 56k users should try values such as 5000.
Source...