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