Commit Graph

678 Commits (8665d1b195b67e175851a9c12a4c52ceb8f13aec)

Author SHA1 Message Date
Alexander Gavrilov 58eb199036 Add many new template functions for enums & bitfields.
An incompatible change: ENUM_KEY_STR returns std::string now.
The old behavior is available via enum_item_key_str function.
2012-03-17 12:52:22 +04:00
Alexander Gavrilov 14d6a62e1d Move CoreService to a separate file. 2012-03-17 12:09:30 +04:00
unknown 89edfd4e15 Initial Autolabor code. 2012-03-16 21:45:52 -07:00
Petr Mrázek 3168a2ef62 Add a tiletype function to get basic shapes from shapes. Track modules. 2012-03-16 20:41:07 +01:00
Quietust aa7f13266b Fix dwarfexport to use enum macros 2012-03-15 20:43:27 -05:00
Quietust 5464564ef6 Merge branch 'master' of git://github.com/angavrilov/dfhack
Conflicts:
	library/xml
2012-03-15 20:12:01 -05:00
Quietust 4d66218783 Update bprobe to print civzone subtypes 2012-03-15 20:09:56 -05:00
Warmist dea215d0b9 Alignment done (at least for now). Now there is a working access to df. 2012-03-16 02:08:55 +02:00
Petr Mrázek c72fb76316 MSVC fixage for the new socket API 2012-03-15 22:05:33 +01:00
Alexander Gavrilov f84b1539a8 Change to the traits representation of enum and bitfield properties. 2012-03-15 20:46:08 +04:00
Petr Mrázek 1ac8025025 Merge https://github.com/angavrilov/dfhack
Conflicts:
	plugins/workflow.cpp
2012-03-15 14:43:05 +01:00
Alexander Gavrilov 605ee9669a Plugin-exported functions now actually work. 2012-03-15 14:06:50 +04:00
Alexander Gavrilov 87f925e72e Add support for exporting functions from plugins, with example in rename.
TODO: test by actually calling them remotely.
2012-03-15 13:01:23 +04:00
Alexander Gavrilov e7851f5abd Improve support for void RPC functions, dfhack-run, etc. 2012-03-15 11:07:43 +04:00
Alexander Gavrilov 560e977f05 Implement trivial RPC interface for dfhack via TCP & protobufs.
Use it to make an executable capable of calling commands remotely.
2012-03-14 19:57:29 +04:00
Petr Mrázek 03e648b3a1 Fix ordering for custom attribute names dwarfexport uses. 2012-03-14 12:57:53 +01:00
Alexander Gavrilov c42e2ff053 Support crafts and add a couple of options in workflow. 2012-03-14 12:09:02 +04:00
Alexander Gavrilov a05cbcc2de Rename the world substruct with the save directory name. 2012-03-14 10:56:30 +04:00
Petr Mrázek d75908b95c Merge https://github.com/ClaytonHughes/dfhack
Conflicts:
	library/Core.cpp
	plugins/workflow.cpp

Just had to fix a few minor things.
2012-03-14 01:52:58 +01:00
Warmist f092edaa99 alignment hell, and started to port all plugins to new structure based mode. 2012-03-13 23:08:46 +02:00
Quietust a4ce1fff13 Update MapCache to allow decoding tiles underneath ice and constructions, and allow revflood to take those into account 2012-03-13 15:40:38 -05:00
Warmist 04a43501ac Fixed loops in linked lists, split xml_types into windows (and in the future linux) versions. Works, but not tested. Also updated offset for migrants. 2012-03-13 21:40:25 +02:00
Quietust 181f1c6ac6 Silence warning 2012-03-13 13:15:12 -05:00
Petr Mrázek eb4757043b Move depends out of main library, make them (static) libraries. 2012-03-13 14:46:48 +01:00
Clayton Hughes d7f7437ca1 "clear all" wasn't working properly - I'm bad at counting. 2012-03-12 00:32:43 -07:00
Clayton Hughes 708dc6c32d Forgot usage message for "clear all" 2012-03-12 00:10:55 -07:00
Clayton Hughes 7dff12ead7 Added "workflow clear all" command to remove all constraints. 2012-03-12 00:05:22 -07:00
Petr Mrázek 68fbb535c9 Merge https://github.com/warmist/dfhack 2012-03-11 23:01:14 +01:00
Petr Mrázek b50d7ecdf3 Fix typo in features.cpp 2012-03-11 22:45:41 +01:00
Quietust 27a7f97174 Merge branch 'master' of git://github.com/peterix/dfhack
Conflicts:
	plugins/CMakeLists.txt
