Skip to content

Datapacks & Custom Creepers

You can define entirely new Ore Creepers or modify the default ones using dynamic Minecraft data packs.


Folder Structure

Creeper definitions must be placed in your data pack at: data/ore_creeper/ore_creeper_types/[name].json


JSON Structure Example

Here is an example structure based on the Coal Creeper:

{
  "ore_block": "minecraft:coal_ore",
  "deepslate_ore_block": "minecraft:deepslate_coal_ore",
  "radius": 3.75,
  "ore_chance": 0.3,
  "raw_chance": 0.0,
  "texture": "ore_creeper:textures/entity/coal_creeper.png",
  "item_texture": "ore_creeper:textures/item/coal_creeper_spawn_egg.png",
  "particle_color": "191919",
  "spawn_in_biomes": "#ore_creeper:spawnable_biomes",
  "remove_from_biomes": "#ore_creeper:blacklist_biomes",
  "is_nether": false,
  "min_spawn_y_level": 0,
  "max_spawn_y_level": 320,
  "spawn_weight": 20,
  "min_group_size": 1,
  "max_group_size": 1
}

JSON Fields Specification

Field Key Type Description
ore_block string The ID of the block placed when converting standard stone blocks (e.g. minecraft:iron_ore).
deepslate_ore_block string (Optional) The ID of the block placed when converting deepslate blocks.
raw_block string (Optional) The ID of the raw ore block form placed if raw_chance succeeds (e.g., minecraft:raw_iron_block).
radius float The explosion/conversion block radius. (Default: 3.0).
ore_chance float The chance (0.0 to 1.0) that a stone/deepslate block in the radius is converted. (Default: 1.0).
raw_chance float (Optional) The chance (0.0 to 1.0) that a converted block becomes a raw ore block instead of an ore block. (Default: 0.0).
texture string (Optional) Namespace path to the creeper's entity texture.
item_texture string (Optional) Namespace path to the spawn egg item texture.
particle_color string / integer Hexadecimal color code (#RRGGBB or RRGGBB) or decimal integer representing the primary particle color. (Default: 16777215 / #FFFFFF).
secondary_particle_color string / integer (Optional) Hexadecimal color code or decimal integer representing the secondary particle color.
spawn_in_biomes string (Optional) Tag key or biome ID mapping where this creeper can spawn (e.g., #minecraft:is_overworld).
remove_from_biomes string (Optional) Tag key or biome ID blacklist mapping.
is_nether boolean If true, spawn checks will adapt to nether replacement blocks (like netherrack and blackstone). (Default: false).
min_spawn_y_level integer Minimum Y level in the world where this creeper can spawn. (Default: 0).
max_spawn_y_level integer Maximum Y level in the world where this creeper can spawn. (Default: 320).
spawn_weight integer Weight for mob spawning system. (Default: 10).
min_group_size integer Minimum group size when spawning. (Default: 1).
max_group_size integer Maximum group size when spawning. (Default: 3).
skin_color string / integer (Optional) Custom body texture color overlay. If "texture" is omitted, the mod uses this to dynamically tint the base body texture.
ore_color string / integer (Optional) Custom spots/ore fragments color overlay. If "texture" is omitted, the mod uses this to dynamically tint the spots.

Note

Creating and including custom texture files is completely optional. If you omit the "texture" field but provide "skin_color" and "ore_color", the mod will automatically generate the creeper's texture dynamically.


Adding Custom Textures (Resource Packs)

If you define custom textures in the "texture" and "item_texture" fields, place the .png files in a resource pack:

  • Entity Textures ("texture"): Place in assets/ore_creeper/textures/entity/[path].png
  • Example: assets/ore_creeper/textures/entity/custom_creeper.png
  • Spawn Egg Textures ("item_texture"): Place in assets/[namespace]/textures/item/[path].png
  • Example: assets/ore_creeper/textures/item/custom_creeper_spawn_egg.png