Some Assembly Required is a Farmer's Delight and Create addon that allows players to create custom sandwiches. More information can be found on CurseForge or Modrinth.
The behavior and appearance of items on sandwiches can be customized through data packs. Note that the data pack format for this can change between versions, so make sure you are viewing this README on the GitHub branch for your Minecraft version.
Ingredient JSONs are placed in the data/<namespace>/some_assembly_required/ingredients
folder.
Each JSON file corresponds to a single item. Items with a corresponding ingredient JSON can be added onto a sandwich even if the item is normally inedible.
The following fields can be customized (all fields are optional except item
):
item
: (required) The corresponding item id for this ingredient. (The file name does not need to correspond to the item name. However, if there are multiple ingredient JSONs for a single item, only one will be loaded)food
: A json object, replaces the item's food stats when it is on a sandwich. The format for this is the same as thefood
data component.display_name
: The name of the item as it should appear in the name of the sandwich. This is a text component, information on how to format these can be found here. (You can also use a string)full_name
: The name of the item as it should appear in the tooltip of the sandwich. (If the display name is omitted, and the full name is set, the full name is also used as the display name)display_item
: A json object describing an item stack, overrides which item is rendered when this item is on a sandwichid
: (required) The item ID of the item to render instead.count
: The size of the item stack.components
: A map of components to apply to the item.
render_as_item
: (default = true) Set this tofalse
when the display item has a 3D model. Flat item models are rotated and translated by default.height
: (default = 1) The height of the model of this item, in pixels. (Determines the size of the gap between the previous item on the sandwich and the next)sound
: A sound event id. Changes the sound this item makes when added or removed from a sandwich.
For some example ingredients, see the default data pack.
To allow fluids to be spouted onto sandwiches by Create's spouts, the someassemblyrequired:sandwich_spouting
recipe type can be used. Recipes of this type have the following parameters:
fluid
: The fluid to be spoutedtype
: The type of fluid ingredient. Should be set to"fluid_stack"
to match a fluid based on its ID.amount
: The amount of fluid that should be consumed, in millibuckets.fluid
: The ID of the fluid that should be spouted.
result
: The result of the recipeid
The ID of the item that should be deposited on the sandwich. The item will need to have an ingredient JSON associated with it in order for it to be rendered as a spread.
For some examples, see the default data pack.