Back to mods
Ravents project artwork

Modrinth · Minecraft mod

Ravents

🗸 Ravents for custom mechanics. Design multi-wave raids with complex triggers, create unique mobs with modified stats, gear, and mounted towers. Spawn control: Replace vanilla mobs or add custom copies.

Choose a version Pick your version below, then grab the matching file.

Quick answer

Which Ravents release should I use?

Updated 4 months ago
Latest stable file 3.0
Game version 1.21.1
Loader Fabric

Ravents 3.0 targets 1.21.1 with Fabric. Installation on the client is optional. Installation on the dedicated server is optional. All 2 required mods have matching files.

Where it goes

Is Ravents required on the client, server, or both?

Installation on the client is optional. Installation on the dedicated server is optional.

Client Optional
Dedicated server Optional
Loader for this release Fabric
Required install it here Optional supported, not mandatory Not supported do not install here Source doesn’t say do not assume

The source marks this as usable on both the client and server.

What else does Ravents 3.0 need?

3.0. Change the file and its required mods may change too.

All 2 required mods have matching files

Install Architectury API, Fabric API first. We found matching files for this game-version and loader setup.

Architectury API Needed by Ravents 3.0
required
Matching file found Matched file: 13.0.11+fabric
Pehkui Optional for Ravents 3.0
optional
Matching file found Matched file: 3.8.3+1.14.4-1.21
Fabric API Needed by Ravents 3.0
required
Matching file found Matched file: 0.116.17+1.21.1

We only count dependency files that match this setup. A file for another loader does not fill the gap.

Before you install it

Add Ravents without breaking your instance.

Built for Ravents 3.0. Pick another file and the loader, install side or required mods may change.

  1. 01

    Stick to this file

    Use 3.0. It targets 1.21.1 with Fabric; another release may have different loader, side or dependency requirements.

  2. 02

    Bring the mods it needs

    Install Architectury API, Fabric API first. We found matching files for this game-version and loader setup.

  3. 03

    Put it on the correct side

    Installation on the client is optional. Installation on the dedicated server is optional.

  4. 04

    Pick the file you checked

    Use the “Get this file” button beside 3.0. It opens that exact file at the source.

About this project

What does Ravents add?

────────────────────────────────────────────────────────────────

ENGLISH

────────────────────────────────────────────────────────────────

Ravents — Custom Raids, Triggers & Mob Events

Ravents is a fully data-driven mod that lets you create custom
raids, mob events, and trigger systems entirely through JSON
config files — no coding required.

Define your own waves of custom mobs, set up complex trigger
conditions (kills, blocks broken, items in inventory, biomes
visited, coordinates reached, days played, and more), and
watch raids launch automatically for each individual player
the moment their personal conditions are met.

Works in singleplayer and multiplayer. Every player has their
own independent trigger counters, stats, and raid queue.

🏆 Support the Author

────────────────────────────────────────────────────────────────

FEATURES

────────────────────────────────────────────────────────────────

  • Fully JSON-driven — no coding, just config files
  • Custom multi-wave raids per player
  • 15+ trigger condition types
  • Custom mobs with custom health, damage, speed, armor,
    enchantments, effects, on-hit effects, and riders
  • Mob stacking (rider chains, e.g. skeleton on zombie)
  • spawnOnDeath — mobs that split into others on death
  • Boss bar per raid with wave counter
  • Glow effect on raid mobs
  • Raid teleports to player if they walk away
  • Rewards: items + experience on raid completion
  • singleUse raids or infinitely repeating raids
  • Per-player raid queue and persistence (survives disconnect)
  • Entity spawn replacement/cloning events
  • Full multiplayer support — each player has their own raids

────────────────────────────────────────────────────────────────

FILE STRUCTURE

────────────────────────────────────────────────────────────────

All config files are located in:

.minecraft/config/Ravents/

