Commit Graph

457 Commits (60787dec3143bad7e02425efce9f4322df9dabe8)

Author SHA1 Message Date
John Cosker 37b5be1f35
Implement autoslab engraving feature (#1)
* Initial autoslab implementation
2023-01-27 19:46:56 -05:00
Josh Cooper 739263eb59 Re-introduces channel-safely plugin to the build 2023-01-24 16:25:41 -08:00
eamondo2 8f7788ec20 Merge branch 'develop' into automelt 2023-01-22 20:32:43 -05:00
Myk Taylor f0d44342d8
first attempt at a manager orders overlay 2023-01-22 03:08:36 -08:00
eamondo2 3fc4d056c3 initial automelt 2023-01-20 17:58:48 -05:00
Myk 310940e1a2
Merge branch 'develop' into Autoclothing 2023-01-20 14:05:26 -08:00
Myk Taylor 4183bace4d
update autodump, only commands, add hotkeys 2023-01-20 09:31:44 -08:00
Myk 116f9bf8e6
Merge pull request #2641 from myk002/myk_buildingplan
minimal implementation of buildingplan
2023-01-20 09:28:26 -08:00
Kelly Kinkade b598b38891 tailor: reenable and improve logging
reenable plugin
remove `using std;`
switch to standard logger and add some debug and trace level log messages
2023-01-18 14:49:38 -06:00
Myk Taylor a96ddcec80
add buildingplan skeleton 2023-01-16 23:55:39 -08:00
Myk Taylor 9606f7bf4f
remove ones that don't work, mark as tested those that do 2023-01-14 09:50:17 -08:00
Myk Taylor dbc26f0d37
enable next batch of plugins to test 2023-01-14 01:28:33 -08:00
Rose 0e021e392d Added a report to autoclothing, as well as some changes to DFHack::Units to enable it. 2023-01-13 21:20:01 -08:00
Myk Taylor 8f434bf9a6
add blueprint back to the build (dig and build phases only) 2023-01-13 12:36:16 -08:00
Myk Taylor 99350bdb73
add xlsxreader back to the build 2023-01-13 09:45:33 -08:00
Myk Taylor 49cd82a9b8
enable a batch of compilable plugins for testing 2023-01-12 13:48:58 -08:00
Myk Taylor ad4ce706f1
enable fastdwarf (no changes) 2023-01-10 00:46:52 -08:00
Myk Taylor 60170f252f
add regrass plugin back in (no changes) 2023-01-10 00:42:37 -08:00
Myk Taylor 7cf703ef23
turn down Ruby support 2023-01-09 23:59:55 -08:00
Myk c33274ef11
Merge pull request #2575 from myk002/myk_autochop
Update and validate autochop
2023-01-09 23:51:56 -08:00
Myk bb90ff0b32
Merge pull request #2566 from ab9rf/5005-autofarm
reenable autofarm and add persistence support
2023-01-09 23:48:35 -08:00
Myk Taylor 3938721df0
enable seedwatch (no changes) 2023-01-09 16:25:01 -08:00
Kelly Kinkade f0aa7a76de reenable autofarm and add persistence support
note that persistence does not appear to work properly right now so this hasn't been fully tested
2023-01-09 18:05:15 -06:00
Myk Taylor 3518a13dea
add cleanowned back to the build (no changes) 2023-01-09 15:45:45 -08:00
Myk Taylor 2da3510ade
add stonesense to the build (if configured); docs
the `overlay` command option has been removed
2023-01-09 14:59:38 -08:00
Myk 2efd77fb6b
Merge pull request #2578 from myk002/myk_orders
enable orders plugin
2023-01-09 13:13:54 -08:00
Myk Taylor 3cf3e3f5b6
enable orders, no updates needed 2023-01-09 02:03:55 -08:00
Myk Taylor 2877f87d78
implement new autochop 2023-01-08 23:28:06 -08:00
Rose 60a2f615c0 Enabled probe, and fixed the one thing preventing it from compiling.
Before this can be considered updated, it would need to be able to find the currently selected building or creature from the game, but it does work as-is when the keyboard cursor is enabled in the game.
2023-01-07 21:06:47 -08:00
Rose 1808cfc51b Merge remote-tracking branch 'DFHack/develop' into develop 2023-01-06 19:53:41 -08:00
Kelly Kinkade 779e159512 enable reveal
`reveal demon` is disabled due to double popup bug
`reveal` also has guidance text that appears if the player is in graphics mode explaining the limitations of the new renderer
2023-01-06 13:56:19 -06:00
Rose 0d18dd508a Merge remote-tracking branch 'DFHack/develop' into develop
# Conflicts:
#	library/xml
2023-01-04 15:02:33 -08:00
Rose 67b95bf35f Compile Remote Fortress Reader 2023-01-04 15:01:46 -08:00
Myk f72b3524ae
Merge pull request #2545 from myk002/myk_autobutcher
update autobutcher to work with v50
2023-01-02 20:43:21 -08:00
Myk Taylor bebecec1e5
update autobutcher to work with new zoo structures 2023-01-01 16:32:56 -08:00
Myk Taylor 11333e3872
update pathable plugin to support v50 maps 2022-12-31 21:05:03 -08:00
Myk Taylor e8a1e10272
build wave 1 and 2 plugins
but don't enable anything by default yet
2022-12-19 13:43:33 -08:00
Myk Taylor a1110ec894
also don't build stonesense, isoworld, dev plugins 2022-12-18 17:31:54 -08:00
Myk Taylor 990f9f6061
comment out all plugins and default tool init
until we can prove things work in v50
2022-12-18 17:25:18 -08:00
myk002 dec6d3d379
Revert "update google protobuf to 3.21.10"
This reverts commit 9dabf51ac7.
2022-12-07 11:59:48 -08:00
myk002 9dabf51ac7
update google protobuf to 3.21.10 2022-12-07 11:59:15 -08:00
myk002 7e6b8618ea
remove command-prompt 2022-12-04 15:56:11 -08:00
myk002 e0aff474f3
move buildingplan into subdir 2022-12-02 14:22:48 -08:00
Myk 344ed4312b
Merge pull request #2111 from cppcooper/channel-safely
Channel safely
2022-11-23 12:41:50 -08:00
myk002 cb338e4257
remove resume plugin
all functionality has been migrated to unsuspend
2022-11-21 15:27:40 -08:00
Josh Cooper 22414f26fa Implements plugin: channel-safely v0.1 2022-11-21 09:26:55 -08:00
Kelly Kinkade aa78c626f9 collect autolabor plugins into one directory
these plugins all share code, moving them into a common directory will make refactoring the code shared between them more straightforward
2022-11-20 01:58:08 -06:00
myk002 d7fba5c720
add stub lua layer for overlay 2022-11-14 16:40:34 -08:00
Josh Cooper 63e9192367 Moves specate and pause-api to plugins/spectate/ 2022-10-12 14:13:09 -07:00
myk002 ad7de34d3f
add clickable overlay to title screen 2022-09-16 21:56:04 -07:00
myk002 df9c37a8b7
Merge branch 'develop' into docs 2022-08-15 17:09:36 -07:00
myk002 a28cf6d444 remove all lua integration from the examples 2022-08-15 16:15:41 -07:00
myk002 a4c8535977 add argparse int checking methods, more docs 2022-08-15 16:15:41 -07:00
myk002 2f9021a3a0 move examples to the examples folder 2022-08-15 16:15:41 -07:00
myk002 03027b513a
Merge branch 'develop' into docs 2022-08-03 22:55:38 -07:00
myk002 3f61e2302c
split autobutcher out from zone 2022-08-03 21:44:24 -07:00
myk002 0096f7c882
split autonestbox out from zone 2022-08-03 21:44:24 -07:00
myk002 a6cb79c237
remove defunct tool fix-armory 2022-07-25 10:21:59 -07:00
myk002 3141ecbec2
remove cromulate. it has outlived its purpose 2022-07-22 21:04:22 -07:00
myk002 5ff31e0cc1
remove defunct advtools plugin 2022-07-18 12:36:11 -07:00
myk002 f3539f06c8
integrate hotkeys with helpdb 2022-07-15 09:44:24 -07:00
Myk b0e7325d4f
add sample plugin to go with the sample help (#2239) 2022-07-10 20:14:20 -07:00
Myk 091068c710
[prospect] give player control over which information is output (#2231)
* give player control over prospect output

* suspend the core *before* we call to Lua
2022-07-06 06:57:13 -07:00
Myk 8f6522899b
Upgrade jsoncpp to 1.9.5 (#2144)
* test jsoncpp upgrade

* use new json library target name

* don't remap the output dirs

* undo warnings at the source

* set new defaults for jsoncpp

* fix typo in new options

* fix signed comparison mismatch warning

* address random(?) compile failures

saying our std::atomic is not initialized in Debug.cpp
2022-05-13 13:52:43 -07:00
Josh Cooper 8eb2831b7e
Adds plugins/external/ and auto-populates the cmake within upon creation (#2095)
* Adds a plugins sub-directory

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* Auto-adds plugins/external sub-directories

* Moves plugins/external globbing as to generate plugins/external/cmake

* Removes plugins/external/.gitignore since the directory is generated

* Fixes cmake error

* Moves gitignore for plugins/external to ensure existence for fresh clone

* Adds missing EOF newline

* Adds requested changes
2022-04-27 19:53:05 -07:00
lethosor 5f3d5bbcd5 Add new `plugins/external` subdirectory for external/untracked plugins
This is more convenient for some devs than the old CMakeLists.custom.txt
solution because it allows the plugins themselves (files or folders) to be
ignored, rather than needing to remember to leave them unstaged.
2022-04-14 10:38:23 -07:00
Josh Cooper 69ca0d8a28
Improves support for dfhack as a sub-project (#2058)
Replaces CMAKE_SOURCE_DIR with dfhack_SOURCE_DIR so it can be included in other cmake projects that have a different top-level CMAKE_SOURCE_DIR
2022-03-29 10:28:52 -07:00
Josh Cooper dda487a535
Adds new plugin: Spectate (#1918)
* Adds spectate plugin

* Updates spectate.cpp

* Changes spectate toggle message

* Updates changelog.txt

* Adds spectate to Plugins.rst

* Adds requested changes

- foreach syntax replaces active units loops
- removes CR_FAILURE return on double enable/disable usage
- removes disabled code
- implements a few clion clang tidy suggestions (auto declare when casting)
- Updates zcount to have accurate count for performing RNG
- adds eof newline
- adds todo comment about a redundant if condition

* Declares spectate section in Plugins.rst
2022-03-14 19:33:41 -07:00
myk002 2ebfca42dd merge buildingplan-lib.cpp into buildingplan.cpp 2022-02-25 12:57:17 -08:00
myk002 0d1668a7a5 merge buildingplan-lib into buildingplan
so no one else is tempted to use it as a library. starting buildingplan
from two separate plugins just runs two completely separate engines with
separate state, one of which is completely inaccessible from the UI.
2022-02-25 12:57:17 -08:00
myk002 eae90c9448 remove fortplan code; leave doc stub 2022-02-25 12:57:17 -08:00
myk002 fc932d2850
use reveal.unhideFlood instead of our dup impl 2021-07-30 13:09:12 -07:00
myk002 a5b70ba163
rename dig-dug to dig-now 2021-07-30 13:09:12 -07:00
myk002 d3d5a6edd7
initial implementation of the dig-dug plugin
for discussion
2021-07-30 13:09:12 -07:00
myk002 a09f4d9b63
add --cursor and --quiet options to tiletypes-here 2021-07-09 21:58:32 -07:00
myk002 fb8d6614c7
expose core flood unhide logic to Lua
refactor is a straight copy-paste. this code could really stand some
cleanup (unused vars, unnecessary use of the MapCache layer, forced
allocation of all blocks even if they are not being unhidden, etc.), but
that can come in a later PR.
2021-06-02 14:49:19 -07:00
myk002 59e76ae407
detect buildingplan buildings in the resume plugin 2020-11-13 12:43:46 -08:00
Myk Taylor 22ac163d55 improve UX between automaterial and buildingplan
solves the confusing behavior when both automaterial and buildingplan
are enabled for constructions. the two plugins now communicate with each
other over the Lua layer to negotiate consistent behavior.

if neither plugin is enabled, the standard DF UI acts as normal

if automaterial is enabled but buildingplan is not, then automaterial
behavior is unchanged.

if buildingplan is enabled and automaterial is not then behavior is
the same as other buildings with buildingplan (no material selection
screen, screen stays on building placement screen after placement).
this commit fixes a bug, though, where buildingplan would only lay
down a single tile of contruction instead of a solid block when a
block is requested.

if both plugins are enabled but buildingplan is not enabled for the
building type then automaterial is unchanged from previous behavior,
execpt for an additional header showing the separation between
automaterial hotkeys and buildingplan hotkeys.

finally, if both plugins are enabled and buildingplan is enabled for the
building type then buildingplan behavior prevails, but the box select and
hollow designations features of automaterial are still usable and
useful. the 'Auto Mat-select', 'Reselect Type', and "Open Placement"
automaterial hotkeys are hidden in the UI and ignored in the feed. This
is because buildingplan takes over material selection, so 'Auto
Mat-select' doesn't make sense. Buildingplan also already stays on the
placement screen after placement, so 'Reselect Type' is not necessary.
And all buildingplan-placed buildings have relaxed placement
restrictions (e.g. they can be built in mid-air) so 'Open Placement' is
also not necessary. The missing options are replaced with blank lines so
the vertical alignment of all other options stays constant.

we also remove a few extra lua_pop() calls that are made superfluous by
the StackUnwinder.
2020-10-29 11:00:49 -07:00
Myk Taylor 1368fb4003 buildingplan: construct buildings from lua
Replace C++ building construction code with lua constructBuilding so we can get the proper job_item filters set. these filters will be used when we replace the core buildingplan algorithm in the next PR.
2020-10-16 14:03:05 -07:00
lethosor 577bb0a258
Merge remote-tracking branch 'myk002/buildingplan_format' into develop 2020-09-23 20:04:17 -04:00
lethosor 8df8eb0c5d
Remove obsolete xlsxio_project dependency 2020-09-19 16:23:21 -04:00
lethosor 5952c16d87
Merge branch 'develop' into deps-subdirectory 2020-09-19 16:19:47 -04:00
lethosor a4254a4d2c
xlsxreader: Don't link to zlib directly
It's complicated on Windows, and xlsxio already links to it directly
2020-09-18 15:04:06 -04:00
lethosor b85759620f
Switch libzip and xlsxio to be included with add_subdirectory(), disable xlsxio installation 2020-09-18 00:33:41 -04:00
lethosor 42d4d33571
Only modify xlsxreader target if it was created
Ref #1620
2020-09-17 15:41:29 -04:00
lethosor 1efa09582a
Change libexpat to be included with add_subdirectory()
- Confirmed that libexpat is built statically and linked with xlsxreader
- May need da7cda3a85 for Windows
- Although libexpat's CMake options are all prefixed with LIBEXPAT_, it also adds some cache entries like SIZE_T (from expat/ConfigureChecks.cmake). Unsure if these affect other libs.
- xlsxio may need additional reconfiguration after moving to add_subdirectory() to find libexpat/libzip on non-Linux platforms.
2020-09-17 00:25:50 -04:00
Myk Taylor f3da131db7 reorganize buildingplan code - no logic changes
- no API or logic changes, just moving code around
- split buildingplan-lib into planner and rooms files
- move business logic from .h files to .cpp files
2020-09-08 00:17:56 -07:00
lethosor 19a4d1df5a
Merge remote-tracking branch 'myk002/quickfort_buildingplan' into develop 2020-08-17 23:43:05 -04:00
Myk Taylor 42108a64b9 expose basic buildingplan functionality to Lua 2020-08-12 15:24:32 -07:00
Myk Taylor 06e3f77e39 fix windows zlib path, hopefully for the last time 2020-08-09 10:47:15 -07:00
Myk Taylor e2129673c1 fix zlib path on windows 2020-08-09 10:11:24 -07:00
Myk Taylor 5294360908 more windows library naming shenanigans 2020-08-09 09:46:54 -07:00
Myk Taylor a41f7c0998 convert XlsxReader module to xlsxreader plugin 2020-08-09 08:54:42 -07:00
lethosor 815821eb93 Merge branch 'develop' into cmake-cleanup
Conflicts:
	depends/lua/CMakeLists.txt
	plugins/CMakeLists.txt
	plugins/devel/CMakeLists.txt
2020-01-18 22:28:43 -05:00
lethosor dc8b8b501b Move autofarm to supported plugins
PR #1468
2020-01-18 17:17:28 -05:00
lethosor 487377d5b9 Merge remote-tracking branch 'JapaMala/auto_clothing' into develop 2019-11-02 22:00:18 -04:00
lethosor 150edcfff8 Move tailor to supported plugins 2019-11-02 21:12:41 -04:00
lethosor ac5a54c8db Merge branch 'develop' into cmake-cleanup
Conflicts:
	library/CMakeLists.txt
	plugins/CMakeLists.txt
2019-08-23 23:58:00 -04:00
Alan 2344e60101
Merge pull request #1181 from warmist/twbt_experiments
map-render plugin
2019-08-21 09:33:45 -04:00
lethosor 76da2c2aaf Clean up CMakeLists.txt style 2019-07-16 22:19:11 -04:00