- Updates rst documentation
- Adds feature: risk-averse
- Revises ChannelManager::manage_group
- Now performs analysis of group designations
- If any designation has fall space, designations are analyzed for accessibility (a weighted score of how many ways it can be accessed)
- If a designation has no fall space, but cannot be accessed it will be "dig_now"'ed
- accessibility scores are stored for the management phase
- Management loop has been extended
- iff no cave-in candidates exist, then perform simple management (as requested)
- if candidates do exist, then we must check if our current position is one
- if the current position is a cave-in candidate it must also be within range (+2) of the least access
- if the candidate is in range or on the dignow queue, then we activate the designation and modify the dig priority according to distance from least_access
- if not a candidate, or the other checks failed, then we set the designation to marker mode
- Updates rst documentation
- Adds troubleshooting section
- Renames the monitor feature to monitoring
- Adds cave-in helper functions
- ChannelJobs::has_cavein_conditions()
- ChannelJobs::possible_cavein()
- find_dwarf() ~ finds the nearest dwarf or the first one that has a path to a position
- Moves dignow/resurrect to inlines.h
- Improves management of regular dig designations
- Adds df::job* tracking back into ChannelJobs to simplify cancellations
- Updates/improves debug logging
- Switches unordered structures with ordered in some locations to have ordered debugging information
- Simplifies ChannelManager::manage_group()
- Fixes up ChannelManager::manage_one()
- the return value is now useful even if unused
Fixes spectate not starting with the first job
Updates spectate.cpp
- refactors features/settings to under a `Configuration` struct with a global variable `config`
- refactors existing `config` => `pconfig`
- moves plugin logic, mostly, to namespace SP (spectate plugin)
- utilizes debugging log macros
- updates status format
- refactors status print code into a separate function