89 lines
		
	
	
		
			3.2 KiB
		
	
	
	
		
			Plaintext
		
	
			
		
		
	
	
			89 lines
		
	
	
		
			3.2 KiB
		
	
	
	
		
			Plaintext
		
	
| Introduction
 | |
| ------------
 | |
| 
 | |
| DFHack is a Dwarf Fortress memory access library and a set of basic tools using 
 | |
| this library. The library is a work in progress, so things might change as more
 | |
| tools are written for it.
 | |
| 
 | |
| It is an attempt to unite the various ways tools access DF memory and allow for
 | |
| easier development of new tools.
 | |
| 
 | |
| Getting DFHack
 | |
| ----------------
 | |
| The project is currently hosted on github, for both source and binaries:
 | |
|   http://github.com/peterix/dfhack
 | |
| 
 | |
| * Packages
 | |
| 
 | |
| The library and tools are packaged for Archlinux and are available both in AUR
 | |
| and the arch-games repository.
 | |
| 
 | |
| The package name is dfhack-git :)
 | |
| 
 | |
| Compatibility
 | |
| -------------
 | |
| 
 | |
| DFHack works on Windows XP, Vista, 7 or any modern Linux distribution.
 | |
| 
 | |
| Windows 2000 is currently *not supported* due to missing OS functionality.
 | |
| If you know how to easily suspend processes, you can fix it :)
 | |
| 
 | |
| OSX is also not supported due to lack of developers with a Mac.
 | |
| 
 | |
| Currently supported Dwarf Fortress versions:
 | |
| * Windows
 | |
|   0.31.01 - 0.31.03
 | |
| 
 | |
| * Linux
 | |
|   wine together with the Windows versions
 | |
| 
 | |
| Using the library as a developer
 | |
| --------------------------------
 | |
| 
 | |
| The library is compilable under Linux with GCC and under Windows with MinGW32
 | |
| and MSVC compilers. It is using the cmake build system. See COMPILE for details.
 | |
| 
 | |
| DFHack is using the zlib/libpng license. This makes it easy to link to it, use
 | |
| it in-source or add your own extensions. Contributing back to the dfhack
 | |
| repository is welcome and the right thing to do :)
 | |
| 
 | |
| At the time of writing there's no API reference or documentation. The code does
 | |
| have a lot of comments though (and getting better all the time).
 | |
| 
 | |
| 
 | |
| Tools
 | |
| -----
 | |
| All the DFHack tools are terminal programs. This might seem strange to Windows
 | |
| users, but these are meant mostly as examples for developers. Still, they can
 | |
| be useful and are cross-platform just like the library itself.
 | |
| 
 | |
|  - dfcleanmap  : Cleans all the splatter that get scattered all over the map.
 | |
|                  Only exception is mud. It leaves mud alone.
 | |
|  - dfexpbench  : Just a simple benchmark of the data export speed.
 | |
|  - dfliquids   : A command prompt for liquid creation and manipulation
 | |
|                  (the Moses effect included!)
 | |
|                  Also allows painting obsidian walls directly.
 | |
|                  Note:
 | |
|                  Spawning and deleting liquids can F up pathing data and
 | |
|                  temperatures (creating heat traps). You've been warned.
 | |
|  - dfposition  : Prints the current DF window properties and cursor position.
 | |
|  - dfprospector: Lists all available minerals on the map and how much
 | |
|                  of them there is.
 | |
|  - dfreveal    : Reveals the whole map, waits for input and hides it again.
 | |
|                  If you close the tool while it waits, the map remains revealed.
 | |
|  - dfsuspend   : Test of the process suspend/resume mechanism.
 | |
|  - dfunstuck   : Use if you prematurely close any of the tools and DF
 | |
|                  appears to be stuck.
 | |
|  - dfvdig      : Designates a whole vein for digging. Point the cursor at a vein
 | |
|                  and run this thing :)
 | |
| 
 | |
|  - Your tool here:  Write one ;)
 | |
| 
 | |
| Memory offset definitions
 | |
| -------------------------
 | |
| 
 | |
| The file with memory offset definitions used by dfhack can be found in the
 | |
| output folder.
 | |
| 
 | |
| ~ EOF ~
 |