▶️ ЗАБЕРИ СВОИ 8 ПОДАРКОВ 🎁 ПРИ СОЗДАНИИ СВОЕГО МАЙНКРАФТ СЕРВЕРА
Плагины/Biomentry
Biomentry

Biomentry

Immersive and dynamic Titles when enter a new Biome

358
6

📌 About Biomentry

Biomentry is not just a biome notifier – it’s a full immersion system for Minecraft.
It makes each biome feel alive, unique, and reactive.

From animated titles and ambient sounds to advanced conditional rules, Biomentry connects the environment to the player’s journey — whether they’re crossing deserts, exploring lush caves, or wandering in modded dimensions.

Perfect for RPG, adventure, survival, and storytelling servers, Biomentry turns exploration into an experience.


✨ Core Features

📍 Intelligent Biome Detection

  • Real-time detection above ground and underground.
  • Enhanced with custom logic for accurate cave recognition (light levels, block density, sky access, Y-level, structures).
  • Supports special cave biomes: lush_caves, deep_dark, dripstone_caves.

🕳️ Advanced Cave Detection

A multi-criteria scoring system determines whether a player is truly in a cave, factoring in:

  • ambient light level,
  • block density around the player,
  • sky access,
  • Y-level and natural structure context.

This allows accurate detection even in artificial caves or open ravines.


🖥️ Immersive Visual Notifications

  • Animated titles & subtitles (fade, typewriter, etc.) on biome entry.
  • Customizable styles per biome or biome group.
  • Biome grouping to reduce message spam (e.g., forests, oceans).

🔊 Ambient Sounds

  • Unique looping sounds per biome:
    • Desert camels
    • Jungle parrots
    • Swamp frogs
    • Mountain winds
  • Goodbye repetitive rain noise → hello immersion.

⚙️ Player Customization

  • /biomentry toggle → Enable/disable notifications.
  • /biomentry language <en|fr> → Change language.
  • Preferences saved per player for full control.

🛡️ Region & Server Integration

  • WorldGuard support → disable notifications in spawn, arenas, safe zones, or custom areas.
  • Multi-language ready → English & French included; templates for German, Russian, Spanish.
  • Optimized performance → smart caching reduces redundant calculations.

🔥 New in v0.3 – Sappling Update

1️⃣ Advanced Condition System

  • Brand-new conditions.yml unlocks deep customization:
    • Triggers → biome entry, surface vs cave, time of day, player stats
    • Logic gates → combine and, or, not for complex rules
    • Conditions → permissions, health, armor, potion effects, world time
    • Actions → run commands, apply effects, grant temporary permissions, heal, give saturation

2️⃣ Custom Biome & Cave Support

  • Full support for modded and datapack biomes (Terralith, Biomes O’ Plenty, etc.).
  • Custom caves recognized automatically using in_cave: true/false.
  • Full biome ID usage (terralith:skylands) ensures conditions, sounds, and notifications apply to any biome, vanilla or modded.

3️⃣ Enhanced Immersion & Stability

  • Ambient sounds fully overhauled.
  • Smarter cave detection.
  • Reliable Boss Bars & notifications.
  • Bug fixes → condition actions now always execute correctly.

🚀 Why Biomentry?

Biomes in Minecraft are stories, atmospheres, and identities.
Biomentry gives them a voice.

Ideal for servers that want:

  • Immersion → RPG, semi-RP, adventure worlds
  • Storytelling tools → triggers when entering zones
  • Atmosphere → ambient sounds & visuals
  • Customization → advanced configs & player preferences

With Biomentry, every step into a new biome — surface or cave, vanilla or modded — feels like a new chapter.

Config files

config.yml
#configuration for Biomentry
# General settings
general:
  language: 'en'  # Plugin language: 'fr' (French) or 'en' (English)
  enableParticles: false # Enable or disable particle effects globally 
  enableCommands: false # Enable or disable command execution globally
  enableAmbientSounds: true # Enable or disable ambient sounds globally

# Title display settings
titleInfo:
  fadeIn: 10      # Fade-in time (in ticks)
  stay: 70        # Display duration (in ticks)
  fadeOut: 20     # Fade-out time (in ticks)
  animationType: 'fade'  # Animation type: 'fade', 'typewriter', or 'slide'
  typewriterSpeed: 2           # Typewriter speed (characters per tick)

# Priority system for display management
priority:
  enabled: true                    # Enable priority system
  level: 'medium'                  # Priority level: 'low', 'medium', 'high'
  pauseOnOtherPlugins: true        # Pause biome displays when other plugins show titles
  resumeDelay: 40                  # Delay (in ticks) before resuming after other plugin finishes
  checkInterval: 5                 # Interval (in ticks) to check for other plugin activities

