Dream Minecraft Manhunt (with optional Discord music integration)
Inspired by Dream on YouTube
This project is open-source! View on Github
How It Works
Three teams: Hunters, Runners, and Spectators Hunters try to kill the runners before they beat the enderdragon. Runners must beat the enderdragon before they get killed once!
- Compass tracking: Right-click with your compass to choose who to track, then the compass will point to that runner!
- Portal tracking: If a runner is in the nether, the compass will track their last-used portal!
- Teams assignment: Automatically assigns in-game
/teamto distinguish between players with colors!
- Discord integration: Optionally integrate with Discord for extra features!
- Auto role assignment: Automatically assign Discord roles according to teams
- Music player: Automatically (or manually) play music in your Discord voice channel that mirrors the action happening!
Instructions For Use
- Move the .jar to your plugins folder.
- Make sure your config file is up to date and has all the required options (more info down below).
- Assign roles with
- If you want automatic music, type
- After the headstart period is over, hunters should be able to start tracking runners by selecting someone to track by right-clicking with their compass.
Note: teams are not persistent between server sessions— if you shut down the server you'll have to re-assign teams and type
Discord Setup Instructions
- Create a Discord app from the Developer Portal.
- Add a Bot under the bots tab.
- Take note of your Client ID (in the General Information tab) and your Token (under the Bot tab).
- Go to the following link, replacing
123YourClientID456with your client ID:
- Select the Discord server to add your bot to.
- Add your Client ID and Token to the respective fields in the config file.
- Go to your Discord server, and add the following values to the config file, in accordance with the table above (you can
Right Click > Copy IDif you turn on Developer Mode in Discord settings!)
- the ID of your server
- the ID of the voice channel you want your music to play in
- the ID of the hunter, runner, and spectator Discord roles you want to be automatically assigned
Note: For auto-role-assignment to work, each Discord user's nickname for your Server must be set to their Minecraft username.
/speedrunner <username>: Assign speedrunner role
/hunter <username>: Assign hunter role
/spectator <username>: Assign spectator role
/start: Start the match
/end: End the match
/compass: Give yourself a compass
/music: Controls the Discord music
/music list: Gets a list of available tracks to play.
/music <trackname>: Plays a specific track by nickname and turns off auto-music.
/music stop: Stops all music playing and turns off auto-music.
/music auto: Turns on auto-music, which plays different tracks based on game events and hunter/runner distance.
/music forceupdate: Forces the music to update to match the current hunter/runner distance. Use
/music stopfirst if a special event track is playing.
plugins/MinecraftManhunt/config.yml file with the following options:
|headStartDuration||How long the hunters should get blindness and slowness when the match starts, in secs.||int||Required|
|compassEnabledInNether||Set to true to allow the compass to work in the nether.||boolean||Optional, defaults to
|sendUsageData||Set to true to send anonymized, aggregated usage data to help improve the plugin.||boolean||Optional, defaults to
|uuid||Randomized id that is automatically assigned if
||string||Do not set manually|
|setRunnersToSpecOnDeath||Set to true to set runners' gamemodes to spectator when they die.||boolean||Optional, defaults to
|huntersColor||The color to give to the
|runnersColor||The color to give to the
|spectatorsColor||The color to give to the
|clearRunnerInvOnStart||Set to true to clear the runners' inventories and experience when the game starts.||boolean||Optional, defaults to
|clearHunterInvOnStart||Set to true to clear the hunters' inventories and experience when the game starts.||boolean||Optional, defaults to
|clearItemDropsOnStart||Set to true to clear all Item entities when the game starts.||boolean||Optional, defaults to
|setTimeToZero||Set to true to reset the game time when the game starts.||boolean||Optional, defaults to
|startGameByHit||Set to true to start the game when a runner hits a hunter, instead of when the
||boolean||Optional, defaults to
|preGameWorldBorder||Set to true to enforce a world border before the game starts (useful to keep players from running too far).||boolean||Optional, defaults to
|preGameBorderSize||States how big the pre-game world border would be, if enabled.||int||Optional, defaults to
|enableDiscord||Set to true to turn on Discord integration. Read below for more information.||boolean||Required|
|discordToken||Enter the token of your Discord bot here.||string||Required if
|ip||The Discord status message portion. Will display as
|parseDiscordCommands||Set to true if you want music commands to be run by sending a message in Discord text channels. This allows anyone in your Discord server to run music commands, however.||Optional, defaults to
|discordServerId||The ID of your Discord server that the bot is on.||string||Required if
|musicChannelId||The ID of the voice channel that the bot should play music on.||string||Required if
|hunterRoleId||The ID of the role to assign to Hunters.||string||Optional|
|runnnerRoleId||The ID of the role to assign to Runners.||string||Optional|
|spectatorRoleId||The ID of the role to assign to Spectators.||string||Optional|
Note: if any of the role IDs are missing or invalid, no roles will be assigned.
||Allow config-changing commands, such as
online-modein server.properties must be set to
trueas of version 1.2.4.
- If you are using Discord integration, make sure your server's system clock is set correctly.
- Check the FAQ Issues page, or report a problem on the Issues tab!