Commit Graph

791 Commits (9c65c1f7c7cf6bf7f827c381359091d36aaeff39)

Author SHA1 Message Date
lethosor c6aac0d9d5
Bump changelog version and improve consistency 2020-12-24 13:29:50 -05:00
lethosor 8cace1eb06
probe: print more designation and occupancy-related flags
This was useful for testing #1729
2020-12-23 15:36:39 -05:00
lethosor 251511fcb5
Merge remote-tracking branch 'myk002/myk_extents' into develop 2020-12-23 11:57:33 -05:00
lethosor 3c8ee35f98
Documentation.rst: explain GitHub Actions
Ref dfhack/scripts#235
2020-12-21 17:01:21 -05:00
lethosor 4ffb3ffbb8
Documentation.rst: move dependencies up to top-level section + misc tweaks
Makes it easier to jump to "Building the documentation"
2020-12-21 16:47:03 -05:00
myk002 17f8048ab1
update changelog 2020-12-17 10:08:01 -08:00
myk002 16a8f31b93
high level docs for quickfort blueprint library 2020-12-17 09:59:37 -08:00
myk002 dfbad3ec54
update changelog 2020-12-16 11:15:53 -08:00
myk002 3ba984c22c
only reset extents if they are unusable
this allows callers of Buildings::setSize() to "pre-initialize" the
extents to declare non-rectangular structures. this allows quickfort to
create non-rectangular stockpiles, farm plots, zones, etc. the extents
are still reset as before if the size of the building doesn't match the
caller's expectations.

this commit also fixes a memory leak when setSize() allocates memory for
extents, but the memory is not deallocated if the building is ultimately
invalid for some reason.
2020-12-16 11:10:47 -08:00
lethosor cdfdfb0eb1
Update changelog 2020-12-14 00:16:28 -05:00
lethosor 9a6dcc3d36
Merge remote-tracking branch 'myk002/myk_alias_docs' into develop 2020-12-11 22:26:20 -05:00
myk002 45a9106e9f
address review comments
- use :: shorthand where we can
- clarify sub-alias docs
- remove note about multiple modifier keys not being supported
2020-12-11 11:22:38 -08:00
myk002 ab815de38f
update changelog 2020-12-09 09:39:41 -08:00
lethosor 4e08357aaf
search: reset when screen is dismissed, even if it's still present under gview
Fixes #1725
2020-12-08 23:09:07 -05:00
myk002 4ac6716abc
add default values for optional sub-aliases 2020-12-06 10:37:09 -08:00
myk002 96126418ab
remove a tab that snuck in at the end of a line 2020-12-05 18:58:15 -08:00
myk002 593d746dd0
add link to blueprint library sources back in 2020-12-05 18:52:13 -08:00
myk002 025c9ff758
overhaul quickfort alias documentation
- move the alias syntax and usage docs from dfhack-config/quickfort/aliases.txt to a proper guide written in RST. Add examples and more details.
- move the alias library docs from data/quickfort/aliases-common.txt to the new guide
- reorder aliases in aliases-common to match the order in the docs
- factor out the character used to enter the stockpile config screen so we can use the same aliases for stockpiles and hauling routes (use 's' for stockpiles and '{Enter}' for hauling routes)
- reference the new guide in the quickfort user guide
- do an editorial pass of the quickfort user guide
  - change name to "Quickfort Blueprint Guide", but only in the text, not the filename, so we don't change the URL
  - add `quickfort-blueprint-guide` as a label, in addition to the existing `quickfort-user-guide`
  - changed table-like lists to actual tables
  - changed "grid" tables into "simple" tables where possible
  - used ':kbd:' markers whenever we refer to a single character
  - turned Meta blueprints and Notes blueprints sections into subsections of a new "Other blueprint modes" section, in preparation for a few new modes coming in -r5.
  - updated out-of date caveat about bookcases, display furniture, and offering places not being supported
