Scrap Mechanic – How to Create Custom Crafting Recipes

This guide will explain how to make custom crafting recipes for Scrap Mechanic Survival.

Item UUIDs

Note: Credit goes to Tiny Desk Engineer

The first part of making a custom crafting recipe is figuring out an item’s UUID.

If you go to your Steam Library, and right-click on Scrap Mechanic, select Manage>Browse Local Files and then look in Survival>CraftingRecipes>item_names.json.

If your computer says that you don’t have a program to open that kind of file, and you have Windows, don’t worry, Notepad works fine for JSON.

Now, This is a UUID:

“f08d772f-9851-400f-a014-d847900458a7”

And this is an item name:

“obj_interactive_fridge”

This is how UUIDs and item names are grouped in the item_names.json file:

{
//--------------------------------------
// appliances.json
//--------------------------------------
"f08d772f-9851-400f-a014-d847900458a7": "obj_interactive_fridge",
"d0afb527-e786-4a22-a907-6da7e7cba8cb": "obj_interactive_locker",
"90dbaebf-8ea1-4a5a-8f6f-86ddde77c6c8": "obj_interactive_filecabinet",
"8694192c-d91b-444c-a184-910911bbb354": "obj_interactive_stafftoilet",

//--------------------------------------
// blocks.json
//--------------------------------------
"1fc74a28-addb-451a-878d-c3c605d63811": "blk_scrapwood",
"df953d9c-234f-4ac2-af5e-f0490b223e71": "blk_wood1",
"1897ee42-0291-43e4-9645-8c5a5d310398": "blk_wood2",
"061b5d4b-0a6a-4212-b0ae-9e9681f1cbfb": "blk_wood3",
"1f7ac0bb-ad45-4246-9817-59bdf7f7ab39": "blk_scrapmetal",
"8aedf6c2-94e1-4506-89d4-a0227c552f1e": "blk_metal1",
"1016cafc-9f6b-40c9-8713-9019d399783f": "blk_metal2",
"c0dfdea5-a39d-433a-b94a-299345a5df46": "blk_metal3",
"30a2288b-e88e-4a92-a916-1edbfc2b2dac": "blk_scrapstone",
"a6c6ce30-dd47-4587-b475-085d55c6a3b4": "blk_concrete1",
"ff234e42-5da4-43cc-8893-940547c97882": "blk_concrete2",
"e281599c-2343-4c86-886e-b2c1444e8810": "blk_concrete3",
"f0cba95b-2dc4-4492-8fd9-36546a4cb5aa": "blk_cardboard",
"c56700d9-bbe5-4b17-95ed-cef05bd8be1b": "blk_sand",
"628b2d61-5ceb-43e9-8334-a4135566df7a": "blk_plastic",
"5f41af56-df4c-4837-9b3c-10781335757f": "blk_glass",
"749f69e0-56c9-488c-adf6-66c58531818f": "blk_glasstile",
"b5ee5539-75a2-4fef-873b-ef7c9398b3f5": "blk_armoredglass",
"f406bf6e-9fd5-4aa0-97c1-0b3c2118198e": "blk_bubblewrap",
"920b40c8-6dfc-42e7-84e1-d7e7e73128f6": "blk_restroom",
"8ca49bff-eeef-4b43-abd0-b527a567f1b7": "blk_tiles",
"0603b36e-0bdb-4828-b90c-ff19abcdfe34": "blk_bricks",
"073f92af-f37e-4aff-96b3-d66284d5081c": "blk_lights",
"09ca2713-28ee-4119-9622-e85490034758": "blk_caution",
"f5ceb7e3-5576-41d2-82d2-29860cf6e20e": "blk_crackedconcrete",
"cd0eff89-b693-40ee-bd4c-3500b23df44e": "blk_concretetiles",
"220b201e-aa40-4995-96c8-e6007af160de": "blk_metalbricks",
"25a5ffe7-11b1-4d3e-8d7a-48129cbaf05e": "blk_beam",
"9be6047c-3d44-44db-b4b9-9bcf8a9aab20": "blk_insulation",
"b145d9ae-4966-4af6-9497-8fca33f9aee3": "blk_drywall",
"febce8a6-6c05-4e5d-803b-dfa930286944": "blk_carpet",
"e981c337-1c8a-449c-8602-1dd990cbba3a": "blk_plasticwall",
"4aa2a6f0-65a4-42e3-bf96-7dec62570e0b": "blk_metalnet",
"3d0b7a6e-5b40-474c-bbaf-efaa54890e6a": "blk_crossnet",
"ea6864db-bb4f-4a89-b9ec-977849b6713a": "blk_tryponet",
"a479066d-4b03-46b5-8437-e99fec3f43ee": "blk_stripednet",
"b4fa180c-2111-4339-b6fd-aed900b57093": "blk_squarenet",
"027bd4ec-b16d-47d2-8756-e18dc2af3eb6": "blk_spaceshipmetal",
"4ad97d49-c8a5-47f3-ace3-d56ba3affe50": "blk_spaceshipfloor",
"f7d4bfed-1093-49b9-be32-394c872a1ef4": "blk_treadplate",
"3e3242e4-1791-4f70-8d1d-0ae9ba3ee94c": "blk_warehousefloor",
"d740a27d-cc0f-4866-9e07-6a5c516ad719": "blk_wornmetal",
"c4a2ffa8-c245-41fb-9496-966c6ee4648b": "blk_framework",

}