Folder layout:

  config/
  ├── Ravents_settings.json        <- global settings
  ├── Ravents/
  │   ├── your_mob.json            <- custom mob definitions
  │   ├── raids/
  │   │   └── your_raid.json       <- raid definitions
  │   ├── events/
  │   │   └── your_event.json      <- spawn event definitions
  │   └── example/
  │       ├── custom_mob_example.json
  │       ├── raid_example.json
  │       └── event_example.json

All example files are generated automatically on first launch.
Study them — they contain every available field with comments.

────────────────────────────────────────────────────────────────

CUSTOM MOBS

────────────────────────────────────────────────────────────────

Custom mobs are defined in JSON files placed directly inside
the Ravents/ folder (not in raids/ or events/).

Minimal example — my_zombie.json:

{
  "id": "my_zombie",
  "displayName": "Dark Zombie",
  "baseEntity": "minecraft:zombie",
  "health": 60.0,
  "damage": 8.0,
  "speed": 0.32,
  "scale": 1.5,
  "clearVanillaDrops": true,
  "dropEquipment": false,
  "drops": [
    { "item": "minecraft:iron_ingot", "min": 1, "max": 3, "chance": 0.8 }
  ]
}

Full example with armor, enchantments, effects, rider, and
spawnOnDeath:

{
  "id": "knight_boss",
  "displayName": "Knight Boss",
  "baseEntity": "minecraft:zombie",
  "health": 200.0,
  "damage": 18.0,
  "speed": 0.28,
  "scale": 1.8,
  "clearVanillaDrops": true,
  "dropEquipment": false,
  "armor": {
    "head":  { "item": "minecraft:diamond_helmet",     "enchantments": { "minecraft:protection": 3 } },
    "chest": { "item": "minecraft:diamond_chestplate", "enchantments": { "minecraft:protection": 3 } },
    "legs":  { "item": "minecraft:diamond_leggings",   "enchantments": {} },
    "feet":  { "item": "minecraft:diamond_boots",      "enchantments": {} }
  },
  "hands": {
    "mainhand": { "item": "minecraft:diamond_sword", "enchantments": { "minecraft:sharpness": 4 } }
  },
  "effects": [
    { "id": "minecraft:resistance", "duration": 99999, "amplifier": 0 }
  ],
  "onHitEffects": [
    { "id": "minecraft:slowness", "duration": 60, "amplifier": 1 }
  ],
  "drops": [
    { "item": "minecraft:diamond", "min": 3, "max": 6, "chance": 1.0 },
    { "item": "minecraft:netherite_scrap", "min": 1, "max": 1, "chance": 0.3 }
  ],
  "spawnOnDeath": [
    { "mobId": "my_zombie", "count": 2 }
  ],
  "rider": {
    "baseEntity": "minecraft:skeleton",
    "displayName": "Archer Rider",
    "health": 30.0,
    "damage": 5.0,
    "speed": 0.3,
    "hands": {
      "mainhand": { "item": "minecraft:bow", "enchantments": { "minecraft:power": 3 } }
    }
  }
}

Fields reference:

  id                 — unique identifier (used in raids/events)
  displayName        — name shown above mob (if nametagEnabled)
  baseEntity         — any vanilla entity ID
  health             — max health (half-hearts × 2 = HP)
  damage             — base attack damage
  speed              — movement speed (vanilla zombie = 0.23)
  scale              — visual + hitbox scale (requires Pehkui)
  clearVanillaDrops  — remove default drops (true/false)
  dropEquipment      — whether equipment drops on death
  armor              — equipment slots: head/chest/legs/feet
  hands              — mainhand / offhand
  enchantments       — map of enchantment ID → level
  effects            — permanent potion effects on the mob
  onHitEffects       — effects applied to the player on hit
  drops              — custom loot table
  spawnOnDeath       — mobs to spawn when this mob dies
  rider              — another mob definition stacked on top

────────────────────────────────────────────────────────────────

CUSTOM RAIDS

────────────────────────────────────────────────────────────────

