• Breaking News

    Tuesday, June 30, 2020

    Dwarf Fortress This battle started in the morning and went on until dark

    Dwarf Fortress This battle started in the morning and went on until dark


    This battle started in the morning and went on until dark

    Posted: 30 Jun 2020 01:43 AM PDT

    The eternal dwarf fortress computer thread

    Posted: 30 Jun 2020 08:00 AM PDT

    This is a recurring topic. I see it every time once in a while, with more or less thought put in the subject. Due to the nature of the subject, I expect it to keep popping up again now and then, since both hardware and Dwarf Fortress are evoluting.

    I'm a software engineer working on (more or less) embedded devices, doing low level stuff in C. I'm not stating this as an argument of authority but rather as an invitation to go deep so that performances may be discussed at the lowest possible level - !SCIENCE! is important here.

    I'd like to start with a few observations on dwarf fortress' usage of hardware.

    - DF is rarely running on different threads. This isn't criticism - multi threading isn't a magical option. Not everything can be multi threaded, as threads have an access to the same memory - as a result, there has to be locks, mutexes, and suchlike, but in dwarf fortress.... Everything is essentially... reliant on ... well, everything else, making it nearly impossible to define asynchronous tasks.
    I've seen forum posts discussing that, in the case of dwarf fortress, it would actually make things worse because of the bottleneck being the memory bus (?)

    http://www.bay12forums.com/smf/index.php?topic=138921.0

    - Dwarf fortress suffers from cache misses.

    http://www.bay12forums.com/smf/index.php?topic=151121.msg6270374#msg6270374

    We're mostly talking L3/L4 cache apparently. When a CPU tries to read or write data it will check the cache first - if what it seeks is present in cache, it will be SIGNIFICANTLY faster than acessing RAM (10 to 100 times typically). A cache miss is the failure to use cache, leading to the CPU having to read/write in the RAM which is slower, and a reason for framerate drop.

    - Dwarf fortress does not store much, but uses what it stores all the time - dwarf fortress actions are reliant on basically everything else! So much in fact that I expect the current game memory to be practically entirely used all the time by virtually any action. So while the size of that data isn't massive, it's in constant use for both reading and writing.

    - GPU is irrelevant. The nature of dwarf fortress includes the use of many tools, though, some of which include visual tools and renderers. Also, I don't think it's very controversial to say that many people find the game unplayable without an array of tools - at the very least Dwarf Therapist. Personally I tend to add external info windows to this, along with the use of a browser for the wiki, a legends browser for the history of my world, etc. I therefore would say you'd rather have multiple screens to play on.

    - Dwarf fortress does not seem to interact with the disk often. When it does, however it can take quite a while (loading a save and saving a game - read and write, respectively) . I had a world that would take 10 minutes to load.
    https://www.reddit.com/r/dwarffortress/comments/cjnhec/dwarf_fortress_does_hard_disk_speed_matter_test/

    Deductions on DF's requirements - what it needs, what it doesn't need

    CPU:
    Dwarf fortress does not require excellent multi threading capacities. In this day and age however you are not very likely to find single cores, and besides, it stills benefits your OS and whatever other tasks you're running.
    You probably do need, however, good single core performances. Most importantly, you will need cache, the more the better - think of it this way, the more cache you have, the less often DF will need to access memory. And since it tries to grab little bits of data at a very fast rate, I expect this to raise your framerate up quite a bit.
    Now, if you want a cheap secondhand CPU with a lot of cache, everything seems to point towards older Xeons and suchlike. Server hardware is probably good for dwarf fortress, but beware the very, very high prices of motherboards associated with them. Otherwise think about cache whenever you build your next gaming PC.
    Hyperthreading and suchlike will likely be used. If you make a PC for dwarf fortress, you may not really need an i7 - though, again, if it has more cache than your other choices, and good single core performances, it's still a safe bet.

    RAM:
    You don't need a lot of RAM, but you need fast RAM - possibly, very fast RAM.
    This other thread seems to point out fairly accurately that faster RAM may make the same save twice as fast - THOUGH a lot of data is missing (What other hardware is in use, etc)
    https://www.reddit.com/r/dwarffortress/comments/5kyyb5/faster_ram_gave_me_a_nice_fps_boost/

    This is because, like I said, DF accesses little bits of memory all the time but as all actions are reliant on almost all of the available data, every nano second spent reading and writing on memory is keeping the game on hold. Reduce this latency and the framerate will be boosted massively.

    Now as I am writing this, I am keeping an eye on the upcoming DDR5 - with RAM going up to 6400MT/s compared to 3200MT/s for fast DDR4. From the look of it, DDR5 would help greatly on this regard.
    Typically we'd be looking into fast, small ram, possibly in dual channel (2 x 4GB would be more than sufficient - I dare you to find smaller anyway...)

    GPU:
    Honestly just pay attention to the number of ports so that you can slap multiple screens on that bish lol - probably something low end so you can run renderers and have a bunch of windows open. IDK.
    Maybe pay attention to drivers if we plan on going for a solely DF based computers, in which case we may turn to a linux distro? More on this later.

    Storage:
    SSDs now cost nothing and are pretty reliable. I would personally say that putting DF on a small SSD (say 20GB) would be absolutely more than enough.
    YOU WILL NOT gain framerate with a faster disk in dwarf fortress! We are solely talking loading and saving times, here. SSDs do not magically enhance framerate like a lot of people seem to pretend - this will only happen in games that rely on heavy disk usage (IE, Arma 3 that requires to load big uncompressed files into memory during play, because there's no way it could put everything in memory to start with)
    Now the OS question is relevant again. Maybe, for a DF only machine, you would like to go for a linux distro. In this case, the entire computer wouldn't need much more than only this small SSD - I have rarely seen a Linux system taking more than 1GB (With this said I normally use GUI less debians.)
    For a windows computer you will need more than that, honestly I'd go over 120GB to be safe.

    Operating system:
    Although I use various linux distros every day, I have to say I have never even considered trying Dwarf Fortress on Linux. I have no idea if there are any benchmarks available as far as performances go, on Linux and Windows. What I do recall however is that one of my friends did it and got frustrated at multiple tools being unusable, and having to use Wine for some of them, even one that is in Java (Supposedly multi platform lol, Java truly is the language of Satan)

    In the absence of data I consider that I have no valuable opinion on this matter. I'd probably go for windows because I already know how to make myself comfortable with DF on windows.

    Motherboard:
    Must support your hardware and that's it.
    Don't go fancy I guess. Unless you're using server hardware.

    Now from all that... I've kind of explored the topic a bit, and I see a few options for a computer built with dwarf fortress in mind:

    - Option 1 would be to build your gaming rig with dwarf fortress in mind. This would mean that ontop of whatever budget and goals you have, you would have to be mindful on specificities regarding the CPU and RAM, mostly: IE, paying specific attention to cache and getting a CPU that is a bit more expensive, for more cache, or paying more attention to RAM speed and getting faster RAM than you initially went for
    - Option 2 would be to build a computer made out of second hand server hardware. I've looked into it and have found very high frequency, old xeons with a LOT of cache, that don't have too many cores and are regarded as obsoletes because, being old, they are lacking in cores and suchlike. Here I have encountered one problem: it seems hard or very expensive to get motherboards and other parts that go with such CPUs. But I haven't checked in a while. This could be a very good option in the case you work in IT and you know companies that get rid of their old server hardware - I've had this happen multiple times, with the company essentially giving away entire racks that it doesn't have the time to sell.
    - Option 4 would be just building a regular computer with DF's specificities in mind. I came up with a computer around 600€ that looks the part, with a Ryzen 2700x, 16GB of very fast DDR4, and the rest being pretty basic. I haven't developped it a whole lot, though, it was a quick research thing.

    I'd honestly like seeing a lot more builds that would theorically work, from all types of options, and for all budgets.
    I'm talking budget DF computer that just runs that, to gaming rigs optimized with DF in mind, and why not absolute dream machines for the eventual DF playing millionaires out there who would like to make a dedicated machine for DF worth 10K+, lol.

    Additional important links on optimization and hardware usage:
    https://dwarffortresswiki.org/index.php/DF2014:System_requirements
    https://en.wikipedia.org/wiki/CAS_latency
    https://en.wikipedia.org/wiki/Cache_(computing)#CACHE-MISS#CACHE-MISS)
    https://dwarffortresswiki.org/index.php/DF2014:Technical_tricks
    http://dwarffortresswiki.org/index.php/DF2014:Maximizing_framerate
    https://www.reddit.com/r/dwarffortress/comments/7y1j0w/what_would_be_the_ideal_cpu_for_df/
    http://www.bay12forums.com/smf/index.php?topic=105554.15

    submitted by /u/tohkai
    [link] [comments]

    Stonesense crashing on launch

    Posted: 30 Jun 2020 11:39 AM PDT

    So i'm really new to dwarf fortress. I wanna get stonesene enabled to help view things. Problem is whenever I try to actually enter my world, the game crashes along with the application. I haven't found any guides that helped. How can I fix this?

    submitted by /u/DapperDoggo
    [link] [comments]

    New to Kruggsmash

    Posted: 29 Jun 2020 03:58 PM PDT

    I am new to enjoying Kruggsmash on youtube. It is crazy good content.

    I have watched Honey Stoker and I am up to date on Scorchfountain.

    Looking for recommendations on what to watch next and why. I can't tell if there are other longformat story videos and I am not sure what the other series are about.

    Thanks!

    submitted by /u/PlaidChester
    [link] [comments]

    Urist shows his positivity... or insanity?

    Posted: 29 Jun 2020 05:30 PM PDT

    The !SCIENCE! of fortifications

    Posted: 29 Jun 2020 03:32 PM PDT

    Sadly I cannot post in game pictures because I accidentally corrupted the save file in question, but in my most recent fortress I made fairly interesting discoveries about fortifications.

    In short, medium and even large creatures can, under pressure, be forced, alive, through a fortification, along with all their equipment.

    I discovered this because I created a large trap which included a labyrinth which had "walls" which were, in fact, draw bridges which could be lowered allowing tones of water from the lake above to flood the labyrinth flushing all those standing in it ten stories below to a chamber with an atom-smasher bridge covering it. Thus the invaders could be flushed into this little chamber and would either be drowned (if possible), allowing the harvest of their goblinite, or atom-smashed if they could not be drowned. The chamber could be drained through the opening of a further drawbridge. I built fortifications to catch the bodies and equipment for harvesting while the water would drain off into the caverns.

    In the most recent siege I forgot to close the drainage draw-bridge and so the water simply washed all the goblins and trolls down onto the fortifications. Most remained on the right side of them but, I discovered, not all. A large number, included a good number of trolls, were actually pushed by the force of the water through the fortifications, still alive, into the space beyond. They landed in the cavern lake, swam to shore and then proceeded to attack my fortress!

    I have built this trap before, on a smaller scale, using grates rather than fortifications, and this was not a problem.

    Further research is needed.

    TL;DR: Medium and even large creatures can, under water pressure, be forced, alive, through a fortification, along with all their equipment. I did not find this problem with grates.

    submitted by /u/Felix_Dorf
    [link] [comments]

    Awwwwww so cute!

    Posted: 29 Jun 2020 05:52 PM PDT

    Horse induced ptsd and my first raid ever in df.

    Posted: 29 Jun 2020 03:28 PM PDT

    So it all started whit horses going trough my fortress,i tought it was neat so i went and set some traps to maybe catch them for breeding! normal enough right,as soon as the trapper dwarf goes near the horses KABOOM! ELVES EVERYWERE,moldath you were a good dwarf...anyways after that i sent all my hammer dwarf squads and whit some "very fun" hammer strikes the elves went down and every hammerdwarf became legendary hammerlords!,after this i now have to check every horse that comes around the fortress,these tree huggers really can scare!

    submitted by /u/Gwakkerboybaggot
    [link] [comments]

    What do you think of the dwarf fortress steam graphics?

    Posted: 29 Jun 2020 08:05 PM PDT

    No comments:

    Post a Comment