Skip to content

Configuration

Lures are defined in JSON files using the Filament item framework, placed in data packs under data/<namespace>/filament/item/.

A Bloom lure consists of two parts: the Filament item definition and the lure behaviour.

{
"id": "namespace:item_id",
"vanillaItem": "minecraft:paper",
"itemResource": {
"models": {
"default": "namespace:item/model"
}
},
"properties": {
"name": "<color>Display Name",
"lore": [
"<gray>Line 1",
"<gold>Line 2"
]
},
"behaviour": {
"bloom:lure": {
"particle": "minecraft:flame",
"types": ["fire"],
"species": [],
"buckets": [],
"blacklist": false,
"bypass_spawn_check": false,
"duration": 36000,
"range": 32,
"interval": 20,
"cooldown": 0,
"infinite": false,
"max_uses": 1,
"spawn_boost": 3.0,
"shiny_boost": 1.0,
"ha_boost": 0.15,
"modifier_type": "MULTIPLY"
}
}
}
FieldTypeDescription
idStringUnique identifier (namespace:name format)
vanillaItemStringBase Minecraft item (usually minecraft:paper)
propertiesObjectDisplay properties (name, lore)
"properties": {
"name": "<red>Fire Lure",
"lore": [
"<gray>Attracts Fire type Pokémon",
"<gold>3x spawn rate!"
]
}
"itemResource": {
"models": {
"default": "bloom:item/lure"
}
}

Use these in properties.name and properties.lore:

Available Colors:

  • <red>, <blue>, <green>, <yellow>, <gold>, <gray>, <white>, <black>
  • <dark_red>, <dark_blue>, <dark_green>, <dark_gray>, <dark_purple>, <dark_aqua>
  • <light_purple>, <aqua>

Formatting:

  • <bold>, <italic>, <underlined>, <strikethrough>, <obfuscated>

Example:

"name": "<red><bold>Premium Lure",
"lore": [
"<gray>The ultimate lure!",
"<gold>5x spawns, <yellow>10x shiny"
]

All lure mechanics are defined under behaviour.bloom:lure:

FieldTypeDefaultDescription
particleStringminecraft:happy_villagerParticle effect resource location
durationInteger6000Duration in ticks (20 ticks = 1 second)
rangeInteger32Effective radius in blocks
intervalInteger20Ticks between particle spawns
cooldownInteger0Cooldown between uses in ticks
infiniteBooleanfalseLure never expires if true
max_usesInteger1Number of times lure can be used

Duration Conversion:

  • 5 minutes: 6000 ticks
  • 10 minutes: 12000 ticks
  • 30 minutes: 36000 ticks
  • 1 hour: 72000 ticks
  • 2 hours: 144000 ticks
FieldTypeDefaultDescription
typesArray[]Pokemon type names (e.g., ["fire", "electric"])
speciesArray[]Specific Pokemon with forms/aspects
bucketsArray[]Spawn rarity buckets (e.g., ["rare", "ultra-rare"])
blacklistBooleanfalseIf true, repels matching Pokemon
bypass_spawn_checkBooleanfalseAllow spawns even if checks fail
FieldTypeDefaultDescription
spawn_boostFloat1.0Spawn rate multiplier/modifier
shiny_boostFloat1.0Shiny rate multiplier/modifier
ha_boostFloat0.0Hidden ability chance (0.0-1.0 = 0%-100%)
modifier_typeStringMULTIPLYHow boosts apply: “MULTIPLY”, “ADD”, or “SET”

HA Boost Examples:

  • 0.05 = 5% chance
  • 0.15 = 15% chance
  • 0.30 = 30% chance
  • 1.0 = 100% guaranteed

Target Pokemon by type:

{
"behaviour": {
"bloom:lure": {
"types": ["fire", "water", "grass"],
"species": [],
"buckets": []
}
}
}

Valid Types:

  • fire, water, grass, electric, ice, fighting
  • poison, ground, flying, psychic, bug, rock
  • ghost, dragon, dark, steel, fairy, normal

Target specific Pokemon and their forms:

{
"behaviour": {
"bloom:lure": {
"species": [
{
"name": "pikachu",
"forms": [
{"aspects": []}
]
},
{
"name": "raichu",
"forms": [
{"aspects": ["alolan"]}
]
}
]
}
}
}

Important: Don’t include cobblemon: prefix in species names.

Aspect Examples:

  • {"aspects": []} - Normal form
  • {"aspects": ["alolan"]} - Alolan form
  • {"aspects": ["galarian"]} - Galarian form
  • {"aspects": ["shiny"]} - Shiny variant
  • {"aspects": ["shiny", "alolan"]} - Shiny Alolan form

Target spawn rarity buckets:

{
"behaviour": {
"bloom:lure": {
"buckets": ["rare", "ultra-rare"]
}
}
}

Default Cobblemon Buckets:

  • common - Common Pokemon
  • uncommon - Uncommon Pokemon
  • rare - Rare Pokemon
  • ultra-rare - Ultra-rare/Legendary Pokemon

