D X L Import
Since the two plugins follow a similar format, Mythic Dungeons includes a command that allows you to import maps from the DungeonsXL plugin, including signs and functionality. However, this is an experimental feature and is not a perfect one-to-one conversion.
Importing a Dungeon
DXL dungeons are imported from the plugins/DungeonsXL/maps folder, so even if DXL is not currently installed on your server, as long as the folders are present, you can still import your dungeons. The map folder must still contain DungeonsXL's DXLData.data file. Without it the import aborts, because that file is what records where the signs are.
Use /md dxlimport <dxl map> to import a DXL dungeon (the name is the folder name under plugins/DungeonsXL/maps, and the command needs dungeons.admin). The import always produces a classic dungeon with the same name. Watch the console for any issues the importer encountered that you may need to fix yourself.
Once the import finishes, open the dungeon with /md edit <dungeon name> and run /md cleansigns to strip the leftover DungeonsXL signs. The plugin suggests this itself after a successful import.
Known issue: on Minecraft 26.1 and newer the importer stages the DXL map in the server's old world container folder, while the server now loads worlds from a per-dimension folder inside the main world. The result is that a freshly generated world is scanned instead of your map, so no signs are converted even though the import still reports success. This was found by reading the source rather than on a live 26.1 server, so check the console output and the imported dungeon before assuming your signs came across.
What gets converted
If the map folder contains a DXL config.yml, these settings are converted for you:
| DungeonsXL setting | Becomes |
|---|---|
worldEnvironment |
General.Dimension |
title.title |
General.DisplayName |
gameMode |
General.Gamemode |
initialLives |
General.PlayerLives |
keepInventoryOnEnter |
General.KeepInventoryOnEnter |
timeUntilKickOfflinePlayer |
General.KickOfflinePlayers and General.KickOfflinePlayersDelay |
isLobbyDisabled |
General.Lobby.Enabled (inverted) |
requirements.permission |
Requirements.Permissions |
requirements.groupSize.minimum / .maximum |
Requirements.MinPartySize / Requirements.MaxPartySize |
requirements.finishedDungeons |
Requirements.DungeonsComplete |
breakBlocks / placeBlocks |
Rules.AllowBreakBlocks / Rules.AllowPlaceBlocks |
These sign types are turned into Mythic Dungeons functions:
| DXL sign | Becomes |
|---|---|
| [msg], [actionbar] | Message function |
| [title] | Title function |
| [start] | The map's world spawn |
| [lobby] | The dungeon's lobby spawn |
| [ready] | Start Dungeon function on a Right-Click trigger |
| [end] | Finish Dungeon function on a Right-Click trigger |
| [leave] | Leave Dungeon function on a Right-Click trigger |
| [lives] | Lives function |
| [trigger] | Signal Sender function |
| [interact] | Signal Sender function on a Right-Click trigger |
| [mob], [externalmob] | Mob Spawner function |
| [door] | Door Control function |
| [redstone] | Redstone Block function |
| [soundmsg] | Sound function |
| [teleport] | Teleporter function |
| [place] | Block Control function on a Dungeon Start trigger |
| [block] | Block Editor function |
| [drop] | Item Dispenser function |
| [checkpoint] | Checkpoint function |
The trigger code on the sign's fourth line is converted too:
| DXL code | Becomes |
|---|---|
D<n> |
Player Detector trigger |
P<n> |
Player Detector trigger, running once for each player |
R |
Redstone Receiver trigger |
T<name> |
Signal Receiver trigger |
I<name> |
Signal Receiver trigger, with the name prefixed by I |
M<mob> |
Mob Death trigger (the Mythic Mobs version if Mythic Mobs is installed) |
U<material> |
Key Item trigger (falls back to STICK if the material isn't recognised) |
Several codes separated by commas become an AND gate, and anything the importer doesn't recognise falls back to a Dungeon Start trigger.
Incompatibilities
Signs
Some specific kinds of signs will not be imported. [dungeonchest], [chest], [rewardchest] and [command] signs are reported to the console with their coordinates. Every other unsupported sign is only logged as "Unrecognized sign type" with no location, so search your map for them yourself.
The following signs will not be converted:
-
[reward]/[chest]/[rewardchest]/[dungeonchest] - Mythic Dungeons uses a fundamentally different system for handling rewards. As a result, you'll need to re-configure any rewards systems you had set up in your DXL dungeon.
-
[command] - Mythic Dungeons currently does not import any DungeonsXL scripts. As a result, you'll need to set up command functions manually.
-
[classes] - Mythic Dungeons doesn't have an equivalent to DXL's class loadouts yet, however player loadouts are planned for a future version.
-
[BossShop] - Mythic Dungeons doesn't have support for BossShop at this time, though if you want it, let us know in the issue tracker and we'll consider implementing it in a future version.
-
[resourcepack] - Mythic Dungeons doesn't yet have support for sending players a resource pack, though it is planned and may be here sooner than you think!
-
[hologram] - Mythic Dungeons has its own Hologram function, but the importer does not convert DXL hologram signs. You'll need to place them again with the function builder.
-
[script] - DungeonsXL uses its own scripting system, and Mythic Dungeons has no equivalent for it. You will need to replicate your script using functions or Mythic Mobs if you have it installed.
Multi-Floor Dungeons
The DXL importer currently does not support DXL's multi-floor dungeons, nor does Mythic Dungeons have an equivalent feature at this time. However, this feature is planned for a future update, so stayed tuned and keep an eye on the development builds!
Multi-Team Dungeons
Mythic Dungeons currently does not support dungeons that involve multiple parties or teams joining the same instance and/or competing against each other. This feature isn't currently planned, however if there is enough demand it will be considered, so make sure to let us know!