Raid files go into: config/Ravents/raids/

Each raid has waves of mobs and a trigger that determines when
it launches for a player. Every player has their own trigger
counter — raids do NOT share state between players.

Basic raid example — my_raid.json:

{
  "id": "my_raid",
  "displayName": "Forest Ambush",
  "singleUse": false,
  "spawnDistance": 8.0,
  "trigger": {
    "mobKillsTotal": 50
  },
  "waves": [
    {
      "mobs": [
        { "mobId": "my_zombie", "count": 4, "noDrop": false },
        { "mobId": "minecraft:skeleton", "count": 2, "noDrop": true }
      ]
    },
    {
      "mobs": [
        { "mobId": "knight_boss", "count": 1, "noDrop": false }
      ]
    }
  ],
  "rewards": {
    "items": {
      "minecraft:emerald": 5,
      "minecraft:golden_apple": 1
    },
    "experience": 100
  }
}

This raid triggers when the player kills 50 mobs total.
Wave 1: 4 custom zombies + 2 skeletons.
Wave 2: 1 knight boss.
On completion: 5 emeralds, 1 golden apple, 100 XP.

────────────────────────────────────────────────────────────────

TRIGGER CONDITIONS

────────────────────────────────────────────────────────────────

All trigger fields are optional. You can combine them freely.
All conditions must be satisfied simultaneously (AND logic).
Within each specific list, items support OR groups via "or": true.

--- Counter-based triggers (per player) ---

  "mobKillsTotal": 100
      Triggers when player has killed 100 mobs total.

  "mobKillsSpecific": [
    { "id": "minecraft:creeper", "count": 10 }
  ]
      Triggers after killing 10 creepers specifically.

  "blocksBrokenTotal": 500
  "blocksBrokenSpecific": [
    { "id": "minecraft:diamond_ore", "count": 5 }
  ]

  "blocksPlacedTotal": 200
  "blocksPlacedSpecific": [
    { "id": "minecraft:tnt", "count": 3 }
  ]

  "blocksUsedTotal": 50
  "blocksUsedSpecific": [
    { "id": "minecraft:crafting_table", "count": 10 }
  ]

  "itemsUsed": 30
  "itemsUsedSpecific": [
    { "id": "minecraft:bread", "count": 5 }
  ]

  "jumps": 200
  "sit": 10            (crouch presses)
  "distanceWalked": 1000   (in blocks)
  "daysPlayed": 7
  "experienceLevels": 30   (current XP level, not total)

--- One-time / conditional triggers ---

  "requiredItems": [
    { "item": "minecraft:nether_star", "count": 1 }
  ]
      Triggers while player holds a Nether Star in inventory.

  "coordinateReached": [
    { "axis": "y", "value": -40 }
  ]
      Triggers when player reaches Y = -40 or below.
      axis: "x", "y", or "z"
      Negative value = player must be at or below that value.
      Positive value = player must be at or above.

  "visitedDimension": ["minecraft:the_nether"]
      Triggers once player has visited the Nether.

  "visitedBiome": ["minecraft:deep_dark"]
      Triggers once player has visited the Deep Dark biome.

  "visitedStructure": ["minecraft:stronghold"]
      Triggers once player has entered a Stronghold.

  "visitedPOI": ["minecraft:nether_portal"]
      Triggers once player is near a Nether Portal POI.

  "nearSpawnpoint": 10
      Triggers when player is within 10 blocks of their spawn.

--- OR logic example ---

  "mobKillsSpecific": [
    { "id": "minecraft:zombie",  "count": 20, "or": true },
    { "id": "minecraft:creeper", "count": 20, "or": false }
  ]

This means: (zombie OR creeper) killed 20 times.
Items with "or": true are grouped with the next item.
The group resolves as OR; groups resolve as AND.

--- Repeating raids ---

  "singleUse": false   — raid triggers again every time
                         the player reaches the next multiple.
  Example: mobKillsTotal = 50, singleUse = false
    → triggers at 50 kills, again at 100, again at 150, etc.

  "singleUse": true    — triggers only once per player.

