Commit Graph

1106 Commits (73e138c9fdf64cab23330fc13b73383d8648324d)

Author SHA1 Message Date
Petr Mrázek 4f0695a6d5 Messing with materials. 2011-11-03 04:30:59 +01:00
Petr Mrázek a6eea1adfd More checks added to MD5. 2011-11-03 02:40:49 +01:00
Petr Mrázek f0417e12dd Hardening. 2011-11-01 13:06:27 +01:00
Petr Mrázek 98cab0e9ad Really fix linux Console. 2011-10-31 04:17:35 +01:00
Petr Mrázek 84e1a95205 Fix race condition in Linux version of Console. 2011-10-31 03:34:22 +01:00
Petr Mrázek 7f6fa2a008 Add an enum for base material types. 2011-10-30 21:32:43 +01:00
Petr Mrázek 063894276c Tiny type fixes for spatter veins, updated df2mc. 2011-10-30 15:25:29 +01:00
Petr Mrázek dc12c41d86 Fix kitchen exclusion class not being exported. 2011-10-30 03:26:50 +01:00
Petr Mrázek a29bb4578f Move kitchen exclusion module methods to a source file. 2011-10-30 03:20:54 +01:00
Petr Mrázek a3a1629521 Fix seedwatch some more. 2011-10-30 02:52:25 +01:00
Petr Mrázek 4688f6557e Fix problem with magic numbers in fastdwarf. 2011-10-28 06:22:07 +02:00
Petr Mrázek e74aae6f3e Rename some plant material variables 2011-10-28 05:25:49 +02:00
Petr Mrázek bfc8df3005 Added plant raw struct 2011-10-28 04:40:35 +02:00
Petr Mrázek 61be3413e3 Make seedwatch work on linux, still with ugly hacks. 2011-10-27 03:31:13 +02:00
Petr Mrázek 335ad28fe5 Add item contaminants vector to df_item, fixed up cleanitems plugin to use it. 2011-10-27 01:08:59 +02:00
Petr Mrázek c8cd307bcf Added missing method stubs to df_item. 2011-10-26 23:47:45 +02:00
Petr Mrázek 1f0e91c3d0 Add enum for item types. 2011-10-26 23:12:20 +02:00
Petr Mrázek b545de7f43 Items refactor. readItem turned into copyItem, most Items methods now accept plain df_item * instead of the copies. 2011-10-26 22:18:13 +02:00
Petr Mrázek 866b63f567 More of the items overhaul 2011-10-25 13:30:41 +02:00
Petr Mrázek 2adf1d22eb Item description method found! 2011-10-25 05:31:37 +02:00
Petr Mrázek 04495a304c Kill item variable accessors. YES. 2011-10-25 04:48:06 +02:00
Petr Mrázek 998d85919f Windows offset for save name, some tweaks, updated stonesense submodule to current. 2011-10-23 22:23:54 +02:00
Petr Mrázek a83d9fa944 Added mouse position and designation coord, along with a 'trackpos' command for kittens plugin. 2011-09-26 03:39:27 +02:00
Petr Mrázek 83ae8d6c12 Creature likes (at least the structures are back), malloc wrapper that sets memory to 0xCC. 2011-09-25 01:29:55 +02:00
Petr Mrázek dc81367a68 Gems are now properly detected in prospector. Nuked some legacy garbage. 2011-09-24 06:48:06 +02:00
Petr Mrázek 71de950919 Possible creature variables 2011-09-21 21:48:54 +02:00
Petr Mrázek 1df71d2b7a More tweaks related to creatures, murder implication flag for items/corpse pieces. 2011-09-21 13:47:12 +02:00
Petr Mrázek dca4c43b0b Creatures module rewrite 2011-09-18 13:49:10 +02:00
Petr Mrázek d47e9b35a0 Update stonesense, fix small text alignment error. 2011-09-04 14:16:12 +02:00
Petr Mrázek e48f8af9a8 Remove stray include. 2011-08-31 14:41:46 +02:00
Petr Mrázek e5f0c7637e Fixes to help/readme entries related to digcircle. 2011-08-27 15:12:03 +02:00
gsvslto b173a59a42 Change < to " for dfhack/BitArray.h include
Unchanged, I got and error when building in MSVC++ 2010 Express

Not sure if line endings are UNIX as online edit from Windows machine
2011-08-23 10:57:37 +02:00
gsvslto 90163c4be5 Added includes for <maps> and <vector>
Without, I got errors when building in MSVC++ 2010 Express

