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
- When (Triggers)
- Only If (Conditions)
- Goals
- Steps and Events
- GUI System for menu click actions (
[console], etc.)