The Wiki Page, with installation instructions, and eventually usage information.
Dwarf Fortress File Depot Download (current version: 0.6 Beta)
This is a module for Gibbed's Dwarf Fortress Tweak utility that can conditionally alter tiles of the map. By supplying a condition and a set of operations, the program is able to evaluate the condition for each tile, and if the condition is true, then the operations are executed, altering that particular tile is some fashion. This flexibility potentially provides numerous uses. This utility was originally designed to be a smarter version of Reveal, but grew to become much more. Not only can this utility show or hide tiles, but it can change whether or not they are outside, inside, light, dark, subterranean, or above ground. It can alter water and magma levels, mining designations, and in some cases substantially alter tile types, such as when creating a river source tile.
I was waiting to release this with the next version of DF, as I know for a fact that the new viewport code will break portions of this program, and I was meaning to spend some more tile polishing the program, but I think it is good enough now for me to release it to the public so that I can get some user feedback. I'm calling it a beta version for the moment, but I have spent a decent amount of time trying to polish it beyond just basic functionality.
I will eventually try to add more documentation on the wiki page, but the tooltips available by hovering the mouse over items in the insert menu or their corresponding toolbar buttons (which are enabled when the focus is on either of the two lowest text boxes) should be enough to guide those who are sufficiently adventuresome. Be warned that this program can occasionally do weird things to your map (or at least I suspect as much), especially when altering fundamental tile types (such as changing a tile to grass), so save your map and be ready to kill DF through the task manager if things go horribly wrong.
Basic usage, though, is to write a condition and a set of one or more operations (some defaults are already supplied as examples), and then click the lightning bolt icon on the right side corresponding to the condition/operation set that you are editing or wish to execute. After a short time (usually no more that two or three seconds on my machine) the hourglass mouse cursor should go away and the DF window should update to reflect any changes. I have added an undo/redo feature that applies to the DF map tiles to make experimentation easier. If you didn't like the effect you had, just hit undo, tweak the condition or operations, and try it again. This feature eats memory, though, so either edit the xml file that comes as part of the zip to change the maximum undo/redo depth to some small number, or occasionally go to the Execute menu and clear the buffer.
Any comments, suggestions, ideas for new functions, or ideas on creative ways to use existing functions are all welcome.
[edit: 2008/08/08 23:39]
Improved error reporting at least marginally in some cases, and significantly in others. Version 0.2 is now available from DFFD:
http://dffd.wimbli.com/file.php?id=404[edit: 2008/08/09 13:53]
Fixed some errors regarding the reading of optional memory addresses/offsets, and updated the code to work with the new DF v0.28.181.39f. Version 0.3 is now available from DFFD (link above).
[edit: 2008/08/15 16:39]
Version 0.4 is now available from DFFD (link above). Changes:
- general interface improvements
- fixed undo bug, when the maximum undo/redo depth was infinite
- added z_distance_to_surface
- renamed is_ramp to is_upward_ramp
- added is_ramp, is_downward_ramp, is_above_upward_ramp and make_downward_ramp
- renamed is_lava to is_magma_source, and make_lava to make_magma_source
- added traffic designation queries, which had erroneously been left out
- added a few additional example operation sets to the included file
[edit: 2008/08/15 18:20]
Less than two hours, and version 0.5 is now available. Just a single bug fix:
- set_liquid_type_to_water was not working, now it is
[edit: 2008/08/18 22:42]
Version 0.6 is now available from DFFD (link above). Changes:
- added bodily fluid functions (blood, pus, ichor, goo, slime) in the Occupancy categories, along with related constants in the Constants category
- renamed is_vomit to has_vomit, and moved it and set_vomit to the Occupancy categories
- renamed is_snow_covered to has_snow, and set_snow_covered to set_snow, and moved them to the Occupancy categories
- added support for the string type, including a to_string function and the concatenation operator (+)
- added print and print_line functions for writing to the output panel
- added the is_allocated function
- added a new Experimental category, including functions for reading/writing type, matgloss id, and biome id
- provided a variation for most query functions to accept specific x, y, z coordinates, instaed of just defaulting to the current tile's x, y, z coordinates
- fixed various bugs with the functions in the Raw category, and added mask_and_set_ versions of each
- various small improvements to the interface
- updated viewport calculation code to properly handle changes in the latest DF version (0.28.181.40a)