
Ranensols Craft Blueprints
Create custom crafting recipes using simple JSON filesDetails
Aska - Ranensol's Craft Blueprints
A BepInEx mod for ASKA that allows you to create custom crafting recipes using simple JSON files.
Features
- ๐ Works in single-player, multiplayer, and with villager task assignments
- โจ Create custom crafting recipes without coding
- ๐ง Simple JSON configuration
- ๐ Automatic reference file generation for relevant in-game items, now filtered
- ๐ฎ Works with: Armorsmith, Workshop, Weaver, Leatherworker, Dyer, Player Inventory, and Raven Totem.
- ๐ Hot-reload support - just edit JSON and restart the game
Installation
IMPORTANT
Always backup your local save game and (if applicable) your server save game before you do anything with any mod
Prerequisites
Install BepInEx 6 (IL2CPP) if you haven't already:
- Download the latest IL2CPP build from BepInEx builds
- Extract the contents to your ASKA game folder (where
ASKA.exeis located) - Launch the game once to initialize BepInEx, then close it
Installing the Mod
- Download this mod from the Releases page
- Extract the mod files to
BepInEx/plugins/folder - Launch the game - config and recipe files will be generated automatically
Your folder structure should look like:
ASKA/
โโโ ASKA.exe
โโโ BepInEx/
โ โโโ plugins/
โ โ โโโ Ranensol.BepInEx.Aska.CraftBlueprints/
โ โ โโโ Ranensol.BepInEx.Aska.CraftBlueprints.dll
โ โ โโโ Recipes/
โ โ โโโ Reference/
โ โโโ config/
โโโ ...
Usage
For Players
The mod comes with example recipes to get you started. On first launch, you'll find these files in BepInEx/plugins/Ranensol.BepInEx.Aska.CraftBlueprints/:
Recipes folder:
Examples.json- Example recipes you can learn fromCustomRecipes.json- Empty file for your own recipes
Reference folder:
Items.txt- Game items likely to work for craftingMenuLists.txt- Compatible crafting station menusInteractions.txt- Compatible crafting station interactionsCategories.txt- Relevant blueprint categoriesRules.txt- Unlock conditions
Configuration
Config file: BepInEx/config/Ranensol.BepInEx.Aska.CraftBlueprints.cfg
[Files]
CreateExampleFile = true # Create Examples.json on launch
CreateCustomRecipeFile = true # Create CustomRecipes.json on launch
DumpReferenceFiles = true # Create reference files on launch
Set any option to false to disable file creation.
[Filters - Xxx]
These can be ignored unless you specifically want to see things that may not be compatible, or have added another mod whose items you want to include etc. Include is applied first, then Exclude. To see everything for a particular file (which was previously the default setting) simply ensure both IncludePrefixes and ExcludePrefixes have no value after the = sign.
Creating Custom Recipes
Basic Recipe Structure
Create or edit CustomRecipes.json:
{
"recipes": [
{
"id": 900000100,
"resultItem": "Item_Materials_Linen",
"name": "My Custom Recipe",
"ingredients": [
{
"item": "Item_Wood_BarkFibres",
"quantity": 10
}
],
"quantity": 1,
"menuLists": ["WeaverBlueprints_T1"],
"rules": ["Weaver_Rule"],
"interaction": "WeaverInteraction",
"category": "Categ_Blueprints_Materials",
"description": "Craft something useful",
"lore": "Optional flavor text"
}
]
}
Recipe Fields Explained
| Field | Required | Description |
|---|---|---|
id |
โ Yes | Unique ID for this recipe (use 900000000+) |
resultItem |
โ Yes | The item you want to craft, use values from Items.txt |
name |
โ Yes | Display name in crafting menu |
ingredients |
โ Yes | Items and quantities needed to craft this item, use values from Items.txt |
quantity |
โ Yes | How many items this recipe produces |
menuLists |
โ Yes | Which crafting menus show this recipe (from MenuLists.txt) |
rules |
โ No | Unlock conditions, e.g. Workshop Tier 2 (from Rules.txt). Leave blank for it to always be unlocked/available |
interaction |
โ Yes | Which crafting station this item can be created in (from Stations.txt) |
category |
โ Yes | Blueprint category (from Categories.txt) |
description |
โ No | Short description shown in-game |
lore |
โ No | Flavor text shown in-game |
Important Notes
- Recipe IDs must be unique across all your JSON files
- Use IDs starting from 900000001 to avoid conflicts
- Item names, menu lists, stations, etc. must exactly match names in the reference files
- Multiple JSON files are supported - create as many as you want in the Recipes folder
- In multiplayer all clients and the server must have the same recipe json files
Crafting Stations & Interactions
| Station | Interaction Name |
|---|---|
| Armorsmith | VirtualCraftingStation |
| Dyer | DyerInteraction |
| Leatherworker | LeatherworkerTableInteraction |
| Player Inventory | VirtualCraftingStation |
| Weaver | WeaverInteraction |
| Workshop | WorkstationInteraction |
Check Interactions.txt for the complete list.
Troubleshooting
Recipes not appearing in game:
- Check the BepInEx console for error messages
- Verify all item names match those in
Items.txtexactly - Ensure your recipe ID is unique
- Make sure the crafting station exists in your game
- Make sure you have met the rules requirements
Reference files not created:
- Check that
DumpReferenceFiles = truein the config - Launch the game at least once
Reference files not filtered:
- Delete the existing files in the "References" folder
- Check that
DumpReferenceFiles = truein the config - Launch the game again
Config file not appearing:
- Launch the game at least once with the mod installed
- Check
BepInEx/config/folder
Example Recipes Included
These are meant as learning examples - feel free to disable them in the config and delete the Examples.json.
Support
- Report bugs: GitHub Issues
- View source: GitHub Repository
ChangeLog
v1.0.2: No functional changes mod wise, simply added filtering for the reference files that get dumped to make it easier for users to see recipe ingredients, compatible workstations etc.
To generate the new files simply delete the existing files in: ASKA\BepInEx\plugins\Ranensol Craft Blueprints\Reference\
And ensure "DumpReferenceFiles = true" in: ASKA\BepInEx\config\Ranensol.BepInEx.Aska.CraftBlueprints.cfg
Then start the game and see a much reduced list of stuff to play with.
v1.0.1: Recompiled against updated interop's
Credits
Created by Ranensol