Commit Graph

7172 Commits (39c96c474a827cb01ffc7a2ba8b450be8aa14565)
 

Author SHA1 Message Date
Matthew Cline fed916bf8d Linux launch script: gdb and terminal reset
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.
2011-07-12 23:37:49 -07:00
Matthew Cline d1170d54c3 Vermin module and colonies plugin
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.
2011-07-12 23:17:51 -07:00
Petr Mrázek 1b011cdf6c Merge pull request #97 from matthew-cline/dfapi
.gitignore: Ignore build/plugins and CPack build stuff
2011-07-12 18:17:34 -07:00
Matthew Cline f3bedca725 Ignore build/plugins and CPack build stuff 2011-07-12 17:57:37 -07:00
Petr Mrázek 927711d4e3 Merge pull request #96 from matthew-cline/dfapi
CMake linux: copy LD_PRELOAD script
2011-07-12 17:55:06 -07:00
Matthew Cline 025a7dffb4 cmake linux: don't restrict output dir 2011-07-12 17:49:56 -07:00
Matthew Cline a30a4a2720 CMake linux: copy LD_PRELOAD script
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.
2011-07-12 17:25:27 -07:00
Petr Mrázek b5a6087da5 Forgot to commit a file. 2011-07-12 23:27:09 +02:00
Petr Mrázek 3a67a4d3c7 Added linenoise library to allow line editing in the terminal. 2011-07-12 12:13:14 +02:00
Petr Mrázek 2339dcb4b9 Merge pull request #93 from matthew-cline/TOPIC-readSTLString
readSTLString() new/free mismatch fix
2011-07-11 15:13:03 -07:00
Petr Mrázek f5c50b6938 Merge pull request #92 from matthew-cline/TOPIC-buildings
buildingsdump.cpp: cleanup
2011-07-11 15:09:43 -07:00
Petr Mrázek aeeece5c5f Made kittens plugin optional, and disabled by default. 2011-07-12 00:07:59 +02:00
Petr Mrázek fa4d2d9b2e Removed some silly data races from using cerr... 2011-07-11 23:07:42 +02:00
Petr Mrázek 4015586d89 Eliminated the core suspend latency, possibly added a heap of race conditions. Added vdig. 2011-07-11 22:23:13 +02:00
Matthew Cline 5c1526d6d9 creatures: read and write pregnancy counter
Also change creaturemanger to print out the ticks-until-birth for
pregnant creatures.
2011-07-11 02:48:10 -07:00
Matthew Cline 5da4eb3344 readSTLString() new/free mismatch fix
valgrind caught a problem where memory was allocated with "new[]" but
freed with "delete"; changed it to free with "delete[]".
2011-07-11 02:06:38 -07:00
Matthew Cline 6cce940901 buildingsdump.cpp: cleanup
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.
2011-07-10 23:50:29 -07:00
Petr Mrázek 4d406524c0 Merge pull request #91 from matthew-cline/TOPIC-blockflags
playground/blockflags: toggle block flag bits
2011-07-10 22:51:32 -07:00
Petr Mrázek 6b1d7fbe35 Merge pull request #90 from matthew-cline/master
Deal with third flag group in creatures
2011-07-10 22:51:06 -07:00
Matthew Cline ea9a6deed4 playground/blockflags: toggle block flag bits
Invert/toggle all block flag bits, to investigate what they do.
Strangely, they don't seem to do anyting.
2011-07-10 17:29:34 -07:00
Petr Mrázek 3850954449 Hotkey input works on windows/under wine. Added skeleton for the veindigger plugin. 2011-07-10 21:07:14 +02:00
Matthew Cline cb9c9aae7c Deal with third flag group in creatures
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.
2011-07-10 04:00:52 -07:00
Petr Mrázek bc9911212e Merge pull request #89 from matthew-cline/master
incremental: deal with shifting Linux maps (Issue #88)
2011-07-10 03:18:16 -07:00
Matthew Cline 49fd378a47 incremental: deal with shifting Linux maps
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.
2011-07-10 02:16:28 -07:00
Petr Mrázek 488322cb0d Merge pull request #87 from matthew-cline/master
creaturemanager.cpp: Additional actions and creature filters, and misc changes
2011-07-09 20:32:20 -07:00
Petr Mrázek 07c11c704d Fix Windows build (untested, expect explosions). 2011-07-09 16:05:40 +02:00
Petr Mrázek 5209162403 reveal - shorter commands, reversed safe and hell mode (safe is now default) 2011-07-09 13:52:00 +02:00
Petr Mrázek d894ef0ffa Hotkey UI for linux. 2011-07-09 11:33:58 +02:00
Petr Mrázek 65d7278f53 Added a bunch of butchered SDL headers, catching SDL events on linux. 2011-07-08 03:55:37 +02:00
Petr Mrázek d865ff1014 Forgot suspend and resume in cleanmap, leading to race conditions and segfaults. 2011-07-07 13:09:17 +02:00
Petr Mrázek 367d79bcfa Weather plugin to mirror the weather tool. 2011-07-07 10:57:57 +02:00
Matthew Cline be5361da15 creaturemanager: oops, "-i" was broken 2011-07-07 01:10:40 -07:00
Petr Mrázek 8b298f8d91 More maps tweaks, function for block event removal, added cleanmap version that nukes spatter objects instead of rewriting their
bitmaps.
2011-07-07 09:49:58 +02:00
Matthew Cline 87e7ce5b1d New actions and creature filters, plus minor stuff
Multiple changes:
* Slight rearrangement of help message.
* Fixed bug where "Dead" flag wasn't being displayed with
  --showallflags.
* Added option "-saf" as a shortcut for --showallflags.
* Creature origin (memory pointer) and civilization number are
  displayed in the multi-line listing.
* Split logic for testing if creature is to be used off into it's
  own function, which is easier to read.
* Added "--type" filter, which can select tame creatures, wild
  creatures, demonic creatures, and so on.  If the creature type
  hasn't been changed from the default of DWARF then's it's
  automatically changed to ALL (but can still explicitly be set
  via '-c DWARF')
* Added actions to tame selected creatures and to mark them for
  butchering.
2011-07-07 00:48:57 -07:00
Petr Mrázek b7b48ba1bb Merge pull request #86 from matthew-cline/master
cmake option BUILD_NO_CURSES
2011-07-07 00:33:23 -07:00
Matthew Cline cecbf60375 Added option BUILD_NO_CURSES
You can now do "cmake .. -DBUILD_NO_CURSES=ON" to prevent curses tools
from being compiled, since there's a problem using mvwaddwstr() on some
Linux distributions.
2011-07-07 00:16:48 -07:00
Petr Mrázek 4ff5db06be Maps no longer copy the map block pointer array, blocks are structs, map data is public. 2011-07-07 07:00:36 +02:00
Petr Mrázek 4cd80fa5d4 Only warn user when needed. 2011-07-06 12:52:16 +02:00
Petr Mrázek 8318213b97 Safe version of reveal (no hell) 2011-07-06 12:26:45 +02:00
Petr Mrázek 74ab0f94aa Added std namespace use for stl types in MapExtras.h 2011-07-06 12:26:18 +02:00
Petr Mrázek 67601dedee Merge branch 'master' into dfapi 2011-07-06 11:21:30 +02:00
Petr Mrázek 56a409d9a4 sync, some map data structures, commented out some dead code 2011-07-06 11:13:36 +02:00
Petr Mrázek 5a3b02e9e4 Safe mode for reveal by matthew-cline 2011-07-06 01:32:43 +02:00
Petr Mrázek dfe58b6757 Improvements to probe by matthew-cline 2011-07-06 01:28:23 +02:00
Petr Mrázek b1d4163095 Fixed prospector, added the command list back, removed the plugin init console spam. 2011-06-27 04:49:56 +02:00
Petr Mrázek 00ddb45dbd Added optional plugin_onupdate function, called each Core update. 2011-06-27 02:13:01 +02:00
Petr Mrázek 722531f590 Added destructor code for PluginManager, console color reset funstion. 2011-06-25 08:05:17 +02:00
Petr Mrázek 6fd7d42f00 Plugin manager, reworked kittens and reveal. 2011-06-25 05:35:29 +02:00
Petr Mrázek 0bb097296a Prospector prints text again. Plugin lookup is better (ignores more non-library files) 2011-06-24 02:48:56 +02:00
Petr Mrázek 857decbcce Plugins go into a folder, disabled console close button on windows because of bugs. 2011-06-22 18:04:22 +02:00