Randomized Recipes

Quick rating

Community listing page, reviews may not be monitored by the author.

Randomized Recipes

By DnyddOwner

No reviews yet

A Minecraft mod that randomizes all crafting and smelting recipes — including modded ones.

Mod Loaders
Minecraft

About

Description

Randomized Recipes

Randomized Recipes is a Minecraft Forge 1.20.1 mod that shuffles recipe outputs for each world. It supports vanilla recipes and compatible modded data-driven recipes.

The shuffle is generated and activated while the world starts, before players can begin crafting. Each world keeps a stable seed, so the same recipes, settings, and seed produce the same mapping.

Features

  • Supports vanilla and compatible modded recipes.
  • Uses real datapack overrides in each recipe's original namespace.
  • Works with JEI without requiring JEI as a dependency.
  • Generates the shuffle before a new world is ready.
  • Rebuilds when recipes, datapacks, mods, or settings change.
  • Includes Safe, Balanced, and Chaos presets.
  • Supports item, item-tag, recipe, recipe-type, and mod filters.
  • Can preserve output counts or shuffle counts with items.
  • Can minimize recipes that retain their original output.
  • Restores original recipes when randomization is disabled.
  • Preserves the previous working pack if generation fails.

Installation

  1. Install Forge 47 for Minecraft 1.20.1.
  2. Put randomized_recipes-1.2.0.jar in the mods folder.
  3. Create or load a world.

JEI is optional. Install it if you want to browse the active shuffled recipes.

Commands

Command Permission Description
/rrhelp Everyone Show available commands
/rrstatus Everyone Show the pack state, preset, seed, coverage, failures, and configuration fingerprints
/rrfind <item> Everyone Find recipes that now produce an item
/rrrecipe <recipe> Everyone Show the current output of a recipe
/rrreshuffle Operator Generate a new random mapping
/rrreshuffle <seed> Operator Generate a mapping from a specific seed
/rrdebug Operator Rebuild using the current seed
/rrdryrun [seed] Operator Preview compatibility without changing the world
/rrcheck Operator Validate filters and report recipe compatibility
/rrdump Operator Export the active mapping

The old /rsh... and /dkrsreload command names are not used in version 1.2.0.

Configuration

The configuration file is config/randomized_recipes-common.toml.

Option Default Description
randomize_recipes true Enable or disable randomization
shuffle_preset BALANCED Select SAFE, BALANCED, or CHAOS
avoid_unchanged_outputs true Minimize recipes that keep their original output
shuffle_output_counts false Move output quantities with shuffled items
item_blacklist Safety defaults Block specific output items
recipe_blacklist Empty Leave specific recipes unchanged
recipe_type_allowlist Empty Shuffle only listed recipe serializers
recipe_type_blacklist Empty Block listed recipe serializers
item_tag_allowlist Empty Use outputs only from listed item tags
item_tag_blacklist Empty Block outputs from listed item tags
mod_blacklist Empty Exclude entire mod namespaces
show_welcome_message true Show the command hint once per player per world
reset_welcome_message false Show the welcome to the next joining player again
safe_mode false Legacy override for Safe behavior
chaos_mode false Legacy override for Chaos behavior

Safe protects essential early-game outputs such as planks, sticks, crafting tables, furnaces, basic pickaxes, torches, and chests. Balanced respects all configured filters. Chaos ignores filters and selects from every registered non-empty item.

Compatibility

JEI reads the active shuffled recipes because the mod changes the actual server recipe data. A recipe reload updates the collection JEI receives. No separate JEI integration add-on is required.

Modded data-driven recipes are supported when they use recognized result structures such as result, output, outputs, result_item, or output_item. Dynamic, programmatic, or unrecognized recipes remain unchanged to prevent corruption.

Use /rrdryrun, /rrcheck, or /rrstatus to see exact compatibility results for a modpack.

Building

./gradlew build

The release JAR is written to build/libs.