2012-03-11 15:32:16 -05:00
Petr Mrázek 3b87f7bd3a Add revforget command, lair plugin
revforget throws away data reveal keeps in order to be able to hide
the revealed parts of the map

lair allows marking the map as monster lair (or the opposite while
using the 'reset' option)
2012-03-11 22:25:30 +01:00
Warmist 081aee1363 Fixes for DfHack::Process foolery. 2012-03-11 14:59:32 +02:00
Warmist 237d7b433a Updated to new dfhack standards. 2012-03-11 14:33:08 +02:00
Warmist 792e48fb76 Merge branch 'master' of git://github.com/peterix/dfhack
Conflicts:
	plugins/Dfusion/luafiles/xml_struct.lua
	plugins/Dfusion/luafiles/xml_types.lua
2012-03-11 13:50:14 +02:00
Warmist 35ca21426b Df reading starting to work. Lots of testing required, some types don't have accessors yet, etc bugs 2012-03-11 13:42:59 +02:00
Quietust 1124ab25fb Add map feature manager - allows enabling/disabling magma workshops as well as halting subterranean plant growth outside the caverns 2012-03-10 13:40:55 -06:00
Petr Mrázek 9d6a19b7d4 Track df2mc, stonesense 2012-03-10 18:48:52 +01:00
Petr Mrázek 75113b715a Misc fixes for warnings... 2012-03-10 16:03:11 +01:00
Petr Mrázek 003a0f9eb8 Merge https://github.com/angavrilov/dfhack 2012-03-10 15:51:45 +01:00
Petr Mrázek 50b7db982f Fix zlib, protobuf.
Zlib is now found using CMake on linux and set to harcoded paths
on windows, yet uniform in use throughout the build system.

protobuf-lite now compiles under MSVC properly.
2012-03-10 15:31:46 +01:00
Alexander Gavrilov 522dd1fd10 Update the devel plugins. 2012-03-10 17:25:00 +04:00
Alexander Gavrilov 8cc82d5876 Make plugins accept explicit output stream references.
This is an incompatible change to the plugin ABI.

The Console is not thread-safe unless used indirectly
via color_ostream_proxy, so everything should use their
per-thread stream.
2012-03-10 15:55:42 +04:00
Petr Mrázek c260aca3f1 Merge https://github.com/angavrilov/dfhack 2012-03-10 02:15:34 +01:00
Antalia 77349e9b80 Added age, currently enabled labors, and skill levels to dwarfexport XML 2012-03-10 02:10:53 +01:00
Alexander Gavrilov edf77cf270 Link protobuf to dfhack core as a shared library.
- Change protobuf libraries to build as DLLs.
- Move some stream features to the lite library.
- Install the lite library and use it from dfhack.

Note that:

- A couple of protobuf headers had to be tweaked.
- The lite library is used because the full one is
  absolutely incompatible with reloading plugins.
