How to create, load, save, unload, delete and copy worlds
This page covers all the details for creating new worlds, loading existing worlds, saving worlds, unloading worlds and world file operations such as delete and copy.
Setting up the server
The server always generates a few initial worlds, which are mainworld, mainworld_nether and mainworld_the_end (if hellworld is enabled). It is required to have these worlds loaded at all times, and since MyWorlds enables after these worlds are loaded, MyWorlds is unable to alter the properties of these main worlds. If you plan on not using the overworld/nether/the end worlds, you still have to have them loaded. You can change 'keep spawn loaded' to false so these worlds do not occupy any memory, and change 'mainworld' to the desired main world where new people spawn in the config.yml. Then these worlds are not used (but could be used).
All commands except delete match the world name you type in against already existing worlds. If you have a world named 'CreeperCraft12', you can access the world using 'Creeper' or 'Craft12' as well. It first looks for world names that equal your name entered, then the world names containing what you entered and finally the world names contained in what you entered.
For command permissions, see here.
Creating New Worlds
The first step is to create new worlds you want to use on your server. There are two kinds of ways you can create worlds, they will be listed separately.
Creating Vanilla worlds
To create normal/nether/flat/the_end worlds, you can use the commands:
/world create worldname_environment(::options) (seed) /world create worldname/environment(::options) (seed)
The ()-surrounded parts are optional. If no seed is specified, a random seed is used instead. When worldname_environment is used, the environment type is appended to the world name, while with worldname/environment it will not append it to the name. Appending the world environment to the name is recommended, since it eases loading the worlds if no configuration is available for it yet. Not specifying an environment means that the NORMAL environment will be used. Bear in mind that the Bukkit 'Environment' and 'Worldtype' are merged as one in MyWorlds. To have a 'nether flatworld', you use 'nether_flat' as environment. Note that most combinations are not used by Bukkit at all and are a bit useless, they are only useful if you have a modded server such as MCPC+ where these custom options are used.
In the case of the flatworld generator, you can specify addition world options to specify what type of layers to generate. These are the same options as can be seen in the 'Create new world - Customize' windows in the client. It is here that you can, for example, change the height of the flatworld, change block types or include populators such as ores, villages and trees. The format of the options is a bit vague, you can find more help on this subject on the Minecraft Wiki.
Creating worlds using a generator plugin
You can also specify a world generator plugin to generate the worlds for you. When these plugins ask for a 'World manager' to do so, just like Multiverse, MyWorlds allows you to do this. Similar to 'world options' above, you can specify a generator plugin and generator arguments in the command.
/world create worldname_environment:plugin(:arguments) (seed) /world create worldname/environment:plugin(:arguments) (seed)
Arguments and seed are optional. Some plugins support arguments, others don't. For more help on what the arguments are and what the format is, visit the plugin pages of these generator plugins.
|/world create world1||Creates a new overworld called 'world1'|
|/world create world1_nether||Creates a new netherworld called 'world1_nether'|
|/world create mynether/nether||Creates a new netherworld called 'mynether'|
|/world create HippoCraft/flat 251||Creates a new flatworld called 'HippoCraft' using seed 251|
|/world create waterworld/flat::2;7,5x1,5x3,5x12,90x9;1;biome_1,village||Creates a flat waterworld|
|/world create Space:bSpace:awesome||Create a spaceworld using the bSpace generator plugin with the 'awesome' settings|
Loading existing worlds
You want to load worlds created by others or by a previous/other plugin: this is of course possible. But, if the world is completely new and unknown to MyWorlds its configuration, be VERY sure to specify all arguments required to load the world properly.
/world load worldname /world load worldname/environment /world load worldname/environment:plugin:arguments
The same rules are applied as the create command. The seed and world options are stored in the world data file, and don't have to be specified. The environment and optional generator plugin, however, do have to be specified, as it is not stored in the world. Of course, if you already loaded the world once before, just using /world load worldname is sufficient, since MyWorlds already knows what kind of environment and generator plugin the world uses. The other commands only apply when loading worlds not created by MyWorlds.
Not specifying the right environment or generator plugin will cause chunks to be generated at the borders of the world that do not match with the world. For example, loading a flatworld named 'creativeworld' for the first time without specifying the 'flat' environment will cause overworld chunks to be generated at the borders.
Listing available environments/generators
You can use /world listgenerators to show a list of all available generator plugins. Using /world create will list the usage in combination with all available environments.
Listing available worlds
You can use /world list to list all available (loaded, broken and not loaded) worlds. All folders containing a level.dat or a region folder are listed.
To unload worlds when you no longer need them, use /world unload worldname. In case you having autosaving disabled for the world, use /world save worldname before unloading just to avoid losing progress.
To save worlds, use /world save worldname to save a single world or /world save all to save all worlds. Instead of 'all' you can also use '*'.
Copying worlds - renaming worlds
You can copy a world to a new name using /world copy worldname newworldname. The new world can then be loaded again. All world properties from the old world are copied over as well, including generator plugin and environment information. After copying you can load the world safely and/or delete the previous world. You need the right permissions to do this in-game, you can always do this through the console.
To delete a world from disk permanently, use /world delete worldname. The worldname must be completely accurate. Name matching is not used, since deleting the wrong world would become possible then. You need the right permissions to do this in-game, you can always do this through the console.
Shit happens, so it may occur that a world no longer loads properly or the server crashes when loading the world. To repair these worlds, you can use:
/world repair worldname /world repair worldname seed
If you know what seed the world used, it is best to specify that as well. Just in case the level.dat of the world got corrupted and it can no longer read the seed from it, it can use your specified seed to regenerate the settings. It is best if you keep a backup of your level.dat somewhere so that, may it ever get corrupted, you can fix it up without losing settings.
Apart from regenerating the level.dat, it also goes by all region files and:
- Removes chunks that are lost (compression error), and will be regenerated
- Relocate chunks
- Keep a backup of the old, unchanged region files
In all cases, every chunk lost is an actual chunk lost, there is nothing that can be done about that. Making frequent backups of the world is recommended for that reason.
Only unloaded worlds can be repaired. If your corrupted world is the main world, set up a small server somewhere and repair it using that, or simply change the main world in the server configuration and then repair it while unloaded.