Перейти к содержимому
Mineforgian

ConditionMod

Create powerful Minecraft events using YAML. No coding required. Optimized alternative with ConditionalEvents compatibility.

Загрузки
2K
Подписчики
4
Обновлён
22 июля 2026 г.
Лицензия
All-Rights-Reserved

Опубликован 22 апреля 2026 г.

ConditionsMod

ConditionsMod is a Minecraft mod that lets you create fully customizable events using simple YAML files, without writing code.

It is inspired by ConditionalEvents, but it is built with a stronger goal: to provide a cleaner, faster, lighter, and more flexible event system for modern modded servers. ConditionsMod keeps the familiar event-condition-action workflow while improving the configuration experience, runtime performance, and extensibility.

The project is designed for Forge and Fabric ports, depending on the Minecraft version.

How It Works

ConditionsMod follows a simple flow:

Event -> Conditions -> Actions

  • Event: detects something happening in the game.
  • Conditions: checks whether requirements are met.
  • Actions: runs the result if the conditions pass.

This lets you build custom server behavior without creating a separate mod or writing Java code.

YAML Configuration

Events are configured with .yml files.

Server: conditions/
Client: config/conditions/

Example:

events:
  - name: welcome
    type: player_join
    enabled: true
    conditions: []
    actions:
      default:
        - "message: &aWelcome, %player%!"

ConditionalEvents Compatibility

ConditionsMod supports ConditionalEvents-style configuration so server owners can migrate many existing setups without rewriting everything.

Supported compatibility features include:

  • Events: root section.
  • Native events: list format.
  • Text conditions such as %main_command% == /hello.
  • Conditional action branches with execute.
  • Compound conditions with and and or.
  • Action groups such as default, cooldown, one_time, and custom groups.
  • Targeted actions such as to_all, to_target, to_world, to_player, and to_range.
  • Common variables such as %player%, %main_command%, %args_length%, %arg_1%, %block%, %playerblock_inside%, %playerblock_below_1%, %playerblock_above_1%, %random_1_10%, %random_last%, %world_time%, cooldown variables, and SVR variables.

Example using ConditionalEvents-style layout:

Events:
  command_example:
    type: player_command
    conditions:
      - "%main_command% == /announce"
      - "%args_length% == 0 execute error"
    actions:
      default:
        - "to_all: centered_message: &c&lAnnouncement"
        - "to_all: message: &e%player%&7: %args_substring_1-100%"
      error:
        - "message: &cUse /announce <message>"

What ConditionsMod Improves

ConditionsMod is made to go beyond the traditional ConditionalEvents approach:

  • YAML-first configuration that is easier to read and maintain.
  • Lightweight runtime focused on checking only what is needed.
  • Fast event lookup by name for calls, enable/disable commands, and debug tools.
  • Events grouped by type, reducing unnecessary checks.
  • Cached regex conditions for better repeated-condition performance.
  • Concurrent runtime state for cooldowns and one-time event tracking.
  • Cleaner addon API for custom actions, placeholders, variables, and custom events.
  • Client-side features that traditional server-only plugins cannot provide, such as HUD, camera, key blocking, and key combos.
  • A simpler core that avoids loading large plugin-style systems when they are not needed.

Event Types

ConditionsMod includes event types for:

  • Player join, leave, death, kill, chat, command, respawn, teleport, damage, sneak, jump, inventory, stats, food, air, and more.
  • Block break, place, and interact.
  • Item interact, consume, pickup, drop, craft, enchant, repair, move, and select.
  • Entity interact and spawn.
  • Server start, stop, repetitive server checks, custom events, and call events.
  • Client features such as HUD display, camera, key, and key combo events.

Conditions

Conditions support common operators:

==, !=, equals, !equals
equalsIgnoreCase, !equalsIgnoreCase
contains, !contains
startsWith, !startsWith
endsWith, !endsWith
matches, !matches
>, >=, <, <=

Examples:

conditions:
  - "%player_world% == overworld"
  - "%main_command% equalsIgnoreCase /spawn"
  - "%args_length% == 0 execute no_args"
  - "%block% matches (?i)(minecraft:)?stone_button"

Actions

