- v50 information can now be added to pages in the main namespace. v0.47 information can still be found in the DF2014 namespace. See here for more details on the new versioning policy.
- Use this page to report any issues related to the migration.
40d:Maximizing framerate
Dwarf Fortress is an extremely CPU-intensive application that currently requires a fast, modern machine. The objective of this page is to help you reduce game lag, a crippling problem for many players.
Please mark all advice with the most recent game version it is known to work for. This game is under rapid development, ToadyOne clearly intends to reduce lag where possible, and so methods that worked in, say, v0.27.169.33c may not a few months later.
Advice for v0.27.169.33b, c, and d
OpenGL
- If framerate is extremely slow at startup, your graphic card's interaction with the OpenGL code used by the game may be at fault. Updating your drivers usually works; you may also have to adjust some settings in your graphic card's control software.
Game options
In the folder "\data\init" is a file named "init.txt". Edits to this file can greatly increase game speed. Keep backups for safety and to save yourself having to re-enter values every time you upgrade.
- [SOUND:OFF]: Slightly increases speed. Cost is lack of sounds.
- [FPS:YES], [FPS_CAP:100]: Handy indicator of how fast your game is running.
- [G_FPS_CAP:15]: Controls refresh rate. Lower values often boost speed dramatically ... at the cost of less frequent visual updates, which can pose a problem during battles.
- [VSYNC:OFF]: Attempting to synchronize refreshes can kill game speed for some players (depending on your OS, graphics card, and OpenGL settings).
- [PRIORITY:HIGH]: This option automatically makes the game run in high priority. This will probably prevent your computer from effectively running anything at the same time as the game. [PRIORITY:REALTIME] devotes even more resources to Dwarf Fortress, but has been known to cause stuttering gameplay. Increasing priority will make the game difficult to kill using task manager if it locks up.
- [TEMPERATURE:NO]: Turning off temperature greatly increases speed. It also kills off some rather nice lava warming effects, stops rivers from freezing and (importantly!) thawing, makes glacial maps less interesting, and prevents sudden deaths from exposure. You're well-advised to stick with "warm" or "hot" fortress sites if you turn temperature off and your source of water is a stream.
- [WEATHER:NO]: Turning off weather slightly increases speed. No obvious disadvantages are known.
- [CAVEINS:NO]: Turning off cave-ins increases speed only fractionally.
- [POPULATION_CAP:40]: Keep your population under control to prevent the game bogging down. Pathfinding for numerous dwarves can bring even a fast machine to its knees.
Fortress position
- Fluids are the major source of lag in most maps at game start. Magma and (to a lesser extent) running water are CPU hogs in the current version. If you haven't got the hardware to run DF with a magma site, suck it up and go without. Aquifers (until tapped) seem not to cause major speed issues.
- Avoid elevation extremes. The fewer the z-levels, the faster the game runs.
- Minimize map size. Smaller maps get you substantially more speed.
- Avoid caves, towns, ruins, or anything populated. Everything in them invokes the pathfinding code frequently.
Laptop computers
- Frame rate is higher when running off mains power. This is because laptops reduce CPU performance to extend the battery life.
- You can disable that feature in windows, at the expense of the battery running out much more quickly.
Cheating
- Fully revealed areas are faster than hidden ones. Running reveal.exe will make the game faster.
Non-factors
The following things don't have a significant effect on game speed, at least as tested.
- Fullscreen or windowed (if OpenGL settings are compatible with the game - if they aren't, this can be important)
- use of graphics, choice of graphics tileset
- size of tiles
Advice for v0.27.169.33a
- Upgrade.
Advice for earlier versions
- If framerate is always slow at startup, your graphic card's interaction with the OpenGL code used by the game is likely to be at fault. Turning off vertical synchronization and updating your drivers usually works.
- Put animals in cages. Never keep them behind locked doors and reduce wandering pets to a reasonable number.
- Do not specify huge areas for mining or (especially) detailing.
- Open up \data\init\init.txt. Turn off TEMPERATURE and WEATHER and reduce POPULATION_CAP.