Not sure if line endings are UNIX as online edit from Windows machine
2011-08-23 10:48:28 +02:00
Petr Mrázek 4922be0a75 Circle dig designation tool. 2011-08-22 15:18:35 +02:00
Petr Mrázek b1868f802c Make autodump fix the block-local item ID vectors. 2011-08-21 23:02:05 +02:00
Petr Mrázek d2d4ce898d Added weather plugin info to readme, option to make the console not catch 'CTRL+C' on linux. 2011-08-18 22:09:30 +02:00
Petr Mrázek 09cb6a6828 Added exporatory mining patterns tool. 2011-08-17 13:26:03 +02:00
Petr Mrázek 03e3e9002b Linux debug... 2011-08-16 23:39:18 +02:00
Petr Mrázek a0f99ef707 Many tweaks to plugins, reorganized the build system and removed more cruft. 2011-08-14 08:42:21 +02:00
Petr Mrázek 81e6bce92c Command history separated from Console. 2011-08-13 14:42:09 +02:00
Petr Mrázek d93032de3b Fix formatting in Core.cpp 2011-08-07 08:41:46 +02:00
Petr Mrázek fedb6150f4 Merge https://github.com/warmist/dfhack 2011-08-06 21:00:54 +02:00
Petr Mrázek cb93b5542e Fix problem with running interactive commands from hotkeys. 2011-08-06 04:37:29 +02:00
Petr Mrázek 4d6ad9e073 A whole bunch of fixes for crash bugs. 2011-08-05 05:02:36 +02:00
Petr Mrázek be358ec1de Ported deramp, cleanowned and cleartask tools. 2011-08-05 00:41:31 +02:00
Warmist 4b9786f8af Thread safety for void* sharing part of DFHack::Core 2011-08-04 22:33:54 +03:00
Warmist 9985b5de0f DFHack::Core modification: added a way to share void* between plugins and/or plugin unloads. 2011-08-04 22:00:21 +03:00
Petr Mrázek 6cc66d3434 Merged grow and immolate tools into plants plugin. 2011-08-02 02:21:25 +02:00
Petr Mrázek b0659224fa Fix windows build. 2011-08-01 06:30:29 +02:00
Petr Mrázek fa970fc8fa Hotkey commands work with TEXT mode (limited). 2011-08-01 04:40:23 +02:00
Petr Mrázek 331ada8f91 Don't take over console in TEXT mode. 2011-08-01 03:31:52 +02:00
Petr Mrázek a36d8b0619 Merge https://github.com/warmist/dfhack 2011-07-31 23:29:34 +02:00
Petr Mrázek 262e915b93 Make building DFusion optional. 2011-07-30 22:08:24 +02:00
Petr Mrázek 9cf69164ed BitArray implementation, now used in Maps for the flags. 2011-07-30 16:47:49 +02:00
Petr Mrázek a9a3a3ff5f Merge branch 'topic_tools' 2011-07-28 02:36:25 +02:00
Warmist bc23cc9eca Made Process::setPermisions functions, to set memory page's permisions 2011-07-28 01:00:12 +03:00
Petr Mrázek 2a95a4edf2 Windows part of mutex rewrite. 2011-07-27 14:22:37 +02:00
Petr Mrázek 2470e564a9 Linux-side of threading function rewrite. Windows=broken. 2011-07-27 05:59:09 +02:00
Petr Mrázek 8dec3546a3 More plugin work 2011-07-26 11:01:16 +02:00
Petr Mrázek d65f5596cb Ported mode, probe. Some changes required for that. 2011-07-25 10:14:58 +02:00
Petr Mrázek a8ff3d9d48 Merge pull request #116 from matthew-cline/TOPIC-items
Improved Items module and itemhacks plugin
2011-07-25 01:10:07 -07:00
Matthew Cline 109f34cd6e Improved Items module and itemhacks plugin
Items module:
* Identified flags for "owned by hostile" and "owned by trader".
* Identified an unknown uint32_t field as being the item age.
* Added and documented ClassNameCheck for more item ref types, though
  they aren't used yet (other than to mark that item ref class as a
  "known" class).
* Added method to get list of an item's unknown item ref classes.
* Made all unknown flags have name 'unk#', instead of some also having
  the name 'u_ngrd#'.

Itemhacks plugin:
* Folded second command into "dumpitems unknown", which will list
  any items which have the unknown vector field non-empty (which seems
  to be associated with tasked items).
* "dumpitems unknown" will also dump any item with a set unknown flag
  or with item refs of an unknown class.
2011-07-24 21:35:50 -07:00
Matthew Cline 41130cb613 ClassNameCheck tracks class names used
Each time the ClassNameCheck constructor is called it adds to the list
of class names given to it, which can later be retrieved by a class
static method.
2011-07-24 21:24:34 -07:00
Petr Mrázek bd9643c8cc Merge branch 'dfapi'
Conflicts:
	CMakeLists.txt
	library/DFProcess-linux.cpp
	library/include/dfhack-c/modules/Creatures_C.h
	library/include/dfhack/modules/Maps.h
	library/modules/Creatures_C.cpp
2011-07-23 17:29:05 +02:00
Petr Mrázek 6b6eed34cc Merge https://github.com/zilpin/dfhack 2011-07-23 17:08:15 +02:00
Petr Mrázek 97ee2a2a39 Merge pull request #95 from matthew-cline/TOPIC-pregnancy
creatures: read and write pregnancy counter
2011-07-23 08:07:34 -07:00
Petr Mrázek caf6f881df Minimize notes module. 2011-07-23 03:25:42 +02:00
Petr Mrázek 35cf108040 Fix up material color names and basic flag array type in Materials. 2011-07-22 03:54:09 +02:00
Petr Mrázek e00a4e8888 Fix ore/gem sorting. 2011-07-22 03:00:56 +02:00
Petr Mrázek 7325808c98 Fixes to materials. 2011-07-22 02:44:36 +02:00
Petr Mrázek 131c32494a Added DF material structs reversed by Quietust 2011-07-21 22:37:02 +02:00
Matthew Cline 86577d4f8a Notes module
Gets a vector of pointers to note structs
2011-07-20 18:26:52 -07:00
Petr Mrázek bde3616015 Merge pull request #110 from matthew-cline/TOPIC-inorganic
More info on inorganic materials
2011-07-20 12:35:58 -07:00
Petr Mrázek 873cbd8388 Make 'die' plugin a builtin, made the console interaction less confusing. 2011-07-20 20:58:19 +02:00
Matthew Cline 6631f97a6a More info on inorganic materials
Get value, wall tile, boulder tile, smelting info and strand extraction
info for inorganic materials.  Prospector uses this to separete out vein
materials into ores, gems and other.

