Dwarf Fortress: Best init.txt for Classic vs Graphic Mode

In 2026, the primary performance killer isn’t the graphics—it’s the Simulated Ticking. However, how you “print” those ticks to your screen matters. By adjusting PRINT_MODE and the FPS_CAP, you can ensure that your GPU handles the rendering while your CPU focuses on calculating every individual dwarf’s finger joints and social anxieties.

File Paths

Dwarf Fortress uses two primary files for configuration. These are found in your game directory:

  • Window & Sound: [DF Folder]\data\init\init.txt
  • Game Logic & FPS: [DF Folder]\data\init\d_init.txt

Technical Note: If you are using the Steam version but want the ASCII look, you don’t necessarily need to edit files—you can toggle “Classic” in the settings. However, the init.txt allows for deeper “Print Mode” overrides that the UI doesn’t always expose.

Optimized Init Configuration Block (init.txt)

This setup is optimized for Classic (ASCII) users who want maximum speed and Graphic users who want stable 60 FPS.

ParameterRecommended ValueTechnical Purpose
PRINT_MODE2D (Classic) / SHADER (Graphic)SHADER offloads tile rendering to the GPU; 2D is safest for ASCII.
FPS_CAP100Controls the “Speed” of the simulation. Higher = faster gameplay.
G_FPS_CAP60Limits how often the screen redraws. Prevents GPU waste.
TEXTURE_PARAMNEARESTKeeps ASCII and tiles sharp; LANCZOS makes them look “fuzzy.”
COMPRESSED_SAVESNOSpeeds up saving/loading times at the cost of disk space.
# Found in data/init/init.txt
[PRINT_MODE:SHADER]  <-- Change to 2D for Classic/Older hardware
[FPS_CAP:100]        <-- Default simulation speed
[G_FPS_CAP:60]       <-- Graphical refresh rate (saves power)
[TEXTURE_PARAM:NEAREST]
[COMPRESSED_SAVES:NO]

Performance Logic & Simulation (d_init.txt)

To keep your fortress alive past 200 dwarves on GameEngineer.net, you must address the simulation overhead in d_init.txt:

  1. Temperature Calculations: [TEMPERATURE:NO]. This is the single biggest “FPS Fix.” Calculating the heat transfer of every sock and rock is taxing. Note: This will stop ice from melting and obsidian from cooling.
  2. Weather: [WEATHER:NO]. Rain creates “contaminants” (mud/puddles) that the game has to track. Disabling it saves significant CPU cycles.
  3. Contaminant Spreading: [WALKING_SPREADS_SPATTER_DWF:NO]. Prevents blood and filth from being tracked across the fort. In a 2026 mega-fortress, blood-tracking is a leading cause of late-game death by lag.
  4. Population Cap: [POPULATION_CAP:120]. 200 dwarves is the default, but 120 is the “Golden Ratio” for a high-traffic, high-TPS (Ticks Per Second) fortress.
  5. Cavern Tracking: If you have multiple cavern layers open, the game is pathfinding for every “Forgotten Beast” and “Troglodyte.” Seal off unused caverns with walls to remove them from the pathfinding mesh.

Technical Explanation: G_FPS vs. Simulation FPS

Dwarf Fortress runs on two separate clocks. The FPS (Simulation) is how fast the world moves. The G_FPS (Graphical) is how fast your screen updates.

Setting [G_FPS:20] while keeping [FPS:100] will make the game look “choppy” like an old movie, but it allows the CPU to spend nearly all its time on pathfinding and logic instead of updating the display. For GameEngineer.net users on laptops or older hardware, this “Asynchronous” approach is the only way to reach the 20-year fortress milestone without the simulation slowing down to a crawl.

Leave a Comment