In building games or any game that has a crafting system, the question of whether the player has enough resources to craft an item or finish a project can become difficult to answer. Items have components that often must also be crafted and have recipes of their own. This is the essence of the Subcomponent Problem.
Well, not quite. There are two types of items in The Subcomponent Problem.
Base items are fundamental items. These either are harvested or have crafting requirements that are simple enough not track, i.e. raw ore.
Recipes are crafted from base items. They have a list of ingredients that may either be raw items or other crafted items as well as a quantity crafted (defaults to 1).
Currently this project is in early stages. Comments are welcome.