The Best Resource for Minecraft
The Best Resource for Minecraft

BiomeTweaker Mod Wiki

BiomeTweaker is a powerful utility mod for Minecraft that grants players and modpack creators total control over biome properties, block placement, and mob spawning through a custom scripting system.

8 sections · 907 words

Overview#

BiomeTweaker is an expansive utility mod designed to give users complete control over how biomes are generated and behave in Minecraft. Unlike traditional content mods that add specific items or mobs, BiomeTweaker acts as a framework, allowing you to modify existing biomes or create entirely new world generation rules from scratch. It is particularly essential for modpack creators who wish to unify the aesthetic of various modded biomes or adjust the difficulty of specific environments.

The mod operates primarily through a scripting engine. By writing simple text files, you can change the grass color of a desert, replace all stone in a mountain with obsidian, or force specific mobs to spawn in biomes where they usually wouldn't appear. In versions 1.18.2 and 1.19.2, the mod integrates with Minecraft's data-driven worldgen while providing a more accessible scripting interface.

Configuration and Setup#

Before writing scripts, it is important to understand the main configuration file located at .minecraft/config/BiomeTweaker/BiomeTweaker.cfg. This file controls the global behavior of the mod.

Main Configuration Options

Option Type Description
Output Biome ID List Boolean If true, the mod will generate a text file containing all biome IDs currently registered in the game.
Enable Scripting Boolean Enables or disables the execution of scripts in the scripts folder.
Separate Files for Biomes Boolean If enabled, the mod will create individual dump files for every biome, making it easier to reference specific properties.

All custom scripts must be placed in the .minecraft/config/BiomeTweaker/scripts directory. These files should use the .cfg or .bt extension. Scripts are executed during the game's startup phase to ensure all changes are applied before the world generates.

Scripting Mechanics#

The core of BiomeTweaker is its scripting language. Scripts are read sequentially and can target specific biomes or apply changes globally.

Basic Syntax

To target a biome, you must first "get" it using its registry name. For example: plains = forBiome("minecraft:plains")

Once a biome is targeted, you can apply various commands to it. Commands follow the format: biomeVariable.command(parameters).

Essential Commands

Command Purpose Example
set("property", value) Changes a basic biome property. plains.set("name", "Golden Fields")
registerGenBlockRep(target, replacement) Replaces one block with another during generation. plains.registerGenBlockRep("minecraft:stone", "minecraft:sandstone")
addSpawn(entity, weight, min, max) Adds a mob spawn to the biome. plains.addSpawn("minecraft:wolf", 10, 2, 4)
removeAllSpawns(category) Removes all mobs from a specific category (MONSTER, CREATURE, etc.). plains.removeAllSpawns("MONSTER")

Biome Properties#

BiomeTweaker allows you to override almost every attribute of a biome. This is useful for creating "Sub-Biomes" or thematic variations of existing areas.

Modifiable Attributes

  • Name: Changes the display name shown in the F3 debug menu.
  • Temperature: Affects whether it snows or rains and determines the color of grass and leaves.
  • Rainfall: Higher values generally result in more frequent weather events.
  • Height/Variation: Controls the base altitude and the "ruggedness" of the terrain.
  • Colors: You can manually set hex codes for Grass, Foliage, Water, and Sky colors.

Color Modification Example

myBiome = forBiome("minecraft:forest")
myBiome.set("grassColor", 0xADFF2F)
myBiome.set("foliageColor", 0x228B22)
myBiome.set("waterColor", 0x00FFFF)
myBiome.set("skyColor", 0xFF69B4)

Block Replacement#

One of the most powerful features of BiomeTweaker is the ability to swap blocks during the world generation process. This can be used to create "wasteland" biomes where dirt is replaced by gravel, or "fantasy" biomes where stone is replaced by colored glass.

Replacement Stages

Block replacement can occur at different stages of generation:

  1. PRE_DECORATION: Replaces blocks before trees, ores, and structures are placed.
  2. POST_DECORATION: Replaces blocks after everything else has been generated.

Advanced Replacement

You can specify the Y-level range for replacements to create underground layers or unique surface crusts.

Parameter Description
targetBlock The block ID to look for (e.g., "minecraft:dirt").
replacementBlock The block ID to place (e.g., "minecraft:mycelium").
minHeight The lowest Y-level for the replacement.
maxHeight The highest Y-level for the replacement.

Mob Spawning Control#

BiomeTweaker provides granular control over entity spawning. You can remove vanilla mobs to make a biome more dangerous or add modded mobs to biomes they don't naturally inhabit.

Spawn Categories

Mobs are divided into categories that dictate how they spawn:

  • MONSTER: Hostile mobs (Zombies, Skeletons).
  • CREATURE: Passive mobs (Cows, Sheep).
  • AMBIENT: Decorative mobs (Bats).
  • WATER_CREATURE: Aquatic mobs (Squid, Cod).

Example: Creating a Wolf-Only Forest

forest = forBiome("minecraft:forest")
forest.removeAllSpawns("CREATURE")
forest.addSpawn("minecraft:wolf", 50, 4, 8)

Commands#

The mod includes several in-game commands to help with debugging and script creation. These require cheat permissions (OP).

Command Description
/bt reload Reloads all scripts from the config folder and applies changes immediately to newly generated chunks.
/bt dump [biomeID] Exports all properties of the specified biome to a text file in the BiomeTweaker/output folder.
/bt listBiomes Prints a list of all registered biome IDs to the console/log.
/bt getBiome Tells the player the ID of the biome they are currently standing in.

Feature and Structure Control#

In addition to blocks and mobs, BiomeTweaker can toggle the generation of specific world features. This includes trees, flowers, ores, and large structures like Villages or Strongholds.

Feature Manipulation

You can use the removeFeature command to strip a biome of specific elements. For example, if you want a desert with no lakes, you can target the lake feature specifically.

Note: In 1.18.2 and 1.19.2, features are heavily tied to the vanilla Tag system. BiomeTweaker allows you to interact with these tags to add or remove groups of features (like all types of trees) simultaneously.