# Dwarf Fortress

Dwarf Fortress is a single-player fantasy game. You can control a dwarven outpost or an adventurer in a randomly generated, persistent world. It is renowned for its highly customizable, complex indepth gameplay.

The game is played with keyboard only, though there exist mods which enable mouse support via plugins. Without any graphic mods ([1]) the game is displayed in a terminal-like window with ASCII characters (screenshots).

## Installation

Install package dwarffortress from the official repositories.

Alternatively there are some AUR packages coming with bitmap tilesets:

- dwarffortress-ironhandAUR
- dwarffortress-maydayAUR[broken link: archived in aur-mirror]
- dwarffortress-myneAUR[broken link: archived in aur-mirror]
- dwarffortress-obsidianAUR
- dwarffortress-phoebusAUR[broken link: archived in aur-mirror]
- dwarffortress-spacefoxAUR

Note: Enabling multilib repositories on x86_64 systems is required due to 32bit dependencies.

You will need to be in the games group to run Dwarf Fortress. If you are not in the games group, add yourself, then log out and back in again:

    # gpasswd -a USERNAME games

## Troubleshooting

If you get an error stating 'The file "index" must be in the "data" folder' then you may find a solution here.

## Tools

### Dwarf Therapist

Dwarf Therapist (dwarftherapist-gitAUR in AUR) is an almost essential mod to tune dwarvish behaviour (makes life a lot easier). For it to work on current kernels you will need to disable a kernel security feature, since dwarf therapist directly accesses and modifies the memory of a running dwarf fortress instance. This setting is called `kernel.yama.ptrace_scope` and defaults to `1`. You need to set it to `0` for dwarf therapist to work:

    # sysctl -w kernel.yama.ptrace_scope=0

and then

    # sysctl -w kernel.yama.ptrace_scope=1

when you're done playing and have closed dwarf fortress and dwarf therapist.

For more information see sysctl.

Warning: You should not set this to `0` in `/etc/sysctl.d/` by default since it is an important security feature in the kernel! It is best to set it manually whenever you play dwarf fortress and reset it back to `1` when you are done playing.

Alternatively, you can just give that permission to dwarftherapist:

    # setcap cap_sys_ptrace=eip /usr/bin/dwarftherapist

### SoundSense

SoundSense (soundsenseAUR in AUR) adds various sound effects and music via analysing the gamelog.txt.

### quickfort

Quickfort is a utility for Dwarf Fortress that helps you build fortresses from "blueprint" .CSV, .XLS, and .XLSX files.

- quickfortAUR[broken link: archived in aur-mirror]
- quickfort-gitAUR

### StoneSense

StoneSense is an isometric world visualizer for Dwarf Fortress, and can be installed with the dfhackAUR AUR package.

If you choose to install StoneSense manually instead of using the AUR package, you'll need the following dependencies:

- lib32-libjpeg6-turbo
- lib32-libpng12
- lib32-allegroAUR

Category:

- Gaming

Hidden category:

- Pages with broken package links