Welcome to the Hangar Open Beta. Please report any issue you encounter on GitHub!
Avatar for leonardos4enz

Script your Paper server in YAML: when something happens, if your conditions are true, run your actions.

Report OmniEvents?

OmniEvents

Script your Paper server in YAML: when something happens, if your conditions are true, run your actions.

OmniEvents is a conditional-events plugin with a real expression language, control flow, persistent variables and first-class debugging tools. No Java, no Skript: plain YAML rules that are validated when they load, with the file, the path and a "did you mean?" when something is wrong.

welcome:
  trigger: player_join
  actions:
    - if: "first_join"
      then:
        - broadcast: "<gold>Please welcome <yellow>{player.name}</yellow>!"
        - give_item: "BREAD;8;<yellow>Welcome bread"
      else:
        - message: "<green>Welcome back, {player.name}!"

Features

  • A real expression language: &&, ||, !, parentheses, math, lists and any game value (player.location.block.type, event.damage) in one condition.
  • Control flow in actions: if/else, repeat, for_each, weighted random, delay, call.
  • Your own variables, per player and server-wide, saved to disk, with optional expiry, and even stored on blocks, entities and items.
  • Real commands with aliases, permissions and tab completion, declared in YAML.
  • State rules (trigger: state): "when health drops below 3" without polling.
  • Inventory menus, shown to Bedrock players as native forms (Floodgate).
  • All-or-nothing costs (money, levels, items, variables) with refunds.
  • Tests inside your YAML (tests:), run on load and with /omni test.
  • Packs and templates with parameters, version requirements and migrations.
  • See why a rule did or did not run: /omni debug, /omni check, /omni eval, /omni cpu.
  • JSON schema for autocompletion and errors in VS Code.
  • Import from ConditionalEvents: /omni import conditionalevents converts your events.
  • A complete parkour minigame ships as an example pack, built only with rules: checkpoints, time limit, personal and server records.

Requirements

  • Paper 1.21.4 or 26.1.x (verified by an automated in-game test suite on both) and Java 21+.
  • Not supported: Spigot/CraftBukkit (it uses Paper's Adventure API) and Folia.
  • Optional integrations: Vault, WorldGuard, Citizens, Floodgate/Geyser, ProtocolLib and PlaceholderAPI. OmniEvents works without them.

Getting started

  1. Drop the jar into plugins/ and start the server.
  2. Edit or add rules in plugins/OmniEvents/rules/ (the bundled examples are in Spanish).
  3. Run /omni reload. All admin commands are OP-only by default.

Documentation (English): https://leonardos4enz.gitbook.io/leonardos4enz-docs/

Bug reports and suggestions: https://github.com/leonardos4enz/fabrica-de-plugins/issues

Information

Category
Admin Tools
Published
October 28, 2026
License
0Downloads
0Stars

Pinned Versions

Members

1