Offsets provided for both Linux and Windows, but only tested on Linux.
2011-07-20 06:18:50 -07:00
Petr Mrázek 0defcc9889 Making Items a bit more sane. It's still using Accessors though. 2011-07-20 10:41:13 +02:00
zilpin 3d5169901c minor bug fixes 2011-07-18 16:34:35 -04:00
zilpin 4eb13800cd -WriteVein(), and some convenience functions for the vein bitmaps. 2011-07-18 15:55:41 -04:00
Petr Mrázek 00cf7bc39e Merge branch 'dfapi' of github.com:peterix/dfhack into dfapi 2011-07-18 16:28:06 +02:00
Petr Mrázek 84f74bc091 Added plugin loading/unloading/reloading. Many locks. Too many damn locks. 2011-07-18 16:22:49 +02:00
Petr Mrázek e021199178 Merge pull request #106 from matthew-cline/TOPIC-folder
Get game's current world save folder
2011-07-17 02:26:06 -07:00
Petr Mrázek fdb5397a1d Safer console shutdown. 2011-07-17 11:06:45 +02:00
Matthew Cline a923d19f76 Get game's current world save folder
Use World::ReadWorldFolder() to get "region1" (or whatever it currently
is).  Only have offset for Linux.
2011-07-16 16:00:50 -07:00
Petr Mrázek 9f822af45a Process: added a method for getting the main module base (windows). Returns 0 on linux. 2011-07-16 23:00:28 +02:00
Petr Mrázek d6d108dd34 Qt plugin fixes for windows, renamed interface to df_interface in Gui. 2011-07-16 18:10:08 +02:00
Petr Mrázek 9025066a2b Added SDLreal.dll on windows. 2011-07-16 10:32:18 +02:00
Petr Mrázek 0d1dd5aead Extended escape sequences are 4 bytes, not 5. 2011-07-16 10:31:49 +02:00
Petr Mrázek 003ad63c56 Disabled ctrl+c on windows (null signal handler). Some small fixes. 2011-07-16 08:00:13 +02:00
Petr Mrázek fd418cd2dc cmake cleanup in library/ 2011-07-16 07:59:36 +02:00
Petr Mrázek 9eea07fb66 The console is now awesome when you use C++ streams too. 2011-07-16 00:15:20 +02:00
Petr Mrázek b85f196dc4 The console is now awesome on Windows too. 2011-07-15 19:58:17 +02:00
Petr Mrázek 459d48d75a Made the linux console super awesome. The dfhack script won't LD_PRELOAD dfhack for gdb. 2011-07-15 15:55:01 +02:00
Petr Mrázek 0af631aaa3 And nuke the rest of linenoise... 2011-07-14 12:28:41 +02:00
Petr Mrázek 3ecf244e67 Nuke linenoise. Now it's integrated in Console. 2011-07-14 12:21:07 +02:00
Petr Mrázek d21b196766 Error printing call for Console, the NYAN CAT! 2011-07-14 11:15:23 +02:00
Petr Mrázek f2b46274ec Fix for a bug in command history queue access. dfhack script can run valgrind. 2011-07-14 08:02:29 +02:00
zilpin de24b01a69 -fix pillar tile types to be TILE_SMOOTH instead of TILE_NORMAL.
-Added working (though clumsy) draw tile tool.
-Began lumberjack and veinswap tools.
2011-07-13 23:44:37 -04:00
Petr Mrázek 96153a7b05 Merge branch 'dfapi' of github.com:peterix/dfhack into dfapi 2011-07-14 04:06:12 +02:00
Petr Mrázek 792d272fbf Windows side of the Console rewrite 2011-07-14 04:05:27 +02:00
Petr Mrázek a40153a8e1 Merge pull request #98 from matthew-cline/TOPIC-vermin
Vermin module and colonies plugin
2011-07-13 04:24:38 -07:00
Petr Mrázek 630b746cfe Integrate linenoise into Console - Linux part 2011-07-13 11:45:30 +02: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
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 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
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 07c11c704d Fix Windows build (untested, expect explosions). 2011-07-09 16:05:40 +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 367d79bcfa Weather plugin to mirror the weather tool. 2011-07-07 10:57:57 +02: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
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 74ab0f94aa Added std namespace use for stl types in MapExtras.h 2011-07-06 12:26:18 +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 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
Petr Mrázek 8f27966540 Console revamp - windows part 2011-06-22 14:25:39 +02:00
Petr Mrázek f8cdd95b09 Console revamp - linux part. 2011-06-22 08:14:21 +02:00
Petr Mrázek c6dc4900d2 Very basic plugin system. 2011-06-20 04:29:38 +02:00
Petr Mrázek ffd2ca3281 License updates done, removed argstream. 2011-06-20 01:17:49 +02:00
Petr Mrázek f2b91d3269 Making ready for adding plugins. Fixes all over the place, more removal of obsolete parts. 2011-06-20 01:12:07 +02:00
Petr Mrázek e0fb8f7c81 Crud removal: Context is gone. Added missing FakeSDL.h 2011-06-17 15:02:43 +02:00
Petr Mrázek 4da11927af Kittens, now for real. Also a lightweight curses relacement. Use it, love it. 2011-06-17 02:09:03 +02:00
Petr Mrázek 93be1eb1fb Yay, kittens! Also some license cleanup, IO thread usage, more SDL wrapping and ability to run reveal from DFHack console. 2011-06-16 23:53:39 +02:00
Petr Mrázek 7136ac7aa4 Get rid of the stdint.h garbage and use the real header. 2011-06-15 17:35:47 +02:00
Petr Mrázek b29871cb8c Fixed tick count offset, hotkey support is back from the dead (untested) 2011-06-15 06:09:24 +02:00
Petr Mrázek 71d46d533f Some windows console refinement. 2011-06-14 16:49:53 +02:00
Petr Mrázek 22b79bb46e Now works on Windows again, some more cleanups, added a singleton Core object for holding all the globals. 2011-06-14 16:13:28 +02:00
Petr Mrázek 0a428b509e Vegetation module becomes rather skeletal. 2011-06-13 21:11:02 +02:00
Petr Mrázek 511f459182 Stripped nonsense from the DFHack vector wrapper. Next step: removal. 2011-06-13 01:14:10 +02:00
Petr Mrázek 81d648dfa7 First 'working' DFHack inside DF, for 'some' values of 'working'. 2011-06-12 23:17:40 +02:00
Petr Mrázek da2fb1cb1a Fix creature owned items vector offset on Windows, added support for owned items to more versions. 2011-05-28 10:18:50 +02:00
Petr Mrázek 6e00dc4c8e Update version numbers, readme file. Adding a lot of batch scripts for the windows versions of new tools. 2011-05-27 08:20:52 +02:00
Petr Mrázek 07bb0408c1 Fix memory.xml and pdcurses.dll copy problems for good. 2011-05-26 12:33:38 +02:00
Petr Mrázek a459ee8137 Added 'glowing barrier' to the known tile types. 2011-05-26 05:51:04 +02:00
Petr Mrázek 0661248d1f Cleanmap filters on matter state. Anything non-solid is removed (including mud and water). Solid mud and snow stay. 2011-05-26 02:14:42 +02:00
Petr Mrázek 6d32802dd4 Vegetation update order is a 16bit integer! 2011-05-26 02:13:29 +02:00
Petr Mrázek 608b0f9f56 Better document Items module 2011-05-26 02:10:23 +02:00
Petr Mrázek e7d9bc6f91 matter states for tile coverings, pig iron watch in dfstatus 2011-05-25 05:13:24 +02:00
Petr Mrázek d2e01ec579 Fix many warnings from MSVC builds. 2011-05-23 21:30:51 +02:00
Petr Mrázek 040b5be290 Reformat stopwatch.h for readability 2011-05-23 04:19:17 +02:00
Petr Mrázek c6b749e7e5 Small tweak to process enumeration on Windows. 2011-05-23 03:24:16 +02:00
Petr Mrázek e5e0391d76 stop dfstatus from wasting time. added 'stopwatch.h' to extras for getting accurate unix time in milliseconds 2011-05-21 21:54:53 +02:00
Petr Mrázek bb99924b24 Curses support across platforms! 2011-05-21 20:32:53 +02:00
Petr Mrázek 909cd8b60b Move termutil to a globally accessible area. 2011-05-17 08:36:38 +02:00
Petr Mrázek 61dea59e29 Fix a big heap of warnings. 2011-05-15 22:24:40 +02:00
Petr Mrázek 515f4952a9 Merge https://github.com/angavrilov/dfhack
Conflicts:
	library/include/dfhack/DFProcess.h
