So I'm working on a 3D dwarf fortress Visualizer, using Unity.
Now with items and designations!
If you would like to support this project, you can visit my Patreon page HereAlso Discord
* Added basic designation support. Only freehand at the moment. More brush types will come later.
* Added support for items on the floor.
* Added sprites for all items, and 3D models for several
* Added a clock and calandar.
* Added a button to pause and resume Dwarf Fortress
* Use texture arrays instead of texture atlases when available.
* Use a single postprocess stack instead of multiple separate effects.
* Lighten hidden tiles.
* Added a loading screen
* Removed the mesh generation timer that never worked well.
* Show snowfall on the world map.
* Added a simple hardware survey.
* Added support for displaying material spatters, including blood, vomit, fallen leaves, mud, snow, etc.
* Added a few more options to the esc menu, including camera stuff.
* Brought back the old first person camera, and added a key to switch between floating and walking cameras. Default is C.
* Fixed a set of bugs that caused the map to not render when playing a heavily modded Dwarf Fortress.
* Added basic VR support. Needs heavy testing. To use it, just start Armok Vision with SteamVR running.
* More improvements to the automated build process.
* Allow the user to instantly turn off distant terrain and clouds, but enabling them stil requires a restart.
* Include a manifest.json for pylnp.
* Made first person mode follow physics rules, turning the user into a visitor of the fortress.
* Fixed a bug where the outside landscape trees would be different every time.
* Added tree color to the very very far terrain.
* Fixed scene reflections not respecting time of day.
* Added new mason's workshop model
* Added many temporary workshop models made fron chunky voxels.
* Fixed various rendering issues.
* Made hidden tiles optional
* Added trees and buildings to the world map.
* Added a screenshot button. F9 by default.
* Added SSAO effect.
* Changed textures to use point filtering.
* Fixed a bug where panning with the middle button wouldn't turn off following.
* Added onscreen settings menu. Press esc to open it.
* Fixed compatibility with new DFHack plugin.
* Zooming in and out changes the world size in VR now.
* Made hidden areas black
* Overhauled the outside world, giving much nicer looking maps
* Added rivers to the world map
* Added lakes to the world map
* Changed some internals relating to tile mesh generation
* Made mesh generation always include surrounding tile data
* Changed how reflections work.
* Show designations
* Fixed tree foliage textures.
* Fixed keyboard not responding on startup.
* Made all debug stuff off by default. You can turn it on in the config json file.
* Added a toggle to follow the DF screen. Press F to activate.
* You can now press ` to bring in the screen from Dwarf Fortress. Currently rather buggy.
* Hidden map tiles are now invisible in Armok Vision. TODO: Make them black.
* Models can now have metallic and self illumination maps. Beds temporarily have both.
* Fixed units showing up when they're caged or off the map
* Added creature names above sprites
* Added option to export the generated map to collada file, using Ctrl+M. Quite crashy.
* Made clouds and distant terrain optional
* Trees now show leaves, flowers, and fruits, in their proper times and colors.
* Backend stuff related to creatures. Not usable yet.
* Performance improvements by Kazimuth
* Save various settings to a JSON file that is created on first run.
* Remodel tree branches
* Added palm leaves to trees that can use them.
* Made the sun angle change according to season.
* Fixed time-of-day changing that 0.7.1 broke.
* Fixed caged and gone creatures showing up where they're not supposed to.
* Fixed a bug that caused the landscape to not render whenever you moved as an adventurer.
* Various performance improvements.
* Allowed loading up a DF world without a fort loaded, like on the embark screen.
* Added support for adventure mode entering and leaving fast travel.
* Changed how textures are loded. Alpha maps now go into texture shape, and specular smoothness maps go into the material texture.
* Added building support.
* Added basic meshes for many, but not all, buildings.
* Added support for semitransparent meshes, like glass.
* Added a day/night system. Time can be paused by pressing P, and can be moved forward and back with [ and ].
* Added optional scaling of unit sprites. Can be toggled with L.
* Added ability to toggle shadows from overhead hidden geometry by pressing O.
* Graceful handling of out-dated Remotefortressreader DFhack plugin.
* Optimized filesize
* improved ramp joining at block borders. Still not fully working.
* Added distant terrain and clouds
* Fixes for normal map loading
* Show basic units, only ascii for now.
* Added support for loading user-textures
* Added many new landscape textures
* Added screen-space reflections
* Added multi-threading for geometry generation and map reading
* Fully movable camera
* Click the map for debug info
* Upgrade to unity 5
* Added a bunch of pretty effects.
* Added a movable camera. Use right click to rotate, and wheel to zoom.
* Added systems in place for setting tiles according to any combination of material, tiletype, ramp direction, or random variation.
* Added some amount of content that uses this.
* Added water
* Added lava
What set this apart from other visualizers is that:
- It reads the map in realtime, much like Stonesense
- It does not run within DF, but as a separate program, communicating with DF through fast network interfaces.
Current list of planned features, in order of importance/order of implementation:
- 3D map, slice-able at any layer, much like Stonesense and normal DF.
- Camera angles that include DF top-down, with and without perspective, and Stonesense Isometric.
- Sprite based units that use the rather powerful Stonesense sprite system, optionally showing full outfits on all your dorves.
- Some way to control DF through the program. This can be either done by directly copying over the game UI, or with a more advanced interface. Obviously the first is easier.
I am choosing to concentrate on only showing a small portion of the map, for performance reasons. If it eventually becomes possible to show the entire fortress at once, great, but that isn't the aim.
Art style isn't yet fixed at all, and if any artists want to help out, they'll have the most say, but I'm currently leaning towards similar to Stonesense's bright colors and simple shapes.Downloads for all operating systems.
The project is hosted at https://github.com/JapaMala/armok-vision
, but may depend on DFHack features that can be found in the development branch of DFHack.