Project information

  • Version: 1.2.0
  • Mod ID: randomized_recipes
  • Loader: Forge
  • Minecraft: 1.20.1
  • License: See LICENSE

Randomized Recipes

Randomized Recipes is a Minecraft Forge 1.20.1 mod that shuffles recipe outputs for each world. It supports vanilla recipes and compatible modded data-driven recipes.

The shuffle is generated and activated while the world starts, before players can begin crafting. Each world keeps a stable seed, so the same recipes, settings, and seed produce the same mapping.

Features

  • Supports vanilla and compatible modded recipes.
  • Uses real datapack overrides in each recipe's original namespace.
  • Works with JEI without requiring JEI as a dependency.
  • Generates the shuffle before a new world is ready.
  • Rebuilds when recipes, datapacks, mods, or settings change.
  • Includes Safe, Balanced, and Chaos presets.
  • Supports item, item-tag, recipe, recipe-type, and mod filters.
  • Can preserve output counts or shuffle counts with items.
  • Can minimize recipes that retain their original output.
  • Restores original recipes when randomization is disabled.
  • Preserves the previous working pack if generation fails.

Installation

  1. Install Forge 47 for Minecraft 1.20.1.
  2. Put randomized_recipes-1.2.0.jar in the mods folder.
  3. Create or load a world.

JEI is optional. Install it if you want to browse the active shuffled recipes.

Commands

Command Permission Description
/rrhelp Everyone Show available commands
/rrstatus Everyone Show the pack state, preset, seed, coverage, failures, and configuration fingerprints
/rrfind <item> Everyone Find recipes that now produce an item
/rrrecipe <recipe> Everyone Show the current output of a recipe
/rrreshuffle Operator Generate a new random mapping
/rrreshuffle <seed> Operator Generate a mapping from a specific seed
/rrdebug Operator Rebuild using the current seed
/rrdryrun [seed] Operator Preview compatibility without changing the world
/rrcheck Operator Validate filters and report recipe compatibility
/rrdump Operator Export the active mapping

The old /rsh... and /dkrsreload command names are not used in version 1.2.0.

Configuration

The configuration file is config/randomized_recipes-common.toml.

Option Default Description
randomize_recipes true Enable or disable randomization
shuffle_preset BALANCED Select SAFE, BALANCED, or CHAOS
avoid_unchanged_outputs true Minimize recipes that keep their original output
shuffle_output_counts false Move output quantities with shuffled items
item_blacklist Safety defaults Block specific output items
recipe_blacklist Empty Leave specific recipes unchanged
recipe_type_allowlist Empty Shuffle only listed recipe serializers
recipe_type_blacklist Empty Block listed recipe serializers
item_tag_allowlist Empty Use outputs only from listed item tags
item_tag_blacklist Empty Block outputs from listed item tags
mod_blacklist Empty Exclude entire mod namespaces
show_welcome_message true Show the command hint once per player per world
reset_welcome_message false Show the welcome to the next joining player again
safe_mode false Legacy override for Safe behavior
chaos_mode false Legacy override for Chaos behavior

Safe protects essential early-game outputs such as planks, sticks, crafting tables, furnaces, basic pickaxes, torches, and chests. Balanced respects all configured filters. Chaos ignores filters and selects from every registered non-empty item.

Compatibility

JEI reads the active shuffled recipes because the mod changes the actual server recipe data. A recipe reload updates the collection JEI receives. No separate JEI integration add-on is required.

Modded data-driven recipes are supported when they use recognized result structures such as result, output, outputs, result_item, or output_item. Dynamic, programmatic, or unrecognized recipes remain unchanged to prevent corruption.

Use /rrdryrun, /rrcheck, or /rrstatus to see exact compatibility results for a modpack.

Building

./gradlew build

The release JAR is written to build/libs.

Project information

  • Version: 1.2.0
  • Mod ID: randomized_recipes
  • Loader: Forge
  • Minecraft: 1.20.1
  • License: See LICENSE