- Shutting down protobuf also can't be allowed.
2012-03-09 19:46:21 +04:00
Petr Mrázek 98a226ab63 Add a lair sub-command to tweak.
This allows setting the whole map as monster lair, effectively locking items in place so they don't scatter on abandon/reclaim.
2012-03-09 08:26:41 +01:00
Petr Mrázek dc0b2b8216 Track stonesense 2012-03-08 09:15:55 +01:00
Petr Mrázek 9c7e341e5e Track df2mc 2012-03-08 00:24:40 +01:00
Petr Mrázek 3598282ed7 Update readme, track df2mc and structures 2012-03-07 23:40:22 +01:00
Petr Mrázek 15a82cfbbf Merge branch 'master' of github.com:peterix/dfhack 2012-03-07 21:40:09 +01:00
Alexander Gavrilov 9b071097de Fix advtools metal-detector
Trader items are now inside tables, and thus not in the block
item lists. Thus it is necessary to scan the global item vector
and look up blocks by coords.
2012-03-07 18:10:53 +04:00
Warmist 7d2b6b4583 Lots of work done with xml parsing. 2012-03-07 19:41:43 +08:00
Alexander Gavrilov cbd254991f Add a tweak for forcibly clearing the Missing status of units.
Mainly useful for fixing inexplicably missing ghosts.
2012-03-05 19:47:06 +04:00
Petr Mrázek a45fc82743 First pass at windowing, track df2mc, stonesense 2012-03-05 01:34:04 +01:00
Warmist 69e1da184c Merge branch 'master' of git://github.com/peterix/dfhack 2012-03-04 14:47:09 +02:00
Warmist e8788d8872 Lots of work done with xml parsing. 2012-03-04 14:45:15 +02:00
Petr Mrázek 99abd4102d Merge https://github.com/quietust/dfhack 2012-03-04 11:58:37 +01:00
Petr Mrázek 1821dd6201 Merge https://github.com/warmist/dfhack 2012-03-04 11:57:44 +01:00
Petr Mrázek d33e9a9770 Sort layer materials in prospector by depth. 2012-03-03 23:18:12 +01:00
Quietust a0b671b289 sqrt() doesn't work on integers 2012-03-03 16:06:31 -06:00
Quietust e43a87b13b Merge branch 'master' of git://github.com/peterix/dfhack 2012-03-03 14:13:51 -06:00
Petr Mrázek 7fe8762852 Get rid of Simple namespace, Gui module is now a namespace. 2012-03-03 14:38:24 +01:00
Quietust 5d4114f5b7 Add "bprobe" command, describes the buildings located under the cursor 2012-03-02 09:35:49 -06:00
Alexander Gavrilov 3dd27c8d1d Support items in bags, and tweak the output format in metal-detector. 2012-03-02 17:46:44 +04:00
Alexander Gavrilov da3ac54af7 Don't put clothing held in hands into the first 3 columns of list-equipped.
For some reason that stuff has INV_WEAPON and shows up in the
report, so since it does, put it in the weapon column.
2012-03-02 11:19:30 +04:00
Alexander Gavrilov ae655daf1a Add an advtool for detecting metal stuff in shops.
Inspired by Q's advmode reveal. Obviously doesn't work in travel mode.
2012-03-02 11:10:34 +04:00
Alexander Gavrilov d014554679 Merge remote-tracking branch 'q-github/master' 2012-03-02 09:26:52 +04:00
Quietust 5019af038b Allow Reveal to be used in Adventurer mode 2012-03-01 22:52:40 -06:00
Warmist 1c90019de4 More work with parsing xml (almost works) 2012-03-02 01:23:03 +02:00
Alexander Gavrilov df6bd59006 Fix advtools: player_id is an array index, not nemesis id.
In most worlds they happen to be the same, but not always.
2012-02-29 17:06:05 +04:00
Petr Mrázek 26c15a1d51 Nuke wagons, move regrass to devel, bump to a dev version. 2012-02-28 23:33:02 +01:00
Petr Mrázek 2c532b630a Merge https://github.com/angavrilov/dfhack 2012-02-28 19:05:44 +01:00
Mike Stewart a3108c668b Actually fix cursor detection in follow this time. 2012-02-28 09:23:02 -08:00
Mike Stewart bc02acb64f Fix cursor detection for follow. 2012-02-28 09:16:33 -08:00
Alexander Gavrilov bc270c1813 Add advtools list-equipped to quickly check companion equipment.
Items are printed as a table, with columns for head,
body, legs, and weapons/ammo/misc.
2012-02-28 17:58:08 +04:00
Petr Mrázek f8721c88b5 dev version. update structures, stonesense 2012-02-27 20:10:31 +01:00
Petr Mrázek 46a99084ee Track stonesense 2012-02-26 18:35:20 +01:00
Petr Mrázek 8afafd0430 Get rid of ntdll, update stonesense 2012-02-25 22:59:32 +01:00
Petr Mrázek 30fe1f63ed Track stonesense 2012-02-25 15:44:15 +01:00
Alexander Gavrilov ad7b9d42a1 Add a command for swapping body with another units in adventure mode.
Based on dfusion code, with lots of safety checks added. Supports two
swap modes: transient and permanent; the former does a minimal change
and is intended for managing companion inventory. The permanent one
performs all known actions necessary to turn it into the real adventurer.

Note: the transient mode is a hack and may cause the game to crash
      if not reverted while within range of the real adventurer unit.
