CleverRaven / Cataclysm-DDA

Cataclysm - Dark Days Ahead. A turn-based survival game set in a post-apocalyptic world.
http://cataclysmdda.org
Other
10.32k stars 4.14k forks source link

Allow companions to work pre existing farm fields #57814

Closed PatrikLundell closed 1 year ago

PatrikLundell commented 2 years ago

Is your feature request related to a problem? Please describe.

There are lots of farms in the game, and I tend to set up my base camp near one of them to use the prepared soil tiles for growing my own crops early on. That, however, has to be done manually by the PC.

It would be useful if it was possible to assign companions to plow/plant/harvest farm land outside of the base camp expansion.

Solution you would like.

I have two variants, that don't have to be mutually exclusive, in mind: A. Use to zone system and assign companions to perform the appropriate task. That ought to work similar to how wood chopping zones work, i.e. you'd have to be present to get them to start to work, but can then leave them as you go away and do other things, but would have to return to pick them up. This variant has the advantage that it is detached from the base camp functionality, and so would be usable for anyone (assuming the PC can perform the task, not only companions).

B. Use the base camp system to assign companions to work farm land within range (50 tiles as for wood chopping?). It would work in a similar fashion as wood chopping mission currently does. Given that the time it takes to perform the tasks (less than the minimum emergency recall time), I don't think it's necessary to delay the map update until the end of the task, but it still would be better to do it on completion rather than when starting the task. I suspect the orders would have to be performed on a per overland tile basis, rather than on a per farm basis, but it would be good if the latter was an option. It should be noted, however, that there is at least one reason for allowing work to be restricted to the "small" area of a single tile, namely that you may want to process the harvest of one tile before it spoils before proceeding to the next one. On the other hand, some crops (most grain, for instance) aren't perishable, and some have a fairly long shelf life (e.g. potatoes).

Describe alternatives you have considered.

Continue to perform the remote farm work manually.

Additional context

The planting and harvesting is probably reasonably straight forward, but the plowing would probably have to take a cue from how base camp plowing is performed, as it would need to reference the underlying map to find out which tiles to plow.

There is currently a Farm: Plot zone, but it works backwards from what I'm looking for, i.e. it plows and plants (it appears to be in one go: I haven't used it), while I'm looking for harvest/plow/plant as discrete actions.

Given that we're in feature freeze currently, this will probably have to wait until after 0.G is done.

github-actions[bot] commented 1 year ago

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions. Please do not bump or comment on this issue unless you are actively working on it. Stale issues, and stale issues that are closed are still considered.