2011-05-15 21:50:20 +02:00
Petr Mrázek fe6eb4b70a Fix for MSVC build, added prototype cmd.exe detection on windows. 2011-05-15 05:19:51 +02:00
Petr Mrázek 4d3f4c2c23 Unknown 3 was update order. 2011-05-15 02:21:24 +02:00
Petr Mrázek d9e9fae7a0 Unknown 1 was the grow counter. Added the immolate and grow tools. 2011-05-15 01:53:43 +02:00
Petr Mrázek 43fc15476a Added ability to set trees on fire. 2011-05-15 00:26:44 +02:00
Petr Mrázek b65c4ed55b New vegetation variables, fixed vegetation vector for 31.25 linux 2011-05-14 15:51:11 +02:00
Petr Mrázek 7dbb41cc66 Add method for writing block/map feature indexes 2011-05-13 05:00:29 +02:00
Alexander Gavrilov a7be2aee33 Support actually removing owner links between items and creatures. 2011-05-12 21:10:29 +04:00
Alexander Gavrilov c7f4f8c281 Support printing refs in dfitemdump, and add methods for containers. 2011-05-12 21:10:29 +04:00
Alexander Gavrilov 77dda6faea Support overwriting and removing values in STL vectors. 2011-05-12 21:10:20 +04:00
Petr Mrázek 4631ec2e0d Item quantity support for 31.25 2011-05-11 23:53:16 +02:00
Alexander Gavrilov ed1477b53d Support listing items owned by a creature. 2011-05-09 14:49:44 +04:00
Alexander Gavrilov 14f291d539 Support reading the item ID field, which is used for cross-referencing. 2011-05-09 14:04:39 +04:00
Alexander Gavrilov e993bbcb67 Implement class name caching and optimized equality check. 2011-05-09 13:48:54 +04:00
Alexander Gavrilov 3935293986 Attach and suspend all threads on linux. 2011-05-09 13:17:35 +04:00
Petr Mrázek abc473db5d Implemented thread enumeration on linux. 2011-05-09 01:55:02 +02:00
Petr Mrázek 6dc80d393f Remove silly debug output 2011-05-08 03:36:26 +02:00
Petr Mrázek 96bfec5402 The mood offset on linux was OK. General fixage of things. 2011-05-08 03:21:34 +02:00
Petr Mrázek 8c4916958e A fixme in Maps: replace feature reading with accessors 2011-05-07 20:23:31 +02:00
Petr Mrázek 8b2ab8de68 Ending the map feature failtrain. 2011-05-07 09:07:28 +02:00
Petr Mrázek 97af676bdb Fix color variable naming in t_descriptor_color 2011-05-07 03:48:41 +02:00
Petr Mrázek fc0f6f1e48 Minor rearrangement with no impact 2011-05-07 03:44:10 +02:00
Petr Mrázek 7ad83c80b8 added modified getopt (c++-ized) with BSD license, vegetation flags clarified, prospector lists trees and plants separately,
prospector pretty-prints
2011-05-02 05:03:48 +02:00
Petr Mrázek 3318487ad9 Untested item deletion mode for the autodump tool. 2011-04-30 04:48:28 +02:00
Petr Mrázek 456a979244 Fun with tiletypes. Expect explosions. 2011-04-28 23:00:52 +02:00
Petr Mrázek 03a3f29871 Fix misplaced exports 2011-04-28 05:10:37 +02:00
Petr Mrázek 6e38ce71df Item flag garbage_collect. 2011-04-28 01:41:59 +02:00
Petr Mrázek 923c8cae9c Occupancy support in MapCache. Added the item dumper tool mentioned on irc (autodump). 2011-04-28 01:36:31 +02:00
Petr Mrázek 21ddc2c461 Fix build on Windows. 2011-04-24 03:00:23 +02:00
Petr Mrázek f481ee7b5d Add missing stddef.h include in Creatures module. 2011-04-24 02:49:49 +02:00
Petr Mrázek b2a47cf99c Fix STLstring writing for plain linux process. 2011-04-20 21:32:49 +02:00
Petr Mrázek 66bb9d448c Big messy commit... 2011-04-20 01:28:47 +02:00
Petr Mrázek bc855b296f Merge branch 'master' of https://github.com/angavrilov/dfhack 2011-04-17 16:08:13 +02:00
Petr Mrázek cf3534bc42 Fix silly typo. 2011-04-17 13:13:23 +02:00
Petr Mrázek 67ea981dc3 Big ugly deuglyfication of DFTileTypes and its use in the tools. 2011-04-17 13:06:19 +02:00
Petr Mrázek e255a2cba6 Rename single character member variables from DFTileTypes to something sensible. 2011-04-17 11:37:36 +02:00
Petr Mrázek 6e607d45d9 Fixed mingw32 build. 2011-04-17 01:48:58 +02:00
Petr Mrázek b0cb59a3f2 The item designator tool lives again. 2011-04-16 23:57:04 +02:00
Petr Mrázek 89169053ff Item support for windows 31.25 2011-04-16 21:02:20 +02:00
Alexander Gavrilov 56b29cf12e Merge remote-tracking branch 'origin/master' 2011-04-15 10:58:09 +04:00
Petr Mrázek 34128c2f6d Item Accessor method pointer was used incorrectly. 2011-04-14 15:16:12 +02:00
Petr Mrázek 1a8c27ce01 Fix accessor mess I made. Added Accessor description dump to the dfitemdump tool and Items module. 2011-04-14 01:42:03 +02:00
Alexander Gavrilov ebc4d21e66 Improve name structure handling, and support duplicating them (on linux).
The name structure actually contains additional linguistical data,
ignoring which produces wrong renderings for non-dwarfish names.
This data also obviously has to be copied with the structure.