────────────────────────────────────────────────────────────────

TRIGGER EXAMPLES

────────────────────────────────────────────────────────────────

Example 1 — triggers after player enters the Nether:

  "trigger": {
    "visitedDimension": ["minecraft:the_nether"]
  }

Example 2 — triggers every 100 mob kills (repeating):

  "trigger": {
    "mobKillsTotal": 100
  },
  "singleUse": false

Example 3 — triggers after mining 5 diamonds AND visiting
the deep dark (both required):

  "trigger": {
    "blocksBrokenSpecific": [
      { "id": "minecraft:diamond_ore", "count": 5 }
    ],
    "visitedBiome": ["minecraft:deep_dark"]
  }

Example 4 — triggers while holding a Nether Star, one time only:

  "trigger": {
    "requiredItems": [
      { "item": "minecraft:nether_star", "count": 1 }
    ]
  },
  "singleUse": true

Example 5 — triggers when player descends below Y = -55:

  "trigger": {
    "coordinateReached": [
      { "axis": "y", "value": -55 }
    ]
  },
  "singleUse": true

Example 6 — triggers after 7 in-game days AND level 30+:

  "trigger": {
    "daysPlayed": 7,
    "experienceLevels": 30
  }

────────────────────────────────────────────────────────────────

SPAWN EVENTS

────────────────────────────────────────────────────────────────

Event files go into: config/Ravents/events/

Events allow you to replace or clone vanilla mob spawns with
your custom mobs, filtered by dimension, biome, and height.

Example — spawn_milton.json:

{
  "id": "spawn_milton",
  "spawns": [
    {
      "targetEntity": "minecraft:zombie",
      "mobId": "knight_boss",
      "type": "replace",
      "dimensions": ["minecraft:overworld"],
      "biomes": ["*"],
      "minHeight": -64,
      "maxHeight": 320
    }
  ]
}

  type "replace"  — removes the vanilla mob, spawns custom one
  type "cloning"  — keeps the vanilla mob, also spawns custom
  dimensions      — list of dimension IDs, or ["*"] for all
  biomes          — list of biome IDs, or ["*"] for all
  minHeight       — minimum Y to apply the event
  maxHeight       — maximum Y to apply the event

────────────────────────────────────────────────────────────────

COMMANDS

────────────────────────────────────────────────────────────────

All commands require operator permission level 2.

  /ravents raids <name>              — start a raid on yourself
  /ravents raids <name> <player>     — start a raid on a player
  /ravents events <name>             — trigger a spawn event
  /ravents events <name> <player>    — trigger event at player
  /ravents custom <name>             — spawn a custom mob at you
  /ravents stats                     — view your stats
  /ravents stats <player>            — view another player's stats
  /ravents stop                      — stop all active raids
  /ravents reload                    — reload all config files

All command arguments support tab-completion from loaded configs.

────────────────────────────────────────────────────────────────

SETTINGS FILE — Ravents_settings.json

────────────────────────────────────────────────────────────────

  raidBossBarEnabled    — show boss bar during raids (true/false)
  raidNameOnBarEnabled  — show raid name + wave on boss bar
  raidGlowEffectEnabled — raid mobs glow (true/false)
  nametagEnabled        — show mob displayName above their head

────────────────────────────────────────────────────────────────

MULTIPLAYER NOTES

────────────────────────────────────────────────────────────────

  • Every player has completely independent trigger counters
  • Raids start only for the player who met the conditions
  • Stats (kills, blocks, distance, etc.) are per-player
  • Boss bar is visible to nearby players, not only the owner
  • On disconnect: active raids are saved and restored on rejoin
  • Works on LAN, dedicated servers

────────────────────────────────────────────────────────────────

DEPENDENCIES

────────────────────────────────────────────────────────────────

Required: Architectury API
Optional: Pehkui (for mob scale support)