Attracts Fire-type Pokemon with increased spawns:

{
"id": "bloom:fire_lure",
"vanillaItem": "minecraft:paper",
"properties": {
"name": "<red>Fire Lure",
"lore": [
"<gray>Attracts Fire type Pokémon",
"<gold>3x spawn rate!"
]
},
"behaviour": {
"bloom:lure": {
"particle": "minecraft:flame",
"types": ["fire"],
"duration": 36000,
"range": 32,
"spawn_boost": 3.0,
"modifier_type": "MULTIPLY"
}
}
}

Attracts only Alolan form Pokemon with massive spawn boost:

{
"id": "bloom:alolan_lure",
"vanillaItem": "minecraft:paper",
"properties": {
"name": "<light_purple>Alolan Lure",
"lore": [
"<gray>Attracts Alolan forms",
"<gold>100x spawn rate!"
]
},
"behaviour": {
"bloom:lure": {
"particle": "minecraft:cherry_leaves",
"species": [
{
"name": "vulpix",
"forms": [{"aspects": ["alolan"]}]
},
{
"name": "ninetales",
"forms": [{"aspects": ["alolan"]}]
},
{
"name": "sandshrew",
"forms": [{"aspects": ["alolan"]}]
}
],
"duration": 12000,
"range": 32,
"spawn_boost": 100.0,
"modifier_type": "MULTIPLY"
}
}
}

Boosts all spawns regardless of type:

{
"id": "bloom:omni_lure",
"vanillaItem": "minecraft:paper",
"properties": {
"name": "<white><bold>Omni Lure",
"lore": [
"<gray>Boosts all spawns",
"<gold>2x spawns, 1.5x shiny!"
]
},
"behaviour": {
"bloom:lure": {
"particle": "minecraft:end_rod",
"duration": 72000,
"range": 48,
"spawn_boost": 2.0,
"shiny_boost": 1.5,
"ha_boost": 0.05,
"modifier_type": "MULTIPLY"
}
}
}

Focuses on increasing shiny rates:

{
"id": "bloom:shiny_charm",
"vanillaItem": "minecraft:paper",
"properties": {
"name": "<gold>Shiny Charm",
"lore": [
"<gray>Boosts shiny spawn rates",
"<gold>5x shiny chance!"
]
},
"behaviour": {
"bloom:lure": {
"particle": "minecraft:glow",
"duration": 24000,
"range": 40,
"spawn_boost": 1.5,
"shiny_boost": 5.0,
"modifier_type": "MULTIPLY"
}
}
}

Spawns Pokemon with hidden abilities:

{
"id": "bloom:ha_lure",
"vanillaItem": "minecraft:paper",
"properties": {
"name": "<dark_purple>Hidden Ability Lure",
"lore": [
"<gray>Spawns Pokémon with hidden abilities",
"<gold>15% HA chance"
]
},
"behaviour": {
"bloom:lure": {
"particle": "minecraft:witch",
"duration": 36000,
"range": 32,
"spawn_boost": 2.0,
"ha_boost": 0.15,
"modifier_type": "MULTIPLY"
}
}
}

Prevents legendary Pokemon from spawning:

{
"id": "bloom:legendary_repel",
"vanillaItem": "minecraft:paper",
"properties": {
"name": "<dark_gray>Legendary Repel",
"lore": ["<gray>Prevents legendary spawns"]
},
"behaviour": {
"bloom:lure": {
"particle": "minecraft:smoke",
"buckets": ["ultra-rare"],
"blacklist": true,
"duration": 72000,
"range": 64,
"modifier_type": "MULTIPLY"
}
}
}

Common particle effects:

  • minecraft:flame - Fire particles
  • minecraft:soul_fire_flame - Blue fire
  • minecraft:electric_spark - Electric sparks
  • minecraft:portal - Purple portal particles
  • minecraft:end_rod - White beams
  • minecraft:cherry_leaves - Pink leaves
  • minecraft:glow - Glowing particles
  • minecraft:smoke - Gray smoke
  • minecraft:crimson_spore - Red spores
  • minecraft:warped_spore - Cyan spores
  • minecraft:bubble - Water bubbles
  • minecraft:witch - Purple spiral particles
  • minecraft:totem_of_undying - Golden particles
  • minecraft:happy_villager - Green sparkles

The modifier_type field controls how boosts are applied:

TypeDescriptionExample
MULTIPLYMultiplies the base valuespawn_boost: 3.0 = 3x spawns
ADDAdds to the base valuespawn_boost: 2.0 = base + 2
SETSets value directlyspawn_boost: 5.0 = always 5

Most common: Use MULTIPLY for percentage-based boosts.

  1. Create a JSON file in data/<namespace>/filament/item/
  2. Define Filament item properties (id, vanillaItem, properties)
  3. Add bloom:lure behaviour with targeting and boosts
  4. Run /reload to load the lure (Filament auto-reloads)
  5. Give it to players with /bloom lure <namespace>:<id>
  6. Crouch and drop the item to place it