Do (Actions)

Last updated Oct 9, 2026

Do (Actions)

Do is what runs when a When passes Only if, or when a Step starts / a Next fires.
Pick actions in the GUI. Short IDs. Dangerous work (console commands, large spawns) uses the command sandbox and permissions. There is no separate GUI confirm checkbox.


How Do works

  • Actions run in list order
  • Sync vs async is decided per action (world work stays on the server thread)
  • Failure policy (default): log, skip or abort per action setting
  • Budgets stop runaway lists (actions per second, spawns, recursion)

Engine Do is not the same as GUI YAML click actions ([console], [open_menu]). Those belong to the menu system.


Built-in Do catalog

Messages and feedback

ID Display name Settings
message Message target player, MiniMessage text
broadcast Broadcast MiniMessage text
title Title title, subtitle, times
action_bar Action bar text
boss_bar Boss bar text, color, style, duration / bind to step or goal
sound Sound sound, volume, pitch, target; or world / location / around / mode for world play
effect Potion effect type, duration, amplifier; optional radius + around for AoE

Player and items

ID Display name Settings
teleport Teleport location; or mode offset / look, offsets, yaw/pitch, keep_facing, distance
give Give item item, amount, optional meta
take Take item item, amount
heal Heal amount or full
feed Feed food / saturation
clear_effects Clear effects removes potion effects
xp Give XP amount, optional levels: true
set_gamemode Set game mode survival / creative / …

Commands (privileged)

ID Display name Settings Notes
player_command Player command command string as the player; placeholders allowed
console_command Console command command string sandbox + permission

World

ID Display name Settings Notes
set_time Set time world, value or night / day
weather Weather world, clear / rain / thunder
spawn Spawn mob mob, amount, around, mode (random / circle / at), radius/spread, height, snap, tag always set a tag for cleanup; waves = pulse
cleanup Cleanup tag tag removes engine-owned tagged entities/tasks
lightning Lightning amount, mode (random / circle / at), around / location, radius, height, damage compose with pulse for storms
particle / particles Particle particle, count, amount (bursts), mode, around / location, radius, height, spread / offsets, speed, force same placement model as drop
wait Wait duration pauses later Dos in the same list
replace_spawns Replace natural spawns mobs, chance, tag while event runs
drop / drop_items Drop items or item, amount, mode (random / circle / at), around / location, radius, height, velocity, velocity_up, natural, jitter; source: inventory scatters bags Reusable loot spatters. Compose with pulse for rains.
place_blocks Place blocks block, shape (cube / sphere / disk / cylinder), around / location, radius, y_radius, hollow, replace, from/to, tag Flexible shapes. Aliases below stay.
fill_blocks Fill blocks disk alias: radius, y_radius, replace Claim-aware when set.
replace_blocks Replace blocks cube alias: from, to, radius
break_block / set_block Break / set block block (set), amount, mode, around / location, radius, height, drops (break), tag Multi-point with placement modes.
sphere_blocks Sphere blocks sphere alias: block, radius, hollow, around: players
world_effect_begin World effect session block, tag, world, respect_claims start atomic pack
world_rule_footprints Footprint rule walk / sprint / sneak
world_rule_mob_death Mob death columns optional from filter
world_rule_creeper Creeper spheres radius, cancel_explosion
world_rule_arrows Arrow hits → block
world_rule_leaves Leaf decay → block
world_rule_sneak_seal Sneak place/seal
hangman Hangman words, max_wrong chat hangman for the run
random_pick Random pick from list → variable secrets for chat guess games
launch Launch mode (forward / backward / upward / outward / random), up, forward, everyone / around / location fling players
jump Jump direction upwards or downwards (one only), y height, velocity look-plane speed pure vertical hop / slam
join_prompt Join prompt clickable chat join; optional teleport or WG region mute does not hide these
add_participant Add participant current player
remove_participant Remove participant target / victim mid-event leave / elimination
pulse Pulse actions every, nested do list repeats until the running event ends
set_health / set_max_health / restore_max_health Health hearts flag + amount max health restores on quit / event cleanup
freeze / unfreeze Soft freeze cancels move (look ok) minigame locks
block_jump / allow_jump Jump gate event var temporary no-jump windows
enable_freeze_tag / disable_freeze_tag Freeze-on-hit PvP hit freezes the victim while the event runs
set_transfer_tag Transfer tag tag id hit moves a tagged item to the victim
give_named / clear_item Named / tagged items display name, lore, tag PDC tag for item matching
attribute Attribute base gravity, jump_strength, … restored on event cleanup
flight / clear_flight Allow flight optional enabled restored on event cleanup / quit
invulnerable / clear_invulnerable Invulnerability optional enabled restored on event cleanup / quit
glow / unglow Glow outline optional enabled restored on event cleanup / quit
save_location / return_location Checkpoint teleport optional id slot per-player within the run
stash_inventory / restore_inventory Inventory stash clears after save; auto-restore on event end if still stashed
clear_inventory Wipe inventory optional armor: false no restore
firework Firework burst color, shape, detonate, amount, mode, around / location, height, radius / spread celebration / arena pops
falling_block Falling blocks block, amount, mode, around / location, radius, height, velocity, velocity_up, hurt, tag Claim-aware. Compose with pulse for showers.
random_teleport Safe RTP radius, optional location / around hub skips claims / unsafe blocks
announce_top Leaderboard shout top N, goal hint from player-scoped goal counters
scatter_inventory Scatter items radius, mode, height, velocity, armor inventory dump (also drop with source: inventory)
mark_cooldown Mark cooldown id force mark without Only-if

