Examples

Last updated Oct 9, 2026

Examples

These showcases are the fastest way to see what the Event Engine can do: join kits, daily coins, sieges, contests, loot rain, and more. Fresh installs and reloads copy any missing files under automations/ and events/ (existing custom YAML is never overwritten). Pools weekend and showcase ship in pools.yml (disabled until you enable the events and the pool).

All showcases ship disabled. Enable what you want in /soaps or by setting enabled: true.

Before enabling arena_call: replace world;x;y;z with your arena, or stand there in-game and type here in the editor prompt.

Automations (10)

Id What it shows
welcome_kit First join → starter kit (optional LP gate you can add)
daily_login Once-per-day coins (per player)
respawn_aid Death respawn → feed + regen comfort
diamond_find Break diamond ore (chance) → money + XP; optional world: filter
undead_bounty Kill zombie → small coin payout
help_desk Chat contains help → tip (2m player cooldown)
weekend_promo Friday schedule → weekend shout
server_tip Hourly interval → tip broadcast
crop_bonus Harvest wheat (chance) → bonus drops; optional world: filter
blaze_blade Hit with a “Blaze” diamond sword (chance) → to_victim flame circle + world sound

Events (15)

Id What it shows
undead_siege Waves with spawn modes (random/circle), lightning, world sounds, particles
ore_challenge Timed personal collect goal (raw iron)
builder_blitz Place race + place_blocks glass rings + particle pulses
word_duel random_pick secret + chat guess mini-game
bedrock_hour World rules pack + warn FX / jump / pulse ash
loot_rain pulse + drop (random & circle) + particles + world pickup sounds
fish_contest Fish-count goal + top-3 announce
arena_call Join fight + launch + radius damage pulse FX (set teleport with here)
xp_boost_night Schedule → haste + pulsed particles / chimes / closing fireworks
community_mine Shared meter → loot rain with mixed drop modes
hot_potato Pass item + flame particles + panic jump pulses
meteor_shower falling_block + lightning + high fireworks + downward jump
sky_dash Flight race + launch / mid-race jump boosts + particles
hangman_rush Shared chat hangman with win / fail / timeout paths
freeze_frenzy Freeze-tag + snow particles + AoE slowness pulses + circle fireworks

Enable events, then enable a pool and /soaps pools start showcase.


What owners actually use this for

Need Example shape
First-join kit / tutorial welcome_kit
Daily login economy daily_login
Mining / kill grind payouts diamond_find, undead_bounty
Chat helpers & hourly tips help_desk, server_tip
Weekend hype without a calendar plugin weekend_promo
Custom weapon procs blaze_blade
Invasion nights undead_siege
Timed challenges ore_challenge, builder_blitz, fish_contest
Chat mini-games word_duel
Server spectacles bedrock_hour, loot_rain
Opt-in PvP call arena_call (set coords first)
Plugin booster windows xp_boost_night (swap console cmds)
Whole-server community goals community_mine
Pass-the-item minigame hot_potato
Sky spectacle nights meteor_shower
Flight races / checkpoints sky_dash
Letter-guess chat nights hangman_rush
Freeze-tag / damage contests freeze_frenzy
Weighted weekend rotation Pool weights over several events

Play stays in place unless a Do teleports. Spawned mobs need a tag and a cleanup step.


Recipes

Welcome kit (Quick)

id: welcome_kit
name: "Welcome Kit"
enabled: true
type: automation
when:
  type: player_join
  first_join: true
do:
  - give: { item: iron_sword, amount: 1 }
  - give: { item: bread, amount: 16 }

Optional world limit on mining (any world name):

when:
  type: block_break
  block: DIAMOND_ORE
  world: world_nether   # or custom_world_name_1; omit for all worlds

Undead siege (Steps)

id: undead_siege
type: event
when:
  type: manual
steps:
  wave1:
    lasts: 3m
    do:
      - spawn: { around: players, mob: ZOMBIE, amount: "players * 3", tag: undead_siege, respect_claims: true }
    goal:
      kill: { mob: ZOMBIE, amount: 20, scope: event }
    next:
      - goal_done: rewards
      - after_time: fail

Blaze blade proc (composition)

Rename a diamond sword so the name contains Blaze, then:

when:
  type: player_damage
  item:
    material: DIAMOND_SWORD
    name_contains: Blaze
only_if:
  - chance: 25
do:
  - damage: { amount: 2, target: victim }
  - particle: { particle: FLAME, count: 18 }

Full YAML for every showcase lives under plugins/SoapsCommon/automations/ and events/ after first seed. World filters and locations are optional staff edits (world: your_name, or type here in the editor).