Available actions include:

  • message
  • centered_message
  • broadcast
  • title
  • actionbar
  • console_command
  • player_command
  • kick
  • cancel_event
  • give_item
  • remove_item
  • give_potion_effect
  • remove_potion_effect
  • heal
  • damage
  • set_food_level
  • set_on_fire
  • gamemode
  • playsound
  • particle
  • lightning_strike
  • set_block
  • summon
  • teleport
  • set_cooldown
  • call_event
  • wait
  • to_all
  • to_target
  • to_world
  • to_player
  • to_range

Special Features

Camera

Camera events can change the player camera mode or perspective, allowing effects such as 2D views, RPG-style views, and custom camera positions.

HUD

HUD events can display custom on-screen text with position, scale, background, duration, and animations.

Key And Key Combo

Key events can block or control specific keys, mouse buttons, or key combinations through configuration.

SVR Variables

SVR provides persistent server variables for global values, player values, and lists, stored in YAML.

Custom Events

Other mods can fire custom events into ConditionsMod, allowing configs to react to external mod logic.

Project Status

ConditionsMod is in active development. The compatibility layer will continue expanding with more ConditionalEvents-style variables, actions, and event equivalents.

The goal is not to be a simple clone. The goal is to keep the easy event configuration style while delivering better performance, cleaner structure, stronger mod integration, and features that are not possible in a traditional server-only plugin.


ConditionsMod Español

ConditionsMod es un mod de Minecraft que permite crear eventos completamente personalizados usando archivos YAML, sin necesidad de programar.

Está inspirado en ConditionalEvents, pero busca ir más allá: ofrecer un sistema más limpio, rápido, ligero y flexible para servidores modernos con mods. Mantiene la idea fácil de entender de evento-condiciones-acciones, pero con mejor organización, mejor rendimiento y más posibilidades de expansión.

El proyecto está pensado para tener ports en Forge y Fabric según la versión de Minecraft.

Cómo Funciona

ConditionsMod usa este flujo:

Evento -> Condiciones -> Acciones

  • Evento: detecta algo que ocurre en el juego.
  • Condiciones: comprueban si se cumplen los requisitos.
  • Acciones: ejecutan la respuesta cuando las condiciones pasan.

Con esto puedes crear sistemas completos sin hacer otro mod y sin escribir código Java.

Configuración YAML

Los eventos se configuran con archivos .yml.

Servidor: conditions/
Cliente: config/conditions/

Ejemplo:

events:
  - name: bienvenida
    type: player_join
    enabled: true
    conditions: []
    actions:
      default:
        - "message: &aBienvenido, %player%!"

Compatibilidad Con ConditionalEvents

ConditionsMod soporta el estilo de configuración de ConditionalEvents para que los usuarios puedan migrar muchas configs sin rehacer todo desde cero.

Compatibilidad incluida:

  • Sección raíz Events:.
  • Formato nativo events:.
  • Condiciones de texto como %main_command% == /hello.
  • Ramas condicionales con execute.
  • Condiciones compuestas con and y or.
  • Grupos de acciones como default, cooldown, one_time y grupos personalizados.
  • Acciones dirigidas como to_all, to_target, to_world, to_player y to_range.
  • Variables comunes como %player%, %main_command%, %args_length%, %arg_1%, %block%, %playerblock_inside%, %playerblock_below_1%, %playerblock_above_1%, %random_1_10%, %random_last%, %world_time%, variables de cooldown y variables SVR.

Ejemplo con formato estilo ConditionalEvents:

Events:
  comando_anuncio:
    type: player_command
    conditions:
      - "%main_command% == /anuncio"
      - "%args_length% == 0 execute error"
    actions:
      default:
        - "to_all: centered_message: &c&lAnuncio"
        - "to_all: message: &e%player%&7: %args_substring_1-100%"
      error:
        - "message: &cUsa /anuncio <mensaje>"

Qué Mejora ConditionsMod

ConditionsMod está hecho para mejorar la experiencia frente al enfoque clásico de ConditionalEvents:

  • Configuración YAML más clara y fácil de editar.
  • Sistema más ligero, pensado para ejecutar solo lo necesario.
  • Búsqueda rápida de eventos por nombre para call_event, comandos de enable/disable y debug.
  • Eventos agrupados por tipo para reducir comprobaciones innecesarias.
  • Regex cacheadas para mejorar condiciones repetidas.
  • Estados runtime concurrentes para cooldowns y eventos de una sola vez.
  • API más limpia para addons, acciones custom, placeholders, variables y eventos custom.
  • Funciones de cliente que un plugin solo de servidor no puede ofrecer, como HUD, cámara, bloqueo de teclas y combinaciones de teclas.
  • Núcleo más simple, evitando cargar sistemas grandes cuando no hacen falta.

