[Tweak] UPDATED Engine.ini Tweaks with explanations.



  • UPDATE: 12/6 There appears to be an issue with the copy/paste function on the forums. Make sure that if you are copying from the forums that there are no added spaces in areas of the config command text when you post. Sorry this is out of my control but wanted to inform you about it.

    Well here I am again with another set of tweaks. If you are struggling with FPS issues and some stuttering. I believe this information is very valid. Here is some of the reasons for the settings. It is a semi long read but again, has value and not all my original work but found on the internet.

    _I set out testing the game from the lowest setting to the highest and realized that the System usage was almost the same with different settings. Chiv and the UT3 engine is quite heavy on the CPU and if the CPU usage goes from 0-100% it will throttle the GPU so that it is not lagging behind.

    The aim was to find out what was the problems causing CPU and GPU throttling. I found that the postprossessing effects like film grain, PhysX, lighting and shadows were the most common to clog up the CPU and GPU processes on top of the the along with the texture streaming system that would be the major cause of the stuttering and is CPU intensive. After configuring the ini settings and testing all the variables I have been able to set Minimum and Maximum values with the highest quality and performance possible.

    I tweaked the streaming system so that my VRAM was not saturated by the streaming system, that was the cause of the delays, lag and stuttering. Adjusted the memory pools to my systems specifications, textures and effects like shadows and physX or physics to the point where my graphics card could handle the most demanding game levels.

    TEXTUREGROUP’s are set at Min 64 Max 1024 and mips @0 (Setting NumStreamedMips to 0 means that no mips will be streamed and the textures using this LOD group will always be fully loaded).

    This way I get the best graphics possible quality without clogging up the VRAM with other textures that I don’t need.
    I have set the files with the default NumStreamedMips to -1 as all mips will be streamed and you will need to change these depending on you’re system specs. After I changed the color of the game and removed most of the desaturation so it looks more pleasing to the eye almost as if you were using SweetFX. (http://www.guru3d.com/files_details/sweetfx_shader_suite_download.html) There are also some people setting configs for SweetFX you can try here: http://sfx.thelazy.net/games/game/191/

    Anti-Aliasing:
    Force AA in catalyst control center for ATI try 2xEQ (set to adaptive) MSAA as this has the best performance and quality with no blur.
    Nvidia equivalent I believe is called TrAA
    FXAA is good and would be second best or a combination of MSAA and FXAA it has some blurring effects.

    Driver Support:
    If you use the Nvidia: GeForce Experience, try forcing the BioShockInfinite game profile seems to run 50 FPS faster and 2x faster in evac and piledriver min FPS was 40. Before this tweak it would drop to 25-30 FPS. But this is not my tweak but posted it none the less as it may help people.

    I set about disabling unwanted post-processing effects like film grain and stencil shadows, but some post-processing effects cant be disabled from the ini files._

    If you are not familiar with tweaking INI files here are the instructions:

    These tweaks are for the UDKEngine.ini that is located in your: MyDocuments/MyGames/Chivalry Medieval Warfare/UDKGame/Config.

    1. First run your game and create a game. Choose a map that you have the worst FPS then type stat fps in console and make note of your FPS and ms while running around.
    2. First make a copy of your original UDKEngine.ini by right clicking on it and make a copy
    3. Open UDKEngine.ini with note pad.
    4. Make the suggested changes and or tweak according to your system and what you think would be best
    5. Close and save.
    6. Right click onto UDKEngine.ini/properties and place a check in Read-Only and hit Apply.
    7. Repeat step one. Hopefully you will see quite a difference.

    Good luck!

    Ok here are the INI changes and descriptions:

    MaxParticleResize=0
    Sould be set to minimum 532 0=infinite 1-531 grenade trails disapear

    [Engine.Engine]

    Notes: This section configures the render device, audio device, and many defaults. The Console class is a variable you will most likely want to change and instead use a custom Console subclass. DefaultGame is used when the engine initializes if no URL was provided during bootup and the map being loaded doesn’t define the DefaultGameType? property.

    ;EditorEngine=Editor.EditorEngine (New)
    Add a ; in front or delete the string. Although the game doesnt have the executible, it still has the rest of editor engine. These are loaded into memory. Adding a ; in front or deleting the line will stop it and save some loading time and memory.

    bAllowMatureLanguage=True
    Use mature Language dont think it is used.

    ImageGrainNoiseTextureName=EngineMaterials.PhotonGood64x64TilingNoiseHighFreq
    Added Photon disables image grain tweak from Hawkin

    LightMapDensityTextureName=EngineMaterials.PhotonDefaultWhiteGrid
    Added Photon disables Texture used to display LightMapDensity disabled = less stuttering as result

    LightMapDensityNormalName=EngineMaterials.PhotonDefaultNormal
    Added Photon disables Texture used to display LightMapDensity disabled = less stuttering as result

    ProcBuildingLODColorTexelsPerWorldUnit=0.075
    Roughly how many texels per world unit when generating a building LOD color texture. More for quality, less for performance 0.075 default

    ProcBuildingLODLightingTexelsPerWorldUnit=0.015
    Roughly how many texels per world unit when generating a building LOD lighting texture. More for quality, less for performance default 0.015

    MaxProcBuildingLODColorTextureSize=256
    Maximum size of a building LOD color texture. IMPORTANT: If you change this, you should also consider changing TEXTUREGROUP_ProcBuilding_Face. More for quality, less for performance default 1024

    MaxProcBuildingLODLightingTextureSize=64
    Maximum size of a building LOD lighting texture. IMPORTANT: If you change this, you should also consider changing TEXTUREGROUP_ProcBuilding_LightMap in the UDKSystemSettings.ini lower setting for performance default 256

    UseProcBuildingLODTextureCropping=True
    Whether to crop building LOD textures to rectangular textures to reduce wasted memory

    ForcePowerOfTwoProcBuildingLODTextures=True
    Whether to force use of power-of-two LOD textures (uses more memory, but may have better performance)
    NOTE: Currently enabled until non-pow2 textures are supported on core platforms, uses more memory, but may have better performance

    bCombineSimilarMappings=False
    True if we should combine light/shadow maps together if they’re very similar to one another. default = true Adds the option to combine both hard or soft texture meshes into a single stream, thus smoothing vertexes. Set True Lightmap shadows and textures will be streamed together, reducing jitter, but reducing performance. false for quality, true for performance default False

    MaxRMSDForCombiningMappings=6.0
    Maximum root mean square deviation of the image difference allowed for mappings to be combined. Requires bCombineSimilarLightAndShadowMappings to be enabled. More for quality, less for performance default=6.0

    ImageReflectionTextureSize=64
    default 1024 Size of the texture generated by ImageReflectionSceneCapture actors. More for quality, less for performance.

    TerrainMaterialMaxTextureCount=8
    Terrain Texture quality. More for quality, less for performance Default 16

    TerrainTessellationCheckCount=99
    This is the number of frames that are used between terrain. tessellation re-calculations. More for performance. default 6

    TerrainTessellationCheckBorder=0.0
    Tessellation settings: More for quality, less for performance. Default 2.0

    TerrainTessellationCheckDistance=8192.0
    The radius from the view origin that terrain tessellation checks should be performed. If 0.0 = infinity = every component will be checked for: tessellation changes each frame = quality, 1.0 or more for permormance. Default 4096.0

    bStaticDecalsEnabled=True
    Static sprites on the map that don’t move: EX: Decorations, Existing bullet-holes in walls from the map creation, graffiti or writing. true for quality, false for performance Default True

    bDynamicDecalsEnabled=True
    Dynamic sprites on the maps that people made: EX: Bullet-holes caused by your gun, charred black spots on ground, jet trails, etc. true for quality, false for performance Default True.

    bForceStaticTerrain=True
    Sets the game terrain to be drawn statically without change and may increase performance if set true.

    MaxPixelShaderAdditiveComplexityCount=256
    Complexity limits for the various complexity viewmode combinations, More for quality, less for performance Default 900.

    TimeBetweenPurgingPendingKillObjects=-1
    OPTIONAL - Time in seconds (game time) to wait between purging object references to objects that are pending kill. This is how often the game “flushes” the used memory. Set this to -1 (off), This will lead to a VERY long pause when the memory reaches the ceiling allowed, but may help dramatically reduce fps drops and stop the 10 second stutter Default 30

    bUseBackgroundLevelStreaming=False
    If you set it to false it’ll load it all in one hit (making load times longer, but no textures loading in as you go

    MinTextureDensity=0.0
    IdealTextureDensity=6.5
    MaxTextureDensity=25.0
    MinLightMapDensity=0.0
    IdealLightMapDensity=0.02
    MaxLightMapDensity=0.05
    Range for the texture and lightningdensity viewmodes. More for quality,less for performance. defaults = MinTextureDensity=0.0
    IdealTextureDensity=13.0
    MaxTextureDensity=55.0
    MinLightMapDensity=0.0
    IdealLightMapDensity=0.05
    MaxLightMapDensity=0.2

    RenderLightMapDensityColorScale=0.2
    The scale factor when rendering color density. More for quality, less for performance, Default 1.0

    bDisablePhysXHardwareSupport=True
    This setting seems to work independently amd doesnt switch off PhysX. Setting it to False should force hardware physics for systems with PhysX cards, True CPU physics for non PhysX cards, but it may cause a crash for both PhysX and non-PhysX users.

    MaxFluidNumVerts=64
    The most vertices a fluid surface can have. The number of verts is clamped to avoid running out of memory and exposing driver bugs. More for quality, less for performance Default 1048576

    FluidSimulationTimeLimit=60.0
    Time limit (in milliseconds) for a fluid simulation update, to avoid spiraling into a bad feedback-loop with slower and slower framerate. This value is doubled in debug builds. So you should increase that value for higher performance.Default 30.0

    MaxParticleResize=532
    The maximum allowed size to a ParticleEmitterInstance Resize call. If value is larger, the function will return without resizing. 0 = infinite. Adjust the value between 532 and up. 532-10,000 is a good range for limiting the particles. Between 1-531 the grenade and tomahawk light trails disapear. The higher the value, the more particles. This works for any PhysX particles i.e. rocks, sparks, fluids, etc. This DOES NOT work for cloth.

    MaxParticleResizeWarn=0
    “0” is equal than infinite. 533 Min as needs to be at least 1 greater than MaxParticleResize.

    MaxParticleVertexMemory=904
    The maximum amount of memory any single emitter is allowed to take for its vertices, should always be a multiple of
    (2^n)+900; e.g. 2^17=131072 + 900 = 131972. Set to 900 for performance. Default 131072

    MipFadeInSpeed0=0.00
    MipFadeOutSpeed0=0.00
    MipFadeInSpeed1=0.0
    MipFadeOutSpeed1=0.0
    Turn off streaming system delay(stuttering). Defaults
    MipFadeInSpeed0=0.03
    MipFadeOutSpeed0=0.1
    MipFadeInSpeed1=2.0
    MipFadeOutSpeed1=1.0

    PhysXGpuHeapSize=32
    Defines main memory allocated to PhysX, the more, the faster textures and data are stored and used by PhysX enfine. If you are using PhysX might consider increasing this. Suggested increase: 64 for 8x or 9x series, 128 for 512Mb recent videocards, 256 for 1Gb+ recent video cards. Important: Old 8x or 9x series nVidia might not handle larger values than 64. If you get artifacts and crashes after increasing this value, tone it down.

    NOTE: if you increase this more than your GPU can handle, it might actually drop FPS compared to the default value. The trick is to find the biggest value where you get an FPS increase. Same with the option bellow.Physx gpu setting. More for quality, less for performance.

    PhysXMeshCacheSize=8
    Physx gpu setting. More for quality, less for performance.

    bShouldGenerateSimpleLightmaps=TRUE
    bUseNormalMapsForSimpleLightMaps=FALSE
    Both settings relate to enabling normal map sampling when Lightmass is generating ‘simple’ light maps. This increases lighting build time but may improve quality when normal maps are used to represent curvature over a large surface area. When this setting is disabled, ‘simple’ light maps will not take normal maps into account. True for quality, false for performance Default both setting are true.

    bSmoothFrameRate=False
    FPS smoother, lowers details to improve FPS when lagging. True for performance, false for quality. allways disable as it limits fps. Default TRUE

    MinSmoothedFrameRate=999
    Minimum framerate smoothing will kick in. More for quality, less for performance.

    MaxSmoothedFrameRate=999
    Maximum framerate to smooth. Code will try to not go over via waiting. Less for quality, more for performance

    [Core.System]

    MaxObjectsNotConsideredByGC=0
    garbage collection Default 80000

    SizeOfPermanentObjectPool=0

    StaleCacheDays = 1
    change by the number of days the file cache Default is 60

    MaxStaleCacheSize=10

    MaxOverallCacheSize=30

    [Engine.Client]

    DisplayGamma=-2.2
    Set the colour darker was 2.2

    MinDesiredFrameRate=75.000000
    change to monitors refresh rate it is said that it helps hit detection.
    **
    [Engine.Player]**

    PP_DesaturationMultiplier=-0.90
    default 1.0
    PP_HighlightsMultiplier=1.02
    default 1.0
    PP_MidTonesMultiplier=1.2
    default 1.0
    PP_ShadowsMultiplier=1.02
    default 1.0
    Colour tweaks also cange brightness in game and DisplyGamma in [Engine.Client].

    [XAudio2.XAudio2Device]

    MaxChannels=32
    Default is 64 and requries more CPU, cut in half to 32
    **
    [ALAudio.ALAudioDevice]**

    MaxChannels=32
    Default is 64 and requries more CPU, cut in half to 32
    **
    [TextureStreaming]**

    PoolSize=340
    Min 150 Max 2048, Sets the size in MB of the texture pool which all textures except render targets use.

    MemoryMargin=20
    Min 20 Max 20, Sets the of RAM to keep free, to be used as temp memory when streaming in new data, in MB. DO NOT CHANGE

    MemoryLoss=0
    Min 0 Max 0, Amount of memory to keep unavailable, not used in the UE3.X Engine. Leave “disabled” as being set to 0. DO NOT CHANGE

    HysteresisLimit=20
    Min 20 Max 30 Sets a limit on textures rendered when transitioning from one LOD to another, limiting spurious load/unload requests. Set >20 (2.0 sec) increases visuals & reduces fudge factor if pool RAM is available.

    DropMipLevelsLimit=20
    Min 4 Max 20 Sets the number of miplevels to drop (increase fudge) before uploading a texture LOD.
    Set >16 it increases GPU memory & file caching.

    StopIncreasingLimit=12
    Min 5 Max 20 Sets a memory limit for texture pop-ins (MIPS) in MB. Setting this higher with an increased poolsize will help pop-in issues.

    StopStreamingLimit=8
    Min 6 Max 12 Sets a memory limit for texture streaming in MB. Setting this higher with an increased poolsize will help smooth streaming.

    MinEvictSize=10
    Min 10 Max 12 Sets a memory limit for texture tiles that are mapped/pinned as necessary and then evicted as per cache rules. Set >10 to retain.

    MinFudgeFactor=0.5
    Min 5 Max 0.5 Sets a min margin of error for texture steaming. Anything higher than 1.0f means that textures don’t fit & will be blurry. Set to 1.0

    FudgeFactorIncreaseRateOfChange=0.5
    Min1 Max 0.5 Tells when to throttle the rate of texture stream. Anything higher than 1.0f is bad. Set between 0.5 and 1.0 only.

    FudgeFactorDecreaseRateOfChange=-1
    Min -1 Max -0.1 Tells when to increase the margin of error rate for texture streaming. Anything lower than -1.0f is bad. Set between -0.5 and -1.0 only. Default = -0.4

    MinRequestedMipsToConsider=11
    Min 0 Max 15 Sets the minimum # of MIPS requests in the texture update phase. Set >11 may increase down ratios, but can cause studdering. Set to 11.

    MinTimeToGuaranteeMinMipCount=0
    Min 5 Max 0 Sets a min time to eliminate the loading buffer and shows texture density at its max right away instead of loading it. Set to 0. Defalut = 2

    MaxTimeToGuaranteeMinMipCount=0
    Min 12 Max 0 Sets a max time to eliminate the loading buffer and shows texture density at its max right away instead of loading it. Set to 0 Default = 12

    UseTextureFileCache=False
    FALSE TRUE One special file, which is Textures.tfc (.tfc for Texture File Cache), contains all the streaming textures and is normally used in consoles. Set TRUE seems to actually make the vid card memory hold texture info & removed texture pop-in on Drydock. Only use if Vidcard = 1GB+

    LoadMapTimeLimit=4.0
    Min 10 Max 2 Sets a time limit for the pre-streaming texture blocking operation, making streaming more smooth. Lower # assumes more bandwidth. So if you have a really powerful card you can experiment with lower this more) Default = 20.0

    LightmapStreamingFactor=0.05
    Min 0.09 Max 0.02 Sets how aggressively lightmaps are streamed out. Smaller values <0.04 (default)are more aggressive.

    ShadowmapStreamingFactor=0.05
    Min 0.09 Max 0.02 Sets how aggressively shadowmaps are streamed out. Smaller values <0.04 (default) are more aggressive.

    MaxLightmapRadius=4250.0
    Min 500 Max 9000 Sets how wide an indirect sunlight/illumination lighting source spans, like the focus width of a flashlight. Higher numbers result in illumination, not brightness and reduce shadow effects. Default = 2000.0

    AllowStreamingLightmaps=False
    Min TRUE Max FALSE Sets whether to allow lightmaps stream in and out based on player distance. Try this as TRUE only if UseTextureFileCache=TRUE. Default = True

    TextureFileCacheBulkDataAlignment=1
    Min 1 Max 1 Sets a time limit on the file cache, forcing it to align cached textures with the current environment. Leave set to 1.

    UsePriorityStreaming=False
    Min TRUE Max FALSE Sets a quality of service & priority to texture streams being drawn and compensates for stuttering lag spikes, but reduces framerate priority and only loads basic texture sets if set TRUE. (Default)

    bAllowSwitchingStreamingSystem=True
    Min FALSE Max True Sets whether to allow the game to switch stream rates to compensate for stuttering / lag spikes, but reduces framerate priority and may cause more stuttering under certain conditions if set true.

    UseDynamicStreaming=False
    Min TRUE Max False Replaces streaming “triggers” with dynamic streaming volumes so the map can loaded while playing (reduces map load times), rather than having to wait it all out at once. If set FALSE, you better have LOTS of RAM/VRAM.

    bEnableAsyncDefrag=False
    FALSE FALSE Sets whether to allow Level streaming with asynchronous loading (out of order), which may cause uneven textures if set TRUE. Leave FALSE.

    bEnableAsyncReallocation=False
    FALSE FALSE Sets whether to allow the relallocation of async textures in their priority stream. Only useful if bEnableAsyncDefrag is set True.

    MaxDefragRelocations=128
    256 Sets the total # of defragmentations (time spent) for Async textures being relocated before scrubbing. Not useful without AsyncDefrag. Default = 256

    MaxDefragDownShift=64
    128 Sets the total # of Defragmentations (time spent) for Async textures being relocated before reducing. Not useful without AsyncDefrag. Default = 128

    BoostPlayerTextures=0
    This one is really helpful in servers with large player counts as it reduces player textures. Default 3

    TemporalAAMemoryReserve=0.0
    Defaut 4

    [UnrealEd.EditorEngine]

    bSmoothFrameRate=False
    This is set twice. The UE & T:A Engine is capped to a max framerate value set by MaxSmoothedFrameRate variable. This is designed prevent FPS spikes and smooth gameplay. Setting to false removes the FPS cap all together, but may cause jerkiness. False For Better Performance. Default False

    FOVAngle=90.000000
    This is the Horizintal FOV and chaning it may remove the fish eye. Default = 90 Changes feild of veiw angle see http://www.rjdown.co.uk/projects/bfbc2/fovcalculator.php for corect Y fov

    [Engine.StaticLightCollectionActor]

    MaxLightComponents=20
    Lowered to 20 as wont notice 100 default

    [MemoryPools]

    FLightPrimitiveInteractionInitialBlockSize=256
    In testing with 8 GIG system RAM the game will not go over 4 gig for a 32bit aplication. No point going over 1024 if over 4GIG RAM. 4 GIG and less total system RAM use this calculation:
    RAM MB/8=FLightPrimitiveInteractionInitialBlockSize
    4096/8=512
    2048/8=256

    FModShadowPrimitiveInteractionInitialBlockSize=256
    shadow resolution I found 1024 Loweres VRAM usage with good shadow quality Default 1024

    AllowScreenDoorFade=TRUE
    Is a dissolve effect for fading in/out of players based on their MaxDrawDistance.

    **
    [Engine.PhysicsLODVerticalEmitter]**

    ParticlePercentage=64
    Defines the global particle LOD setting in percentage. Default: 100

    [Engine.LocalPlayer]

    AspectRatioAxisConstraint=AspectRatio_MaintainXFOV
    OPTIONAL - Change to AspectRatioAxisConstraint=AspectRatio_MaintainYFOV for wide screen but Y has more FPS as less of screen rendered.

    Now to Tweak your UDKSystemSettings.ini. Follow the same procedure, make copy, edit, save.
    Now you only have to tweak the first system bucket or the first set of settings.

    StaticDecals=True
    Enables static decals, aka sprites on the map that don’t move such as bullet-holes in walls that are placed there by the developers. Change it to False to disable it and improve performance.

    DynamicDecals=True
    Enables dynamic decals, aka bullet-holes caused by your gun or blood emitting out of an enemy. Change it to False to disable these effects and improve performance.

    UnbatchedDecals=True
    Adds static decals to skeletal meshes or terrain. This is a low impact to performance setting with a high reward in clarity.

    DecalCullDistanceScale=0.500000
    Sets the Level of Detail of a decal when you move far away from it. The lower the value, the amount of detail will be reduced when you go near said decal. Set lower to make them disappear sooner to improve performance. Determines the distance in which Decals start disappearing from your view. Min 0.1 Max 1, Default 1.000000

    DynamicLights=True
    Adds lighting that interacts with the game world, like explosions. Set TRUE to see shots more clearly, FALSE for ugly better performance. Dynamic lighting is a system where the light entities out of any emitters can react to other objects on-the-fly, unlike static lighting which will always look the same no matter what is in-front of it. I would say set it to False to improve performance, but recent UE3 games makes full use of this type of lighting for their maps.
    It is one of the biggest FPS killers but it makes the game very grayed out.

    DynamicShadows=True
    Dynamic shadowing is a system where shadows react to the world unlike static shadows which always looks the same no matter what. Set it to False to improve performance by a great deal, since shadows take up alot of CPU. I usually have this disabled as well but shadow effects caused by in-game characters /vehicle shadows on the ground, explosions, etc. Disable for performance.

    CompositeDynamicLights=False
    Enabled light environment. Set FALSE does not effect performance. Set TRUE will enable a less accurate form of dynamic lights.

    SHSecondaryLighting=True
    Adds a secondary Lighting source to prevent too dark of places. Works with Directional and Composite Lighting. DO NOT DISABLE

    DirectionalLightmaps=True
    They all change the way how lighting works in BLR and I’d highly recommend that you don’t touch these settings. If you decide to experiment anyways, please at all costs, do NOT touch DirectionalLightMaps. Without it, the shader effects on objects would become null and make your game 10x more ugly without much of a performance boost. Part of Casting Shadows / shader effects on walls from various light sources. Without it, stuff looks dark.

    MotionBlur=False
    Personal preference Motion blur is unwanted beer goggles. Default False but it normally adds additional blurring seen when turning around rapidly, moving rapidly or being hit. It can cause mouse delay.

    MotionBlurPause=False
    Determine the pause between frames of motion blur. Since MotionBlur=False this option is unused and can be ignored.

    MotionBlurSkinning=0
    Allows a blurring effect on high speed moving objects. Since MotionBlur=False this option is unused and can be ignored. Off 0 On 1.

    DepthOfField=True
    Where the background of the world in your character’s line of vision Adds the effect used to simulate how objects within your focus are sharper than objects outside our direct field of view/focus. is blurred to improve realism/cinematic quality. Set it to False to improve performance, though on some systems this may actually improve performance when enabled. I don’t know why, just experiment.

    AmbientOcclusion=False
    Not rely supported in DX9 gives strange home screen effect Enhances shadows around the game world, usually it is a performance killer. I’d recommend this stays set to False. Adds the effect used to enhance shadows around the game world (Very GPU/CPU intensive)

    Bloom=False
    Personal preference. Enables light-highlighting and image bloom in the world, making it bright and vivid. Turning it off less stress on the CPU if set to False. Adds light highlighting and image bloom in the world/map, creating a slightly hazy, more realistic atmospheric.

    bAllowLightShafts=True
    Usually accompanied by OcclusionMaskDarkness, this enables/disables light shafts or “god rays” from the sun. False for performance.

    Distortion=True
    Distortion is a shader put in front of the screen or an object to emphasize an effetc used in the game, like taking a hit from a bullet or distortions around fires or the moon.
    **
    These can improve game performance when set to False.**

    FilteredDistortion=True
    Allows distortion on particles based on World Information to use bilinear filtering when sampling the scene color, like when hit by a weapon. Set Setting “TRUE” reduces effects for performance Set it to False to improve performance.

    DropParticleDistortion=False
    Effects where a sprite like a spark would make a distortion effect when animating. Set it to False to improve performance.

    SpeedTreeLeaves=True
    Adds or removes the leaves from trees. Enabled gives trees with leaves whereas disabled shows trees with branches only. I have it disabled

    SpeedTreeFronds=True
    Adds or removes minor branches from trees. Enables gives trees more branches whereas disabled shows the trunks only basically. I have it disabled

    OnlyStreamInTextures=True
    This affects the way textures are streamed into the world as you move throughout the map. Default False. If enabled, textures will only be streamed in, not out, increasing performance. Set disabled for better textures in terrains or grass.

    LensFlares=True
    Enables lensflares, a lighting effect where a flare is shown when looking at a bright light source, such as the Sun… causes brightness from the sun or explosions.

    FogVolumes=True
    Enables/Disables volumetric fog from Strikes and large explosions. Set False to remove/disable big smoke clouds and “Fog” in the game, such as distance fog or smoke effects. Test this since setting it to False can both lower performance and create buggy distance fogging.

    FloatingPointRenderTargets=True
    Adds certain post processing effects, such as the ability to enable HDR and AA simultaneously. Set disabled removes certain explosions. If set to true very low graphical look with no performance benifit * Do not touch*

    AllowRadialBlur=True
    Adds the effect of mimicing a shockwave coming from an explosion or impacts from being hit. Disable for better performance.

    AllowSubsurfaceScattering=True
    Optional. Shine on ground Default False.

    UseVsync=False
    Vertical Synchronization keeps your Frames Per Second in tune with your monitor’s refresh rate. Is a more monitor/GPU dependant thing.

    Fullscreen=True
    Defines whether the client loads fullscreen or windowed. Running fullscreen will give better performance than Window/Boarderless.

    AllowD3D9=False
    DirtectX made to run the game on

    AllowD3D11=False
    DirtectX made to run the game on

    EnableHighPolyChars=False
    If set to False, this option reduces the polygon complexity of characters, which can improve performance. In general the image quality difference is not significant, so set this to False if you need the extra FPS, particularly on servers with lots of players.

    SkeletalMeshLODBias=0
    quality or setting it to a higher number like 4 makes all the characters look like box men. Sets the in game character & animations quality where -1 is highest quality and 10 is lowest “8-bit Mario” style quality. Set it to 2 or 3 for better performance.

    ParticleLODBias=-1
    Sets the particle effects/detail and compensates stutters caused LOD rendering of minor objects like trails. Set -1 for max lets you see tracer bulet rounds…

    DetailMode=4
    Determines quality and quantity of how quickly things should be updated (blood, ice, water, etc). Set 0 for none or 4 for max quality.

    MaxDrawDistanceScale=1.000000
    Game draw distance 0.97 is good too.

    ShadowFilterQualityBias=0
    Sets the quality of the shadow filtering used (if shadows are enabled). Higher=better quality, Lower=better performance.

    MaxAnisotropy=0
    Adds filtering used in the game to make distant textures more clear. Set 0 for no Anisotropic Filtering or 16 for max. You could put it up to 32 if you have the power.

    MinShadowResolution=64
    Adds minimum shadow texel size. The higher the min value, the darker and more rich shadows appear.

    MinPreShadowResolution=8
    Sets min texels allowed for rendering shadow depths and fading. Must be less than ShadowFadeRes.

    MaxShadowResolution=512
    Adds maximum shadow texel size. The higher the max value, the more rich shadow edges appear. Max value 4096 Default 1120

    MaxWholeSceneDominantShadowResolution=512
    Sets a fixed number of shadow depth buffers. Lower for better performance, but cannot be less than ShadowFadeResolution. Default 1280

    ShadowFadeResolution=128
    Sets the max texels allowed for rendering shadows. 0 will force shadows to never fade; higher to have them fade faster.

    PreShadowFadeResolution=16
    Sets a fixed number of shadow depth buffers to pre-draw. Lower for better performance, but cannot be less than MinPreShadowRes.

    ScreenPercentage=100.000000
    lowers the in-game resolution of everything 3D without lowering the UI/2D resolution of things like menus, HUD, etc. So you don’t need to set a lower resolution for performance and suffer stretched 2D images, just set Screen percentage from a minimum of 50 to a maximum of 100 to increase performance drastically. However, it WILL make the game blurrier and more pixelated, so beware. Also, if you set the previous command “UpScaleScreenPercentage” to False, lowering this value will cause black borders around the game screen. I’d say set it to 90 for best compensation of quality and performance-gain.

    SceneCaptureStreamingMultiplier=0.000000
    Adds a streaming system that streams in nearby textures in the same way as if the game camera was there, like pre-rendering. Default 1.000000

    ShadowTexelsPerPixel=1.27324
    Adds overall smoothness to shadows. A value of 0 disables shadows altogether where anything above 2 is only seen at 1920 or higher res. Defalut = 1.300000

    PreShadowResolutionFactor=0.500000
    Adds additional quality of shadow mapping to yourview by pre-rendering the resolution of shadows. Lower for better performance. Min 0.1 Max 5

    bAllowWholeSceneDominantShadows=True
    Allows cast shadows from mountains, buildings or trees to be cast by the sun or main light source. Set FALSE for increased performance.

    bEnableBranchingPCFShadows=False

    bAllowHardwareShadowFiltering=True
    Default False set to True for better shadows

    TessellationAdaptivePixelsPerTriangle=900.000000
    DX11 Lowest Tessellation setting.

    bEnableForegroundShadowsOnWorld=False
    Setting it to True enables shadows on various areas of the map. False to increase performance.Default False.

    bEnableForegroundSelfShadowing=False
    Default False, Adds foreground Depth Priority Group self-shadowing from cast shadows. Set disabled removes some shadows, but not player shadows.

    bAllowWholeSceneDominantShadows=False
    Default False Setting this to True enables high-quality shadows false for performance true for quality.

    ApexLODResourceBudget=1024
    Default 1000000020040877300000.000000

    ApexDestructionMaxChunkIslandCount=50
    Default 2500 When the APEX module of PhysX is used (this module allows the ‘destruction’ of objects without prior coding by the developers how many pieces it can be destroyed into. The less, the faster. 150 is too much suggested value is to decrease to 50.

    ApexDestructionMaxChunkIslandCountHigh=50
    Add this Default 500 Same as above, but if PhysX is set to HIGH. Still suggest 50.

    ApexDestructionMaxChunkSeparationLOD=0.5000000
    Default 1.000000 This one is a bit confusing. It’s a scale value between 0 and 1 that is applied to two separate destructible asset parameters, maximum separation distance and min/max lifetime. Setting it to 0 won’t make the chunk lifetime 0, it will make the lifetime the minimum value in the destructible asset.

    **
    INFORMATION FOR ALL TEXTURE GROUPS
    **
    This is information about these Texture Group settings where you can test lowing for better FPS

    Value –---- MIN-MAX
    MinLODSize______ 0-4096
    Defines minimum mip size in pixels that will be rendered. Must be less than MaxLODSize. Higher uses more memory, drops performance.

    MaxLODSize_______256-4096
    Defines maximum mip size in pixels that will be rendered. Must be greater than MinLODSize. Higher = droped performance.

    LODBias___________1 0 or -2
    The LODBias biases or offsets which mip is chosen for rendering. The LODBias is calculated before the LODGroup Min/Max range. The LODBias in the Texture Properties is added to the LODBias in the TextureGroup to determine the final LODBias value used. An LODBias of 0 is the main (native) texture resolution. An LODBias of 1 is the first mip down for the texture, an LODBias of 2 is the second mip down, etc. For example, a 1024x1024 texture that has an LODBias of 1 results in the 512x512 mip being chosen for rendering. The LODBias specified in the Texture Properties for each individual texture can be positive or negative, so that it can offset the TextureGroup’s default LODBias to either higher or lower mip values. For example, a TextureGroup LODBias of 0 and a Texture Properties LODBias of 0 would result in a final LODBias of 0. A TextureGroup LODBias of 0 and a Texture Properties LODBias of 1 would result in a final LODBias of 1. A TextureGroup LODBias of 1 and a Texture Properties LODBias of 1 would result in a final LODBias of 2. A TextureGroup LODBias of 1 and a Texture Properties LODBias of -1 would result in a final LODBias of 0.

    VALUE ______ MIN- MAX
    MinMagFilter _________ Point - Aniso
    Search UDN TEXTURE GROUP PROPERTIES for uses of each, but Point is the min and Aniso is your max. Point, Linear or Aniso are your choices.

    MipFilter______________Point - Point
    Gets or sets a mipmap filter to use during minification. Always set to “Point” no matter what as any other is just not used here.

    MipGenSettings______TMGS_SimpleAverage - TMGS_Sharpen_4
    Mip-map generation happens during importing of the texture and creates a mipmap chain for textures. TMGS_Sharpen_<0-4> for max.

    NumStreamedMips___________ 5(-1) 14
    If a texture has 10 mips and NumStreamedMips is 2, only the 2 highest mips will be allowed to stream in or out. The texture will therefore have 8-10 mips in memory at any given time. Setting NumStreamedMips to 0 means that no mips will be streamed and the textures using this LOD group will always be fully loaded. Setting NumStreamedMips to -1 means that all mips are allowed to be streamed in or out (there are still other restrictions that apply though). NumStreamedMips is an optional setting that defaults to -1.

    MinMagFilter_____MipFilter______Filter Type
    point________________________ - Point
    linear
    ____ point Bilinear
    linear
    ________ - Trilinear
    aniso
    _____ point _____________ Anisotropic Point
    aniso________________________ - _______________Anisotropic Linear
    **
    Resolution_____Total Mips**
    16x16 __________________ 5 mips
    32x32 __________________ 6 mips
    64x64 __________________ 7 mips
    128x128 ________________ 8 mips
    256x256 ________________ 9 mips
    512x512 ________________ 10 mips
    2048x2048 ______________ 12 mips
    4096x4096 ______________ 13 mips
    8192x8192 ______________ 14 mips

    NOTE: These Texture Group settings are not for Chivalry but to be used as an example! I have not tested these exact Texture Group settings. I did modify Textue Group settings in an older post but not to this extreme. You have been warned….

    TEXTUREGROUP_ColorLookupTable=(MinLODSize=64,MaxLODSize=1024,LODBias=0,MinMagFilter=Potint,MipFilter=Point,MipGenSettings=TMGS_Sharpen_1,NumStreamedMips=-1)

    TEXTUREGROUP_RenderTarget=(MinLODSize=64,MaxLODSize=1024,LODBias=0,MinMagFilter=Potint,MipFilter=Point,MipGenSettings=TMGS_Sharpen_1,NumStreamedMips=-1)

    TEXTUREGROUP_Character=(MinLODSize=64,MaxLODSize=1024,LODBias=0,MinMagFilter=Potint,MipFilter=Point,MipGenSettings=TMGS_Sharpen_1,NumStreamedMips=-1)

    TEXTUREGROUP_CharacterNormalMap=(MinLODSize=64,MaxLODSize=1024,LODBias=0,MinMagFilter=Potint,MipFilter=Point,MipGenSettings=TMGS_Sharpen_1,NumStreamedMips=-1)

    TEXTUREGROUP_CharacterSpecular=(MinLODSize=64,MaxLODSize=1024,LODBias=0,MinMagFilter=Potint,MipFilter=Point,MipGenSettings=TMGS_Sharpen_1,NumStreamedMips=-1)

    TEXTUREGROUP_MobileFlattened=(MinLODSize=64,MaxLODSize=1024,LODBias=0,MinMagFilter=Potint,MipFilter=Point,MipGenSettings=TMGS_Sharpen_1,NumStreamedMips=-1)

    TEXTUREGROUP_World=(MinLODSize=64,MaxLODSize=1024,LODBias=0,MinMagFilter=Potint,MipFilter=Point,MipGenSettings=TMGS_Sharpen_1,NumStreamedMips=-1)

    TEXTUREGROUP_WorldNormalMap=(MinLODSize=64,MaxLODSize=1024,LODBias=0,MinMagFilter=Potint,MipFilter=Point,MipGenSettings=TMGS_Sharpen_1,NumStreamedMips=-1)

    TEXTUREGROUP_WorldSpecular=(MinLODSize=64,MaxLODSize=1024,LODBias=0,MinMagFilter=Potint,MipFilter=Point,MipGenSettings=TMGS_Sharpen_1,NumStreamedMips=-1)

    TEXTUREGROUP_Terrain_Heightmap=(MinLODSize=64,MaxLODSize=1024,LODBias=0,MinMagFilter=Potint,MipFilter=Point,MipGenSettings=TMGS_Sharpen_1,NumStreamedMips=-1)

    TEXTUREGROUP_Terrain_Weightmap=(MinLODSize=64,MaxLODSize=1024,LODBias=0,MinMagFilter=Potint,MipFilter=Point,MipGenSettings=TMGS_Sharpen_1,NumStreamedMips=-1)

    TEXTUREGROUP_Weapon=(MinLODSize=64,MaxLODSize=1024,LODBias=1,MinMagFilter=Potint,MipFilter=Point,MipGenSettings=TMGS_Sharpen_1,NumStreamedMips=-1)

    TEXTUREGROUP_WeaponNormalMap=(MinLODSize=64,MaxLODSize=1024,LODBias=0,MinMagFilter=Potint,MipFilter=Point,MipGenSettings=TMGS_Sharpen_1,NumStreamedMips=-1)

    TEXTUREGROUP_WeaponSpecular=(MinLODSize=64,MaxLODSize=1024,LODBias=0,MinMagFilter=Potint,MipFilter=Point,MipGenSettings=TMGS_Sharpen_1,NumStreamedMips=-1)

    TEXTUREGROUP_Vehicle=(MinLODSize=64,MaxLODSize=1024,LODBias=0,MinMagFilter=Potint,MipFilter=Point,MipGenSettings=TMGS_Sharpen_1,NumStreamedMips=-1)

    TEXTUREGROUP_VehicleNormalMap=(MinLODSize=64,MaxLODSize=1024,LODBias=0,MinMagFilter=Potint,MipFilter=Point,MipGenSettings=TMGS_Sharpen_1,NumStreamedMips=-1)

    TEXTUREGROUP_VehicleSpecular=(MinLODSize=64,MaxLODSize=1024,LODBias=0,MinMagFilter=Potint,MipFilter=Point,MipGenSettings=TMGS_Sharpen_1,NumStreamedMips=-1)

    TEXTUREGROUP_Cinematic=(MinLODSize=64,MaxLODSize=1024,LODBias=0,MinMagFilter=Potint,MipFilter=Point,MipGenSettings=TMGS_Sharpen_1,NumStreamedMips=-1)

    TEXTUREGROUP_Effects=(MinLODSize=64,MaxLODSize=1024,LODBias=0,MinMagFilter=Potint,MipFilter=Point,MipGenSettings=TMGS_Sharpen_1,NumStreamedMips=-1)

    TEXTUREGROUP_EffectsNotFiltered=(MinLODSize=64,MaxLODSize=1024,LODBias=0,MinMagFilter=Potint,MipFilter=Point,MipGenSettings=TMGS_Sharpen_1,NumStreamedMips=-1)

    TEXTUREGROUP_Skybox=(MinLODSize=64,MaxLODSize=1024,LODBias=0,MinMagFilter=Potint,MipFilter=Point,MipGenSettings=TMGS_Sharpen_1,NumStreamedMips=-1)

    TEXTUREGROUP_UI=(MinLODSize=64,MaxLODSize=1024,LODBias=0,MinMagFilter=Potint,MipFilter=Point,MipGenSettings=TMGS_Sharpen_1,NumStreamedMips=-1)

    TEXTUREGROUP_ProcBuilding_Face=(MinLODSize=64,MaxLODSize=1024,LODBias=0,MinMagFilter=Potint,MipFilter=Point,MipGenSettings=TMGS_Sharpen_1,NumStreamedMips=-1)

    TEXTUREGROUP_ProcBuilding_LightMap=(MinLODSize=64,MaxLODSize=1024,LODBias=0,MinMagFilter=Potint,MipFilter=Point,MipGenSettings=TMGS_Sharpen_1,NumStreamedMips=-1)

    TEXTUREGROUP_Lightmap=(MinLODSize=64,MaxLODSize=1024,LODBias=0,MinMagFilter=Potint,MipFilter=Point,MipGenSettings=TMGS_Sharpen_1,NumStreamedMips=-1)

    TEXTUREGROUP_Shadowmap=(MinLODSize=64,MaxLODSize=1024,LODBias=0,MinMagFilter=Potint,MipFilter=Point,MipGenSettings=TMGS_Sharpen_1,NumStreamedMips=3)

    TEXTUREGROUP_ImageBasedReflection=(MinLODSize=64,MaxLODSize=1024,LODBias=0,MinMagFilter=Potint,MipFilter=Point,MipGenSettings=TMGS_Blur1,NumStreamedMips=-1)

    ImageBasedReflection must have MipGenSettings=TMGS_Blur5 dont change that or it will screw up the settings

    TEXTUREGROUP_Bokeh=(MinLODSize=64,MaxLODSize=1024,LODBias=0,MinMagFilter=Potint,MipFilter=Point,MipGenSettings=TMGS_Sharpen_1,NumStreamedMips=-1)



  • My hero. Thanks for all your work detailing your changes and why you do them. When I build my new computer I’ll remember to try these tweaks.



  • Sounds cool! Can you upload your UDKEngine.ini file, so I can test it without having to manually change everything?



  • This is not a max FPS ini. It is more of an attempt to get the best image quality with the best FPS. That is why I also posted optional settings for you to test because each machine is different. I can do a max FPS INI set that can be copied and pasted but without the explanations, people would not know why or what was changed.



  • A very good in depth tweaking guide by the Guru Retsnom :) .
    It reminds me of the old Q3ctf days were my config folders were gigs in size.
    After a time I could almost guess any players settings used in game at a quick spec glance. sens, fov, accel or non etc.
    pitch yaw ratio’s some of the configs I custom made could give you near all the top shots on any server.

    Once you get familiar with the Guide Retsnom has written on chivalry tweaks, it won’t be long before your writing your own and a Guru in this field :).

    Once again thank you to Mr Retsnom for writing this and I will be unleashing the tweaks on one of my game rigs next week as busy atm :( , building rigs for other people.



  • What an excellent post, thank you for this information it is very useful!



  • Semi long post? This is a dang book. Thanks for information mate! Will be tweaking files tonight.



  • Good job Retsnom. This is quite useful for the community and will go a long way to help anyone looking to boost their performance and/or currently having performance issues. :)



  • Thanks guys, this has been a long work in progress. I wish it was more complete as this is only a fraction of the INI settings. But information is power. Also remember that not all of these settings will work for every machine. I will work on a Max FPS ini for those with total potatoes so that they can just copy and paste it. But people will still need to tweak some due to screen resolutions and differences in ram and vid cards.



  • @Retsnom:

    Thanks guys, this has been a long work in progress. I wish it was more complete as this is only a fraction of the INI settings. But information is power. Also remember that not all of these settings will work for every machine. I will work on a Max FPS ini for those with total potatoes so that they can just copy and paste it. But people will still need to tweak some due to screen resolutions and differences in ram and vid cards.

    Great, I’m looking forward to it =)



  • Very nice guide, the detail is great to see.



  • Probably a dumb question but any chance those tweaks will lower my ping? (30-40ms more than the server list is showing, 90-140ms on the best servers sorted by ping, chivalry exclusive problem)



  • @Silu:

    Probably a dumb question but any chance those tweaks will lower my ping? (30-40ms more than the server list is showing, 90-140ms on the best servers sorted by ping, chivalry exclusive problem)

    Sadly no. Ping is relative to the quality of your internet connection and the distance or hops to the servers and the quality of the internet throughout. Chivalry’s netcode is also no help because it is very bogged down with redundant packets and checks.

    This is an interesting read and may help you understand ping and net settings. It is a bit dated but most of it still applies in theory: http://wiki.unrealadmin.org/Netspeed_Tutorial_%28UT%29

    Now you can try and play with your rate settings in the UDKEngine.ini. Here is the default settings:

    IpDrv.TcpNetDriver]
    AllowDownloads=True
    AllowPeerConnections=False
    AllowPeerVoice=False
    ConnectionTimeout=30.0
    InitialConnectTimeout=200.0
    AckTimeout=1.0
    KeepAliveTime=0.2
    MaxClientRate=50000
    MaxInternetClientRate=30000
    RelevantTimeout=10.0
    SpawnPrioritySeconds=1.0
    ServerTravelPause=4.0
    NetServerMaxTickRate=30
    LanServerMaxTickRate=35
    DownloadManagers=IpDrv.HTTPDownload
    DownloadManagers=Engine.ChannelDownload
    NetConnectionClassName=IpDrv.TcpipConnection

    You might want to try some of these settings and see if they help

    [Engine.Engine]
    EditorEngine=Editor.EditorEngine
    Add a ; in front or delete.

    Although the game doesnt have the executible, it still has the rest of editor engine. These are loaded into memory. Adding a ; in front or deleting the line will stop it and save some loading time and memory.

    [WinDrv.WindowsClient]
    MinDesiredFrameRate=35.000000

    Change to
    MinDesiredFrameRate=60.000000

    While it wont guarantee a higher frame rate, it will boost your FPS by attempting to display it. This will result in some the loss of some graphics being displayed. However, I dont think you will even notice it.

    The next few items will probibly get some discussion. However I believe that the guys that have researched this know a bit more than you, I, or Ubi.

    If you want to do some reading on it, check out this link…
    http://www.unrealadmin.org/server_ini_reference/ut2004#ipdrvtcpnetdriver

    [Engine.Player]
    ConfiguredInternetSpeed=10000

    Change to
    ConfiguredInternetSpeed=5500

    Server admins…
    [IpDrv.TcpNetDriver]
    MaxClientRate=15000
    MaxInternetClientRate=10000
    NetServerMaxTickRate=30

    Change to
    MaxClientRate=6400
    MaxInternetClientRate=6400
    NetServerMaxTickRate=20



  • WOW Thank you Retsnom. I have been looking for more info. Thanks for all your hard work.



  • @Retsnom:

    Sadly no. Ping is relative to the quality of your internet connection and the distance or hops to the servers and the quality of the internet throughout. Chivalry’s netcode is also no help because it is very bogged down with redundant packets and checks.

    This is an interesting read and may help you understand ping and net settings. It is a bit dated but most of it still applies in theory: http://wiki.unrealadmin.org/Netspeed_Tutorial_%28UT%29

    Now you can try and play with your rate settings in the UDKEngine.ini. Here is the default settings:

    IpDrv.TcpNetDriver]
    AllowDownloads=True
    AllowPeerConnections=False
    AllowPeerVoice=False
    ConnectionTimeout=30.0
    InitialConnectTimeout=200.0
    AckTimeout=1.0
    KeepAliveTime=0.2
    MaxClientRate=50000
    MaxInternetClientRate=30000
    RelevantTimeout=10.0
    SpawnPrioritySeconds=1.0
    ServerTravelPause=4.0
    NetServerMaxTickRate=30
    LanServerMaxTickRate=35
    DownloadManagers=IpDrv.HTTPDownload
    DownloadManagers=Engine.ChannelDownload
    NetConnectionClassName=IpDrv.TcpipConnection

    You might want to try some of these settings and see if they help

    [Engine.Engine]
    EditorEngine=Editor.EditorEngine
    Add a ; in front or delete.

    Although the game doesnt have the executible, it still has the rest of editor engine. These are loaded into memory. Adding a ; in front or deleting the line will stop it and save some loading time and memory.

    [WinDrv.WindowsClient]
    MinDesiredFrameRate=35.000000

    Change to
    MinDesiredFrameRate=60.000000

    While it wont guarantee a higher frame rate, it will boost your FPS by attempting to display it. This will result in some the loss of some graphics being displayed. However, I dont think you will even notice it.

    The next few items will probibly get some discussion. However I believe that the guys that have researched this know a bit more than you, I, or Ubi.

    If you want to do some reading on it, check out this link…
    http://www.unrealadmin.org/server_ini_reference/ut2004#ipdrvtcpnetdriver

    [Engine.Player]
    ConfiguredInternetSpeed=10000

    Change to
    ConfiguredInternetSpeed=5500

    Server admins…
    [IpDrv.TcpNetDriver]
    MaxClientRate=15000
    MaxInternetClientRate=10000
    NetServerMaxTickRate=30

    Change to
    MaxClientRate=6400
    MaxInternetClientRate=6400
    NetServerMaxTickRate=20

    Thank you for your answer. Those changes didn’t change a thing unfortunately. I didn’t try the improving performance tweaks, as I don’t have issues with it.

    I found a good server from my country, in which I’m having a “reasonable” 60-90 ping (although my countrymen, including my neighbours get 20-40 there, oh well) and I’m trying to stick with it.

    Nothing else to do, besides changing the ISP, however I get 30-50ms ping in other games, so not sure if it’s their fault.



  • It is probably not your ISP’s fault. More than likely it is the locations and quality of the Chiv servers in your country. Since Chiv is not such a popular game, there is probably not a lot of chiv servers in your country, thus pings will probably be high.



  • I’m from Poland, I should be getting a decent ping on German, French or UK servers. My friends do, I don’t.
    According to this http://www.pingtest.net/ I have 60 ping from Germany, 68 and 71 from France and UK respectively. That’s quite ok. In chiv though it’s almost doubled. And the server list ping is always lying to me. I join a 70ms ping server, I get 96-104ms during a match.

    One more thing - ping improves vastly when there isn’t many people on the server. Each player adds 2-3ms to the ping I get. I have to play on up to 24 slot servers to have a chance of getting my ping below 100.



  • I think you should mention that before people go fiddling around with the graphics settings they should see where their system is bottlenecking.

    Using ‘stat unit’ you can look at the Game thread and the GPU thread. The settings should be tweaked so that the Game thread is about equal to the GPU thread. If game is higher than setting your GPU settings right down wont do shit for FPS.



  • @Toll:

    I think you should mention that before people go fiddling around with the graphics settings they should see where their system is bottlenecking. Using ‘stat unit’ you can look at the Game thread and the GPU thread. The settings should be tweaked so that the Game thread is about equal to the GPU thread. If game is higher than setting your GPU settings right down wont do shit for FPS.

    Normally I agree with you and having the more info the better. But if they are already needing more FPS and willing to go into the INI files, they are pretty desperate for more. If I was going to continue with doing tech support for this game I would do a complete instruction guide and explain what STAT UNIT means and what to tweak. But screw that, too much work with little reward.



  • erm, is this all about performance? cause i get a constant 60, with vsync turned off, light shafts disabled, and motion blur disabled, everything else max. are there any settings here that could further improve the visuals of the game? or make the game perform smoother without sacrificing visuals much or at all?


Log in to reply