2012-02-25 17:08:05 +04:00
Quietust bca78088e2 Add "changevein" plugin, lets you change what mineral inclusions are made of 2012-02-24 14:07:04 -06:00
Petr Mrázek 60b83b41ef Merge https://github.com/warmist/dfhack 2012-02-23 08:56:40 +01:00
Petr Mrázek dfb0e41c87 Update stonesense 2012-02-23 07:47:53 +01:00
Warmist e2c677b020 Pattern reader to a tree 2012-02-23 01:32:38 +02:00
Warmist 8d9fa86804 Added dfusion plugin name. 2012-02-23 00:41:27 +02:00
Warmist da57a66850 fixed build errors with offsetgroup 2012-02-23 00:21:50 +02:00
Petr Mrázek c26b1571a4 Merge https://github.com/quietust/dfhack 2012-02-22 22:58:20 +01:00
Petr Mrázek 252176d064 Add abuse mode to mode plugin. 2012-02-22 22:46:12 +01:00
Quietust 491c3aa0c9 Add "-a" option to getplants, selects every type of plant 2012-02-22 15:31:34 -06:00
Quietust e9b45a5b6d Add "dumpmats" devel plugin 2012-02-22 14:00:37 -06:00
Mike Stewart a779ac475d Make follow work as a hotkey plugin. 2012-02-22 09:43:14 -08:00
Petr Mrázek 4fe49d0028 Merge https://github.com/angavrilov/dfhack 2012-02-22 15:23:28 +01:00
Petr Mrázek 8848f5a854 Merge branch 'vdig-fix' of https://github.com/plaes/dfhack 2012-02-22 15:23:06 +01:00
Petr Mrázek 0807baf0c0 Merge https://github.com/mikestewart/dfhack 2012-02-22 15:22:19 +01:00
Petr Mrázek 8ee27e182a Hidden weather command raw value override 2012-02-22 15:21:29 +01:00
Alexander Gavrilov e88d5cb035 Fix rename squad: use entity data to skip squads from abandoned forts. 2012-02-22 17:44:36 +04:00
Priit Laes bc012ea7c7 vdig: Fix typo and update wiki link 2012-02-22 13:46:47 +02:00
Mike Stewart baea253578 Merge remote-tracking branch 'upstream/master' 2012-02-21 23:31:53 -08:00
Mike Stewart 14b471a459 Add ability menu/area map width reading and writing to the Gui module, and use the new information in follow to properly center the screen regardless of menu configuration. Also general fixing and cleanup in follow. 2012-02-21 23:30:44 -08:00
Petr Mrázek 34c9c2d663 Fix stonesense, MSVC fail 2012-02-21 18:30:31 +01:00
Petr Mrázek 2cd2ee9b0c New plugin interface 2012-02-21 18:19:17 +01:00
Petr Mrázek 0b9e849096 Update submodules, sort 'ls' output. 2012-02-21 15:21:50 +01:00
Mike Stewart f8d0b83b0a Add new follow plugin that makes the DF window center on and follow a selected unit. 2012-02-21 00:44:10 -08:00
Mike Stewart 2524f81ae0 Fix tile materials in mapexport. 2012-02-20 19:32:58 -08:00
Petr Mrázek 10a2f3ed1b Merge https://github.com/mikestewart/dfhack 2012-02-20 17:55:16 +01:00
Alexander Gavrilov 1ca500ff25 Update the assumed identity in rename unit. 2012-02-20 18:04:58 +04:00
Petr Mrázek 80cedd2ff8 Fix header includes, update structures. 2012-02-20 11:42:40 +01:00
Mike Stewart 166213c150 Fix protobuf files to mirror changes to tiletype enums 2012-02-19 20:35:45 -08:00
Petr Mrázek a98f579828 Update stonesense 2012-02-19 20:33:19 +01:00
Petr Mrázek 33f77c8837 Merge https://github.com/quietust/dfhack 2012-02-19 20:28:08 +01:00
Petr Mrázek 27e3e0f2c2 Update submodules 2012-02-19 20:08:29 +01:00
Quietust e4a0b2aaf9 Fix reveal and tiletypes - RIVER and POOL are no longer tile shapes 2012-02-18 11:36:06 -06:00
Quietust 7b20690db0 Merge branch 'master' of git://github.com/peterix/dfhack 2012-02-18 10:37:29 -06:00
Petr Mrázek 1511a6b7ed Use hexadecimal numbers in tilesieve 2012-02-18 15:07:55 +01:00
Quietust d908789dfa Add useless dev plugin - set all "frozen liquid" tiles to be either Water or Magma 2012-02-17 16:20:17 -06:00
Petr Mrázek fa6ec63535 Add zoom to kittens, fix tilesieve. 2012-02-17 05:30:34 +01:00
Petr Mrázek 28059a7f35 Tilesieve devel tool 2012-02-16 16:22:05 +01:00
Petr Mrázek 1bf5080828 Fixage. Runs with 34.01 2012-02-15 21:35:44 +01:00
Petr Mrázek 448e270421 Merge https://github.com/quietust/dfhack
Conflicts:
	plugins/mapexport/mapexport.cpp
