Dwarf Fortress – How to Increase FPS

Fix for FPS Death

Most if not all the framerate improvement suggestions can be developed for better player enjoyment without multithreading. There is just a huge to-do list going already, so FPS improvements don’t always make it.

For Example:

Pathfinding: If the game realizes that certain paths are used often, starts incorporating them into the pathfinding so pathfinding doesn’t have to cover the entire map, essentially for most long range pathing calculations the unit would just walk to the nearest entry point for a known route, and then look for the much shorter path once they get to the end of the route. Only in new areas before the pathing memory sets in would be high cycle calculations

Caverns: Turn off essentially all pathfinding through them unless a job is sending the dwarf there.

Animals: Change the pathfinding behavior to be much much simplier (since animal minds are simplier). When you do an animal pathfinding calculation, have it determine the next X decisions rather than just the next 1 decision, but have exceptions that would trigger an early rethink. This would mean most animals would reduce cycle time by ~(X-1)/X %.

Items: Get more generic with most items. I know that DF loves it’s detail, but I’m sure 99.999% of players would be willing to sacrifice detail on mundane uninteresting items if it gives us back FPS

Temperature Calculation: Again, we don’t want to turn them off completely because it affects freezing/fire, but it can be coded that temperature calculations are ignored most of the time unless certain temperatures are hit. In other words, keep track of just overall generic zone temperatures only, and then check for things like magma being out of place, or dwarves being out of place with respect to magma, then only run temperature calculations when anomalies occur rather than always. If it is 30 degrees C outside and nothing is in the magma sea or currently on fire for example, just skip the temperature calculations.

You May Also Like


Be the first to comment

Leave a Reply

Your email address will not be published.


*