
Dreams Speedrunner Swap + Task Master
Three iconic Dream challenges in one plugin: Speedrunners vs Hunters, Multi-Runner Control Swap, and the new Task Master mode. Experience all of Dream's most popular Minecraft challenges with customizable features, team management, and seamless gameplay.
4.3.5
- Added config options for vanilla death messages during active games.
- Added config options for vanilla advancement messages during active games.
- Added both options to the Broadcast Settings GUI.
- Server owners can now choose whether advancements like
[Stone Age]and normal death messages show while a Speedrunner Swap game is running. - Existing behavior is preserved by default: death messages and advancement messages stay hidden during games unless disabled in config or GUI.
What server owners should know
- To show death messages during games, set
broadcasts.suppress_death_messages_during_games: false. - To show advancement messages during games, set
broadcasts.suppress_advancements_during_games: false. - These can also be changed in
/swap gui→ Settings → Broadcast Settings.
4.3.4
- Fixed Task Master / Task Race runtime assignments so old saved task data can no longer pull unrelated joiners into a live round.
- Fixed late join behavior so players are only added mid-round when late joiners are enabled and they join the active game world.
- Fixed rerolled task win announcements so they use the player’s current rerolled task instead of the original task.
- Added editable
tasks.ymlsupport for the Task Master task pool. - Default objectives are now seeded into
tasks.ymlon first startup so server owners can remove, disable, or retune tasks without editing code. - Custom tasks created from the GUI now save into
tasks.yml. - Fixed difficulty filtering so it no longer silently falls back to every enabled task when the selected difficulty has no eligible tasks.
- Added difficulty/category metadata for default tasks so Easy / Medium / Hard filtering works properly.
- Updated GUI and
/swap taskscommands to show eligible task counts. - Blocked task pool changes, reloads, and difficulty changes during live rounds to avoid breaking active assignments.
- Fixed
/swap tasks rerollso Task Master Duo rerolls both shared-body groups instead of only the runner body.
What server owners should know
- After updating, check
plugins/SpeedrunnerSwap/tasks.yml. - To remove a task, delete it from
tasks.ymlor setenabled: false. - To change what difficulty pool a task appears in, edit its
difficultyvalue. - Use
/swap tasks reloador the Task Pool GUI reload button after editingtasks.yml. - Stop the current round before changing task pool settings.
4.3.3
Added
- Added
Task Master Duo, a new task mode with 2 shared bodies active in the same round. - Added GUI support for selecting
Task Master Duofrom the mode selector and task hub. - Added config/interval support for
Task Master Duothroughswap.default_intervals.task_duel. - Added command support for
/swap mode taskduel.
Fixed
- Task competitions now end with proper task-winner handling instead of using runner-vs-hunter win titles for task modes.
- Inactive players in the second shared body now follow the same chat, movement, inventory, and damage restrictions as inactive runners.
- Dream-only tracker compass behavior now stays scoped to Dream mode, so
Task Master Duoplayers are not treated like tracker hunters. - Voice chat muting now correctly handles the second shared body in
Task Master Duo.
What server owners need to know
Task Master Duouses runners as body A and hunters as body B.- Both shared bodies use the normal swap interval system.
- You can switch to it with
/swap mode taskduelor from the GUI.
- Added
4.3.2
Added
- Dream mode can now use a shared hunter body.
- Hunters can rotate through one shared hunter body while runners keep using the shared runner body.
- Added GUI + config support for:
- enabling/disabling shared hunter control
- setting the shared hunter swap interval
Fixed
- Tracking compasses now stay on the active hunter only when shared hunter control is enabled.
- Rejoining, respawning, or changing worlds no longer gives tracking compasses to inactive hunters.
- Inactive hunters now properly follow the same freeze/cage restrictions as inactive runners.
- Voice chat muting now correctly respects both the runner side and hunter side in shared-body setups.
What server owners need to know
- This only affects Dream mode.
- If you want the new setup, enable
swap.shared_hunter_control.enabledin the config or turn it on in the GUI. - If shared hunter control is enabled, the old legacy hunter shuffle should be left off unless you specifically want the old behavior instead.
4.3.1
Added
- Task difficulty can now be chosen more clearly before starting from the GUI.
- Players can now reroll their own task when rerolls are enabled for the round.
- Added GUI/config/command support for player task rerolls.
Fixed
- Task Master no longer affects players outside the game on multiverse setups.
- Start/end cleanup is now limited to actual participants instead of touching unrelated players.
- Rejoining players in Task Master no longer get stuck in the bedrock box.
task_manager.max_game_durationnow actually ends the round when the timer is reached.- Pause-on-disconnect now properly waits for missing task-mode players instead of resuming too early.
- Task Race respawns no longer leak shared spawn behavior across different players.
- Late-join task assignment no longer wipes existing player assignments.
What server owners need to know
- If you use Multiverse, this update is important.
- If you want timed task rounds,
task_manager.max_game_durationnow works properly. - If you want players to reroll tasks, configure the reroll settings in the task manager section or use the GUI.
4.3
- Added a brand-new
Task Racemode for 2+ simultaneous runners:- Runners keep their own bodies, inventories, and world state instead of sharing one swapped character.
- The round now supports secret-task racing without periodic swaps or inactive-runner lockouts.
- Existing swap-based
Task Mastermode remains available unchanged for sabotage-style shared-body play.
- Updated task competition support across the plugin:
- Task detection and
/swap completenow work in both task competition modes. - Task disconnect handling, late joiner support, and
end_when_one_leftlogic now cover both task variants. - Voice chat muting and inactive-runner restrictions no longer incorrectly affect the no-swap mode.
- Task detection and
- Improved the GUI and commands for production use:
- Added
Task Raceto the mode selector and task hub. - The Task hub now makes you explicitly choose between swap-based
Task Masterand no-swapTask Race. - Main control screens now avoid offering misleading swap-only controls while
Task Raceis active. - Added
/swap mode taskracealiases and updated status/help output accordingly.
- Added
- Docs and release polish:
- README and config comments now document the fourth gameplay mode.
- Added a brand-new
SpeedrunnerSwap 4.1
Added full multiworld / Multiverse compatibility support.
Changes
- Runner respawns now stay tied to the active game session world instead of falling back to the server’s default world.
- Added post-respawn enforcement to handle plugins like Multiverse setups that apply a second teleport after respawn.
- Added a new Multiworld settings section in the GUI.
- Added same-world player filtering in team selection menus.
- Added session-world assignment restrictions so players from the wrong world can’t be assigned by mistake.
- Added session-world status info to the main GUI and
/swap status. /swap setrunnersand/swap sethuntersnow respect multiworld restrictions and explain skipped players.- Added soft dependency support for
Multiverse-CoreandMultiverse-Inventories.
How to use
- Open
/swap gui - Go to
Settings - Open
Multiworld - Configure:
Multiworld CompatibilitySession-World RespawnsPost-Respawn EnforcementSame-World Team SelectorRestrict AssignmentsUpdate Session World
Recommended setup
- Leave Multiworld Compatibility enabled
- Leave Session-World Respawns enabled
- Leave Post-Respawn Enforcement enabled
- Leave Restrict Assignments enabled
- Use Same-World Team Selector if you want team setup to only show players in your current world
- Fixed reconnect reliability in live games (1.21+)
- Team membership checks are now UUID-safe, preventing stale player references after disconnect/rejoin.
- Rejoined players are re-synchronized into runner/hunter lists based on config assignments.
- Auto-resume now only triggers when the game was paused due to disconnects and all required teams are online.
- Queue coherence now rebinds the active runner to the current online player instance.
- Fixed reconnect reliability in live games (1.21+)
SpeedrunnerSwap v4.0.7
Added
New configurable end-game messaging system
messages.end_game.runner.*messages.end_game.hunter.*messages.end_game.none.*messages.end_game.broadcast
New GUI section:
Settings -> End Game Messages
You can edit titles, subtitles, and broadcast text directly in-game.
Broadcast placeholders
%winner%%winner_team%
New End cage safety options
freeze_mechanic.cage.avoid_cage_in_endfreeze_mechanic.cage.end_min_distance_from_originfreeze_mechanic.cage.end_safe_coordinatefreeze_mechanic.cage.end_min_distance_from_dragon
Changed
End cage handling now avoids dragon-fight interference by placing cages far from active dragon space (default 500-block safety behavior).
Default
avoid_cage_in_endisfalse(keeps normal End gameplay flow while still applying safety placement).- Fixed respawning in the nether glitch
Voice Chat Integration
- Fixed inactive runners being unable to hear each other when using Simple Voice Chat.
- The plugin now respects SVC’s proximity chat by keeping players visible when Voice Chat Integration is enabled.
- Properly wired up voice chat mute status updates during swaps and at game end.
Spawn Location Defaults
- Fixed players teleporting to
0, 64, 0when spawn location wasn’t manually configured. - Spawn and limbo locations now default to the world spawn point instead of coordinates
0, 0, 0. - CAGE mode now creates the bedrock cage near world spawn instead of at origin.
Notes
- If you previously set spawn/limbo locations manually, your settings are preserved.
- For the voice chat fix to work, enable “Voice Chat Integration” in
/swapGUI → Settings.
- Fixed a critial bug in ChatInputHandler.java the Paper chat handler was missing a check. Which is now fixed.
Now the Restrict Inactive Chat will work properly.
New config addition and GUI: chat: restrict_inactive_runners: true
You can change whether or not you can type in chat or not now!
- Fixed multiple bugs and stability issues.
- Updated to the latest Minecraft 1.21.x APIs.
- Resolved compatibility problems across Purpur, Bukkit, Spigot, and Paper.
- Preliminary build: not fully verified on all servers. Please report results in the Discord.
Notes
- If you encounter errors, include your server type, version, and logs in your report.
- Compatibility targets: Paper/Purpur/Spigot/Bukkit for 1.21–1.21.8.
-
Fixed inventory bug
-
only tested on paper 1.21.8 may work on other versions or loaders
-
Dreams Speedrunner Swap + Task Master v4.0.0
Highlights
- Portal-safe swaps: Hunters always chase the correct runner.
- Tracker lifecycle overhaul: Automatic restarts, compass updates, and GUI sync.
- Instant freeze system refresh: Runner states update with settings changes.
- Hot-potato stability: Listener cleanup and improved reliability.
Gameplay & Mechanics
- Portal swaps deferred with retry caching and clear feedback.
- Swaps blocked for runners in SPECTATOR mode during freeze.
- Queue coherence maintained after joins/quits and swaps.
- Freeze mode GUI actions instantly refresh mechanics.
- Inactive runners instantly transition between EFFECTS, SPECTATOR, LIMBO, CAGE.
Tracking & Compass
- Tracker validates enablement and hunter presence, stops if hunters offline.
- GUI toggles immediately start/stop tracking and refresh compasses.
- No duplicate compasses—checks inventory, off-hand, ender chest.
- Cached portal locations and auto-refresh keep hunters tracking the right runner.
Quality & Safety
- Swap debounce: Prevents overlapping swaps and cleans up retry state.
- Configurable messaging/logs for deferred swaps.
- Task Master works now!
- GUI STILL DOES NOT WORK, PLEASE PLAY USING COMMANDS INSTEAD.
- Should work with Purpur, Paper, Spigot, and Bukkit (not all were tested)
- Dying bug fixed
Changelog
- Added Dreams New gamemode!
- Fixed 37 bugs.
- Currently untested—please submit any bugs in our discord server.
- Performance Tweaks
- Added new beta features, try them out in the GUI
Cleaned up files.
- GUI Navigation: Fixed -5/+5 interval buttons in Sapnap GUI.
- Commands: Added singular aliases (/swap setrunner, /swap sethunter).
- Mystery Mode: Suppressed death messages and advancement notifications.
- Sleep Mechanics: Active runner can sleep alone to skip night.
- Configuration: Added single-player sleep toggles in both GUIs.
- Defaults: Sapnap mode enables single-player sleep by default; Dreams mode disables it.
