Commit Graph

1074 Commits (be7bce1541665909283769d1847e6793c4715df3)

Author SHA1 Message Date
jj 0e10a8edff Merge branch 'master' of git://github.com/peterix/dfhack 2012-04-18 18:50:48 +02:00
jj 3ad3d1af46 ruby: use rtti info to cast Item/etc subclasses 2012-04-18 18:46:33 +02:00
Kelly Martin b7b27ebb9e Merge remote-tracking branch 'upstream/master' 2012-04-18 11:35:32 -05:00
Kelly Martin 2dc3aa1b89 danger of rotting) 2012-04-18 11:33:17 -05:00
Kelly Martin 9e1e34f69b Created new stockcheck plugin 2012-04-18 00:16:44 -05:00
Petr Mrázek c17529a794 Track stonesense 2012-04-18 05:09:22 +02:00
Petr Mrázek 6d53ab37e0 Mass fixage
Updated readme.rst
Fixed up some help strings of plugin commands
Moved catsplosion and regrass to normal plugin folder
Fixed tiletypes and liquids not keeping command history properly
2012-04-18 04:12:11 +02:00
jj 3b54cf4657 Merge branch 'master' of git://github.com/peterix/dfhack 2012-04-17 22:42:29 +02:00
jj 3339fdfea8 ruby: fix anon unions, add some find_* helpers in ruby.rb 2012-04-17 22:42:23 +02:00
Petr Mrázek d0e9ab49e7 Merge https://github.com/jaxad0127/dfhack 2012-04-17 21:46:57 +02:00
Petr Mrázek bdd697f1a0 Merge https://github.com/rh73/dfhack 2012-04-17 21:46:40 +02:00
Robert Heinrich 299510f0d9 zone: don't assign to cages which are designated but not yet placed (minor fix, it's not like bad things happen without it) 2012-04-17 18:11:14 +02:00
Robert Heinrich 40f36c1912 minor stuff, use building->is_room instead of building->isRoom() which returns unexpected values 2012-04-17 16:57:41 +02:00
jj d901dd28cf ruby: merge upstream 2012-04-17 14:40:59 +02:00
Jared Adams ebd21e9249 Fix some issues with last commit 2012-04-16 20:48:08 -06:00
Petr Mrázek 7946cafc86 Merge https://github.com/jaxad0127/dfhack 2012-04-16 22:37:07 +02:00
Petr Mrázek d2dde361ad Merge https://github.com/rh73/dfhack 2012-04-16 22:35:46 +02:00
Petr Mrázek ccf10a1428 Merge https://github.com/warmist/dfhack 2012-04-16 22:30:55 +02:00
Robert Heinrich 6d180d61c4 autopasture: only process domesticated own units to avoid problems with wild animals forgetting their training and going on a rampage 2012-04-16 21:37:48 +02:00
Petr Mrázek 45f9f756f0 Merge https://github.com/rh73/dfhack
Conflicts:
	plugins/stonesense
