You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This is a tool rework idea that would open the door to some new features for the crafting system:
Tool quality affecting crafting speed
Unifying some production systems (i.e. smoking racks and charcoal ovens could use the same recipes as normal crafting)
Crafting recipes that require waiting will craft themselves unattended
The idea is to replace some time, tool and quality requirements in recipes with a new ingredient called "work units".
Work units are an abstract value that can be tied to some work type. E.g. for melting a frame into an anvil, the recipe could require "1000 units of heating", and for turning a log into planks it would require "500 units of sawing". Each tool then would have its own work unit production rate. E.g. a handsaw would produce "1 unit of sawing per second", while chainsaw would produce "20 units of sawing per second", but at the cost of "1 charges of gasoline per second". Thus, a recipe requiring "500 units of sawing" could be completed in about 8 minutes when using a handsaw, or under a minute if you have the right tools and a chainsaw.
Now, some recipes don't particularly care about the quality of the tool and instead about your own working speed. For example, unraveling rag into thread. These recipes would require a separate type of work unit, let's call it "manual work", production rate of which depends on character characteristics such as speed, or maybe even skill level and amount of arms they have.
For recipes that are dependent on time (e.g. boiling water) another work unit would be employed, "time unit". This one is pretty straightforward: you only gain 1 time unit per second, with no way to speed it up, but on the other hand you don't have to actively oversee the crafting process since it's just that, waiting. The in-progress craft item could just sit there by itself and gain progress while you do other important things.
When it comes to time savings from batch crafting, the mechanic could be redone by having batch crafts share their "time units" requirements. E.g. when batch crafting 5 instances of tea, you would need x5 of water and x5 of teabags, but only x1 of time units. For recipes that don't need waiting, but still benefit from batch crafting, some other abstract work unit could be used, e.g. "preparation work", that would be shared between the instances same as "time units" are.
For recipes that require persistent source of heat, or of some other tool like the separation funnel, we could tie the "time units" to production rate of tools. For example, to make clean water, you'll have to apply "1 unit of heating per second" for the duration of "15 minutes". You won't be able to boil 10L of water at once on a hobo stove made out of tin can like you can now, you'll need a proper hotplate or fire.
When NPCs are helping with crafts, they'll only be able to speed up the parts that require manual work or tool work, and not the parts that require plain waiting.
Now, as for the waiting time on the recipes. It's an often requested feature for player to be able to set up a crafting process and leave it to "craft itself", like smoking racks work now, but for other recipes like making clean water or the biodiesel. DDA has implemented this for water boiling, but rather then being part of the crafting system it's just a small hack in the item temperature system that handles that one particular case.
Such system would have to solve 2 problems: liquid handling and tool reservation. It is currently possible to craft liquids first and pour them into a container afterwards, which is convenient but also unrealistic and poses problem for any unattained recipes. Once it is done crafting, how would the system automatically decide where to put the results? Possible fix for this is to have the tool that does the boiling or containing also act as the container for the recipe products. This way, any unattained crafts on completion will just leave the products in the container, and the player would get incentive to find or manufacture tools with larger volume to allow for larger batch sizes.
As for tool reservation, we may want to restrict certain tools to be used by a single craft at the same time, to avoid situations where player spams a dozen self-crafting recipes, and each recipe receives full amount of production from the single tool item. With item identity feature in place, it should be easy to implement by e.g. using references to track the craft's tools, or to track the craft that the tool is being used for. For other sources of work (integrated toolset, active furniture), the craft would just reserve the needed source of work (force character to wait, or prevent other interactions with the furniture for a time).
Since there are many places from which tools, components and qualities may come from, such tool and work unit tracking and distribution may first need a generic item/ammo/charge production/consumption tracking system in place (see #3618) that'd handle all the weird cases and combination in an automatic manner.
With such system in place, all that would remain is to make self-crafting in-progress items into active items that'd tick themselves, and smocking racks and such into an active furniture that'd tick an in-progress item contained within. As a bonus, the active furniture may provide its own types of work units, including "manual work", allowing players to set up hi-tech production hubs for certain types of items.
reacted with thumbs up emoji reacted with thumbs down emoji reacted with laugh emoji reacted with hooray emoji reacted with confused emoji reacted with heart emoji reacted with rocket emoji reacted with eyes emoji
-
This is a tool rework idea that would open the door to some new features for the crafting system:
The idea is to replace some time, tool and quality requirements in recipes with a new ingredient called "work units".
Work units are an abstract value that can be tied to some work type. E.g. for melting a frame into an anvil, the recipe could require "1000 units of heating", and for turning a log into planks it would require "500 units of sawing". Each tool then would have its own work unit production rate. E.g. a handsaw would produce "1 unit of sawing per second", while chainsaw would produce "20 units of sawing per second", but at the cost of "1 charges of gasoline per second". Thus, a recipe requiring "500 units of sawing" could be completed in about 8 minutes when using a handsaw, or under a minute if you have the right tools and a chainsaw.
Now, some recipes don't particularly care about the quality of the tool and instead about your own working speed. For example, unraveling rag into thread. These recipes would require a separate type of work unit, let's call it "manual work", production rate of which depends on character characteristics such as speed, or maybe even skill level and amount of arms they have.
For recipes that are dependent on time (e.g. boiling water) another work unit would be employed, "time unit". This one is pretty straightforward: you only gain 1 time unit per second, with no way to speed it up, but on the other hand you don't have to actively oversee the crafting process since it's just that, waiting. The in-progress craft item could just sit there by itself and gain progress while you do other important things.
When it comes to time savings from batch crafting, the mechanic could be redone by having batch crafts share their "time units" requirements. E.g. when batch crafting 5 instances of tea, you would need x5 of water and x5 of teabags, but only x1 of time units. For recipes that don't need waiting, but still benefit from batch crafting, some other abstract work unit could be used, e.g. "preparation work", that would be shared between the instances same as "time units" are.
For recipes that require persistent source of heat, or of some other tool like the separation funnel, we could tie the "time units" to production rate of tools. For example, to make clean water, you'll have to apply "1 unit of heating per second" for the duration of "15 minutes". You won't be able to boil 10L of water at once on a hobo stove made out of tin can like you can now, you'll need a proper hotplate or fire.
When NPCs are helping with crafts, they'll only be able to speed up the parts that require manual work or tool work, and not the parts that require plain waiting.
Now, as for the waiting time on the recipes. It's an often requested feature for player to be able to set up a crafting process and leave it to "craft itself", like smoking racks work now, but for other recipes like making clean water or the biodiesel. DDA has implemented this for water boiling, but rather then being part of the crafting system it's just a small hack in the item temperature system that handles that one particular case.
Such system would have to solve 2 problems: liquid handling and tool reservation. It is currently possible to craft liquids first and pour them into a container afterwards, which is convenient but also unrealistic and poses problem for any unattained recipes. Once it is done crafting, how would the system automatically decide where to put the results? Possible fix for this is to have the tool that does the boiling or containing also act as the container for the recipe products. This way, any unattained crafts on completion will just leave the products in the container, and the player would get incentive to find or manufacture tools with larger volume to allow for larger batch sizes.
As for tool reservation, we may want to restrict certain tools to be used by a single craft at the same time, to avoid situations where player spams a dozen self-crafting recipes, and each recipe receives full amount of production from the single tool item. With item identity feature in place, it should be easy to implement by e.g. using references to track the craft's tools, or to track the craft that the tool is being used for. For other sources of work (integrated toolset, active furniture), the craft would just reserve the needed source of work (force character to wait, or prevent other interactions with the furniture for a time).
Since there are many places from which tools, components and qualities may come from, such tool and work unit tracking and distribution may first need a generic item/ammo/charge production/consumption tracking system in place (see #3618) that'd handle all the weird cases and combination in an automatic manner.
With such system in place, all that would remain is to make self-crafting in-progress items into active items that'd tick themselves, and smocking racks and such into an active furniture that'd tick an in-progress item contained within. As a bonus, the active furniture may provide its own types of work units, including "manual work", allowing players to set up hi-tech production hubs for certain types of items.
Beta Was this translation helpful? Give feedback.
All reactions