Getting Started - i998979/MythicDungeons-Wiki Wiki

Getting Started

About

This page guides you on how to set your dungeon by using MythicDungeons. You may also watch the tutorial if you prefer watching a video.

Downloading dependencies

If you are using supported party plugin, and it's plugin hook is enabled, the room created by /mr will automatically impot party members upon room creation. You can invite/remove room members or promote someone to owner from either supported plugin or MythicDungeons. However, disbanding the room does not disband the party, disbanding the party does not disband the room.

If you are not using any supported plugin or plugin hook is not enabled, the internal room implementation is used instead. When the room disbands, all members will be removed.

Installing dependencies

  • Shut the server down
  • Move everything you have downloaded into YourServerFolder/plugins
  • Turn on the server

Building MythicDungeons

  • Join the server
  • Build a dungeon whatever you want, for example, my dungeon looks like this
  • (It does not need to be a cuboid but it has to be selectable by 2 points)

Creating schematic

  • Type //wand to get a WorldEdit wand
  • Select 2 corners like this, the selected area should include everything of your dungeon
  • Stand at the corner of the dungeon, type //copy, then //schem save <Dungeon id of this dungeon>
  • Do not move, remember the location, this will be the Origin of this dungeon, we will need this later
  • Locate WorldEdit/schematics or FastAsyncWorldEdit/schematics, find the <Dungeon id of this dungeon>.schem you just created
  • Copy the <Dungeon id of this dungeon>.schem to MythicDungeons/schematics

To make it easier to explain, I will use Ruins to replace <Dungeon id of this dungeon>, change respectively.

Configuring dungeon

  • Create Ruins.yml under MythicDungeons/groups
  • Open this for reference, or you can copy the content and change it yourself
  • Ruins is the id of the Dungeon Group, it must be unique

Options explanation

Most of the options are self-explanatory and a brief explanation is already in the corresponding section in Dungeon Group, but some confusing options will be explained below.
Some mutual options(e.g. Holograms for Buffs, Checkpoints, and Teleporters) are only explained once, but the same rule applies to all of them.

Under Ruins.General:

Parameters Explanation Examples
Name Display name of the dungeon, it will be shown in GUI, scoreboard, and messages, color codes are supported
VisibleToNearby Controls are player visible to other challengers in the same Dungeon Group except for their teammates, this is useful if the dungeon instances are very close to each other
DeathLimit Death limitation of the dungeon none for no limit, team 10 for 10 deaths in total for the whole team, player 3 for 3 deaths in total for any 1 player
Origin Where the Ruins.schem you have copied previously will start to place, write the location you have remembered into world, x, y, z respectively
TitleCountdown Countdown before the dungeon starts. Players are frozen and they are unable to move during the countdown. If it is not enabled, the dungeon will start instantly
Icon Button for players to click and select the dungeon type, you may pick an item in-game and change the name, lore, attributes, etc..., then type /mg check, click the text to copy the formatted string to the clipboard

Under Ruins.Price:

Parameters Explanation Examples
Money.PerPlayer Whether every player in the room is required to pay, or only the room owner is required to pay true means every player is required to pay, false means only the room owner is required to play
Items.Items The item list to pay in order to start the dungeon, hold an item in-game, and type /mg check to get the formatted string

Under Ruins.Map:

Parameters Explanation Examples
Row How many rows of the dungeon will be placed, the total amount of dungeon will be row * column
RowGap How many blocks of the gap in rows between 2 adjoining dungeons
Column How many columns of the dungeon will be placed, the total amount of dungeon will be row * column
ColumnGap How many blocks of the gap in columns between 2 adjoining dungeons

Under Ruins.LootChests:

Parameters Explanation Examples
Type Type of the loot chest CHEST if the inventory type is a chest. It follows the rule from Spigot API
PerPlayer Whether other players have their own loot chest content or they share the same one
Renew How long in ticks will the loot chest renew, only applicable if PerPlayer is true
Items The item list of the loot chest, hold an item in-game, and type /mg check to get the formatted string, followed by the slot to place {"v":2865,"type":"REDSTONE_BLOCK"} 8 means adding a REDSTONE_BLOCK on slot 8

