Cities Skylines: Best options.xml for High-Entity Count Fix

The objective is to optimize the Sim-Grid updates and reduce the frequency of decorative “prop” rendering to prioritize the movement of vehicles and citizens.

Setup & File Navigation

  1. Directory Path: Press Win + R, type %LOCALAPPDATA%\Colossal Order\Cities_Skylines\, and hit Enter.
  2. The Target: Open options.xml with a text editor.
  3. Pro Tip: In 2026, many “Mega-City” players use the Loading Screen Mod (Revisited). The settings inside options.xml work in tandem with that mod to prevent VRAM overflow.

Optimized “Mega-City” Configuration Table

XML ParameterRecommended ValueTechnical Purpose
m_shadowQuality1The CPU Savior. Reduces the shadow-casting load for thousands of cars.
m_lodDetail1 (Medium)Prevents the engine from rendering high-detail meshes at a distance.
m_anisoLevel4Balanced texture clarity for roads without heavy bandwidth cost.
m_maxShadowDistance400Limits shadow rendering to the immediate vicinity of the camera.
m_enableVsyncfalseCritical for removing the “Input Lag” during simulation spikes.

HowTo: Engineering the Urban Simulation Pipeline

Follow these GameEngineer.net technical steps to manage high-entity counts:

  1. The “Shadow Cascades” Optimization: In options.xml, find <m_shadowQuality>. In a city with 5,000 active vehicles, every car casting a “high-quality” shadow creates a massive Draw Call ($D_{call}$) storm. Setting this to 1 (Medium) or 0 (Low) can improve late-game FPS by up to $30\%$.
  2. Citizen Life-Cycle Buffer: While not directly in the XML, ensure your Virtual Memory (Pagefile) is set to at least 32GB on your fastest NVMe drive. Cities: Skylines 2026 builds often exceed 24GB of RAM usage because the engine caches the entire citizen directory ($D_{cit}$) to avoid stuttering during pathfinding.
  3. The “LOD” Protocol: Search for m_lodDetail. By setting this to 1 in the XML, you force the engine to use lower-polygon models ($M_{low}$) for buildings and trees earlier. This is essential for maintaining a fluid frame rate when zooming out to view your entire 81-tile metropolis.
  4. Disabling “Depth of Field”: Find <m_depthOfField> and set it to false. This post-processing effect is computationally expensive in 2026’s high resolutions (4K/8K) and adds zero value to a simulation-focused playstyle.
  5. Traffic Manager (TM:PE) Synergy: If you use the TM:PE mod, ensure “Parked Car AI” is disabled. This prevents the engine from needing to track the $X,Y$ coordinates of thousands of stationary objects in your options.xml environment, freeing up CPU Threads for actual traffic flow.

Technical Explanation: Pathfinding and the Main Thread ($T_{main}$)

Cities: Skylines uses a “Fixed Timestep” for its simulation. As $E_{active}$ increases, the time required to calculate every citizen’s path ($P_{path}$) grows.

$$Tick\_Time = \frac{\sum (Citizens + Vehicles)}{Available\_CPU\_Threads}$$

When $Tick\_Time$ exceeds the allocated window, the game “slows down” (the simulation speed icon stops working). By engineering your options.xml to lower the rendering overhead, you give the Unity Main Thread more “breathing room” to handle the simulation data without being interrupted by GPU-bound tasks. This keeps the simulation running at 3x speed even in massive cities.

Leave a Comment