If you understand what the item names mean, you can find any survival item in here.

An extra tip: use Notepad’s “Find…” option in the Edit tab to find a specific item name or UUID. It works well with finding specific items you want to remove from crafting recipes, or finding items you can’t find. An example from experience: I was looking for Component Kit’s UUID in the Resources section of the file, but for some reason it was in Consumables, under the name “obj_consumable_component”.

Recipe Formatting

Now, JSON files follow a very strict set of rules, which means if you are making large changes to certain crafting recipe files, you should make backups of the original JSON files and of the last working modified versions as well. If you are going to make large changes that you want to keep, You will want to make a folder, maybe with some extra folders inside of it, stored outside of steam to keep backups in.

This is a basic placeholder recipe:

{
    "itemID": "UUID",
    "quantity": #,
    "craftTime": #,
    "ingredientList": [
        {
            "quantity": #,
            "itemID": "UUID"
        },
        {
            "quantity": #,
            "itemID": "UUID"
        }
    ]
}

The main rule of JSON is that, if you add a bracket (eg. [], {}), there must always be another bracket of the opposite side after it, closing off the bracket into one section

Another rule is: The closing bracket must be after the opening bracket, there can’t be any in between.

And: They must be a part of the same group

Examples:

Incorrect:

{
	"placeholder"	// Incorrect: no comma
	"placeholder",
	"placeholder"
}

{
	"placeholder",
	"placeholder"
{	// Incorrect: bracket facing wrong way

{
	"stringplaceholder": placeholder,  // Incorrect: does not have quotes
	"numberplaceholder": "placeholder" // Incorrect: string instead of a number
// Incorrect: no closing bracket

Creating Your First Recipe

Now, for this section, I will use my own edited recipe as an example

{
    "itemId": "f6250bf4-9726-406f-a29a-945c06e460e5",
    "quantity": 1,
    "craftTime": 0,
    "ingredientList": [
        {
            "quantity": 20,
            "itemId": "1016cafc-9f6b-40c9-8713-9019d399783f"
        },
        {
            "quantity": 10,
            "itemId": "36335664-6e61-4d44-9876-54f9660a8565"
        },
        {
            "quantity": 10,
            "itemId": "5530e6a0-4748-4926-b134-50ca9ecb9dcf"
        }
    ]
}

If you use Notepad’s Find function (Mentioned in an earlier section) you can copy-paste the UUIDs in this recipe and you can find what this code adds to the craftbot. If you have looked at my earlier discussions, You will recognize this recipe.

Helena Stamatina
About Helena Stamatina 3204 Articles
I love two things in life, games and sports. Although sports were my earliest interest, it was video games that got me completely addicted (in a good way). My first game was Crash Bandicoot (PS1) from the legendary studio Naughty Dog back in 1996. I turned my passion for gaming into a job back in 2019 when I transformed my geek blog (Re-actor) into the gaming website it is today.

Be the first to comment

Leave a Reply

Your email address will not be published.


*