v50 Steam/Premium information for editors
  • 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.
This notice may be cached—the current version can be found here.

Difference between revisions of "Utilities"

From Dwarf Fortress Wiki
Jump to navigation Jump to search
(→‎LegendsViewer-Next: fix external links - no pipe)
 
(40 intermediate revisions by 13 users not shown)
Line 1: Line 1:
{{Quality|Masterwork|13:28, 28 September 2013 (UTC)}}
+
{{Quality|Unrated}}
 
{{av}}
 
{{av}}
 
+
[[File:utilities_icon.png|120px|right]]A collection of third-party '''Utilities''' that are useful for ''[[Dwarf Fortress]]'' players and [[modding|modders]] alike, of which this page serves as a list. ''Dwarf Fortress'' is a difficult game to play, and any help that can be had in the task is welcome help.  
A collection of third-party '''Utilities''' that are useful for ''[[Dwarf Fortress]]'' players and [[modding|modders]] alike, of which this page serves as a list of. ''Dwarf Fortress'' is a difficult game to play, and any help that can be had in the task is welcome help.  
 
  
 
If you would like to add an article on a ''specific'' game utility to the wiki, please do so under the <span class="plainlinks">[http://dwarffortresswiki.org/index.php?title=Special%3AAllPages&from=&to=&namespace=102 Utility]</span> namespace.  
 
If you would like to add an article on a ''specific'' game utility to the wiki, please do so under the <span class="plainlinks">[http://dwarffortresswiki.org/index.php?title=Special%3AAllPages&from=&to=&namespace=102 Utility]</span> namespace.  
 
Not included on this page: [[Main:Tileset repository|tileset repositories]] and [[Main:Graphics set repository|graphics set repositories]], due to having been given their own, separate pages. [[Modding|Mods]] have also been listed under their own <span class="plainlinks">[http://dwarffortresswiki.org/index.php?title=Special%3AAllPages&from=&to=&namespace=104 Modification] namespace.  
 
Not included on this page: [[Main:Tileset repository|tileset repositories]] and [[Main:Graphics set repository|graphics set repositories]], due to having been given their own, separate pages. [[Modding|Mods]] have also been listed under their own <span class="plainlinks">[http://dwarffortresswiki.org/index.php?title=Special%3AAllPages&from=&to=&namespace=104 Modification] namespace.  
  
To avoid namespace clutter, websites ''are'' considered utilities, though they really aren't, and have been included.
+
To avoid namespace clutter, websites ''are'' considered utilities and have been included.
  
 
A [http://www.bay12forums.com/smf/index.php?board=29.0 subsection of the Bay12 forums] is devoted to such third-party programs, and contains development threads for most of them.
 
A [http://www.bay12forums.com/smf/index.php?board=29.0 subsection of the Bay12 forums] is devoted to such third-party programs, and contains development threads for most of them.
 
The [[Utilities#Lazy Newb Pack|Lazy Newb Pack]] is an effort to make ''Dwarf Fortress'' more accessible for new players or returning veterans by bundling and configuring utilities, graphics and tilesets, and extras such as reference material or more intuitive controls.
 
 
==Launchers==
 
 
=== [[Utility:Lazy_Newb_Pack|Lazy Newb Pack]] ===
 
[[File:Lnp-gui1.png|thumb|100x170px|The original LNP launcher]]
 
The Lazy Newb Pack starter pack is a superb all-in-one compilation of tools, [[Graphics set repository|tilesets]], with a nice launcher and the game itself. It allows you to start playing DF really quickly on a new machine - no need to download all the latest stuff, check dependencies, and integrate - or even know what you need to get.  The newer packs also include many third-party fixes for common bugs, which work automatically, and a large number of significant user interface improvements.  The launcher makes changing settings or graphics options much easier (press button, instead of editing files) and can even remember to launch selected utilities whenever you open a game of ''Dwarf Fortress''.  See the [[Utility:Lazy Newb Pack|Lazy Newb Pack]] page for more information, or the forum thread for your platform:
 
 
*[http://www.bay12forums.com/smf/index.php?topic=126076 PeridexisErrant's Starter Pack] (Windows)
 
*[http://www.bay12forums.com/smf/index.php?topic=128960 MacNewbie Pack] (OS X)
 
*[http://www.bay12forums.com/smf/index.php?topic=156011 Unofficial Linux LNP] (Linux)
 
 
===[http://www.bay12forums.com/smf/index.php?topic=140808 PyLNP] ===
 
A cross-platform LNP port, written in Python.  The launcher and configuration interface for all of the Lazy Newb Packs.  PyLNP is under active development for bugfixes, addition of features pioneered by other launchers, and creation of entirely new features - such as rebuilding the raws of modded saves to change graphics packs.
 
 
===[http://www.bay12forums.com/smf/index.php?topic=102316 Manila Launcher] ===
 
A Java interface that allows easy option toggling, update and devlog checking, and tileset, mod and color scheme switching.  Designed for players who prefer vanilla DF to a bundle like the above.
 
  
 
== 3D Visualizers ==
 
== 3D Visualizers ==
=== [[Utility:Stonesense|Stonesense]] ===
+
=== Stonesense ===
 
[[File:stonesense_prev.jpg|left|frameless|200px|none]]
 
[[File:stonesense_prev.jpg|left|frameless|200px|none]]
 
Stonesense is a third party visualizer, implemented as a [[Utility:DFHack|DFHack]] plugin, that lets you view your fortress in a classic isometric perspective. It runs alongside ''Dwarf Fortress'', and can follow the main game's view, updating in real-time. It is included in DFHack, and can be opened by typing <code>stonesense</code> or <code>ssense</code> into the console window.
 
Stonesense is a third party visualizer, implemented as a [[Utility:DFHack|DFHack]] plugin, that lets you view your fortress in a classic isometric perspective. It runs alongside ''Dwarf Fortress'', and can follow the main game's view, updating in real-time. It is included in DFHack, and can be opened by typing <code>stonesense</code> or <code>ssense</code> into the console window.
Line 36: Line 17:
 
* Links: [[Utility:Stonesense]]
 
* Links: [[Utility:Stonesense]]
 
{{Clear}}
 
{{Clear}}
 +
 +
=== Vox Uristi ===
 +
[[File:Df-vox-uristi-gate.jpg|left|frameless|200px|none]]
 +
A tool that exports fortresses to a 3D voxel format (.vox). Once exported, rendering software such as [https://ephtracy.github.io/index.html?page=mv_main MagicaVoxel (for Windows and Mac)] or alternatively [https://goxel.xyz/ Goxel (for Linux)] can make detailed 3D renders  of it. It requires DFHack, and is mostly tested with the Steam version, though previous versions should work too.
 +
 +
* Links: [https://plule.github.io/vox-uristi Website], {{F|181728|Bay12 Forum Thread}}
 +
{{Clear}}
 +
 +
{{migrated section}}
  
 
=== Armok Vision ===
 
=== Armok Vision ===
 
[[File:armok_vision.png|left|frameless|200px|none]]
 
[[File:armok_vision.png|left|frameless|200px|none]]
Armok Vision is a 3D real-time visualizer using Unity for version 0.40.24. It works as a separate program communicating with the game through fast network interfaces.
+
Armok Vision is a 3D real-time visualizer using Unity. It works as a separate program communicating with the game through fast network interfaces provided by DFHack.
  
* Links: [http://www.bay12forums.com/smf/index.php?topic=146473.0 Bay12forums Thread]
+
* Links: {{F|146473|Bay12 Forum Thread}}, [https://github.com/RosaryMala/armok-vision GitHub Repository], [https://discord.gg/rMpYGHy Discord], [https://www.patreon.com/japamala Patreon]
 
{{Clear}}
 
{{Clear}}
  
Line 48: Line 38:
 
Isoworld is an isometric world map viewer, which can display each of the detailed maps exported from [[Legends mode]]. It also has a pictographic view which makes finding waterfalls easy.   
 
Isoworld is an isometric world map viewer, which can display each of the detailed maps exported from [[Legends mode]]. It also has a pictographic view which makes finding waterfalls easy.   
  
Isoworld can link with [[Utility:DFHack|DFHack]] to display a game view at full spatial resolution in wider context, including tracking the player's view.  This is particularly useful for adventure mode.
+
Isoworld can link with [[Utility:DFHack|DFHack]] to display a game view at full spatial resolution in wider context, including tracking the player's view.  This is particularly useful for adventure mode. The isoworldremote plugin required for this is included with DFHack.
  
* Links: [http://www.bay12forums.com/smf/index.php?topic=70700.0 Bay12forums Thread]
+
* Links: {{F|70700|Bay12 Forum Thread}}, [https://github.com/RosaryMala/isoworld GitHub Repository]  
 
{{Clear}}
 
{{Clear}}
  
 
===  Voxel Fortress ===
 
===  Voxel Fortress ===
 
[[File:voxel_prev.png|left|frameless|200px|none]]
 
[[File:voxel_prev.png|left|frameless|200px|none]]
Voxel Fortress is a converter from DF worlds to a voxel format. It takes an export of one of the two elevation maps (for the voxels coordinates), and any other one (for the colors).
+
Voxel Fortress converts DF worlds to a voxel format. It takes an export of one of the two elevation maps (for the voxels coordinates), and any other one (for the colors).
 +
 
 
The map is saved in .xraw format. An additional utility (e.g. [https://ephtracy.github.io/index.html?page=mv_renderer MagicaVoxel Viewer]) is required to see the voxel representation of the map.
 
The map is saved in .xraw format. An additional utility (e.g. [https://ephtracy.github.io/index.html?page=mv_renderer MagicaVoxel Viewer]) is required to see the voxel representation of the map.
  
* Link: [http://www.bay12forums.com/smf/index.php?topic=159578.0 Bay12forums Thread]
+
* Links: {{F|159578|Bay12 Forum Thread}}, [https://github.com/RosaryMala/VoxelFortress/releases/tag/v1.0.0 GitHub Repository] (includes some instructions)
 
{{Clear}}
 
{{Clear}}
  
 
== Music and Sounds ==
 
== Music and Sounds ==
=== [[Utility:SoundSense|SoundSense]] ===
+
 
 +
{{ambox|type=warn|text=Note that these tools all rely on [[gamelog.txt]], which is no longer populated by vanilla DF as of 50.07. This functionality can be restored with [[Utility:DFHack|DFHack]].}}
 +
 
 +
=== SoundSense ===
 +
{{main|Utility:SoundSense}}
 
[[File:soundsense_prev.png|left|frameless|100px]]
 
[[File:soundsense_prev.png|left|frameless|100px]]
SoundSense is a sound engine that parses game logs and reacts to game events with sound effects, incidental music and dwarfy comments.  You can look it up on the [http://www.bay12forums.com/smf/index.php?topic=60287 forum thread], or directly download it at [http://df.zweistein.cz/soundsense/ the SoundSense homepage]. Due to it being written in Java, Soundsense is portable to all platforms.
+
SoundSense parses game logs and plays reacts to game events with sound effects, incidental music and dwarfy comments. Due to it being written in Java, Soundsense is portable to all platforms.
  
Due to development having slowed down, a [https://github.com/calmhorizons/soundsense fork] was released that most notably disables the broken auto-updater and adds the option to minimize Soundsense to the system tray.
+
Note that older Soundsense users may have different default seasonal soundtracks, which were removed and replaced in early 2011. These are available [http://www.krauselabs.net/dump/music.zip here].
  
Note that older Soundsense users may have different default seasonal soundtracks, which were removed and replaced in early 2011. These are available [http://www.krauselabs.net/dump/music.zip here].
+
* Links: [http://df.zweistein.cz/soundsense/ Website], {{F|60287|Bay12 Forum Thread}}, [https://code.google.com/archive/p/df-soundsense/ Google Code Repository]
 
{{Clear}}
 
{{Clear}}
  
Line 75: Line 70:
 
A C# port of SoundSense, it uses the existing sound pack files and XMLs present in SoundSense, but with some added enhancements. More information regarding what specific type of enhancements and how to install SoundCenSe can be gathered at the [http://www.bay12forums.com/smf/index.php?topic=159567.0 official forum thread]. If problems emerge while trying to get SoundSense to work with the latest versions of Java, this port may prove to be a useful alternative.
 
A C# port of SoundSense, it uses the existing sound pack files and XMLs present in SoundSense, but with some added enhancements. More information regarding what specific type of enhancements and how to install SoundCenSe can be gathered at the [http://www.bay12forums.com/smf/index.php?topic=159567.0 official forum thread]. If problems emerge while trying to get SoundSense to work with the latest versions of Java, this port may prove to be a useful alternative.
  
* Links: [http://www.bay12forums.com/smf/index.php?topic=159567.0 Bay12forums thread]. Downloads for the Windows and Linux binaries are available [https://github.com/Algorithman/SoundCenSe/releases here], while code releases can be obtained from the [https://github.com/Algorithman/SoundCenSe GitHub site].
+
* Links: {{F|159567|Bay12 Forum Thread}}, [https://github.com/Algorithman/SoundCenSe/releases Releases], [https://github.com/Algorithman/SoundCenSe GitHub Repository]
 
{{Clear}}
 
{{Clear}}
 +
 +
=== SoundSense-RS ===
 +
[[File:SoundSense-RS_prev.png|left|frameless|100px|]]
 +
A SoundSense alternative in Rust with a minimalistic GUI. Sound volumes can be adjusted realtime, based on channel. Events can be ignored with a custom list based on log patterns.
 +
 +
* Links: {{F|174585|Bay12 Forum Thread}}, [https://github.com/prixt/soundsense-rs/releases Releases], [https://github.com/prixt/soundsense-rs GitHub Repository]
 +
{{clear}}
  
 
== Game manipulation tools ==
 
== Game manipulation tools ==
===[[Utility:DFHack|DFHack]]===
+
=== DFHack ===
[[File:dfhack_cmd.png|thumb|right|250px|DFHack's console.]]  
+
{{main|Utility:DFHack}}
DFHack is an advanced ''Dwarf Fortress'' memory access library and a set of tools and scripts using this library, providing direct object-oriented access to Dwarf Fortress's internals as if it were compiled into the game itself. Runs on Windows, Linux, and OS X. The standard configuration enables a variety of included bugfixes and interface upgrades, and provides many useful tools such as "clean all". See [[Utility:DFHack]] for a summary of features and common use.
+
[[File:dfhack_cmd.png|left|frameless|200px|]]  
 +
DFHack is an advanced ''Dwarf Fortress'' memory access library and a set of tools and scripts using this library, providing direct object-oriented access to Dwarf Fortress's internals as if it were compiled into the game itself. Runs on Windows, macOS, and Linux (natively if supported by DF, or through [https://www.winehq.org/ Wine]). The standard configuration enables a variety of included bugfixes and interface upgrades, and provides many useful tools such as "clean all". See [[Utility:DFHack|main page]] for a summary of features, common use, and more.
 +
* Links: {{F|164123|Bay12 Forum Thread}}, [https://docs.dfhack.org/en/stable/ Documentation], [https://github.com/DFHack/dfhack/releases Releases], [https://github.com/DFHack/dfhack GitHub Repository], [https://store.steampowered.com/app/2346660/DFHack Steam page]
 +
{{clear}}
  
* Links: [https://docs.dfhack.org/en/stable/# DFHack's Documentation] site offers all relevant information on how download, install, and use the utility. Including an up-to-date list of all available and optional Plugins. [http://www.bay12forums.com/smf/index.php?topic=164123 Official Bay12 forum thread].
+
=== Dwarf Therapist ===
 +
{{main|Utility:Dwarf therapist}}
 +
[[File:dwarf_therapist.png|left|frameless|200px|]]
 +
Dwarf Therapist gives you an advanced GUI to manage and check dwarf job allocations, military assignments, statistics (such as attributes, personality traits and happiness), sort dwarves by various criteria (e.g. profession, migration wave, happiness, number of assigned jobs etc.) and generally manage the Dwarven Resources of your fortress in a very convenient way. Available for Windows, Mac and GNU + Linux. 
 +
* Links: {{F|168411|Bay12 Forum Thread}}, [https://github.com/Dwarf-Therapist/Dwarf-Therapist/releases Releases], [https://github.com/Dwarf-Therapist/Dwarf-Therapist/ GitHub Repository], [https://github.com/Dwarf-Therapist/Manual/releases Manual] (outdated)
 +
{{clear}}
  
==== Feature plugins ====
+
== Modding tools ==
These plugins add features to the game.
 
* [http://www.bay12forums.com/smf/index.php?topic=128487 Rendermax], a plugin that implements a lighting system at the graphics level.
 
* [http://www.bay12forums.com/smf/index.php?topic=136155 Dwarven Emigration], a script that allows unhappy dwarves to emigrate with their families.
 
  
==== remotefortressreader ====
+
=== [https://gitlab.com/df-modding-tools/df-raw-language-server DF RAW Language server] ===
 +
Modding support for DF RAW files in IDE/Code/Text editors.
 +
Checks syntax of files, detects errors and syntax highlighting.
  
A critical internal DFHack plugin, [https://github.com/DFHack/dfhack/tree/develop/plugins/remotefortressreader developed within the same repository].  It provides a protobuf-based (currently v2.4.1) RPC connection to the game, enabling remote clients like Armok Vision.  The service listens on <code>127.0.0.1:5000</code> (configurable within <code>dfhack-config/remote-server.json</code>).
+
Current extensions:
 +
* [https://marketplace.visualstudio.com/items?itemName=df-modding-tools.dwarf-fortress-raw-vscode VS Code]
 +
* [https://gitlab.com/df-modding-tools/df-raw-language-server#supported-editors-and-ides (more are coming)]
  
Currently there are no change-based or change-driven notifications, so remote fortress clients must perform the expensive operation of polling the desired volume every frame (via e.g. <code>GetBlockList</code>).  Additionally, the sidebar menu state is shared with the native view, to avoid reimplementing construction material dependencies.
+
<gallery widths=200px>
 +
File:DF_RAW_Language_server_Logo.png|DF RAW Language server Logo
 +
File:DF_RAW_Language_server_VSCode_screenshot_1.png|DF RAW Language server in VSCode
 +
File:DF_RAW_Language_server_VSCode_screenshot_2.png|DF RAW Language server in VSCode
 +
</gallery>
  
===[[Utility:Dwarf therapist|Dwarf Therapist]]===
+
The [[wikipedia:Language_Server_Protocol|Language server]] is a shared component that can be used to easily add support for more IDE's.
[[File:dwarf_therapist.png|frameless|right|250px|]]
 
[[Utility:Dwarf therapist|Dwarf Therapist]] gives you an advanced GUI to manage and check dwarf job allocations, military assignments, statistics (such as attributes, personality traits and happiness), sort dwarves by various criteria (e.g. profession, migration wave, happiness, number of assigned jobs etc.) and generally manage the Dwarven Resources of your fortress in a very convenient way. This version contains the "labor optimizer" semi-automatic labor management system.
 
 
 
Splinterz' fork of Dwarf Therapist is the currently updated version, and available for Windows, Mac and GNU + Linux.
 
  
* Links: See the [http://www.bay12forums.com/smf/index.php?topic=168411.0 forum thread] for current downloads. Besides the Bay12 forum thread, there's more information on the [https://github.com/Dwarf-Therapist/Dwarf-Therapist GitHub project page].
+
=== Notepad++ Highlighting ===
{{clear}}
+
language highlighting modes for the text editor Notepad++  [https://dffd.bay12games.com/file.php?id=16251 link]
  
== Modding tools ==
+
== Modding tools pre v50==
 +
{{migrated section}}
 
===[http://www.bay12forums.com/smf/index.php?topic=140853.0 Rubble]===
 
===[http://www.bay12forums.com/smf/index.php?topic=140853.0 Rubble]===
  
Line 135: Line 147:
 
* DF Biomeviewer - shows what creature/plants can be found in which biomes.
 
* DF Biomeviewer - shows what creature/plants can be found in which biomes.
 
* DF Rawminer - extracts procedurally generated raws (of Forgotten Beasts etc.) from save files.
 
* DF Rawminer - extracts procedurally generated raws (of Forgotten Beasts etc.) from save files.
 
=== [https://gitlab.com/df-modding-tools/df-raw-language-server DF RAW Language server] ===
 
Modding support for DF RAW files in IDE/Code/Text editors.
 
Checks syntax of files, detects errors and syntax highlighting.
 
 
Current extensions:
 
* [https://marketplace.visualstudio.com/items?itemName=df-modding-tools.dwarf-fortress-raw-vscode VS Code]
 
* [https://gitlab.com/df-modding-tools/df-raw-language-server#supported-editors-and-ides (more are coming)]
 
 
<gallery widths=200px>
 
File:DF_RAW_Language_server_Logo.png|DF RAW Language server Logo
 
File:DF_RAW_Language_server_VSCode_screenshot_1.png|DF RAW Language server in VSCode
 
File:DF_RAW_Language_server_VSCode_screenshot_2.png|DF RAW Language server in VSCode
 
</gallery>
 
 
The [[wikipedia:Language_Server_Protocol|Language server]] is a shared component that can be used to easily add support for more IDE's.
 
  
 
== World Map / World Gen tools ==
 
== World Map / World Gen tools ==
Line 169: Line 165:
  
 
==Legends tools==
 
==Legends tools==
 +
=== LegendsViewer-Next ===
 +
A tool to comfortably browse an [[Legends#Exporting_World_information|exported legends file]]. It creates wiki style backlinks, searchable lists, interactive maps and family trees for historical figures. LegendsViewer-Next is a replacement for the classic [[Utility:Legends viewer|Legends Viewer]] fully compatible with v50 Steam/Premium. Builds for Windows, Linux and macOS are provided.
 +
* Links: [http://www.bay12forums.com/smf/index.php?topic=154617.0 Bay12 Forum Thread], [https://github.com/Kromtec/LegendsViewer-Next Github Repository]
 +
 +
{{migrated section}}
 +
 
=== [[Utility:Legends viewer|Legends Viewer]] ===
 
=== [[Utility:Legends viewer|Legends Viewer]] ===
 
[[File:legends_prev.png|border|200x200px|left]]
 
[[File:legends_prev.png|border|200x200px|left]]
Line 205: Line 207:
  
 
== Remote playing tools ==
 
== Remote playing tools ==
 +
{{migrated section}}
  
 
=== [[Utility:Dfterm3|Dfterm3]]===
 
=== [[Utility:Dfterm3|Dfterm3]]===
Line 234: Line 237:
 
=== [https://github.com/ptitSeb/box64 Box64] ===
 
=== [https://github.com/ptitSeb/box64 Box64] ===
  
Box64 allows Dwarf Fortress to be run locally on Android devices. A more detailed tutorial is available [https://www.reddit.com/r/dwarffortress/comments/r80m7y/dwarf_fortress_mobile_running_dwarf_fortress_on/ here].
+
Box64 allows ''Dwarf Fortress'' to be run locally on Android devices. A more detailed tutorial is available [https://www.reddit.com/r/dwarffortress/comments/r80m7y/dwarf_fortress_mobile_running_dwarf_fortress_on/ here].
  
 
==Language tools==
 
==Language tools==
 +
{{migrated section}}
  
 
===[http://www.bay12forums.com/smf/index.php?topic=47332.0 DFLang]===
 
===[http://www.bay12forums.com/smf/index.php?topic=47332.0 DFLang]===
Line 251: Line 255:
  
 
==Announcement tools==
 
==Announcement tools==
 +
{{migrated section}}
  
 
===[http://www.bay12forums.com/smf/index.php?topic=130590 DFMon] ===
 
===[http://www.bay12forums.com/smf/index.php?topic=130590 DFMon] ===
Line 267: Line 272:
  
 
==Filesharing websites==
 
==Filesharing websites==
 +
{{migrated section}}
  
 
=== [http://dffd.wimbli.com/ Dwarf Fortress File Depot] ===
 
=== [http://dffd.wimbli.com/ Dwarf Fortress File Depot] ===
Line 277: Line 283:
  
 
Read more about the [[User:Markavian/DF_Map_Archive|DF Map Archive]] on Markavian's User page.
 
Read more about the [[User:Markavian/DF_Map_Archive|DF Map Archive]] on Markavian's User page.
 +
 +
==Launchers==
 +
 +
Historically, [[Starter pack|starter pack]]s were used to easily configure settings, keep the game up to date, and integrate third-party mods and bugfixes. With the release of [[Release information/50.01|v50]] on Steam, much of this can be done in-game and through the Steam workshop, making starter packs no longer necessary.
 +
 +
=== PyLNP ===
 +
A cross-platform port of the [[Utility:Lazy Newb Pack|Lazy Newb Pack]], written in Python and providing some support for v50. See [[Utility:Lazy_Newb_Pack#PyLNP:_The_modern_cross_platform_launcher|PyLNP: The modern cross platform launcher]] for more information.
 +
* Links: {{F|140808|Bay12 Forum Thread}}, [https://github.com/Pidgeot/python-lnp/releases Releases] (for pack maintainers), [https://github.com/Pidgeot/python-lnp GitHub Repository], [http://pylnp.birdiesoft.dk/docs/dev/content.html Documentation]
  
 
== Other/miscellaneous ==
 
== Other/miscellaneous ==
 +
{{migrated section}}
  
 
=== [http://shadowlord13.googlepages.com/dfmap-index.html DF Map Compressor] ===
 
=== [http://shadowlord13.googlepages.com/dfmap-index.html DF Map Compressor] ===
Line 295: Line 310:
 
===[https://play.google.com/store/apps/details?id=dae.dfnews Dwarf Fortress News - Android App]===
 
===[https://play.google.com/store/apps/details?id=dae.dfnews Dwarf Fortress News - Android App]===
 
Watches the ''Dwarf Fortress'' devblog. Receives Push Notifications on new updates.
 
Watches the ''Dwarf Fortress'' devblog. Receives Push Notifications on new updates.
 +
 +
===[https://github.com/eniteris/df2html DF2HTML]===
 +
Converts DF screenshots into formatted HTML.
  
 
[[Category:Utilities|*]]
 
[[Category:Utilities|*]]
 
{{Category|Modding}}
 
{{Category|Modding}}
 
[[ru:Utilities]]
 
[[ru:Utilities]]

Latest revision as of 03:56, 20 November 2024

This article is about the current version of DF.
Note that some content may still need to be updated.

Utilities icon.png

A collection of third-party Utilities that are useful for Dwarf Fortress players and modders alike, of which this page serves as a list. Dwarf Fortress is a difficult game to play, and any help that can be had in the task is welcome help.

If you would like to add an article on a specific game utility to the wiki, please do so under the Utility namespace. Not included on this page: tileset repositories and graphics set repositories, due to having been given their own, separate pages. Mods have also been listed under their own Modification namespace.

To avoid namespace clutter, websites are considered utilities and have been included.

A subsection of the Bay12 forums is devoted to such third-party programs, and contains development threads for most of them.

3D Visualizers[edit]

Stonesense[edit]

Stonesense prev.jpg

Stonesense is a third party visualizer, implemented as a DFHack plugin, that lets you view your fortress in a classic isometric perspective. It runs alongside Dwarf Fortress, and can follow the main game's view, updating in real-time. It is included in DFHack, and can be opened by typing stonesense or ssense into the console window.

Vox Uristi[edit]

Df-vox-uristi-gate.jpg

A tool that exports fortresses to a 3D voxel format (.vox). Once exported, rendering software such as MagicaVoxel (for Windows and Mac) or alternatively Goxel (for Linux) can make detailed 3D renders of it. It requires DFHack, and is mostly tested with the Steam version, though previous versions should work too.


Armok Vision[edit]

Armok vision.png

Armok Vision is a 3D real-time visualizer using Unity. It works as a separate program communicating with the game through fast network interfaces provided by DFHack.

Isoworld[edit]

Isoworld prev.png

Isoworld is an isometric world map viewer, which can display each of the detailed maps exported from Legends mode. It also has a pictographic view which makes finding waterfalls easy.

Isoworld can link with DFHack to display a game view at full spatial resolution in wider context, including tracking the player's view. This is particularly useful for adventure mode. The isoworldremote plugin required for this is included with DFHack.

Voxel Fortress[edit]

Voxel prev.png

Voxel Fortress converts DF worlds to a voxel format. It takes an export of one of the two elevation maps (for the voxels coordinates), and any other one (for the colors).

The map is saved in .xraw format. An additional utility (e.g. MagicaVoxel Viewer) is required to see the voxel representation of the map.

Music and Sounds[edit]

SoundSense[edit]

Main article: Utility:SoundSense
Soundsense prev.png

SoundSense parses game logs and plays reacts to game events with sound effects, incidental music and dwarfy comments. Due to it being written in Java, Soundsense is portable to all platforms.

Note that older Soundsense users may have different default seasonal soundtracks, which were removed and replaced in early 2011. These are available here.

SoundCenSe[edit]

SoundCenSe prev.png

A C# port of SoundSense, it uses the existing sound pack files and XMLs present in SoundSense, but with some added enhancements. More information regarding what specific type of enhancements and how to install SoundCenSe can be gathered at the official forum thread. If problems emerge while trying to get SoundSense to work with the latest versions of Java, this port may prove to be a useful alternative.

SoundSense-RS[edit]

SoundSense-RS prev.png

A SoundSense alternative in Rust with a minimalistic GUI. Sound volumes can be adjusted realtime, based on channel. Events can be ignored with a custom list based on log patterns.

Game manipulation tools[edit]

DFHack[edit]

Main article: Utility:DFHack
Dfhack cmd.png

DFHack is an advanced Dwarf Fortress memory access library and a set of tools and scripts using this library, providing direct object-oriented access to Dwarf Fortress's internals as if it were compiled into the game itself. Runs on Windows, macOS, and Linux (natively if supported by DF, or through Wine). The standard configuration enables a variety of included bugfixes and interface upgrades, and provides many useful tools such as "clean all". See main page for a summary of features, common use, and more.

Dwarf Therapist[edit]

Dwarf therapist.png

Dwarf Therapist gives you an advanced GUI to manage and check dwarf job allocations, military assignments, statistics (such as attributes, personality traits and happiness), sort dwarves by various criteria (e.g. profession, migration wave, happiness, number of assigned jobs etc.) and generally manage the Dwarven Resources of your fortress in a very convenient way. Available for Windows, Mac and GNU + Linux.

Modding tools[edit]

DF RAW Language server[edit]

Modding support for DF RAW files in IDE/Code/Text editors. Checks syntax of files, detects errors and syntax highlighting.

Current extensions:

The Language server is a shared component that can be used to easily add support for more IDE's.

Notepad++ Highlighting[edit]

language highlighting modes for the text editor Notepad++ link

Modding tools pre v50[edit]

Rubble[edit]

A useful plugin-based modding tool that generates raws and supports easy installation of reactions, tilesets, macros, modding fixes and DFHack scripts. It is a fork of the now abandoned Blast. Binaries are available for Linux 32-bits, OS X 32-bits and Windows 64-bits, as well as the source (written in Go with building instructions). As of 4.0, a GUI is available for Windows.

PyDwarf[edit]

For players, PyDwarf is an easy way to manage and configure preferred mods in a way that avoids almost entirely the problems of outdated mods or incompatible groups of mods. For modders, PyDwarf's mod manager exposes a powerful Python API for interacting with raws and other data files.

Raw Explorer[edit]

A tree-based raw files browser, editor and manager.

Dwarf_RAW[edit]

A GUI for editing raw files, updated 2019.

Dwarf Fortress real-life material helper[edit]

A Python script that generates raws based on custom real-life material values.

Roses' Random Creature Script[edit]

A Python script that generates random creature raws.

DF Diagnosipack[edit]

A collection of modding tools, with a focus on diagnosing problems and getting statistics on what is found within the raws. It includes:

  • DF Duplisearch - checks your raws folder for duplicated objects, and counts the number of objects of each type (creature, entity, reaction, etc.).
  • DF Creatureclasser - tells you what creature classes are in your raws, and what they are used for.
  • DF CVunpack - unpacks creature variations, so you can see how the raws for e.g. wolf men really look (spoiler: they have 7 fingers).
  • DF Creaturescale - calculates creature weights, and the proportions of each body part and tissue.
  • DF Biomeviewer - shows what creature/plants can be found in which biomes.
  • DF Rawminer - extracts procedurally generated raws (of Forgotten Beasts etc.) from save files.

World Map / World Gen tools[edit]

Perfect World DF[edit]

Requires an additional (tiny) download to be functional for current versions (40.#): WorldGen.xml . Easy access to world settings for quick modification to allow highly customized world generation far easier and faster than DF's ingame advanced map maker. forum thread

Fortress World Generator[edit]

A bash script for automating world generation of large numbers of worlds on GNU/Linux.

Dwarf Map Maker[edit]

A Photoshop action script which turns legends mode exported maps into a much prettier fantasy map. There is also a version available for GIMP.

Satellite Map Maker[edit]

A GIMP script based on the Dwarf Map Maker that creates a satellite image of Dwarf Fortress world maps.

Armap[edit]

A python script that creates a hand-drawn style map from exported legends world maps.

Legends tools[edit]

LegendsViewer-Next[edit]

A tool to comfortably browse an exported legends file. It creates wiki style backlinks, searchable lists, interactive maps and family trees for historical figures. LegendsViewer-Next is a replacement for the classic Legends Viewer fully compatible with v50 Steam/Premium. Builds for Windows, Linux and macOS are provided.


Legends Viewer[edit]

Legends prev.png

Legends Viewer loads up the legends you can export in a much more usable format than the Legends mode of DF itself. Legends Viewer can open pages in new tabs, filter information on a wide range of criteria, and display information on the map as well. Binaries are only available for Windows, as well as the source (written in C#).

World Viewer[edit]

World viewer prev.png

An alternative to Legends Viewer that, most specifically, features a timeline of historical events. Binaries are only available for Windows, as well as the source (written in C#). Last updated in late 2017.

Uristmaps[edit]

Uristmaps prev.png

A web-based interface that displays worlds in the way of an interactive map complete with features and structures.

Links: Website

Legends Browser[edit]

Legendsbrowser.png

A web-based multi-platform (Win, Linux, OSX) Viewer. It displays an interactive map and legends information (using legends_plus.xml generated via DFHack).

DF Storyteller[edit]

DF Storyteller Logo.svg

Dwarf Fortress Storyteller (DF Storyteller, DF ST) is an application that parses Dwarf Fortress legends files, stores them internally and makes them queryable using API's. (Cross platform: Windows, Linux, macOS) This utility can be used to easily create new visualizers to view the legends data.

Remote playing tools[edit]


Dfterm3[edit]

Dfterm3 is a remote Dwarf Fortress-playing software for multiple users through a web interface. DFterm3 enables play through a web interface, and games can also be viewed on mobile - or even played if a bluetooth keyboard is attached. The web interface should work with Chrome or Firefox browsers, but there are known problems using Internet Explorer. DFTerm3 functions via a DFHack plugin, and is thus dependent on each version of DFHack.

It is a successor to dfterm2, which functions similarly using telnet instead of a web browser. This utility only works with version 0.34.11 or earlier.

Webfort[edit]

Playable in Mac browser.

A newer alternative to dfterm3 that functions similarly, but players must wait in a queue before assuming control for a given period of time. It also functions via a DFHack plugin. Binaries are available for Windows, as well as the source (written in C++). (Note: main repo unmaintained. New repo last updated 5/22/2015.)

DorfServer[edit]

Like Twitch, without Twitch.

A remote SSH-based Dwarf Fortress host software. (repo)

DFEverywhere[edit]

A utility that connects a locally-run Dwarf Fortress instance to a proprietary remote website, allowing remote browser-based play. (Note: Main website no longer available. Client source here.)

Dwarf Fortress Remote[edit]

iOS app (paid) that allows one to play Dwarf Fortress remotely with native UI. A server can be set up at home, or on DigitalOcean, AWS or other hosting service.

DFPlex [edit]

DFPlex is a plugin for DFHack which introduces simultaneous, real-time online co-op to fortress mode: each player has their own independent view, cursor, menus, etc. so nobody has to wrestle for control. It's a fork of webfort, so players join just by connecting from their web browser.

Box64[edit]

Box64 allows Dwarf Fortress to be run locally on Android devices. A more detailed tutorial is available here.

Language tools[edit]


DFLang[edit]

A language creating tool.

Toadese Language Utility[edit]

A language editing and translating tool.

DFlangOpt[edit]

A little tool meant to prevent redundancy when importing or updating language files.

Python language extraction and injection script[edit]

This simple script will extract words from language files and put them a word per line, for easy automatic translation or treatment. It can also read that list and put the translated words back in their place.

Announcement tools[edit]


DFMon[edit]

An announcement monitoring/filtering program, useful to hide some types of job cancellation spam or other more advanced filtering. Note that you can set the game to announce no job cancellations without any utilities or mods from the orders menu, with x.

DF Announcement Filter[edit]

An alternative to DFMon written in Java (and thus portable to Linux and OS X).

Announcement Window+[edit]

Announcement Window+ is a Python application that interfaces with Dwarf Fortress to print announcements and combat reports to a separate window. It was written to fix some annoying bugs that are present in DF Announcement Filter, which is no longer being updated.

One less game-pausing hotkey.

Filesharing websites[edit]


Dwarf Fortress File Depot[edit]

The Dwarf Fortress File Upload Service - an excellent place to store mods, community games, tilesets and other files. Courtesy of Janus; for files related to Dwarf Fortress only.

Dwarf Fortress Map Archive[edit]

The Dwarf Fortress Map Archive is a large collection of user-submitted maps and videos and a nice flash viewer for perusing them. Maps are uploaded, stored, and downloaded in a special compressed format created by the DF Map Compressor; videos are stored in a compressed version of Toady One's own video-recording format.

Read more about the DF Map Archive on Markavian's User page.

Launchers[edit]

Historically, starter packs were used to easily configure settings, keep the game up to date, and integrate third-party mods and bugfixes. With the release of v50 on Steam, much of this can be done in-game and through the Steam workshop, making starter packs no longer necessary.

PyLNP[edit]

A cross-platform port of the Lazy Newb Pack, written in Python and providing some support for v50. See PyLNP: The modern cross platform launcher for more information.

Other/miscellaneous[edit]


DF Map Compressor[edit]

Main program window.

The DF Map Compressor encodes multiple bitmaps exported from Dwarf Fortress into a single, very compressed, .fdf-map file. The fdf-map file can then be shared with your friends by uploading to the DF Map Archive.

Exita[edit]

Exita is a Python program that takes your DF world map exports and dump them into several different text outputs.

DwarfFamily[edit]

A tool that lets you import your legends XML file and converts all dwarf entries to a .GED file, which you can use in Family Tree programs like MyHeritage to display a family tree for the dwarves.

Kobold name generator[edit]

A Python script that generates random names in the way of kobold utterances

Dwarf Fortress News - Android App[edit]

Watches the Dwarf Fortress devblog. Receives Push Notifications on new updates.

DF2HTML[edit]

Converts DF screenshots into formatted HTML.