I’ve been trying to make sense of the way things are setup in the code and given it’s a language i’m not entirely fluent in makes it a fair bit more difficult
If that is the limitation and/or workaround - then wouldn’t it be pausible to double-tag the ‘chop up a log’ construction method to work on both a fallen tree as well as the ‘log’ item object? The end result seems to be an ‘X-Y’ range of production from the Tree action, so adding an if([Axe + Tree] or [axe/saw + log]) = x-y production of log/2x4 based on the input params
an extra if-check on the input would still allow it to be tagged into the crafting as well, method A=X output, method B=Y output - setting up the skeleton for the logic would also open the door to stacking certain recipies (like how we have 2 damaged shelter options) to be 1 option that validates multiple ‘recipies’ on the code side. Using the ? option on a crafting selection could give information about the ones with multiple methods for the same output as well as the item information.
It is by no means elegant, but when you’re limiting a lot of things based on letter options for menu selection, a little stacking here and there is going to be required at some point - planning for it early will save on an epic amount of rewrite later