Tipos De Eventos

ConditionsMod incluye eventos para:

  • Jugadores: entrar, salir, morir, matar, chat, comandos, respawn, teleport, daño, sneak, salto, inventario, estadísticas, comida, aire y más.
  • Bloques: romper, colocar e interactuar.
  • Items: interactuar, consumir, recoger, tirar, craftear, encantar, reparar, mover y seleccionar.
  • Entidades: interactuar y spawn.
  • Servidor: inicio, apagado, eventos repetitivos de servidor, eventos custom y eventos call.
  • Cliente: HUD, cámara, teclas y combinaciones de teclas.

Condiciones

Las condiciones soportan operadores comunes:

==, !=, equals, !equals
equalsIgnoreCase, !equalsIgnoreCase
contains, !contains
startsWith, !startsWith
endsWith, !endsWith
matches, !matches
>, >=, <, <=

Ejemplos:

conditions:
  - "%player_world% == overworld"
  - "%main_command% equalsIgnoreCase /spawn"
  - "%args_length% == 0 execute sin_argumentos"
  - "%block% matches (?i)(minecraft:)?stone_button"

Acciones

Acciones disponibles:

  • message
  • centered_message
  • broadcast
  • title
  • actionbar
  • console_command
  • player_command
  • kick
  • cancel_event
  • give_item
  • remove_item
  • give_potion_effect
  • remove_potion_effect
  • heal
  • damage
  • set_food_level
  • set_on_fire
  • gamemode
  • playsound
  • particle
  • lightning_strike
  • set_block
  • summon
  • teleport
  • set_cooldown
  • call_event
  • wait
  • to_all
  • to_target
  • to_world
  • to_player
  • to_range

Funciones Especiales

Camera

Los eventos de cámara permiten cambiar la vista o perspectiva del jugador, como cámara 2D, vista RPG o posiciones personalizadas.

HUD

Los eventos HUD permiten mostrar texto en pantalla con posición, escala, fondo, duración y animaciones.

Key Y Key Combo

Los eventos de teclas permiten bloquear o controlar teclas, botones del mouse o combinaciones completas desde configuración.

Variables SVR

SVR permite guardar variables persistentes globales, por jugador y listas, usando YAML.

Eventos Custom

Otros mods pueden disparar eventos custom hacia ConditionsMod para que las configs reaccionen a sistemas externos.

Estado Del Proyecto

ConditionsMod está en desarrollo activo. La compatibilidad con ConditionalEvents seguirá creciendo con más variables, acciones y eventos equivalentes.

La meta no es ser una copia simple. La meta es conservar la facilidad de crear eventos sin programar, pero con mejor rendimiento, estructura más limpia, mejor integración con mods y funciones que no son posibles en un plugin tradicional solo de servidor.

Ченджлог

1.0.3Релиз1.21.1 · 22 июля 2026 г.

ConditionsMod 1.0.3

English

  • New YAML config format (.yml / .yaml).
  • ConditionalEvents-compatible format support using Events:.
  • New client events: hud_display, camera, key, and key_combo.
  • New actions and variables for more flexible events.
  • Performance improvements and lighter event loading.
  • Improved SVR system for server and player variables.
  • Work in progress for multiple ports: Forge 1.20.1, and Fabric 1.20.4.

More information and examples:
https://coditionmodwiki.netlify.app

Español

  • Nuevo formato de configuración YAML (.yml / .yaml).
  • Compatibilidad con formato de ConditionalEvents usando Events:.
  • Nuevos eventos client: hud_display, camera, key y key_combo.
  • Nuevas acciones y variables para eventos más flexibles.
  • Mejoras de rendimiento y carga más ligera de eventos.
  • Sistema SVR mejorado para variables de servidor y jugador.
  • Trabajo en progreso para varios ports: Forge 1.20.1 y Fabric 1.20.4.

Más información y ejemplos:
https://coditionmodwiki.netlify.app