Under Ruins.Buffs:

Parameters Explanation Examples
Type Type of the buff ONETIME if it can only be claimed once, REPEAT=20 if it can be claimed again after 20 ticks
PerPlayer Whether other players can still claim this buff even if someone has claimed it
ToTeam Whether the effects are applied to all team members or claimer only
Potions Potion effects to apply. It follows the rule from Spigot API SPEED 10 2 true true true gives Speed Boost level 2 for 10 ticks, with ambient, particles, icon enabled
Effects List of declared effects in effects.yml and will appear where the buff is vortex 3.0 means spawning vortex effects declared in the effects.yml with 3 blocks above the designated location
Hologram.Lines Hologram lines above the buff, color code is supported {material=PLAYER_HEAD;glow=true;Damage=0;custommodeldata=1;skullowner=991d961c-b6b4-4d49-88e6-01788cf445dc}, it adds a line of glowing player head with custom model data of 1 and the skin of specified UUID

Under Ruins.Checkpoints:

Options Hidden, Required is deprecated since the non-staged dungeon is no longer supported.

Parameters Explanation Examples
Hidden Checkpoint is hidden on the scoreboard so that the players have to explore this checkpoint
Required Checkpoint required to complete the dungeon

Under Ruins.Traps.Fire:

Parameters Explanation Examples
Count Duration of spawning particles and the interval of it 10 10 20 10 40 10, means 10 ticks particle -> wait 10 ticks -> 20 ticks particle -> wait 10 ticks -> 40 ticks particle -> wait 10 ticks -> ...
Particles Options of the particle FLAME 0 0 0 0 means Flame particle with 0 x offset, 0 y offset, 0 z offset, some particles have extra data to be configured, it is controlled by the last parameter

Under Ruins.Rewards.Weighted:

Parameters Explanation Examples
Chance Drop chance of the reward. The total chance is all chances under Weighted combined CrazyRare has a drop chance of 30 and Rare has a drop chance of 50, the total weight is 80 and the drop chance of CrazyRare is 30 / (30 + 50) = 0.375 = 37.5%

Staged Dungeon Explanation

Staged Dungeon System is a new system that enables the possibility to create way more complicated dungeons than before. However, it requires a higher understanding of what exactly the dungeon is doing.

Under Ruins.Stages.<id>.Options:

Parameters Explanation Examples Required
Initial Determine whether this is the first stage of the dungeon. Only 1 stage can be determined as initial true if this is the first stage of the dungeon, otherwise, it can be omitted
End Determine whether this is the last stage of the dungeon. Once this stage is completed, the dungeon ends. true if this is the last stage of the dungeon, more than 1 stage with this option is supported to allow different branches
Hidden If the stage is hidden, its objectives will not be shown on the scoreboard
Delay How long in ticks will this stage wait before starting, the actions will not be done, the objectives will not be shown on the scoreboard and detected during the delay

Under Ruins.Stages.<id>.Actions and Ruins.Stages.<id>.Completions:

If the parameters are located under Actions, the list of actions will be done when the stage starts.
If the parameters are located under Completions, the list of actions will be done after all objectives of this stage are completed.

Parameters delay is applicable to all Actions and Completions to allow sub-delay between actions.