# Biome groups – Biomes in the same group won’t trigger a notification 
# when transitioning between each other
biomeGroups:
  # Birch forests
  - ['birch_forest', 'old_growth_birch_forest']
  # Taigas
  - ['taiga', 'old_growth_spruce_taiga', 'old_growth_pine_taiga', 'snowy_taiga']
  # Dark forests
  - ['dark_forest']
  # Oceans
  - ['ocean', 'deep_ocean', 'warm_ocean', 'lukewarm_ocean', 'cold_ocean', 'frozen_ocean', 'deep_cold_ocean', 'deep_frozen_ocean', 'deep_lukewarm_ocean']
  # Deserts
  - ['desert']
  # Mountains and peaks
  - ['windswept_hills', 'windswept_forest', 'windswept_gravelly_hills', 'windswept_savanna', 'jagged_peaks', 'frozen_peaks', 'stony_peaks']
  # Caves
  - ['deep_dark', 'dripstone_caves', 'lush_caves']
  # Badlands
  - ['badlands', 'eroded_badlands', 'wooded_badlands']
  # Savannas
  - ['savanna', 'savanna_plateau', 'windswept_savanna']

# WorldGuard regions where notifications are disabled
disabledRegions:
  - spawn
  - safe_zone
  - pvp_arena

# List of worlds where the plugin is completely disabled (just exemple here)
disabled-worlds:
  - "a_minigame_world"
  - "world_the_end"
biomes.yml
# And extract of the biome configurations
# Here you define the BEHAVIOR of each biome.
# The actual text for titles and subtitles is in the language files.
biomes:
  plains:
    title: 'biomes.plains.title'
    subtitle: 'biomes.plains.subtitle'
    display: 'actionbar'
    animationType: 'typewriter'
    separator: ' | '
    sound: 'BLOCK_GRASS_BREAK'
    commands: []
    particle:
      type: "VILLAGER_HAPPY"
      count: 10
      offset: 0.5
      speed: 0.1
    bossBar:
      color: 'WHITE'
      style: 'SOLID'

    ambient_sound:
      sound: 'ambient.weather.rain'
      volume: 0.1
      pitch: 1.0
      delay: 200
  forest:
    title: 'biomes.forest.title'
    subtitle: 'biomes.forest.subtitle'
    display: 'actionbar'
    animationType: 'typewriter'
    separator: ' | '
    sound: 'BLOCK_CHERRY_WOOD_BREAK'
    commands: []
    particle:
      type: "VILLAGER_HAPPY"
      count: 10
      offset: 0.5
      speed: 0.1
    bossBar:
      color: 'WHITE'
      style: 'SOLID'

    ambient_sound:
      sound: 'ambient.weather.rain'
      volume: 0.1
      pitch: 1.0
      delay: 200
  dark_forest:
    title: 'biomes.dark_forest.title'
    subtitle: 'biomes.dark_forest.subtitle'
    display: 'actionbar'
    animationType: 'typewriter'
    separator: ' | '
    sound: 'AMBIENT_CAVE'
    commands: []
    particle:
      type: "VILLAGER_HAPPY"
      count: 10
      offset: 0.5
      speed: 0.1
    bossBar:
      color: 'WHITE'
      style: 'SOLID'

    ambient_sound:
      sound: 'ambient.weather.rain'
      volume: 0.1
      pitch: 1.0
      delay: 200
  birch_forest:
    title: 'biomes.birch_forest.title'
    subtitle: 'biomes.birch_forest.subtitle'
    display: 'actionbar'
    animationType: 'typewriter'
    separator: ' | '
    sound: 'BLOCK_CHERRY_WOOD_BREAK'
    commands: []
    particle:
      type: "VILLAGER_HAPPY"
      count: 10
      offset: 0.5
      speed: 0.1
    bossBar:
      color: 'WHITE'
      style: 'SOLID'

    ambient_sound:
      sound: 'ambient.weather.rain'
      volume: 0.1
      pitch: 1.0
      delay: 200
  old_growth_birch_forest:
    title: 'biomes.old_growth_birch_forest.title'
    subtitle: 'biomes.old_growth_birch_forest.subtitle'
    display: 'actionbar'
    animationType: 'typewriter'
    separator: ' | '
    sound: 'BLOCK_CHERRY_WOOD_BREAK'
    commands: []
    particle:
      type: "VILLAGER_HAPPY"
      count: 10
      offset: 0.5
      speed: 0.1
    bossBar:
      color: 'WHITE'
      style: 'SOLID'

    ambient_sound:
      sound: 'ambient.weather.rain'
      volume: 0.1
      pitch: 1.0
      delay: 200
  flower_forest:
    title: 'biomes.flower_forest.title'
    subtitle: 'biomes.flower_forest.subtitle'
    display: 'actionbar'
    animationType: 'typewriter'
    separator: ' | '
    sound: 'BLOCK_GRASS_BREAK'
    commands: []
    particle:
      type: "VILLAGER_HAPPY"
      count: 10
      offset: 0.5
      speed: 0.1
    bossBar:
      color: 'WHITE'
      style: 'SOLID'

    ambient_sound:
      sound: 'ambient.weather.rain'
      volume: 0.1
      pitch: 1.0
      delay: 200
      
  'clifftree:desert_cliff':
    title: 'biomes.clifftree.desert_cliff.title'
    subtitle: 'biomes.clifftree.desert_cliff.subtitle'
    display: 'actionbar'
    animationType: 'typewriter'
    separator: ' | '
    sound: 'BLOCK_SAND_BREAK'
    bossBar:
      color: 'YELLOW'
      style: 'SOLID'
      duration: 120
    particle:
      type: "DUST"
      count: 15
      offset: 0.6
      speed: 0.1