2012-04-16 20:33:30 +02:00
Petr Mrázek 862fa9d675 Track stonesense 2012-04-16 20:19:45 +02:00
Robert Heinrich 70ebd26e6c Merge branch 'master' of git://github.com/ab9rf/dfhack 2012-04-16 17:37:09 +02:00
Kelly Martin 43e4814147 Mod workflow to properly handle custom reactions that produce CRAFTS 2012-04-16 10:34:12 -05:00
Robert Heinrich 9560fc641c zone: mass-assign nicknames, assign units to multiple cages inside a pasture. autobutcher: some fixes regarding autowatch and butchering caged units. 2012-04-16 16:31:12 +02:00
Robert Heinrich e6ed81508d autobutcher: only ignore built cages which are defined as rooms/zoos.
zone: allow mass-assigning of nicknames (to protect a pasture/cage from autobutcher)
2012-04-16 10:15:37 +02:00
Robert Heinrich 9c67250729 regrass: pick random grass event if tile is soil instead of always using the first one found 2012-04-16 07:03:27 +02:00
Robert Heinrich e58a46b42b zone: fixed filter 'trained' so it now finds war/hunting creatures (who strangely don't have a training level) 2012-04-16 03:31:49 +02:00
Robert Heinrich 4b3c8d46c1 zone: don't assign owned pets to a cage. the owner will release them, resulting into infinite hauling (df bug) 2012-04-15 23:21:36 +02:00
Robert Heinrich 7aefae17d1 autonestbox: don't assign to nestboxes which are already claimed or contain eggs.
bprobe: look a bit closer at nestboxes
2012-04-15 21:45:15 +02:00
Alexander Gavrilov a1756a864c Implement a way to do prompts from core context.
The trick obviously is doing it without forcing DF to wait suspended.
Fortunately, lua has built-in coroutine support, so the interactive
prompt can simply yield and rely on the external loop to do the job.
To use this however the REPL had to be replaced with lua code.
2012-04-15 21:50:22 +04:00
Robert Heinrich 6197c4e739 zone: added keyword 'not' which negates the filter followed by it (e.g. 'not grazer') 2012-04-15 19:49:50 +02:00
Robert Heinrich 8bbd43f2c9 zone: added filters to search for creatures who can be trained for war/hunting 2012-04-15 17:40:39 +02:00
Alexander Gavrilov 14709e5d45 Add an official core lua context, and allow plugins to send events to it.
- This context requires core suspend lock and asserts it in a few places.
- Special 'event' objects are introduced. They can be invoked as
  functions, in which case they iterate all their fields and call
  them as functions. Errors are printed and consumed.
- When a plugin is opened by the core context, events registered in
  a special array are linked to it. The system is organized so as to
  avoid even trying to pass the event to lua if the module isn't loaded.
2012-04-15 19:09:25 +04:00
Jared Adams f3c7a685f5 Make tiletypes more useful
* Paint, filter, and brush state is now saved between calls.
 * Added 'all' paint option to set material, shape, special, and variant at
      the same time.
 * Added tiletypes-here (like liquids here, except is uses the saved brush
      settings)
 * Added tiletypes-here-point (like liquids here, always only the tile under
      the cursor)
 * Added tiletypes-command: runs tiletypes commands seperated by ';' tokens
      (affects saved state)
 * Make the internal workings match liquids a bit more
 * Give brush objects a descriptor string
 * Make Core::cheap_tokenise available
2012-04-15 08:40:19 -06:00
Robert Heinrich be580592ce Merge branch 'master' of git://github.com/ab9rf/dfhack 2012-04-15 16:07:43 +02:00
Kelly Martin 005658a9cd Add noegglayer zone filter 2012-04-15 09:04:19 -05:00
Robert Heinrich cf0d45be78 merged stuff from peterix 2012-04-15 12:32:25 +02:00
Petr Mrázek c69af6ab9e Fix missing lua linkage in burrows plugin. 2012-04-15 01:58:02 +02:00
Petr Mrázek fa063e2936 Track structures, fix trivial problem in zone plugin 2012-04-15 00:35:59 +02:00
Petr Mrázek 45ca8c6ac1 Merge https://github.com/angavrilov/dfhack 2012-04-15 00:13:39 +02:00
Petr Mrázek c52eb517b0 Merge https://github.com/rh73/dfhack 2012-04-15 00:12:38 +02:00
Petr Mrázek fa6ecacda9 Merge https://github.com/warmist/dfhack 2012-04-15 00:12:06 +02:00
Robert Heinrich 9f95e67c75 tweak makeown: converts MERCHANT to TRADER (otherwise you can't assign jobs to kidnapped merchants.
zone: fixed a bug which could lead to units being assigned to more than one cage and/or accidentally marked for slaughter
2012-04-14 19:06:03 +02:00
Alexander Gavrilov cb49c92b99 Allow plugins to export functions to lua with safe reload support.
- To ensure reload safety functions have to be wrapped. Every call
  checks the loaded state and locks a mutex in Plugin. If the plugin
  is unloaded, calling its functions throws a lua error. Therefore,
  plugins may not create closures or export yieldable functions.

- The set of function argument and return types supported by
  LuaWrapper is severely limited when compared to being compiled
  inside the main library.
  Currently supported types: numbers, bool, std::string, df::foo,
  df::foo*, std::vector<bool>, std::vector<df::foo*>.

- To facilitate postponing initialization until after all plugins
  have been loaded, the core sends a SC_CORE_INITIALIZED event.

- As an example, the burrows plugin now exports its functions.
2012-04-14 19:44:07 +04:00
Petr Mrázek bbf28eb33d Disable df2minecraft again. 2012-04-14 14:15:46 +02:00
Robert Heinrich 2100a95ad5 zone: fixed major derp (assign commands would accidentally free caged creatures). tweak: added cheat to kidnap caravan escorts (works fine even for other races, does NOT work for traders because they can't be assigned any labors for whatever reason) 2012-04-14 13:36:22 +02:00
Warmist a2a47c5d63 Fix to init (no need to add " around). Added experimental (crashy as hell) tools.project 2012-04-14 13:30:48 +03:00
Alexander Gavrilov 7a34a89f53 Add burrow subcommands to modify burrow unit and tile sets. 2012-04-14 14:12:59 +04:00
Alexander Gavrilov 2f54a48e63 Add a plugin that makes selected burrows auto-grow on digging. 2012-04-13 21:41:42 +04:00
jj f85810c1e2 ruby: move enum constants up one level, allow pointer arithmetic (world.map.block_index), fix StaticArray, add map test 2012-04-13 19:31:12 +02:00
jj bf4bd1f034 ruby: fix vectors of pointers, fix global enum fields 2012-04-13 17:19:53 +02:00
jj 3044da5887 ruby: add global-objects, add bitfield._whole, make StlVector enumerable 2012-04-13 16:17:56 +02:00
Robert Heinrich 09608467c1 tweak fixmigrant: updated help text 2012-04-12 22:44:53 +02:00
jj f503bf36f4 ruby: set everything up 2012-04-12 19:12:46 +02:00
Alexander Gavrilov 2d8611a480 Add core api for moving items between ground and containers. 2012-04-12 18:37:27 +04:00
Robert Heinrich 7331485b46 removed tweak-merchant and tweak-resident, combined both commands into tweak-migrant. added worn items to their uniform so they don't drop their clothes instantly 2012-04-12 14:40:39 +02:00
Robert Heinrich 2caf3fb064 tweak: removed stuff, added new command 'fixmigrants' which will deal with merchants (traders) and other types of bugged migrants. having more than one command for a bug which is basically the same makes no sense. 2012-04-11 22:29:56 +02:00
Petr Mrázek d874c3b538 Track stonesense 2012-04-11 21:33:45 +02:00
Robert Heinrich 42e4fa79c7 tweak clear-merchant, clear-resident: mark the clothes the migrants wear as "owned" (they still drop them, though. needs more fixes) 2012-04-11 21:07:54 +02:00
Robert Heinrich 09aad951a6 Merge branch 'master' of git://github.com/angavrilov/dfhack 2012-04-11 18:23:01 +02:00
Robert Heinrich 2cf078419b cprobe: list items worn by unit and checks if they are owned or not 2012-04-11 18:22:39 +02:00
Alexander Gavrilov 5d5502ae34 Update the item owner modification api and export it to lua. 2012-04-11 20:10:31 +04:00
Robert Heinrich e8e8f29328 regrass: fix 2012-04-11 17:01:20 +02:00
Robert Heinrich ae7ce9e5d7 zone: fixed assigning to pit/pond. regrass: look for grass events in the map block, increase amount of grass at map position instead of simply changing the tile type 2012-04-11 14:08:47 +02:00
Alexander Gavrilov c7b922250b More maps api refactoring and renaming.
getBlockAbs is a very confusing name; getTileBlock is better.
2012-04-11 12:01:27 +04:00
Alexander Gavrilov 59ddbfacb7 Implement item occupancy tracking in MapCache. 2012-04-10 20:19:41 +04:00
Alexander Gavrilov b15d2da819 Get rid of some obsolete api functions, and restructure MapCache. 2012-04-10 18:21:19 +04:00
Robert Heinrich 7d0cfb7e80 Merge branch 'master' of git://github.com/angavrilov/dfhack 2012-04-10 10:18:38 +02:00
Alexander Gavrilov 93c795cfc3 Job module api tweaks: add a namespace to match others and some funcs. 2012-04-10 11:43:36 +04:00
Robert Heinrich f8123c3b40 zone: can now assign to and from built cages. autobutcher: fixed initializing when getting SC_MAP_LOADED event while a map is currently running 2012-04-10 09:15:38 +02:00
Robert Heinrich b2d976b06b zone tool: added new filter 'nograzer' 2012-04-10 04:10:07 +02:00
Robert Heinrich 674337e3ae added tweak clear-resident which fixes bugged migrants and makes them proper members of the fortress. added tweak clear-merchant which assimilates merchants who linger at the map edge into the fortress. updated readme.rst 2012-04-10 00:22:38 +02:00
Robert Heinrich 37f3056fdd autobutcher: fixed behaviour of keywords 'all' and 'new'. (didn't work properly with watch, unwatch and forget) 2012-04-09 18:36:01 +02:00
Robert Heinrich 8ae774fbd5 fixed wrong description of the behaviour for using keyword 'all' in autobutcher (affects all races on the watchlist, not all races in your fort) 2012-04-09 16:02:03 +02:00
Robert Heinrich afba284283 autobutcher: added a forgotten ';' 2012-04-09 15:35:25 +02:00
Robert Heinrich b6adfaaf0a Merge branch 'master' of git://github.com/peterix/dfhack 2012-04-09 15:09:39 +02:00
Robert Heinrich a9ff1d0423 autonestbox and autobutcher store settings in the savegame. added command list_export to autobutcher which prints the current settings and watchlist in a batch file format (to allow importing settings to other savegames). updated readme.rst 2012-04-09 15:03:26 +02:00
Petr Mrázek e5213d77f6 Merge https://github.com/angavrilov/dfhack 2012-04-09 00:55:31 +02:00
Robert Heinrich f609aa0db7 zone: can now search for merchants (to allow pitting them). autobutcher: ignore merchant animals, ignore war/hunting creatures, fixed autowatch, stop spamming the console if there is nothing to report. updated readme.rst 2012-04-08 12:51:03 +02:00
Kelly Martin 53118bc986 Merge remote-tracking branch 'rossm/master' 2012-04-08 01:45:16 -05:00
Kelly Martin ad657c68a3 Leave merchant stuff alone, even if they're certainly dwarfs. 2012-04-08 01:07:29 -05:00
Kelly Martin de960e65f5 Stealing animals from traders is bad. 2012-04-07 23:25:40 -05:00
Kelly Martin 2e6ee0ac84 Don't assign dead animals to pastures. 2012-04-07 20:36:29 -05:00
Kelly Martin dac84080c0 Exclude grazing units from autonestbox to avoid starving da poor boids 2012-04-07 20:26:56 -05:00
Kelly Martin c89416a3f8 Merge remote-tracking branch 'rh73/master' 2012-04-07 12:23:31 -05:00
Kelly Martin f931060dd9 Exclude worn items from counts for workflow 2012-04-07 12:11:53 -05:00
Alexander Gavrilov 45ae2ed67f Pull a few utility functions into the core and publish to lua. 2012-04-07 19:08:30 +04:00
Robert Heinrich 55e059c40f autobutcher: added keywords 'all' and 'new' for handling the whole watchlist. added option 'autowatch' which will put all new tame animal races onto the watchlist using the current default settings 2012-04-07 11:15:49 +02:00
Robert Heinrich e3fb922f53 fixed handling of units in cages who have an invalid map pos. 2012-04-07 06:47:32 +02:00
Robert Heinrich c5fc8aab9f autobutcher: now accepts list of races in one command 2012-04-07 05:05:42 +02:00
Robert Heinrich e8ccbb4b2c Merge branch 'master' of git://github.com/peterix/dfhack 2012-04-07 02:49:39 +02:00
Robert Heinrich eff5189acb added autobutcher: watch lifestock, mark excess animals for slaughter. Not quite done yet (doesn't save config etc) but already works fine. 2012-04-07 02:31:10 +02:00
jj ac0d878b69 ruby: include memstruct in autogen 2012-04-06 19:59:11 +02:00
jj 52007e0d4f ruby: patron for memory primitives 2012-04-06 19:30:58 +02:00
RossM 284ada9432 Better config persistence. 2012-04-05 20:34:06 -07:00
jj fb1b424cbf fix various crash with gcc autogen.cpp. all seems well 2012-04-05 22:15:43 +02:00
jj 689cc50409 multistage autogen en route 2012-04-05 22:15:43 +02:00
jj 3f39e285d0 codegen: gen cpp helper 2012-04-05 22:15:43 +02:00
jj 872eebe7ef rbcodegen: hop 2012-04-05 22:15:43 +02:00
jj 780d7a8b18 codegen ++ 2012-04-05 22:15:43 +02:00
jj ca528fff35 rb codegen: generate ruby 2012-04-05 22:15:43 +02:00
jj 57f2e189ee ruby: rm silly debug statement 2012-04-05 22:15:43 +02:00
jj f46e1ee518 ruby: link libruby, fix stuff, it works 2012-04-05 22:15:43 +02:00
jj b2846492f4 ruby: compiles 2012-04-05 22:15:43 +02:00
Robert Heinrich 577e333ac9 some cleanup in zone tool, added slaughter option, autonestbox is now an own command which can be set to run every X ticks 2012-04-05 20:32:44 +02:00
RossM df98d67ad7 Merge branch 'master' of git://github.com/peterix/dfhack 2012-04-05 10:00:56 -07:00
Petr Mrázek 109edc5e77 Track stonesense 2012-04-05 16:15:41 +02:00
Alexander Gavrilov 28a741082f Encode & decode names in utf-8 for transfer in remote messages.
That's the encoding required by the protobuf spec.
2012-04-05 18:10:16 +04:00
Robert Heinrich 511fceff0a Merge branch 'master' of git://github.com/peterix/dfhack 2012-04-05 11:41:01 +02:00
Robert Heinrich 33ceee8310 zone tool: some cleanup, added 'slaughter' command 2012-04-05 11:40:27 +02:00
RossM b1c41c2c9f Merge branch 'master' of git://github.com/peterix/dfhack 2012-04-04 23:33:49 -07:00
RossM 564150bb19 Persist autolabor config in the savefile. 2012-04-04 23:33:26 -07:00
Petr Mrázek 330118ee27 Fix zone tool 2012-04-05 03:00:10 +02:00
Petr Mrázek b8ccb0424d Merge https://github.com/rh73/dfhack 2012-04-05 02:55:42 +02:00
Petr Mrázek 659dca0640 Merge https://github.com/RossM/dfhack 2012-04-05 02:47:19 +02:00
Warmist aaffdd56d8 Fixes to all of the new stuff. 2012-04-04 19:06:56 +03:00
Robert Heinrich 796bc18fb0 zone plugin: fixed bug when parsing options 2012-04-04 16:48:22 +02:00
Robert Heinrich 5ce0e7dbf2 zone tool: added lots of filters, added mass-assigning of nestboxes 2012-04-04 14:58:53 +02:00
RossM a76de8b777 Fix detection of military dwarves. Add overview comments explaining why
autolabor works how it does.
2012-04-03 23:26:15 -07:00
Warmist 9707939f2c whoops, now it actually swaps souls :) 2012-04-04 02:13:48 +03:00
Warmist 179c6e4025 Revived adv_tools, with new reincarnate command. 2012-04-04 02:06:35 +03:00
Warmist 6a6ca516c3 Stupid bug with nemesis... 2012-04-04 00:18:40 +03:00
Warmist 26f5e0dfb5 Fixed a lot of bugs, mostly in dfusion->tools.
Embark anywhere now works (in windows atleast), all other tools should work in both linux and windows.
TODO: should move embark anywhere somewhere else (as it is code changing tool)
2012-04-03 23:51:54 +03:00
Warmist 6d4ef1fd38 Started rework lua files to be more hotkey friendly and adv/fort mode independant. 2012-04-03 23:16:29 +03:00
Warmist 3a0bd73315 Fix for getSelectedCreature in adv mode. 2012-04-03 21:47:54 +03:00
Warmist 8e1d26ff97 Added ability to call dfuse as a hotkey.
E.g. calling dfuse "tools.empregnate()" now works.
2012-04-03 16:17:43 +03:00
RossM 285afa2594 Autolabor tweaks. 2012-04-03 00:12:13 -07:00
RossM 288acf4b79 Tweak autolabor. 2012-04-02 23:40:56 -07:00
RossM 3bd499ff93 Limit number of dwarves assigned when idle dwarves are available. 2012-04-02 22:47:26 -07:00
RossM 18a0c80d5d Merge branch 'master' of git://github.com/peterix/dfhack 2012-04-02 22:31:00 -07:00
RossM 1afd3d07ca Add commands to change how autolabor handles specific jobs, and to
list the current settings. Changes are not saved with the current
world (yet).
2012-04-02 22:12:06 -07:00
RossM ecb1ca0972 Large change to how autolabor assigns labors. Military dwarves and
children/nobles will never be assigned labors. Labor assignments are
more understandable.
2012-04-02 20:55:02 -07:00
Robert Heinrich 707aee82bd Merge branch 'master' of git://github.com/peterix/dfhack 2012-04-02 20:33:29 +02:00
Robert Heinrich 9cc2040a6b minor fix in zone tool: ignore dead units 2012-04-02 16:58:12 +02:00
Robert Heinrich 772c6b1cbb Added plugin 'zone'. Helps with assigning units to pens/pastures and pits. 2012-04-02 16:07:23 +02:00
Alexander Gavrilov a9a6fbd8b5 Lua tweaks: a couple of functions, dfusion tweak, backtrace metadata. 2012-04-01 12:50:56 +04:00
Alexander Gavrilov 73cf822a13 Merge remote-tracking branch 'warmist/master' 2012-04-01 11:43:09 +04:00
Petr Mrázek 2b4044f3f2 Tweaks!
Check map presence in autolabor and fastdwarf onupdate() functions
Game state tracking in kittens plugin now respects on/off switch
2012-04-01 03:46:17 +02:00
Petr Mrázek 7ff728b6fc Track world and map changes separately for plugin_onstatechange 2012-04-01 02:56:54 +02:00
Petr Mrázek 4bac6edd79 Merge https://github.com/rh73/dfhack 2012-04-01 00:29:00 +02:00
Alexander Gavrilov 9d6e26fa5f Fix crashing color_ostream::printerr due to vfprintf vs fprintf mixup.
Also enable heap clearing in gdb mode, and fix a few newlines.
2012-03-31 22:26:41 +04:00
Robert Heinrich 39787e9cd5 Renamed digging commands to uniformly start with 'dig*'(vdig -> digv etc). Added command digl, diglx (dig layerstone instead of veins). Updated readme.rst. 2012-03-31 15:41:55 +02:00
Alexander Gavrilov 0f41608ed4 Pull console output support and REPL out of dfusion into core lib. 2012-03-31 15:40:54 +04:00
Warmist 5a90e71c87 Fixes for lua5.2 2012-03-31 12:12:16 +03:00
Alexander Gavrilov 9384f0c842 Update lua to 5.2 and fix obvious breakage due to obsolete api. 2012-03-31 12:11:43 +04:00
Alexander Gavrilov 10b610669f Give some sensible looking names to the arrays in pregnancy_ptr. 2012-03-31 10:31:45 +04:00
Quietust 8665d1b195 Merge branch 'master' of git://github.com/peterix/dfhack 2012-03-30 19:41:00 -05:00
Petr Mrázek f8d96d1d26 Merge https://github.com/warmist/dfhack 2012-03-31 01:32:16 +02:00
Petr Mrázek 387d0fd062 Track stonesense 2012-03-31 00:34:09 +02:00
Warmist 95947a8635 Reworked to use start_dwarf_count offset from version info 2012-03-31 01:27:26 +03:00
Warmist c0cd5b9212 New offset for embark/simple-embark (starting dwarfs) 2012-03-31 00:54:37 +03:00
Quietust 0f3ae4499f New devel plugin - list counters for selected creature 2012-03-30 16:39:19 -05:00
Petr Mrázek a4c41bf64c Merge https://github.com/rh73/dfhack 2012-03-30 23:34:51 +02:00
Quietust 4d5aade389 Update changeitem, allow attempting to change item subtype 2012-03-30 16:34:07 -05:00
Petr Mrázek 1da914fb87 Fix init.lua 2012-03-30 21:59:35 +02:00
Petr Mrázek 5d8415c8d9 Merge https://github.com/warmist/dfhack
Conflicts:
	plugins/Dfusion/luafiles/init.lua
2012-03-30 20:32:57 +02:00
Petr Mrázek 61fe605676 Merge https://github.com/RossM/dfhack 2012-03-30 20:30:28 +02:00
RossM 590ea629f3 Don't try to give labors to merchant guards or dead dwarves. 2012-03-30 10:01:33 -07:00
Alexander Gavrilov 063099e535 Set '_' to the first result value for both interactive shortcuts.
Makes it behave sort of like a general 'last result' reference.
2012-03-30 12:17:09 +04:00
Alexander Gavrilov e989ca58db Enhance the interactive interpreter mode of dfusion.
1. Reimplement Console.print* to behave exactly as the standard print
   function, and apply print = Console.println from c++ init code.
2. Add a couple of convenience shortcuts to save some manual typing
   when poking around data structures using the interactive prompt.
3. Change the prompt string to a more distinguished shape.
2012-03-30 11:57:27 +04:00
Alexander Gavrilov 81bc73f435 Follow a typo fix in flag name. 2012-03-30 10:44:52 +04:00
Quietust 6a7e7241b8 Fix bug in changevein - if multiple veins overlap the same tile, pick the LAST one rather than the first one 2012-03-29 19:05:53 -05:00
Warmist 531704da8c print (after dfuse/dfusion) no longer needs tostring 2012-03-29 22:08:45 +03:00
Warmist 7d47208c65 Merge branch 'master' of git://github.com/peterix/dfhack 2012-03-29 21:33:41 +03:00
Petr Mrázek 0c2c94fa92 Remove random bad asserts 2012-03-29 20:18:14 +02:00
Petr Mrázek 69b1bbe59e Turn sorting lambdas into functors in autolabor. 2012-03-29 20:00:26 +02:00
Petr Mrázek 5f53388890 Track stonesense 2012-03-29 19:03:51 +02:00
Petr Mrázek 541e0ca205 Merge https://github.com/rh73/dfhack
Conflicts:
	plugins/changelayer.cpp
2012-03-29 18:42:45 +02:00
Petr Mrázek 004acdad4e Tweaks!
Strip commands.clear() from all plugins
Fix changeitem - a variable name has changed in item flags
2012-03-29 18:37:22 +02:00
Robert Heinrich 2446fb7abf Merge branch 'master' of git://github.com/peterix/dfhack 2012-03-29 18:27:40 +02:00
Robert Heinrich a4995d7681 minor: return CR_WRONG_USAGE if user forgot to specify material and/or quality 2012-03-29 18:26:10 +02:00
Warmist ce69cdb5df New way of doing assignments used in tools/empregnate. 2012-03-29 18:39:11 +03:00
Robert Heinrich 836d8de73e minor: commands.clear() is not needed in plugin_init() anymore. (done by pluginManager now)
removed some useless comments
2012-03-29 17:20:25 +02:00
Robert Heinrich e249ef1377 minor fix (forgot a line break in helpstring) 2012-03-29 17:14:41 +02:00
Robert Heinrich 4525bee58f Merge branch 'master' of git://github.com/ab9rf/dfhack
Conflicts:
	library/xml
2012-03-29 16:10:31 +02:00
Robert Heinrich 9b75373403 Merge branch 'master' of git://github.com/peterix/dfhack
Conflicts:
	library/xml
2012-03-29 16:03:12 +02:00
Robert Heinrich 88c914142b added plugin changeitem (change material type and base quality) 2012-03-29 15:33:54 +02:00
Kelly Martin 453141920f Merge remote-tracking branch 'upstream/master' 2012-03-28 23:22:28 -05:00
Kelly Martin fea34bfdde autolabor: set reequip flag when appropriate. also tweaked scoring to reduce job clumping. 2012-03-28 21:57:08 -05:00
Petr Mrázek d82120a3db More fixes
Include unistd.h in linux process file
Fix assert in autolabor
Don't print 'script missing' error on DF start
2012-03-29 02:49:44 +02:00
Kelly Martin 166392af62 Make autolabor accept "enable" and "disable" as well as "0" or "1".
Add ability to set target number of miners in autolabor with "autolabor miners".
2012-03-28 10:25:36 -05:00
Robert Heinrich cebdbff46d minor updates in readme.rst; moved changelayer plugin to main plugin folder 2012-03-28 17:00:33 +08:00
unknown 9604be2701 Fix crash in autolabor that happens when all dorfs decide to tipple at the same time 2012-03-28 16:59:38 +08:00
Warmist 13d7beda4b Dfusion crash fix 2012-03-28 16:58:52 +08:00
Petr Mrázek d2d16271f0 Track stonesense 2012-03-27 01:30:46 +02:00
Warmist 3761426ef5 Extern "C" mess fixed, bitlib mess fixed, bitlib added to autoload. 2012-03-26 18:48:24 +03:00
Warmist 18c94f8000 Merge branch 'master' of git://github.com/peterix/dfhack 2012-03-26 18:14:14 +03:00
Warmist 61f0bc66af small changes to tools(lua) 2012-03-26 18:12:32 +03:00
Petr Mrázek b4d458b47f Track stonesense 2012-03-26 16:16:19 +02:00
Robert Heinrich 517fc310bf documented changelayer plugin 2012-03-26 12:27:32 +02:00
Robert Heinrich af344e57bd Merge remote-tracking branch 'upstream/master' 2012-03-26 04:17:06 +02:00
Robert Heinrich e63ba6f87d added changelayer plugin 2012-03-26 04:15:42 +02:00
Petr Mrázek 1a19e17695 Track structures, stonesense 2012-03-26 03:39:14 +02:00
Petr Mrázek 85c3fbedcc Merge https://github.com/warmist/dfhack 2012-03-26 03:38:16 +02:00
Robert Heinrich 96064da6ba remove cursedump, use api instead 2012-03-25 12:11:00 +02:00
Robert Heinrich b790909950 Merge remote-tracking branch 'upstream/master' 2012-03-25 11:57:13 +02:00
Warmist 63634de8d5 Fixed empregnate, and some other tools... 2012-03-25 11:48:53 +03:00
Petr Mrázek def7e51564 Merge https://github.com/warmist/dfhack 2012-03-25 03:27:26 +02:00
Warmist e36ed9ac07 Fixed more plugins (embark/friendship/simple_embark) 2012-03-25 01:31:58 +02:00
Petr Mrázek ee66731d63 Remove Qt and server plugins. 2012-03-25 00:28:29 +01:00
Warmist b8210a4cc7 Commented non working parts... Not very much left... 2012-03-25 01:16:41 +02:00
Warmist b56917f91b Merge branch 'master' of https://github.com/angavrilov/dfhack 2012-03-24 16:49:17 +02:00
Warmist 99da37ae46 Moving to new LuaWrapper. 2012-03-24 14:47:51 +02:00
Petr Mrázek 5453521da2 Make liquids and tiletypes reference Brushes.h in the build system
This should cause the header to show up in MSVC
2012-03-24 13:22:43 +01:00
Petr Mrázek 8a847dbaba Tweaks and cleanups
Removed t_virtual.
Made lua use C++ compiler
Removed many silly exception types from Error.h and renamed the rest.
Removed Brush classes from tiletypes plugin.
2012-03-24 12:13:51 +01:00
Robert Heinrich 106aedbaa5 Merge remote-tracking branch 'upstream/master' 2012-03-24 12:02:50 +01:00
Robert Heinrich 9c38b1e6b5 minor: changed comment 2012-03-24 12:02:41 +01:00
Petr Mrázek 7fe5fc9a90 autolabor fixage 2012-03-24 01:33:29 +01:00
Petr Mrázek e90da2bff1 Move autolabor to main plugin folder 2012-03-24 01:29:09 +01:00
Petr Mrázek 13cf648634 Merge https://github.com/RossM/dfhack 2012-03-24 01:26:36 +01:00
Petr Mrázek addb5c87aa liquids vs liquidsgo: FIGHT!
liquidsgo WINS, renamed to liquids to not confuse users.
2012-03-24 00:13:16 +01:00
Petr Mrázek 078caf363f Move merged plugins into main plugin folder. 2012-03-23 23:49:28 +01:00
Petr Mrázek 2f76a52959 Merge https://github.com/rh73/dfhack 2012-03-23 23:06:48 +01:00
Petr Mrázek 90de6a1b62 Track submodules 2012-03-23 22:59:40 +01:00
Warmist e10b1a50a3 Onfunction start 2012-03-23 11:07:54 +02:00
Warmist 61eef26c92 Merge branch 'master' of https://github.com/angavrilov/dfhack 2012-03-23 11:06:44 +02:00
Warmist f25d15ce9c Stupid mistake fixed 2012-03-22 23:27:25 +02:00
Warmist 8f72a642b2 Fixed getxyz(), getCreatureAtPos() (also returns nil/creature) and empregnate to work with look/talk 2012-03-22 21:47:33 +02:00
Robert Heinrich aa807343cc vampcheck is now generic cursecheck, added tweak clear-ghostly 2012-03-22 16:30:15 +01:00
RossM c48c7cf874 Make logic closer to C# version. Address code comments from peterix. 2012-03-22 00:33:18 -07:00
Robert Heinrich cf029e0a2e fixed memory leak in liquids.cpp 2012-03-21 13:57:55 +01:00
Robert Heinrich 38686765a6 added plugin liquidsgo (like liquids but can run from hotkey) 2012-03-21 12:40:07 +01:00
Robert Heinrich 9277dfebb9 minor: added spaces between firstname, restofname and details (they got lost somehow when I wrote the check if firstname and first part of restofname is equal) 2012-03-20 11:55:11 +01:00
Robert Heinrich c9701b536a minor indentation fix 2012-03-20 11:41:17 +01:00
Robert Heinrich 9853cc137b fixed double printing of first name if creature has no nickname 2012-03-20 11:01:33 +01:00
Robert Heinrich 6c6438267b add plugin vampcheck 2012-03-20 09:36:36 +01:00
Alexander Gavrilov bfb226b92e Add a few comments. 2012-03-19 11:33:30 +04:00
RossM 14ae83ced5 Correctly handle military dwarves. 2012-03-18 16:54:47 -07:00
Petr Mrázek 2bec9f6711 Merge https://github.com/warmist/dfhack 2012-03-18 20:51:13 +01:00
Quietust ff17e6c067 Neither of these plugins have anything at all in them, so don't bother building them 2012-03-18 14:44:10 -05:00
Quietust a40c386cef Update bprobe to always display ID numbers (and put them in parentheses after the name) 2012-03-18 14:42:13 -05:00
Warmist fe211acb71 Small bug fixes 2012-03-18 16:23:31 +02:00
Petr Mrázek a8a540eeb8 Merge https://github.com/warmist/dfhack 2012-03-18 13:14:00 +01:00
Petr Mrázek 19a317deeb Merge branch 'master' of https://github.com/angavrilov/dfhack 2012-03-18 13:10:47 +01:00
Petr Mrázek a092ded82d Track stonesense 2012-03-18 12:48:09 +01:00
Warmist 3383aa7f6d New pointer, setup pointer and df-array. ALso new tool, empregnate. 2012-03-18 12:24:28 +02:00
Alexander Gavrilov b9ecd03fe2 Make the server suspend the core around calls unless disabled.
I expect the majority of methods will have to suspend the core
first thing anyway, so this will reduce typing and bugs.

Also get rid of the "me->" ugliness by splitting threadFn.
2012-03-18 11:04:15 +04:00
Petr Mrázek 293eb53677 Merge https://github.com/angavrilov/dfhack 2012-03-18 04:48:02 +01:00
Warmist 5367d28110 few small bugs (embark caste selection) and moved runsaved to non-auto. 2012-03-18 03:02:16 +02:00
Warmist 943c4abe76 updated readme.txt 2012-03-18 02:22:26 +02:00
Warmist e1279d79db small debug un-optimatization removed 2012-03-18 02:16:53 +02:00
Warmist 086ce16f0f tools updated (not fully), added editor( edit everything in df) 2012-03-18 01:57:50 +02:00
Warmist 77738085e2 embark and friendship working. 2012-03-18 00:50:47 +02:00
Alexander Gavrilov aa63493bb8 Add a ListSquads request. 2012-03-17 20:04:15 +04:00
Warmist 16861781c2 Merge branch 'master' of git://github.com/peterix/dfhack 2012-03-17 15:09:05 +02:00
Warmist fd48c59aba Started move to new system. Temp disabled non-working plugins. 2012-03-17 15:05:48 +02:00
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