Parameters Explanation Examples Required
delay Delay before the action is done
Parameters Explanation Examples Required
MythicSpawner Create a MythicMobs spawner MythicSpawner{type=rat1;world=dungeon;x=116.0;y=5.0;z=255.0;yaw=0.0;pitch=0.0;settings=rat1.yml}
type Type of the MythicMob defined in MythicMobs/Mobs/<Yml containing the mob>.yml, multiple mobs with different weightings can be defined by following the rule here true
world, x, y, z, yaw, pitch Location of the spawner true
settings Settings of the spawner located at MythicDungeons/spawners, it follows the rule from here. However, X, Y, Z is overridden by the plugin and it can be left blank, and MobName is also overridden by the plugin since it cannot be blank, so a valid mob name is required
Parameters Explanation Examples Required
MythicMob Spawn a MythicMobs mob MythicMob{type=rat3;at=LOCATION;world=dungeon;x=120.5;y=5.0;z=259.5;yaw=180.0;pitch=0.0} or MythicMob{type=rat4;at=NEARBY;radius=10.0}
type Type of the MythicMob defined in MythicMobs/Mobs/<Yml containing the mob>.yml true
at Where will the mob spawn LOCATION if the mob spawns in a specified location, NEARBY if the mob spawns in a radius of the player true
world, x, y, z, yaw, pitch Location of the spawner true if at is LOCATION
radius Radius of the mob will spawn near the player true if at is NEARBY
Parameters Explanation Examples Required
Message Send a message to everyone in the dungeon instance Message{text='&c&lGOOD, continue your journey, legends.'}
text Message to send, use %player% to replace the player's name true
Parameters Explanation Examples Required
Command Send command from the server console Command{from=CONSOLE;command='give %player% GOLDEN_CARROT 1'}
once How the command executes true if the command only executes once, otherwise, the command will execute depending on how many players are online in the dungeon
from Who will execute the command CONSOLE if the command is sent from server, if it is not set, the command will be sent from player
chance Chance of this command will be executed 0.0 if the command never runs, 1.0 if the command runs every time
command Command to send from the server console, use %player% to replace the player's name, %player% is only effective when once is not true true
Parameters Explanation Examples Required
LootChest Change the behaviors of loot chest LootChest{id=0;enabled=true;type=CHEST;perplayer=true;renew=60;0='{"v":2865,"type":"REDSTONE_BLOCK"}';53='MythicMobs{id="SkeletonKingSword";amount=2}'}
id Id of the loot chest that its behavior needs to be changed
enabled Is this loot chest enabled. If it is not enabled, the loot chest has no effect when opened
type Inventory type of the loot chest, It follows the rule from Spigot API CHEST if the inventory type is a chest
perplayer Radius of the mob will spawn near the player
renew How long in ticks will the loot chest content renew, only applicable if perplayer is true
title Title of the loot chest inventory
size Size of the loot chest inventory, only applicable if type is CHEST
<slot> Item in the specified slot 0='{"v":2865,"type":"REDSTONE_BLOCK"}' means changing slot 0 into REDSTONE_BLOCK, 0='null' means removing item in slot 0}

Under Ruins.Stages.<id>.Objectives:

Parameters Explanation Examples Required
MythicMob MythicMobs mob required to kill in this stage MythicMob{type=rat1;amount=3}
type Type of the MythicMob defined in MythicMobs/Mobs/<Yml containing the mob>.yml true
amount Amount of the mobs required to kill 3 if 3 of this mob is required to kill, the scoreboard shows Mother Rat: 3, 1 if only 1 is required to kill, the scoreboard shows Mother Rat: 1, if it is not set, the default amount is 1, however, the scoreboard will show Mother Rat: not dead or Mother Rat: dead respectively
Parameters Explanation Examples Required
Checkpoint Checkpoint required to reach in this stage, Checkpoint{id=1}
id Id of the checkpoint, it should be declared under Ruins.Checkpoints true
Parameters Explanation Examples Required
LootChest Loot Chest required to open in this stage, LootChest{id=1}
id Id of the loot chest, it should be declared under Ruins.LootChest true

Please make sure that all branches will reach a stage with the option End to make sure that there is no infinite loop.

Under Ruins.Stages.<id>.Branches:

Parameters Explanation Examples Required
Branch List of branches Branch{id=2}
id Id of the stage that will do when the current stage ends, it has to be a valid stage Id under Ruins.Stages true