Info
Prior to RRV 6.5.0, the path to info recipes was rrv_world_interaction, not rrv/recipe. rrv_world_interaction no longer functions in versions 7.0.0 and above..
RRV provides a format for world interaction recipes, allowing modpacks (or mods!) to show information about interactions in the world through resource packs. These JSON files should be added to a assets/<namespace>/rrv/recipe folder in your resource pack.
Examples
The left, right, and result entries can be supplied with either an item tag, an item, a list of items, or an item stack.
Chest Boats (Item Tags)
Recipe file - assets/rrv/rrv/recipe/chest_boats.json
{"type": "rrv:world_interaction","left": "#c:chests","right": "#minecraft:boats","result": "minecraft:oak_chest_boat"}
Cobblestone (Items)
Recipe file - assets/rrv/rrv/recipe/cobblestone.json
{"type": "rrv:world_interaction","left": "minecraft:water","right": "minecraft:lava","result": "minecraft:cobblestone"}
Priority
Recipes can also set a priority. Higher priority recipes will show up before recipes with lower priority - negative numbers are allowed.
Recipe file - assets/rrv/rrv/recipe/cobblestone.json
{"type": "rrv:world_interaction","left": "minecraft:water","right": "minecraft:lava","result": "minecraft:cobblestone","priority": 10}
API
World interaction recipes can also be added programmatically via a mod's client integration.
ItemView.addClientReloadCallback(() -> {ItemView.addWorldInteractionRecipe(new WorldInteractionClientRecipe(Identifier.fromNamespaceAndPath("example-mod", "stone_axe"), SlotContent.of(Items.STONE), SlotContent.of(Items.WOODEN_AXE), SlotContent.of(Items.STONE_AXE)));});