Since you can't do "Ctrl-Z kill -9 %1" from the console, instead just
give the "die" command to terminate the game without saving. Linux
only, since _exit() probably doesn't work on Windows.
Need to set cmake option BUILD_KILL_GAME to ON to compile this plugin.
1) Giving "-g" or "--gdb" as the first argument to the dfhack script
will launch DF under gdb.
2) "reset -I" is called after DF finishes, to return the terminal to a
sane state in case DF crashed or was killed.
This is the start of the vermin module. Right now it just gets a list
of the positions at which vermin are created (spawn points). Most
spawn points are invisible and transient, but colonies (ant hills and
such) are permanent and visible. The address of the spawn points vector
is only provided for Linux 0.31.25
The colonies plugin uses the vermin module to list the location and
species of colonies, and can either wipe them all out or turn them all
into honey bee colonies.
Copy package/linux/dfhack to the games directory; it's the same as the
normal df script, but sets LD_PRELOAD properly.
Also, CMAkeLists.txt now checks to see that the output directory is set
to the game directory, and fatally fails if it isn't.
Split code off from main into functions for easier readibility, and
improved code formatting some. Also, reduced the amount of hex
dumped for "buildings under cursor" mode, since any more than that
was dumping memory regions that were constantly changing as ticks
went by even if nothing was done to the building.
Added support for reading and writing the third creature flag group,
t_creaturflags3 (the offest already exists in Memory.xml). So far I've
only figured out three of the flags (out of an apparent 13):
1) announce_titan, which causes the creature to be announced as if
it was a titan or FB which had just arrived.
2) scuttle, which causes the creature to be die like it had been
killed in the game. That is, it leaves behind a corpse, and
will generate unhappy thoughts in dwarves if approriate.
3) ghostly, for creatures which are the ghosts of dead dwarves.
I updated creaturemanager to use scuttle for --kill, and added the
action --erase to kill in the old way which doesn't leave a corpse or
creatre unhappy thoughts.
Issues #88: sometimes the end of the heap of the DF process will change
between detaching and re-attaching to the process. To deal with this,
/proc/PID/maps is re-read every time the process is attached.
Also, made semgent finder give a little more info if there's an error
doing a memory read.