🌐Third-party hosting

You are not allowed to host the mod on third-party resources. You can post news about the mod, but you must link to this mod page for downloading (or link to the download address from modrinth).


────────────────────────────────────────────────────────────────

РУССКИЙ

────────────────────────────────────────────────────────────────

Ravents — Кастомные рейды, триггеры и события мобов

Ravents — полностью data-driven мод, который позволяет создавать
собственные рейды, события спавна мобов и системы триггеров
исключительно через JSON-файлы, без написания кода.

Настраивай волны кастомных мобов, задавай сложные условия
триггеров (убийства, сломанные блоки, предметы в инвентаре,
посещённые биомы, достигнутые координаты, прожитые дни и многое
другое) — и рейды будут запускаться автоматически у каждого игрока
в тот момент, когда именно он выполнит свои условия.

Работает в одиночной игре и в мультиплеере. У каждого игрока
независимые счётчики триггеров, статы и очередь рейдов.

🏆 Поддержать автора

────────────────────────────────────────────────────────────────

ВОЗМОЖНОСТИ

────────────────────────────────────────────────────────────────

  • Полностью на JSON — только конфиги, никакого кода
  • Кастомные многоволновые рейды для каждого игрока
  • Более 15 типов условий триггеров
  • Кастомные мобы с настройкой здоровья, урона, скорости,
    брони, зачарований, эффектов, и наездников
  • Стеки мобов (наездники — например, скелет на зомби)
  • spawnOnDeath — мобы, которые при смерти порождают других
  • Полоса босса на каждый рейд с номером волны
  • Подсветка (glow) мобов рейда
  • Телепортация рейда к игроку, если он ушёл слишком далеко
  • Награды: предметы и опыт за завершение рейда
  • Одноразовые или бесконечно повторяющиеся рейды
  • Очередь рейдов на игрока с сохранением при дисконнекте
  • Замена/клонирование спавна ванильных мобов через события
  • Полная поддержка мультиплеера — у каждого игрока свои рейды

────────────────────────────────────────────────────────────────

СТРУКТУРА ФАЙЛОВ

────────────────────────────────────────────────────────────────

Все файлы конфигурации находятся в:

.minecraft/config/Ravents/

Структура папок:

  config/
  ├── Ravents_settings.json        <- глобальные настройки
  ├── Ravents/
  │   ├── твой_моб.json            <- определения кастомных мобов
  │   ├── raids/
  │   │   └── твой_рейд.json       <- определения рейдов
  │   ├── events/
  │   │   └── твоё_событие.json    <- события спавна
  │   └── example/
  │       ├── custom_mob_example.json
  │       ├── raid_example.json
  │       └── event_example.json

Все примеры генерируются автоматически при первом запуске.
Изучи их — там есть все доступные поля.

────────────────────────────────────────────────────────────────

КАСТОМНЫЕ МОБЫ

────────────────────────────────────────────────────────────────

Файлы мобов размещаются прямо в папке Ravents/
(не в raids/ и не в events/).

Минимальный пример — my_zombie.json:

{
  "id": "my_zombie",
  "displayName": "Тёмный Зомби",
  "baseEntity": "minecraft:zombie",
  "health": 60.0,
  "damage": 8.0,
  "speed": 0.32,
  "scale": 1.5,
  "clearVanillaDrops": true,
  "dropEquipment": false,
  "drops": [
    { "item": "minecraft:iron_ingot", "min": 1, "max": 3, "chance": 0.8 }
  ]
}

Полный пример с бронёй, зачарованиями, эффектами, наездником
и spawnOnDeath:

{
  "id": "knight_boss",
  "displayName": "Рыцарь-Босс",
  "baseEntity": "minecraft:zombie",
  "health": 200.0,
  "damage": 18.0,
  "speed": 0.28,
  "scale": 1.8,
  "clearVanillaDrops": true,
  "dropEquipment": false,
  "armor": {
    "head":  { "item": "minecraft:diamond_helmet",     "enchantments": { "minecraft:protection": 3 } },
    "chest": { "item": "minecraft:diamond_chestplate", "enchantments": { "minecraft:protection": 3 } },
    "legs":  { "item": "minecraft:diamond_leggings",   "enchantments": {} },
    "feet":  { "item": "minecraft:diamond_boots",      "enchantments": {} }
  },
  "hands": {
    "mainhand": { "item": "minecraft:diamond_sword", "enchantments": { "minecraft:sharpness": 4 } }
  },
  "effects": [
    { "id": "minecraft:resistance", "duration": 99999, "amplifier": 0 }
  ],
  "onHitEffects": [
    { "id": "minecraft:slowness", "duration": 60, "amplifier": 1 }
  ],
  "drops": [
    { "item": "minecraft:diamond", "min": 3, "max": 6, "chance": 1.0 },
    { "item": "minecraft:netherite_scrap", "min": 1, "max": 1, "chance": 0.3 }
  ],
  "spawnOnDeath": [
    { "mobId": "my_zombie", "count": 2 }
  ],
  "rider": {
    "baseEntity": "minecraft:skeleton",
    "displayName": "Лучник",
    "health": 30.0,
    "damage": 5.0,
    "speed": 0.3,
    "hands": {
      "mainhand": { "item": "minecraft:bow", "enchantments": { "minecraft:power": 3 } }
    }
  }
}

Справочник по полям:

  id                 — уникальный ID (используется в рейдах/событиях)
  displayName        — имя моба над головой (если nametagEnabled = true)
  baseEntity         — любой ванильный ID сущности
  health             — максимальное здоровье (значение = HP, не сердца)
  damage             — базовый урон в ближнем бою
  speed              — скорость передвижения (ванильный зомби = 0.23)
  scale              — масштаб визуала и хитбокса (требует Pehkui)
  clearVanillaDrops  — убрать стандартные дропы (true/false)
  dropEquipment      — падает ли снаряжение при смерти
  armor              — слоты брони: head/chest/legs/feet
  hands              — mainhand / offhand
  enchantments       — зачарования: ID зачарования → уровень
  effects            — постоянные эффекты зелья на мобе
  onHitEffects       — эффекты, накладываемые на игрока при ударе
  drops              — кастомная таблица лута
  spawnOnDeath       — мобы, спавнящиеся при смерти этого моба
  rider              — ещё одно определение моба, сидящего сверху

────────────────────────────────────────────────────────────────

КАСТОМНЫЕ РЕЙДЫ

────────────────────────────────────────────────────────────────

Файлы рейдов размещаются в: config/Ravents/raids/

У каждого рейда есть волны мобов и триггер, определяющий когда
рейд запустится у игрока. У каждого игрока свой счётчик
триггера — рейды НЕ делят состояние между игроками.

Базовый пример рейда — my_raid.json:

{
  "id": "my_raid",
  "displayName": "Засада в лесу",
  "singleUse": false,
  "spawnDistance": 8.0,
  "trigger": {
    "mobKillsTotal": 50
  },
  "waves": [
    {
      "mobs": [
        { "mobId": "my_zombie", "count": 4, "noDrop": false },
        { "mobId": "minecraft:skeleton", "count": 2, "noDrop": true }
      ]
    },
    {
      "mobs": [
        { "mobId": "knight_boss", "count": 1, "noDrop": false }
      ]
    }
  ],
  "rewards": {
    "items": {
      "minecraft:emerald": 5,
      "minecraft:golden_apple": 1
    },
    "experience": 100
  }
}

Этот рейд срабатывает, когда игрок убивает 50 мобов.
Волна 1: 4 кастомных зомби + 2 скелета.
Волна 2: 1 рыцарь-босс.
По завершению: 5 изумрудов, 1 золотое яблоко, 100 XP.

────────────────────────────────────────────────────────────────

УСЛОВИЯ ТРИГГЕРОВ