Copying STL strings works by replicating the shared copy logic
(i.e. incrementing the reference counter), but leaks memory owned
by the string being overwritten.
2011-04-13 20:36:10 +04:00
Petr Mrázek f5911a14a6 Some const correctness, re-enabled job printing in the creature dump tool. 2011-04-12 13:59:07 +02:00
Petr Mrázek 212500ee00 Big Items refactor, made all the Accessor offsets optional. 2011-04-11 22:13:06 +02:00
Petr Mrázek 77f0885d9e Merge https://github.com/angavrilov/dfhack into items 2011-04-11 12:48:28 +02:00
Alexander Gavrilov 2e0ec2db72 Support retrieving the item owner reference.
Reference is done by item id, and stored in some kind
of generic reference vector in the item structure.
2011-04-11 14:32:53 +04:00
Alexander Gavrilov fbf76440b5 Try to handle signed and unsigned 16-bit accessors.
Not sure whether it makes much sense, seeing as some
accessors (e.g. wear) actually return 32-bit values,
assuming that the caller would correctly sign-extend
the lower half and discard the upper.
2011-04-10 22:44:01 +04:00
Alexander Gavrilov f6ae41fe49 Provide access to item header, including flags, and wear information.
Add preliminary offsets for the item data to Memory.xml
2011-04-10 22:42:25 +04:00
Alexander Gavrilov e3897b0f93 Improve the accessor instruction parser.
Instead of hard-coding complete machine code patterns, try
to really parse a certain subset of MOV instructions.
2011-04-10 21:51:21 +04:00
Petr Mrázek b0b76f6d7c Tool for resetting hidden tile status after botched reveals. 2011-04-10 18:41:49 +02:00
Petr Mrázek b630e93c5a Added base layer material support to map cache, material display to dfprobe. 2011-04-10 17:01:58 +02:00
Petr Mrázek 7876a42258 The C test tool doesn't compile as a plain C program! 2011-04-10 15:36:01 +02:00
Alexander Gavrilov cfc1dad4b6 Fix the item flag bitfield & set the item vector ptr. 2011-04-10 16:55:22 +04:00
Petr Mrázek 1d35044db3 Started removing C++-isms from C wrapper. Removed DFGlobal.h 2011-04-10 13:12:28 +02:00
Petr Mrázek c1deee768e Add missing files, wix build on windows. 2011-04-10 11:03:24 +02:00
Petr Mrázek d4e2850768 Make C-wrapper compile times less ridiculous. 2011-04-10 10:50:32 +02:00
Petr Mrázek bb04aa1a32 Linux header cleanups. Windows side will follow. 2011-04-10 10:19:15 +02:00
Petr Mrázek 425971ef8c Linux fixes/creature vector addresses. Needs more testing. 2011-04-10 09:21:32 +02:00
Petr Mrázek 696ca5ccb9 Merge branch 'master' of https://github.com/angavrilov/dfhack 2011-04-10 06:17:55 +02:00
Petr Mrázek 4547c8c0aa Use MapExtras more. 2011-04-10 06:17:11 +02:00
Alexander Gavrilov b5d086ac02 Fix memory access on 32-bit linux.
The reason for random read failures is that these defines
are only effective if they are placed before any system
headers, especially sys/types.h; in the old version they
didn't work, and pread was expecting a signed 32-bit offset.
2011-04-09 22:54:45 +04:00
Petr Mrázek 5465890b34 Added more direction flags to engravings. 2011-04-04 11:57:09 +02:00
Petr Mrázek c0cdf8d827 Linux 31.22 support. 2011-04-04 03:49:29 +02:00
Petr Mrázek 7b1f3ce72b Job ID is a Word, not DWord. 2011-04-03 21:43:16 +02:00
Petr Mrázek 8b8c70b5ff Big creature jobs read/write fix (it was cmpletely broken) 2011-04-03 21:27:47 +02:00
Petr Mrázek fcc23149db Engravings: 3 byte padding after the display character. 2011-04-03 03:25:12 +02:00
Petr Mrázek 46c5041bea Direction flags for engravings. 2011-04-03 03:19:34 +02:00
Petr Mrázek a68702000d hexdump accepts length in bytes, hopefully fixed engravings struct 2011-04-03 02:49:03 +02:00
Petr Mrázek e18ade4ea6 Engravings are 0x28 bytes long. 2011-04-03 02:00:56 +02:00
Petr Mrázek 4cfc12b52b Engravings module. 2011-04-03 00:15:47 +02:00
Petr Mrázek 68b13d6bf0 Dreary offset work. 2011-04-02 12:35:23 +02:00
doomchild 84494e873c added readClassName 2011-04-01 14:42:03 -05:00
doomchild 3ef6893bc7 removed getPosition prototype (since the Position module doesn't exist anymore) 2011-04-01 14:41:26 -05:00
doomchild cb88d59358 uncommented C process wrappers 2011-03-31 13:56:12 -05:00
doomchild 695303d0c6 added memrange buffer callback 2011-03-31 13:54:36 -05:00
doomchild 5e67ee2970 removed unneeded memrange wrapper struct
renamed some stuff to match the C++ version
added read, write, readSTLVector, readString, getPath, getMemranges, and getPID
2011-03-31 13:47:17 -05:00
doomchild fea7d56c32 added DFProcess_C stuff to project lists (although they're commented out, since it's not done yet) 2011-03-31 09:46:34 -05:00
doomchild 9b6f5d2ac1 first commit 2011-03-31 09:45:53 -05:00
Petr Mrázek 837ea52c22 Fix windows/wine version information bugs related to processes without a PE header. 2011-03-31 05:39:12 +02:00
Petr Mrázek 6cd08c3f31 Suspend all DF threads on Windows. 2011-03-31 01:14:08 +02:00
Petr Mrázek d6bd4d47fb Revert "Hide depend headers better, upgraded tinyxml"
This reverts commit 54a580ac68.

Conflicts:

	CMakeLists.txt
	library/CMakeLists.txt

Signed-off-by: Petr Mrázek <peterix@gmail.com>
2011-03-31 01:12:50 +02:00
Petr Mrázek e61a907da1 Merge https://github.com/doomchild/dfhack 2011-03-30 14:35:41 +02:00
Petr Mrázek 37b0dbe02e 31.25, tweaks to make dfliquids and dfreveal better 2011-03-30 14:27:47 +02:00
doomchild 1bf6a2ea71 generally, function signatures are supposed to match between header and implementation file... 2011-03-29 10:42:04 -05:00
doomchild 4c55f54464 spelled a couple of allocator names wrong 2011-03-29 10:41:45 -05:00
doomchild cf59b7802d added getPosition 2011-03-29 10:23:04 -05:00
doomchild e34831a354 added getters/setters for cursor/view coords, window size, and screen tiles added ReadHotkeys 2011-03-29 09:59:12 -05:00
Petr Mrázek b3455b0192 MSVC is a pile of fail that can't even align variables in a struct. 2011-03-28 11:22:21 +02:00
Petr Mrázek 75b44ba33b Fix possible bug in zero length C string reading 2011-03-28 02:13:32 +02:00
Petr Mrázek cfd309bf70 fix C string idiocy. 2011-03-28 02:09:13 +02:00
Petr Mrázek 8ef1ef1985 31.23 Windows support, tiny little tweaks to liquids tool. 2011-03-27 00:02:23 +01:00
Petr Mrázek 635e1998ee Stop DFVector from accessing VersionInfo in the constructor (slight optimization). 2011-03-25 06:40:33 +01:00
Petr Mrázek 1a1a28ee3d World module offsets for windows 31.22 2011-03-25 03:27:07 +01:00
Petr Mrázek 4c030e7cc1 Some linux 31.22 offsets, slight tweaks to Materials 2011-03-25 02:31:27 +01:00
Petr Mrázek 754647fe96 The mysterious variable is mysterious, 31.22 support, needs testing 2011-03-24 23:21:50 +01:00
Petr Mrázek ecb239f64c Merge branch 'worldmap' 2011-03-24 17:43:28 +01:00
Petr Mrázek 1f4ac33200 Clarification of some values of geology and local feature reading 2011-03-24 17:41:34 +01:00
Petr Mrázek 7c971cd8f1 World coords for dfposition 2011-03-24 06:13:21 +01:00
Petr Mrázek d0a171a350 Add a form of ReadFeature applicable to already read blocks. 2011-03-24 04:39:38 +01:00
Petr Mrázek 4090a378c1 Remove message spam, make sure the old methods act the same. 2011-03-24 04:20:34 +01:00
Petr Mrázek 64a578b204 Added cache for map features inside the Maps module along with convenience feature getter for blocks. Adamantine vein refiller tool. 2011-03-24 04:00:23 +01:00
Petr Mrázek 34a687b95a Make sure things build with playground turned on. 2011-03-21 21:29:54 +01:00
Petr Mrázek e8ee9b7cab dflair tool to match what the dfusion people have. minor tweaks to playground 2011-03-21 21:14:07 +01:00
Petr Mrázek 7f0ba3b1ff Fix header install rule. 2011-03-20 17:24:34 +01:00
Petr Mrázek 0a35afb16a Use proper paths in build system. 2011-03-20 17:17:33 +01:00
Petr Mrázek fe92edfb4e No more generated config files. 2011-03-20 06:20:23 +01:00
Petr Mrázek c06df18ea7 Fix linux builds not installing the header files 2011-03-20 02:06:50 +01:00
Petr Mrázek 1481b07b6b Ubuntu packaging magic, forgotten header files, an icon. 2011-03-19 23:26:32 +01:00
Petr Mrázek 2bc7aacb79 Remove precompiled garbage, fix dfcleanmap for real 2011-03-19 20:17:04 +01:00
Petr Mrázek a7f3258018 Get rid of SHM in modules. 2011-03-18 17:58:48 +01:00
Petr Mrázek 7809ed6cd5 Small fixes to documentation and build scripts. 2011-03-18 16:47:55 +01:00
Petr Mrázek d75c940958 Kill Position module everywhere. 2011-03-18 11:45:37 +01:00
Petr Mrázek e1b80e6f33 Massive tool and wrapper fixage. 2011-03-18 11:38:37 +01:00
Petr Mrázek a6c724bfb5 Module rearrangement and doxygen documentification. API break. 2011-03-18 11:09:26 +01:00
Petr Mrázek b94ddf50d0 Eliminated silly dependency cascade within the library. Some documentation tweaks. 2011-03-18 08:53:59 +01:00
Petr Mrázek 737643a33f Spring cleaning in python wrappers. 2011-03-18 06:17:43 +01:00
Petr Mrázek 001b8e059d Merge branch 'master' of https://github.com/doomchild/dfhack 2011-03-18 06:12:16 +01:00
Petr Mrázek 2911b203ce DFHack. Now with more packaging fun. 2011-03-18 00:07:40 +01:00
Petr Mrázek 557d6733e2 Make the build system sane, pt. 1 - no install or packages yet 2011-03-16 07:35:08 +01:00
doomchild 901cebc683 updated to use centralized pointer_dict retrieval
fixed an argtypes bug in read_vegetation
2011-03-15 15:36:48 -05:00
doomchild 35438b82e3 added Hotkey structure 2011-03-15 15:35:50 -05:00
doomchild 290368321c updated to use the centralized pointer_cache retrieval 2011-03-15 15:35:29 -05:00
doomchild 2c28d8f3bf added read_hotkeys 2011-03-15 15:35:00 -05:00
doomchild 6b467a36b5 centralized getting an array/list from the pointer_cache 2011-03-15 15:34:39 -05:00
doomchild d28279894f first commit 2011-03-15 15:33:39 -05:00
Petr Mrázek 2ea6a3d84a Merge branch 'master' of https://github.com/doomchild/dfhack 2011-03-14 22:06:25 +01:00
doomchild fda4ad94cd added read_local_features 2011-03-14 15:01:09 -05:00
doomchild e126f21e4b updated map coordinate struct/union
added callback for turning a std::map of coordinates to features into a list
2011-03-14 15:00:51 -05:00
doomchild 5cbc9e5918 added Maps_ReadLocalFeatures 2011-03-14 14:59:31 -05:00
doomchild b1ed423f98 added map coordinate struct and the callback needed to flatten the std::map of coords to features into an array 2011-03-14 14:59:03 -05:00
doomchild d347713860 Merge remote branch 'upstream/master' 2011-03-14 09:54:19 -05:00
Petr Mrázek 6ed74065d1 Cleanmap bugfix. 2011-03-14 09:18:09 +01:00
Petr Mrázek cb86f52993 minor liquids bugfix, added typedef for planecoord so that stonesense builds. Build system bits. Doxygen bits. 2011-03-13 19:38:32 +01:00
Petr Mrázek b6d02768b4 No DbgHelp.h 2011-03-12 11:01:53 +01:00
doomchild f0f3960bb0 added read_vegetation 2011-03-11 16:59:36 -06:00
doomchild de8226e142 fixed a couple of allocator callback names
added __str__ method to Tree
2011-03-11 16:59:25 -06:00
doomchild c5e9f67389 added ReadVegetation implementation 2011-03-11 16:58:42 -06:00
doomchild 870be3a1e7 added tree buffer allocators
renamed a couple of allocators for consistency
2011-03-11 16:58:22 -06:00
doomchild 6e54715706 added ReadVegetation 2011-03-11 16:56:21 -06:00
doomchild df3c6d706f fixed a couple of small pointer bugs 2011-03-11 16:11:34 -06:00
Petr Mrázek 4e3a66fcd8 Merge branch 'master' of https://github.com/doomchild/dfhack 2011-03-11 22:38:25 +01:00
doomchild 5aeac3d43d updated CreatureCaste, and CreatureType structs
added MatglossPlant and creature type descriptor structs
got the creature type allocator callback working
2011-03-11 14:13:52 -06:00
doomchild f6a7de9ba6 updated getters to use the changed pointer caching stuff 2011-03-11 14:12:07 -06:00
doomchild 5b29bf5280 changed pointer cache to use array addresses instead of pointer ids 2011-03-11 14:11:36 -06:00
doomchild b9e8aa8952 Materials_getRaceEx finally works as expected 2011-03-11 14:10:51 -06:00
doomchild 49b7f8acb5 fixed a couple of bad return values 2011-03-11 14:10:22 -06:00
doomchild b75f513238 updated creature caste and type structs
removed some (now) unneeded callbacks
made a better t_creaturetype -> c_creaturetype converter
2011-03-11 14:09:51 -06:00
Petr Mrázek c223bb858f Added MapExtras, ported dfliquids to MapCache. Fixed vein non-ident bug in dfvdig. 2011-03-11 03:09:45 +01:00
doomchild 1de2efb162 updated documentation 2011-03-09 14:25:32 -06:00
doomchild 828df5fa80 consolidated buffer stuff, so that the callbacks are a lot shorter 2011-03-09 14:20:34 -06:00
doomchild 1839c6b843 fixed callback registration
allocator callbacks now cache the buffers and associated pointers so they don't get collected too early
added CreatureCaste, TileColor, and CreatureType classes
2011-03-09 12:29:29 -06:00
doomchild 50af9e2d7e updated to use the pointer caching callbacks 2011-03-09 12:27:58 -06:00
doomchild 5bd51c2e08 updated to use the allocator callbacks correctly 2011-03-09 12:26:04 -06:00
doomchild 44cbc3fd5c fixed allocator callbacks to take pointers to pointers so they'll actually, you know, WORK 2011-03-09 12:23:20 -06:00
doomchild 187a8a0578 added a function to read all the veins at once
updated vein reading functions to use the allocator callbacks correctly
2011-03-09 12:22:00 -06:00
mikestewart 5c32991c40 Corrected game mode enum and added a mode changing tool to the playground. 2011-03-07 00:19:12 -05:00
Petr Mrázek bbbea3d023 Merge branch 'master' of https://github.com/doomchild/dfhack 2011-03-06 23:57:22 +01:00
Petr Mrázek 9e62ee6e75 Maps + Materials for 31.20. Still many broken offsets! 2011-03-06 20:27:40 +01:00
Petr Mrázek 9b0c426f9c The age of creatures is signed int. 2011-03-06 11:42:02 +01:00
Petr Mrázek 450562437a Memory.xml cleanup, removing redundant information. 2011-03-03 23:54:44 +01:00
doomchild c98bc9da9d updated to actually match the C stuff (not passing allocator callbacks every time, etc) 2011-03-03 14:19:20 -06:00
doomchild d314c733b2 added world and window_io getters 2011-03-03 14:18:28 -06:00
doomchild a816b67362 added key types for window_io module 2011-03-03 14:17:56 -06:00
doomchild 6fc1f31e31 first commit 2011-03-03 14:17:31 -06:00
doomchild 2c9016d2f2 added checks for allocator callback being null 2011-03-03 14:17:09 -06:00
doomchild 4cf037d5d3 changed a couple of argument types to be more explicit 2011-03-03 14:15:38 -06:00
doomchild 368f3c1b2e added World getter renamed get_Window to get_WindowIO 2011-03-03 14:14:59 -06:00
Petr Mrázek f307d2c4c3 Merge https://github.com/doomchild/dfhack 2011-03-03 17:51:27 +01:00
Petr Mrázek 6f7a8e3af5 Export fail removal - sa_feature, other minor changes 2011-03-03 17:50:17 +01:00
doomchild f4be3ef4fe updated to use t_gamemodes struct in Read/WriteGameMode calls 2011-03-03 10:18:27 -06:00
Petr Mrázek 680fe2981e Merge branch 'master' of https://github.com/tomprince/dfhack 2011-03-03 16:56:38 +01:00
Petr Mrázek 552180d430 Merge branch 'master' of https://github.com/doomchild/dfhack 2011-03-03 16:24:26 +01:00
Petr Mrázek faea954da1 Now with less endless loops. 2011-03-02 22:43:46 +01:00
Petr Mrázek 777e997da2 Make vein reading a little saner. 2011-03-02 22:36:02 +01:00
Petr Mrázek 3ff4e2c43e Get rid of 'unknown vein' spam. 2011-03-02 22:32:08 +01:00
Petr Mrázek a969f9893f Fix wine process suspend/resume. They use same mechanism as attach/detach now. 2011-03-02 22:23:24 +01:00
Petr Mrázek 509971d6b1 Small fix of the GameMode enum 2011-03-02 09:07:37 +01:00
Tom Prince f28a29d29d Fix some warnings on linux using C99 scanf modifiers.
Signed-off-by: Tom Prince <tom.prince@ualberta.net>
2011-03-01 17:36:26 -05:00
Tom Prince a82e249205 Move definition of sa_feature to .cpp to avoid unsed variable warning.
Signed-off-by: Tom Prince <tom.prince@ualberta.net>
2011-03-01 17:29:27 -05:00
Tom Prince f477fc002c Fix lots of -Wall warnings.
Signed-off-by: Tom Prince <tom.prince@ualberta.net>
2011-03-01 17:19:18 -05:00
Petr Mrázek 267bc1d446 Game/Control mode improvements. Use dfposition to check them. 2011-03-01 22:18:26 +01:00
doomchild f56cad1265 added grass vein and world construction readers 2011-03-01 14:39:56 -06:00
doomchild 42670c798b added grass vein and world construction types 2011-03-01 14:39:33 -06:00
doomchild 06ae98c9dd first commit 2011-03-01 14:39:18 -06:00
doomchild 0b77744905 added game mode reader 2011-03-01 14:38:55 -06:00
doomchild bdb0ebd8ea added grass vein and world construction readers 2011-03-01 14:38:18 -06:00
Petr Mrázek fa220531b7 Proper enum for game mode 2011-03-01 13:08:20 +01:00
Petr Mrázek 54a580ac68 Hide depend headers better, upgraded tinyxml 2011-03-01 07:50:56 +01:00
Petr Mrázek b1061d0f94 Game mode reading, removed some include paths 2011-03-01 06:59:23 +01:00
Petr Mrázek c6a402c2b8 One more vein type. No ready for use. 2011-02-27 20:43:44 +01:00
Petr Mrázek 254aec1787 Alternate way to read vegetation using a vector in map blocks. 31.19 only for now. 2011-02-27 13:59:45 +01:00
Petr Mrázek 4284b948a0 Creature matgloss, creature and color matgloss offsets. 2011-02-27 09:48:08 +01:00
Petr Mrázek d6592502cc No need to start Buildings for reading the custom types 2011-02-25 03:13:50 +01:00