conditions.yml
# Configuration file for the Biomentry condition system.
# Each "rule" defines a trigger, conditions, and actions.

rules:
  # --- EXAMPLE 1: Simple "IF ... AND ..." condition (AND) ---
  # The player receives speed in the desert, but only if it's daytime AND they have the permission.
  desert_speed_day:
    trigger:
      type: 'ENTER_BIOME'
      biome: 'minecraft:desert'
    conditions:
      and: # "and" is a list of conditions that must ALL be true
        - type: 'WORLD_TIME'
          operator: 'LESS_THAN'
          value: 12500 # Before sunset
        - type: 'HAS_PERMISSION'
          permission: 'biomentry.condition.desert_speed'
    actions:
      - type: 'APPLY_EFFECT'
        effect: 'SPEED'
        duration: 600 # in ticks (30 seconds)
        amplifier: 0

  # --- EXAMPLE 2: "IF IN CAVE" condition ---
  # The player receives a torch if they enter any cave and have the permission.
  generic_cave_torch:
    trigger:
      type: 'ENTER_BIOME'
      in_cave: true # This rule only applies when the player is in a cave.

    conditions:
      or: # AT LEAST ONE condition must be true
        - type: 'HAS_PERMISSION'
          permission: 'biomentry.condition.torch_giver'
        - type: 'HAS_EFFECT'
          effect: 'NIGHT_VISION'
    actions:
      - type: 'RUN_COMMAND'
        command: 'give %player_name% minecraft:torch 4'
      - type: 'SEND_MESSAGE'
        message: '<gray>You feel like an explorer in these caves.</gray>'

  # --- EXAMPLE 3: "IF NOT ..." condition (NOT) ---
  # The player receives a warning if they enter the Nether WITHOUT full diamond armor.
  nether_warning:
    trigger:
      type: 'ENTER_BIOME'
      biome: 'minecraft:nether_wastes'
      in_cave: false # Only applies on the "surface" of the Nether
    conditions:
      not: # "not" inverts the condition it contains
        type: 'HAS_ARMOR' 
        material: 'DIAMOND'
        pieces: 4 # 4 pieces for full armor
    actions:
      - type: 'SEND_MESSAGE'
        message: '<#FF6347><b>Warning!</b> The Nether is dangerous without proper equipment.'

  # --- EXAMPLE 4: "IF NEITHER ... NOR ..." condition (NOT + OR) ---
  # The player takes damage in the Deep Dark if they have NEITHER the Regeneration effect, NOR the Resistance effect.
  deep_dark_danger:
    trigger:
      type: 'ENTER_BIOME'
      biome: 'minecraft:deep_dark'
    conditions:
      # The logic is: NOT (A OR B)
      not:
        or:
          - type: 'HAS_EFFECT'
            effect: 'REGENERATION'
          - type: 'HAS_EFFECT'
            effect: 'RESISTANCE'
    actions:
      - type: 'APPLY_EFFECT'
        effect: 'WITHER' # Applies the Wither effect
        duration: 100
        amplifier: 0
      - type: 'SEND_MESSAGE'
        message: '<#8B0000>You feel a malevolent presence draining your life...'

  # --- EXAMPLE 5: Requested Actions ---
  # Gives a temporary permission and health/saturation upon entering a specific biome.
  ancient_forest_bonus:
    trigger:
      type: 'ENTER_BIOME'
      biome: 'minecraft:old_growth_pine_taiga'
    conditions:
      # No conditions, triggers for everyone
      and: []
    actions:
      - type: 'ADD_PERMISSION'
        permission: 'essentials.fly'
        duration: 300 # in seconds (5 minutes)
      - type: 'HEAL'
        amount: 4.0 # in half-hearts (here, 2 hearts)
      - type: 'GIVE_SATURATION'
        amount: 5.0
      - type: 'SEND_MESSAGE'
        message: '<#2E8B57>The strength of the ancient forest flows through you.'

Совместимость

Minecraft: Java Edition

1.21.x1.20.x

Платформы

Поддерживаемые окружения

Сервер

Создатели

Детали

Лицензия:Apache-2.0
Опубликован:8 месяцев назад
Обновлён:6 месяцев назад
Главная