────────────────────────────────────────────────────────────────

Все поля триггера необязательны. Их можно комбинировать свободно.
Все условия должны выполняться одновременно (логика AND).
Внутри каждого списка поддерживается группировка OR через "or": true.

--- Счётчики (у каждого игрока свои) ---

  "mobKillsTotal": 100
      Срабатывает после 100 убийств мобов.

  "mobKillsSpecific": [
    { "id": "minecraft:creeper", "count": 10 }
  ]
      После убийства 10 криперов конкретно.

  "blocksBrokenTotal": 500
  "blocksBrokenSpecific": [
    { "id": "minecraft:diamond_ore", "count": 5 }
  ]

  "blocksPlacedTotal": 200
  "blocksPlacedSpecific": [
    { "id": "minecraft:tnt", "count": 3 }
  ]

  "blocksUsedTotal": 50
  "blocksUsedSpecific": [
    { "id": "minecraft:crafting_table", "count": 10 }
  ]

  "itemsUsed": 30
  "itemsUsedSpecific": [
    { "id": "minecraft:bread", "count": 5 }
  ]

  "jumps": 200
  "sit": 10               (количество приседаний)
  "distanceWalked": 1000  (в блоках)
  "daysPlayed": 7
  "experienceLevels": 30  (текущий уровень опыта, не накопленный)

--- Одноразовые / условные триггеры ---

  "requiredItems": [
    { "item": "minecraft:nether_star", "count": 1 }
  ]
      Срабатывает пока в инвентаре есть Звезда Незера.

  "coordinateReached": [
    { "axis": "y", "value": -40 }
  ]
      Срабатывает, когда игрок достигает Y = -40 или ниже.
      axis: "x", "y" или "z"
      Отрицательное значение = игрок должен быть <= этого значения.
      Положительное = игрок должен быть >= этого значения.

  "visitedDimension": ["minecraft:the_nether"]
      Срабатывает после первого посещения Незера.

  "visitedBiome": ["minecraft:deep_dark"]
      После посещения биома Deep Dark.

  "visitedStructure": ["minecraft:stronghold"]
      После попадания в крепость.

  "visitedPOI": ["minecraft:nether_portal"]
      После нахождения рядом с POI портала в Незер.

  "nearSpawnpoint": 10
      Когда игрок находится в радиусе 10 блоков от точки спавна.

--- Пример OR логики ---

  "mobKillsSpecific": [
    { "id": "minecraft:zombie",  "count": 20, "or": true },
    { "id": "minecraft:creeper", "count": 20, "or": false }
  ]

Значит: (zombie ИЛИ creeper) убиты 20 раз.
Элементы с "or": true группируются со следующим.
Группа — OR; группы между собой — AND.

--- Повторяющиеся рейды ---

  "singleUse": false  — рейд срабатывает снова при каждом
                        достижении следующего кратного значения.
  Пример: mobKillsTotal = 50, singleUse = false
    → 50 убийств = рейд, ещё 50 = рейд снова, и т.д.

  "singleUse": true   — срабатывает только один раз на игрока.

────────────────────────────────────────────────────────────────

ПРИМЕРЫ ТРИГГЕРОВ

────────────────────────────────────────────────────────────────

Пример 1 — срабатывает после первого входа в Незер:

  "trigger": {
    "visitedDimension": ["minecraft:the_nether"]
  }

Пример 2 — каждые 100 убийств мобов (бесконечно):

  "trigger": {
    "mobKillsTotal": 100
  },
  "singleUse": false

Пример 3 — после добычи 5 алмазных руд И посещения deep dark:

  "trigger": {
    "blocksBrokenSpecific": [
      { "id": "minecraft:diamond_ore", "count": 5 }
    ],
    "visitedBiome": ["minecraft:deep_dark"]
  }

Пример 4 — пока в инвентаре есть Звезда Незера (один раз):

  "trigger": {
    "requiredItems": [
      { "item": "minecraft:nether_star", "count": 1 }
    ]
  },
  "singleUse": true