2012-02-14 09:59:33 +01:00
Petr Mrázek bdbfbf5988 Fix catsplosion. 2012-02-14 09:37:30 +01:00
Quietust 091bf62aa8 DFhackCExport is only needed on the plugin_* functions 2012-02-13 22:54:08 -06:00
Quietust b152a40e83 Fix remaining issues 2012-02-13 19:56:55 -06:00
Quietust d15d38d536 Finish conversion, fix compile errors 2012-02-13 19:17:38 -06:00
Quietust d0a8c2edd8 Move TileTypes to XML, part 1 - a bunch of stuff is now broken 2012-02-13 16:56:33 -06:00
Petr Mrázek f600928ec1 Move catsplosion, tweak for build targets under MSVC. 2012-02-13 17:43:41 +01:00
Mike Stewart 9163dda076 Missing newline in mapexport help output. 2012-02-12 18:42:25 -08:00
Mike Stewart 1b3d517a61 Fixed material output -- material_type and material_index were being used backwards. 2012-02-12 18:39:43 -08:00
Petr Mrázek 8f680dcf94 Make it build and run on linux (no stonesense, df2mc, dfusion) 2012-02-09 03:07:26 +01:00
Petr Mrázek 8f1a2ebf7f Added missing keybinding mention to 'ls', DFusion hotfix. 2012-02-06 04:47:13 +01:00
Petr Mrázek 20b1d09fdc Merge https://github.com/mikestewart/dfhack 2012-02-05 23:04:06 +01:00
Mike Stewart cdb171e9b1 Fixed an issue with hidden plants. 2012-02-05 13:51:49 -08:00
Petr Mrázek 6fe0867c46 Rename export to dwarfexport. 2012-02-05 20:41:12 +01:00
Petr Mrázek 2b22b0b336 Make dwarf export optional. Update structures. 2012-02-05 20:16:00 +01:00
Petr Mrázek 7d8a176e59 Merge branch 'export-plugin' of https://github.com/espenhw/dfhack 2012-02-05 20:05:19 +01:00
Petr Mrázek 71b29b67cf Merge https://github.com/mikestewart/dfhack 2012-02-05 19:50:15 +01:00
Alexander Gavrilov ec5f3cc4b3 Update fixpositions to match the new data definition naming. 2012-02-05 16:13:19 +04:00
Mike Stewart 6ac50fccbd Fixed mapexport's plant saving. 2012-02-04 23:51:26 -08:00
Petr Mrázek e51e4f6bd2 More docs work. 2012-02-05 06:02:44 +01:00
Petr Mrázek ebeae664d7 Merge https://github.com/mikestewart/dfhack 2012-02-05 04:28:53 +01:00
Petr Mrázek b79c6880e2 Merge https://github.com/quietust/dfhack 2012-02-05 04:28:37 +01:00
Petr Mrázek 8ddc2f87c9 Update docs. 2012-02-05 04:28:20 +01:00
Quietust e9118dceeb Add fixpositions plugin - adds Elven Diplomats and Human Merchant Nobles to existing worlds 2012-02-04 20:45:45 -06:00
Quietust 4c8717477c Fix really stupid typo 2012-02-04 16:38:54 -06:00
Mike Stewart b9020a70a9 Merge. 2012-02-04 13:08:08 -08:00
Mike Stewart e5b2c78122 Added plant and material export to mapexport, and made constructions have the proper material. 2012-02-04 13:05:41 -08:00
Petr Mrázek 5ad9274689 Update structures, stonesense. 2012-02-04 21:17:52 +01:00
Petr Mrázek cf3c5ff5d0 Merge https://github.com/angavrilov/dfhack 2012-02-04 20:54:41 +01:00
Mike Stewart 4b3a2bfe05 Merge. 2012-02-03 23:29:05 -08:00
Petr Mrázek 24368df553 Update stonesense 2012-02-04 07:47:57 +01:00
Alexander Gavrilov 6bf55978a4 Modify embark-time prospect using the randomized material hypothesis.
Assume that the game generates a fixed number of veins of each
type, but randomly chooses the material, using unk_38 as weight.
This seems to bring some numbers closer to the real counts.
2012-02-03 12:48:38 +04:00