RimWorld: Memory Management Tweaks via Prefs.xml

The primary goal for RimWorld optimization is maximizing CPU cycles for simulation. Most of RimWorld’s performance issues aren’t actually about your GPU; they are about how quickly the game can process thoughts, pathfinding, and social interactions. Modifying the Prefs.xml allows you to implement a “Lightweight HUD” profile: reducing the resolution of UI elements and ensuring that the game doesn’t hang while trying to scale the interface on high-DPI monitors.

Hardware Compatibility & Expectations

  • Single-Core Speed: Since RimWorld (v1.6 and below) primarily runs on one core, your CPU’s “Boost Clock” is more important than its core count.
  • VRAM vs. RAM: With many mods, RimWorld can exceed 4GB–8GB of memory. These tweaks help prevent the game from “paging” (using your slow SSD as RAM).
  • Mod Dependency: These tweaks are a baseline. For true late-game stability, they must be used alongside performance mods like RocketMan or Performance Fish.

Backup and Preparation

RimWorld’s config files are delicate; if you delete a tag accidentally, the game may reset all your settings to default.

  1. Completely exit RimWorld.
  2. Navigate to your local configuration folder (path below).
  3. Copy Prefs.xml and save a backup copy as Prefs.xml.bak.
  4. Open the original with Notepad++.

File Location

The configuration file is located in your system’s LocalLow directory: C:\Users\%USERNAME%\AppData\LocalLow\Ludeon Studios\RimWorld by Ludeon Studios\Config\Prefs.xml

Best Prefs.xml Settings for Performance

Search for these specific tags. Update the values to match this “Performance-First” profile:

<uiScale>1</uiScale>
<showRealtimeClock>false</showRealtimeClock>
<maxSimulatedTicksPerFrame>10</maxSimulatedTicksPerFrame>
<runInBackground>false</runInBackground>
<textureCompression>true</textureCompression>
<plantWindSway>false</plantWindSway>

Pro Tip: Setting <uiScale>1</uiScale> is crucial. Many users on 4K monitors set this higher, which forces the engine to use a significant amount of memory just to “redraw” the interface icons every frame. Keeping it at 1 and using a lower native resolution is often better for late-game TPS.

Key Parameters Explained

ParameterRecommended ValueImpact
uiScale1Reduces the memory and GPU overhead of the HUD.
textureCompressiontrueCompresses modded textures in VRAM, preventing memory crashes.
plantWindSwayfalseDisables the animation for every blade of grass, saving CPU cycles on larger maps.
runInBackgroundfalseEnsures the OS gives RimWorld 100% priority when the window is active.
maxSimulatedTicksPerFrame10Limits how many “game logic” updates happen per render frame, preventing FPS lag.

In-Game Settings vs. Config

To complement your XML tweaks, match these in-game Options settings:

  • Development Mode: Keep this OFF during regular play. Having the dev-log open in the background can cause massive micro-stuttering as it records every minor mod error.
  • Map Size: Never exceed 275×275 if you plan on a 10+ year colony. The pathfinding cost for pawns on 325×325 maps grows exponentially.
  • Animal Culling: Every animal on the map has an AI “tick.” Use the Auto-slaughter tool to keep your farm animal counts low.
  • Texture Compression: Enable this in the Graphics settings—it is the best defense against “Out of Memory” errors on 8GB RAM systems.

Troubleshooting & Common Fixes

  • Micro-stutters when Panning: This is usually caused by the “Resource Readout” on the top left. Use a mod like Performance Optimizer to hide this when not needed.
  • Long Load Times: This is usually due to XML translation. Mods like RimPy can convert your textures to .dds format, which loads 40% faster.
  • Settings Resetting: If RimWorld crashes, it might overwrite your Prefs.xml. Once your settings are perfect, you can set the file to Read-only.

Frequently Asked Questions (FAQ)

Does “uiScale” really affect FPS?

Yes. In Unity, the UI is often rendered in a separate pass. If your UI scale is high, every button and icon uses more pixels, increasing the fill-rate and memory usage of the HUD.

Why disable “Plant Wind Sway”?

On a “Forest” or “Jungle” biome, there are thousands of plants. Calculating a “sin-wave” movement for every single sprite is a waste of CPU cycles that could be used for pawn social AI.

Is “RocketMan” necessary if I do these tweaks?

Yes. These XML tweaks fix the engine environment, while RocketMan fixes the game logic (like how often a pawn checks if they are hungry). You need both for a smooth 300+ mod experience.

Conclusion and Expected Results

By manually refining your Prefs.xml, you are stripping away the visual “fluff” that slows down the single-threaded simulation. You can expect a more responsive UI, faster map panning, and a higher TPS ceiling in your late-game colonies, allowing you to reach the ship-launch phase without the game becoming a slideshow.

Leave a Comment