Variables and economy

ID Display name Settings
set_variable Set variable scope.name, value / expression
add_variable Add to variable scope.name, amount
money Give money amount (give/take)

Event control

ID Display name Settings
cancel_event Cancel Bukkit event
call_event Call event event id + optional vars
kick Kick player reason
damage Damage amount, optional target; radius + around/location for blast (players_only)
around_players Audience players radius, limit, nested do
around_mobs Audience mobs radius, types, nested do
to_victim / to_attacker Retarget nested do
participants Set audience mode: starter / online, or players: [A,B]
add_participant Add participant current player
remove_participant Remove participant current / targets / victim
start_event Start event event id
stop_event Stop event running id / current
go_to_step Go to step step id
extend Extend timer duration
remove_boss_bar Remove boss bar current instance bar
end End event success / fail flag optional

Optional meta on any Do: chance, cooldown, delay (ticks), require (soft placeholder gate). Set enabled: false to disable a row without deleting it.

World rules use world_effect_begin plus optional world_rule_* Dos.


Expressions in settings

Allowed in number fields where noted:

players * 2
base + score

No Java, JavaScript, or Groovy. Invalid expressions fail validation before save/start.


Targeting

Most player Dos accept target:

Value Meaning
auto (default) Context player if set; else participants; else online
player Context player only
participants Running event participants
online All online players

Use target: online for server-wide kits (elytra cup, blind build, tax day). Keep default auto for personal rewards after a goal.


Editing Dos

Open the event → Do (or a step’s Do). Add from the catalog. Click to change the main value. Right-click to change type. Shift-left to enable or disable. Shift-right to remove.

Rare fields stay in YAML. Dangerous actions (console_command, large spawns) use the command sandbox and staff permissions.


Addon and suite Dos

Soft addons (when installed):

  • mythic_spawn / Mythic kill Goal (MythicMobs)
  • money (Vault)

Suite Dos (when that Soaps plugin is installed):

Source Do ids (examples)
SoapsAdmin admin_money, warp
SoapsQuest give_sigils, take_sigils, give_quest, open_contract_board (Premium)
SoapsTeleporter use_portal
SoapsTraits set_trait, reset_trait
SoapsHungerStamina give_stamina, drain_stamina

Full table: Integrations. Use console_command for one-offs that are not covered.

Missing plugin → action marked unavailable; event will not start until fixed or removed.


Safety rules

Rule Why
Tag every spawn Cleanup can remove only your mobs
Budget caps Stop 10k spawn mistakes
Recursion limit A starts B starts A
Claim/region check Griefy world Dos skip protected land when WG (or similar) is present
Sandbox + permissions Console / privileged Dos need the right nodes; no GUI confirm checkbox

See also