4 ms·
Current hypothesis on the forums is that he uses some simplistic variant of A*; in extreme situations everything pathfinds to everything else once a tick in a t
by gchpaco 14y ago
Current hypothesis on the forums is that he uses some simplistic variant of A*; in extreme situations everything pathfinds to everything else once a tick in a totally serial program. The player base sometimes resorts to weird hacks and layouts to reduce the branching complexity of the path finding, but ultimately the more loose stone and objects you have to pathfind off and the more things you have pathfinding the worse everything gets. You don't even have to have a large number of dwarves for it to crop up; sheep are capable of bringing your machine to its knees if you don't ruthlessly cull them, or notoriously the catsplosion problem.
- kunil 14y agoLast time I played it, it wasn't that bad. It was like a year ago, before that minecart updates. People are exaggerating a bit or performance went worse?
- intended 14y agoNope, it's about the same, if anything I believe there are some improvements...which just mean your system gets pushed to its knees doing something even more crazy.
- gnarbarian 14y agoI would love to see a bunch of hard hitting engineers focus on optimizing DF with multithreading and GPGPU stuff. It would probably require a full rewrite. Having some experience with AI and pyopencl physics simulations I have no doubt that DF could be many orders of magnitude faster and capable of sooooo much more. That's really where my angst stems from.
- eru 14y ago> [...] focus on optimizing DF with multithreading and GPGPU stuff. You should probably start with algorithmic improvements.
- gnarbarian 14y agoIt could go either way IMO, GPGPUs are super great for naively simulating a bunch of different blocks in parallel.