Goals

Last updated Oct 9, 2026

Goals

Goals track progress inside a Step (or a simple event).
Players see progress on boss bars / messages when you attach feedback Dos.


Goal scopes

Scope Meaning
event Shared progress for the whole running event
player Each participant has their own progress (survival challenges)

Default for server-wide hunts: event.
Default for “mine 16 iron yourself”: player.


Built-in Goal catalog

ID Display name Settings Completes when
kill Kill mob / entity filter, amount count reached
collect Collect item, amount items gathered (define pickup vs inventory check in settings)
reach Reach location, radius player enters radius
score Score target number variable / score >= target
survive Survive duration timer ends while still active / not eliminated
break_blocks Break blocks block filter, amount break count reached
place_blocks Place blocks block filter, amount place count reached
chat Chat keyword contains, amount chat matches keyword
chat_match Chat match equals or variable, ignore_case exact guess (word/number games)
hangman Hangman solved (uses active hangman Do) word done; out of guesses can use goal_fail Next
deliver Deliver item item, amount, optional location has item (and optionally near location)
travel_distance Travel distance amount (blocks), scope move distance; ignores teleports
deal_damage / take_damage Damage totals amount, optional hits: true from player_damage / player_hurt
occupy_time Occupy region region, amount (seconds) needs WorldGuard + watched region
craft_count Craft count item, amount craft_item progress
fish_count Fish count amount fish_catch
sneak_count Sneak count amount toggle_sneak
hold_item_duration Hold item item / tag, amount (seconds) polled once per second
kill_players Kill players amount, scope PvP kills (player victims only)
death_count Death count amount, scope participant deaths
consume_count Consume count optional item, amount eat / drink
jump_count Jump count amount player jumps
gain_levels Gain levels amount level-ups (counts multi-level jumps)
all_reach All reach location, radius, optional amount min every online participant in radius (or at least amount)

Progress display: put {goal.progress} / {goal.amount} / {goal.remaining} / {goal.percent} in a boss_bar text (refreshes on each goal tick). Also %soaps_event_goal% via PlaceholderAPI. Starter/player events only count participants toward goals.


Binding to Steps

Typical invasion step:

Step: Invasion
  Lasts: 10m
  Do: spawn zombies, boss bar
  Goal: kill 100 zombies (scope: event)
  Next:
    - goal done → rewards
    - after time → fail

Personal challenge:

Step: Challenge
  Lasts: 5m
  Goal: collect iron_ingot 16 (scope: player)
  Next:
    - goal done → reward_player
    - after time → end

GUI fields

In the step editor, pick a Goal type from the catalog, then set its primary fields in chat (mob and amount, item and amount, location via here, and so on). Common params:

Field Purpose
Type kill / collect / reach / …
Amount / target Number or duration
Scope event (shared) or player (per participant)
Filters mob, block, item, region, as the goal type allows

Placeholders (goal)

See Placeholders. Common ones:

  • {goal.progress}
  • {goal.remaining}
  • {goal.amount}
  • {goal.percent}

Addon goals

Plugins may register goals (kill MythicMob, complete Floor floor, win Arena match…).
Same picker UI; unavailable if the plugin is missing.


Tips

  • Pair timed Steps with a Goal and two Next rules (success vs timeout)
  • Use player scope for EventStorm-style “everyone gets their own challenge”
  • Keep amounts expression-safe (players * 5 only where the schema allows)

See also