Пример 5 — когда игрок опускается ниже Y = -55:

  "trigger": {
    "coordinateReached": [
      { "axis": "y", "value": -55 }
    ]
  },
  "singleUse": true

Пример 6 — после 7 игровых дней И уровня опыта 30+:

  "trigger": {
    "daysPlayed": 7,
    "experienceLevels": 30
  }

────────────────────────────────────────────────────────────────

СОБЫТИЯ СПАВНА

────────────────────────────────────────────────────────────────

Файлы событий размещаются в: config/Ravents/events/

События позволяют заменять или клонировать спавн ванильных мобов
кастомными, с фильтром по измерению, биому и высоте.

Пример — spawn_milton.json:

{
  "id": "spawn_event",
  "spawns": [
    {
      "targetEntity": "minecraft:zombie",
      "mobId": "knight_boss",
      "type": "replace",
      "dimensions": ["minecraft:overworld"],
      "biomes": ["*"],
      "minHeight": -64,
      "maxHeight": 320
    }
  ]
}

  type "replace"  — убирает ванильного моба, спавнит кастомного
  type "cloning"  — оставляет ванильного, дополнительно спавнит
  dimensions      — список ID измерений, или ["*"] для всех
  biomes          — список ID биомов, или ["*"] для всех
  minHeight       — минимальная Y для применения события
  maxHeight       — максимальная Y для применения события

────────────────────────────────────────────────────────────────

КОМАНДЫ

────────────────────────────────────────────────────────────────

Все команды требуют уровень оператора 2.

  /ravents raids <name>              — запустить рейд на себя
  /ravents raids <name> <player>     — запустить рейд на игрока
  /ravents events <name>             — вызвать событие спавна
  /ravents events <name> <player>    — событие у конкретного игрока
  /ravents custom <name>             — заспавнить кастомного моба
  /ravents stats                     — посмотреть свои статы
  /ravents stats <player>            — статы другого игрока
  /ravents stop                      — остановить все активные рейды
  /ravents reload                    — перезагрузить все конфиги

Все аргументы команд поддерживают Tab-автодополнение.

────────────────────────────────────────────────────────────────

ФАЙЛ НАСТРОЕК — Ravents_settings.json

────────────────────────────────────────────────────────────────

  raidBossBarEnabled    — показывать полосу босса (true/false)
  raidNameOnBarEnabled  — отображать название рейда и номер волны
  raidGlowEffectEnabled — подсвечивать мобов рейда (true/false)
  nametagEnabled        — показывать displayName над головой моба

────────────────────────────────────────────────────────────────

МУЛЬТИПЛЕЕР

────────────────────────────────────────────────────────────────

  • У каждого игрока полностью независимые счётчики триггеров
  • Рейд запускается только у того, кто выполнил условия
  • Статы (убийства, блоки, расстояние и т.д.) — на игрока
  • Полоса босса видна соседним игрокам, но не только владельцу
  • При дисконнекте: активные рейды сохраняются и восстанавливаются
  • Работает на LAN, выделенных серверах

────────────────────────────────────────────────────────────────

ЗАВИСИМОСТИ

────────────────────────────────────────────────────────────────

Обязательно: Architectury API
Опционально: Pehkui (для поддержки масштаба мобов)

🌐Сторонние размещения

Вы не имеете права размещать мод на сторонних ресурсах, вы можете разместить новость о моде, но обязательно ссылаться на эту страницу мода для загрузки. (или ссылаться на ссылку адреса скачивания с modrinth)

================================================================

Project description from Modrinth.

Pick your setup

Ravents by Minecraft version and loader

Choose the version and loader you play, then open the matching release.

4 available setups

Check the dependencies, then try the file in a copied instance before changing a world you care about.

Recent files

Ravents versions and loaders

7 of 7 releases match

Looking for an older file? The official Modrinth project page is in Resources.