2020-12-05 18:36:15 -08:00
lethosor 159695775e
Merge branch 'develop' into lua-runcommand 2020-12-05 19:49:55 -05:00
lethosor a3d8c5a2ec
revflood docs: clarify that constructed walls are ignored
Closes #1719
2020-12-05 19:41:32 -05:00
lethosor db03f943c9
Merge remote-tracking branch 'PatrikLundell/embark-assistant' into develop 2020-12-04 23:54:50 -05:00
lethosor 38e0f1c485
Update authors (dfhack/scripts#217) 2020-12-03 22:59:55 -05:00
lethosor 6ceaf77b38
Update authors (dfhack/scripts#217) 2020-12-03 21:08:06 -05:00
PatrikLundell 9b53222932 river size determination change log 2020-12-03 15:48:28 +01:00
lethosor b4c040291f
Document dfhack.run_command() and related functions/constants 2020-11-20 22:23:29 -05:00
lethosor fb44b26b47
Make utils.addressof() work for raw userdata 2020-11-19 21:32:42 -05:00
lethosor 8548295fe5
Merge remote-tracking branch 'PatrikLundell/embark-assistant' into develop 2020-11-18 11:12:17 -05:00
lethosor e68d2f9e3d
Update changelog (#1712/#1711) 2020-11-17 23:42:59 -05:00
Nilsolm 1c5fcae5b1 update changelog 2020-11-18 02:48:19 +01:00
PatrikLundell edc84f8de9 2 spaces killed 2020-11-17 22:01:54 +01:00
lethosor 0b886399fe
zone: stop enumnick from taking priority over assign/unassign/slaughter
Fixes #1709
Ref #1652
2020-11-15 22:21:46 -05:00
lethosor 8319d71dff
Improve documentation of reqscript, dfhack_flags, etc. 2020-11-15 18:42:14 -05:00
lethosor 14eeeeedc0
Remove extra paragraph from generated changelogs, restore paragraph margins
The CSS (changed in bca76b8f) was removing space between actual paragraphs in
lists. This was intended to address excess padding in changelogs, but that is
resolved here by removing blank lines surrounding nested lists. This still
displays properly on GitHub/Reddit and presumably other Markdown implementations
as well.
2020-11-15 17:39:34 -05:00
lethosor 85dfb67004
Move #1704's changelog entry to the correct release 2020-11-14 15:16:25 -05:00
lethosor 4921cb4ac7
Merge remote-tracking branch 'PatrikLundell/embark-assistant' into develop 2020-11-14 15:08:22 -05:00
PatrikLundell d51b56c780 removed a blank 2020-11-13 20:28:22 +01:00
lethosor bd278bbe68
Merge remote-tracking branch 'myk002/myk_quickfort_guide' into develop 2020-11-13 14:13:57 -05:00
lethosor 2e4f23d49f
Merge remote-tracking branch 'myk002/myk_isplannedbuilding' into develop 2020-11-13 14:09:36 -05:00
lethosor 8cb38ecf5b
Merge remote-tracking branch 'myk002/myk_metalhead_mario' into develop 2020-11-13 14:04:30 -05:00
myk002 efdba8b596
add buildingplan.isPlannedBuilding 2020-11-13 10:18:54 -08:00
myk002 01741ce6c6
update quickfort guide and aliases
- move bit of alias documentation from aliases-common to aliases.txt
- document new behavior for 'c'ustom stockpiles
2020-11-12 23:23:03 -08:00
Myk Taylor 76759184d3
reinforce that meta blueprints can't cross files
they must refer to labels that are within the same .xlsx or .csv file
2020-11-12 23:23:03 -08:00
Myk Taylor 93c8de9b23
use numbered lists in meta blueprints section 2020-11-12 23:23:03 -08:00
Myk Taylor 647093f5c8
quickfort guide: 'c' stockpiles don't make sense
explain why "custom" stockpiles aren't meaningful to create in a
blueprint and what the user should do instead
2020-11-12 23:23:03 -08:00
myk002 54eec5d47f
there is no job-module -- it's just an html anchor 2020-11-12 23:11:55 -08:00
myk002 93d9ac76be
update docs 2020-11-12 23:08:22 -08:00
lethosor a5e58b766b
Update scripts, changelog 2020-11-12 21:07:14 -05:00
lethosor 913d860ae4
Use initial working directory as process path on Linux, and expose to Lua 2020-11-12 19:07:51 -05:00
lethosor 23b230495e
Merge branch 'develop' into cwd-handling 2020-11-12 18:44:05 -05:00
lethosor 9c13b497bf
Merge remote-tracking branch 'myk002/myk_automaterial_buildingplan_fix' into develop 2020-11-11 23:36:42 -05:00
lethosor 0958fdbf4b
Document script paths
Ref #1690
2020-11-10 00:48:27 -05:00
lethosor 58079217d9
Merge remote-tracking branches 'myk002/myk_buildingplan_no_quality' and 'myk002/myk_buildingplan_pause' into develop 2020-11-03 00:09:03 -05:00
lethosor 7f68229d10
Merge remote-tracking branch 'myk002/quickfort_library' into develop
Conflicts:
	docs/changelog.txt
2020-11-02 13:21:11 -05:00
Myk Taylor f053ccf14b update changelog 2020-10-31 03:05:55 -07:00
Myk Taylor 8d1ba5a83a remove changelog line -- this is new functionality 2020-10-31 02:34:06 -07:00
Myk Taylor 5ac1df96db update changelog 2020-10-31 02:30:26 -07:00
lethosor 27e054c9a7
Merge remote-tracking branch 'myk002/quickfort_dreamfort_walkthrough' into develop
Conflicts:
	docs/changelog.txt
2020-10-30 23:53:25 -04: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
lethosor d508ad3c4b
Merge remote-tracking branch 'myk002/buildingplan_building_material_filters' into develop
Conflicts:
	docs/changelog.txt
2020-10-28 23:57:55 -04:00
Myk Taylor 5244ca106b attribute dreamfort updates to the quickfort script 2020-10-27 22:03:14 -07:00
Myk Taylor 556c935e2b update changelog 2020-10-27 22:01:27 -07:00
lethosor ccfc1f8a53
Use keyboard formatting 2020-10-28 00:19:26 -04:00
lethosor e61839b571
Fix ordered list 2020-10-28 00:01:51 -04:00
lethosor 64114551dd
Merge remote-tracking branch 'myk002/quickfort_docs' into develop 2020-10-27 23:45:39 -04:00
lethosor 3ab9157a2d
Merge remote-tracking branch 'myk002/buildingplan_refactor5_allbuildings_squashed2' into develop 2020-10-26 21:37:41 -04:00
Myk Taylor 371f68f0a3 update changelog 2020-10-26 16:22:15 -07:00
Myk Taylor a0c86b8a9b rewrite quickfort user guide into
spend more space highlighting how users can use the blueprint plugin to
avoid learning how to write blueprints themselves
2020-10-24 21:14:09 -07:00
Myk Taylor 3e0b0f8078 update changelog 2020-10-24 09:21:18 -07:00
lethosor 4301252ddf
Merge remote-tracking branch 'myk002/buildingplan_refactor2_squashed' into develop 2020-10-23 13:51:54 -04:00
Myk Taylor 233ce26ab5 update changelog 2020-10-23 09:45:41 -07:00
Myk Taylor 7e78d8802e migrate qf's buildings_use_blocks to buildingplan
- remove buildings_use_blocks setting from quickfort config file
- add a new Buildingplan Global Settings dialog to house global settings
- move Quickfort Mode (for legacy Python Quickfort) into that dialog
- add four settings to control how generic building materials are matched:
  - blocks
  - boulders
  - logs
  - bars
- ajust the buildingplan algorithm to register duplicate tasks for
  building material item filters, one for each type. since we track how
  many items we've matched for a filter, the first matched item will
  "win" and the extras will get detected as invalid and popped off the
  queue.
- ensure boulders, logs, and bars are scanned last, and in that order
- more global settings planned for the future! see
  http://www.bay12forums.com/smf/index.php?topic=176889.msg8202679#msg8202679
2020-10-22 21:37:49 -07:00
lethosor 26505acb70
Add some cross-references and clean up 2020-10-20 01:18:25 -04:00
lethosor 2bd0e938ad
Move pathable to Lua API docs 2020-10-20 01:11:01 -04:00
lethosor 84973d1fb8
Sort plugins in Lua API.rst 2020-10-20 01:06:47 -04:00
lethosor 3a200fcd92
Expand `probe` documentation 2020-10-20 01:01:02 -04:00
Myk Taylor 05d2e5b65c update case study: order-dependent aliases
since the example I had used no longer exists now that we have
parameterized aliases. I had to find another example in the industry
blueprints. I made it a proper "tip" and added more explanation as well.
2020-10-18 13:49:11 -07:00
Myk Taylor 6c3bac2d6c document extended zone configuration syntax 2020-10-17 22:20:39 -07:00
Myk Taylor 09fbaba726 buildingplan: support all building types
Allow buildingplan to handle all building types, update the docs, and add in little extra fixes to ensure all the new types work correctly.
2020-10-16 14:23:35 -07:00
Myk Taylor 82013c0c5e prep buildingplan for core algorithm changes
Lots of refactoring and reorganizing, with only cosmetic player-visible changes.

- show quickfort mode hotlkey label regardless of whether the current building type has buildingplan enabled. before, it was only shown after the user enabled buildingplan for the current building. this eliminates the extra step when enabling quickfort mode, which force-enables all building types.
- changed signature of lua-exported isPlannableBuilding to take subtype
  and custom type in addition to building type. this is only used by
  quickfort, and it already sends all three params in preparation for
  this change
- added lua-exported scheduleCycle(), which is like doCycle(), but only
  takes effect on the next non-paused frame. this lets quickfort
  run only one buildingplan cycle regardless of how many #build
  blueprints were run
- declared a few dfhack library methods and params const so buildingplan
  could call them from const methods
- converted buildingplan internal debug logging fn to have a printf api
- reshaped buildingplan-planner API and refactored implementation in
  preparation for upcoming core algorithm changes for supporing all
  building types (no externally-visible functionality changes)
  - changed df::building_type params to type, subtype, custom tuple keys
  - introduced capability to return multiple filters per building type
    (though the current buildings all only have one filter per)
- split monolith hook functions in buildingplan.cpp into one per scope.
  this significantly cleans up the code and preps the hooks to handle
  iterating through multiple item filters.
- got rid of send_key function and replaced with better reporting of
  whether keys have been handled
2020-10-16 13:52:23 -07:00
lethosor ce7772a1c2
Add Filesystem::restorecwd()
This allows restoring the working directory to its original value, which may not actually be the DF root. See #1671, dfhack/scripts#152
2020-10-14 21:22:53 -04:00
Myk Taylor e4b6fb0ff4 Merge branch 'buildingplan_refactor' into buildingplan_refactor2_squashed 2020-10-12 22:39:55 -07:00
lethosor cc159909e2
Mention some third-party Linux packages
Closes #20
2020-10-13 00:24:29 -04:00
lethosor 93520b4b00
dwarfmonitor prefs: fix segfault if item_subtype is null for some item types 2020-10-11 20:45:56 -04:00
Myk Taylor 9d2abafefc Merge branch 'buildingplan_refactor' into buildingplan_refactor2_squashed 2020-10-11 12:11:51 -07:00
lethosor b343d00800
Update to 0.47.04-r3 (authors, changelog, and submodules) 2020-10-10 17:31:30 -04:00
lethosor 9c8098b4f0
Expose to_search_normalized to Lua, add test, and use in ListColumn (most useful for the `stocks` plugin) 2020-10-10 01:40:00 -04:00
lethosor 8d85261cdc
Update changelog (#1658 and more of #1652) 2020-10-09 22:20:07 -04:00
lethosor b972246d16
Update docs (#1652) 2020-10-09 21:43:58 -04:00
lethosor 5e63e6e103
Convert some links to use :wiki: 2020-10-09 19:24:52 -04:00
lethosor 2382247398
Update some docs links to use HTTPS 2020-10-09 19:17:59 -04:00
lethosor 9eff62a05d
Update docs for #1659 2020-10-09 12:38:45 -04:00
lethosor 28efe1d2a7
Add local TOCs to Lua API plugin sections 2020-10-09 12:20:13 -04:00
lethosor f10bc7678e
Allow breaking long inline code snippets if necessary 2020-10-09 12:16:25 -04:00
lethosor c2280356cb
Set language of some code blocks to enable syntax highlighting 2020-10-09 01:15:42 -04:00
lethosor a5f85e256d
Default to a basic DFHack-specific pygments lexer (supporting comments and prompts) 2020-10-09 00:27:22 -04:00
lethosor 2fdd6f7aed
Convert to explicit ref targets (occasionally section links) and fix messages() -> message() 2020-10-08 23:19:16 -04:00
lethosor f54eb9627d
Merge remote-tracking branch 'myk002/quickfort_case_study' into develop 2020-10-08 01:01:37 -04:00
lethosor 6d18ef865d
Merge remote-tracking branch 'myk002/quickfort_docs' into develop 2020-10-08 00:45:27 -04:00
lethosor 600ea23f12
Update scripts and authors 2020-10-08 00:23:01 -04:00
Myk Taylor 3e2dd2a396 quickfort docs: dreamfort case study 2020-10-07 14:01:22 -07:00