Win Conditions¶
Quick Start: Pick your goal.
Each side wins as soon as any one of its conditions is satisfied, and both sides always win by eliminating the other side outright. Keep at least one enabled.
settings:
match:
win-conditions:
speedrunner:
exit-end:
enabled: true
survive-time:
enabled: false
time: 3600.0
acquire-item:
enabled: false
item: "minecraft:netherite_ingot"
reach-advancement:
enabled: false
advancement: "minecraft:story/enter_the_nether"
kill-mob:
enabled: false
mob: "minecraft:wither"
hunter:
exit-end:
enabled: false
survive-time:
enabled: false
time: 3600.0
acquire-item:
enabled: false
item: "minecraft:netherite_ingot"
reach-advancement:
enabled: false
advancement: "minecraft:story/enter_the_nether"
kill-mob:
enabled: false
mob: "minecraft:ender_dragon"
cancel:
survived-time:
enabled: true
time: 28800.0
Speedrunner Conditions¶
| Condition | Win when |
|---|---|
exit-end (on) |
A speedrunner enters the End and returns to the Overworld |
survive-time |
The clock in time (seconds) runs out |
acquire-item |
A speedrunner obtains the namespaced item |
reach-advancement |
A speedrunner completes the namespaced advancement |
kill-mob |
A speedrunner kills the namespaced mob |
Hunter Conditions¶
| Condition | Win when |
|---|---|
exit-end (off) |
A hunter enters the End and returns to the Overworld |
survive-time |
The clock in time (seconds) runs out before the speedrunners win |
acquire-item |
A hunter obtains the namespaced item |
reach-advancement |
A hunter completes the namespaced advancement |
kill-mob |
A hunter kills the namespaced mob |
All hunter conditions default to off.
Cancel Conditions¶
cancel.survived-time ends the match with no winner once its time
expires: a safety valve for games that never end, on by default at 8
hours (28800 seconds).
Time Announcements¶
Whenever a time limit runs, the match hears it count down: 8h, 6h, 4h, 2h, 1h, 30m, 15m, 10m, 5m, 2m, 1m, 30s, 15s, 10s, then 5-4-3-2-1. A mark matching the limit itself stays silent. The lowest enabled time across the three clocks wins; full ties favor the speedrunners.
Enable settings.server.status.show-win-conditions to print each
side's rules in /manhunt status. The elimination line hides while
hunters have unlimited lives. The sentence fragments live in
the active lang file under wincon:.
Win Announcement¶
When a match ends with a winner, the announcement reads:
- A blank line, the plugin prefix, a separator, the role-colored
Hunters Win!orSpeedrunners Win!title, a reason line (e.g.Exited the End), and a closing separator. The reason format lives in the active lang file undergame.win-reason. - The fullscreen title wears the winner's role color too.
Match Summary¶
Every match ends with a MATCH SUMMARY panel broadcast to the match plus the console: a trophy header, then bullet points.
- Duration (always) shows the match length; Winner (always) names
the winning side with peak counts, winner first (
Runners (1v5)means one runner peak against five hunters). - The MVP bullet shows when one player clears 120 match score, and the winning team's Leader bullet shows when the leader checks pass.
- Cancelled matches show Duration plus a
Nonewinner, as do invalid walkovers where either side peaked at zero (0v0,1v0,0v1): no winner is named no matter what the win conditions declare. - The panel format lives under
game.match-summary-*in the active lang file: the header (with{suffix}, empty live), the bullet shape ({category},{message}), the clock glyph, the duration ({duration}), the winner line ({role},{us},{them}), the no-winner line, the MVP and Leader categories, and the history suffix ({match-id}). - A level-up sound plays to every panel recipient; the entry lives
under
game.match-summaryinsounds.yml.
/manhunt match history <match-id> replays any stored summary with
the history suffix filled in. Scores, MVP picks, and leaders also
surface through the placeholders,
and the full scoring rules live in
Match Score.