1.0.2Релиз1.20.4 · 28 мая 2026 г.

Client-side error fixes and improvements

1.0.2Релиз1.21.1 · 28 мая 2026 г.

Client-side error fixes and improvements

1.0.2Релиз1.20.1 · 28 мая 2026 г.

Client-side error fixes and improvements

1.0.1Релиз1.20.4 · 18 мая 2026 г.

Complete port to Fabric 1.20.4

Includes everything from v1.0.1

1.0.1Релиз1.20.1 · 18 мая 2026 г.

Complete port to Forge 1.20.1

Includes everything from v1.0.1

1.0.1Релиз1.21.1 · 17 мая 2026 г.

ConditionsMod 1.0.1

New

  • Added new Client category in /cd create
  • Added new camera event
  • Added new key event
  • Added fully integrated svr system inside /cd svr
  • Added support for call_event to call events from other configs
  • Added new public API for developers

Client Events

  • Added camera event with modes:

    • 2d
    • rpg
    • block / setblock
    • reset
  • Added related actions:

    • camera_2d
    • camera_rpg
    • camera_setblock
    • camera_reset
  • Added key event for blocking keyboard keys and mouse buttons from configs

  • Added support for client targets:

    • %player%
    • all
    • player names
    • compatible selectors

SVR System

  • Added fully integrated svr system inside /cd

  • New commands:

    • /cd svr create
    • /cd svr set
    • /cd svr get
    • /cd svr add
    • /cd svr reduce
    • /cd svr reset
    • /cd svr list
    • /cd svr reload
  • Added new svr_* placeholders

  • Added support for:

    • global variables
    • player variables
    • numeric variables
    • text variables
    • list variables
  • Added custom event support for detecting svr variable changes

call_event

  • Events can now call other events using call_event
  • Works even if the target event is inside another config file
  • Added protection against infinite recursive event loops

Developer API

  • Added public API for integrations with other mods

  • Supports:

    • registering custom actions
    • registering custom placeholders
    • triggering custom events
    • reading and modifying svr variables
  • Public namespace:

    • santiivlog.dev.conditionsmod.api

Internal Improvements

  • Consolidated listener handling into a single ListenerManager class
  • Reorganized client systems and structured event logic
  • Prepared the project for Maven dependency distribution for developers

Fixes

  • Fixed an issue where some conditions could be ignored
  • conditions now supports both JSON object format and legacy string format
  • Fixed cases where placeholders like %item%, %item_name%, and %item_custom_model_data% were not evaluated correctly
  • Improved compatibility for loading legacy config formats
  • Added a warning message when players attempt to use client-side features without the client mod installed

Compatibility

  • Removed old references and cleaned up the internal variable system structure
  • Maintained compatibility with older placeholders where necessary to avoid breaking old configs

Wiki

  • Examples, documentation, guides, and configuration references can now be found in the official ConditionsMod Wiki
1.0.0Бета1.21.1 · 22 апреля 2026 г.

🚀 ConditionsMod 1.0.0 (Beta)

Major update with new commands, expanded event system, and improved debugging tools.

✨ Features JSON-based event system Event → Conditions → Actions structure Support for multiple events in one file High performance and optimized design 🛠️ Commands /cd create Create new events organized by category (Player, Block, Item, Entity, Server) /cd reload Reload all configuration files /cd debug Toggle debug mode for an event with real-time condition/action feedback ⚙️ Event Categories

Events are now organized into categories:

Player Block Item Entity Server 📦 New Events 🧱 Block Events block_break block_place 📦 Item Events item_consume item_pickup item_move item_craft item_drop item_select item_enchant item_repair 🧑 Player Events player_levelup player_world_change player_attack player_damage player_armor player_teleport player_bed_enter player_offhand player_fish player_open_inventory player_close_inventory player_click_inventory player_statistic player_sneak player_run player_regain_health player_change_food 🧪 Debug System Real-time debug output in chat Shows: Conditions result (✔ / ✘) Executed actions Skipped logic

Perfect for testing and developing events faster.

🧪 Status Beta version May contain bugs Some systems are still being improved 💡 In Development camera event Performance improvements More custom events More conditions and operators ⚠️ Notes Place files in conditions/ or config/conditions/ Use /cd reload after editing files

Комментарии

Загружаем…