While you’re exploring your Minecraft world the game is devoting a huge amount of resources to creating it around you. Generating these pieces ahead of time significantly decreases the resource load on your CPU while playing the game which leads to smoother game play with less lag. Read on as we show you how to prepopulate your world map for speedier play.
Why Do I Want To Do This?
As we’ve discussed in other Minecraft tutorials, Minecraft is a surprisingly resource intensive game. It might look simplistic on the surface, thanks to the low-resolution textures and blocky shapes, but under the hood there is a huge amount of calculations and rendering going on to generate and represent the world map as well as handle all the entities and related physics.
This process is quite CPU intensive. When flying around in creative mode where chunks fill in rapidly to keep up even players on high end computers will see stuttering and lag; players on older computers will typically see their game grind to a complete halt and frame rates will drop into the single digits.
This lag while the game renders and displays new chunks is a real immersion killer and, if it lags so bad it locks your game up, a fun killer as well. Fortunately there’s a way to circumvent the waiting game. While there will always be overhead for the various in-game processes, generating new chunks is actually a process we can farm out, if you will, so that the heavy lifting is done when we’re not playing the game. The trick hinges on a clever little program called Minecraft Land Generator, and there’s very little reason to not take advantage of it.
How Does It Work?
The principle behind Minecraft Land Generator is really simple when you dissect the process. Minecraft Land Generator is a helper application that, when paired with a world map and a compatible Minecraft server file, simulates the exploration of the map as if players were roaming it.
If you, the player, had to precisely and systematically canvas a 20,000 x 20,000 square grid in the game it would be terribly tedious and would take days worth of game play. On a newer computer, however, it takes Minecraft Land Generator an hour or two to complete the same task (and even on older computers you can simply leave it run overnight to achieve the same end). Further, once you do the initial run (be it an hour or twelve in length) the work is done and you don’t need to run it again unless you want to uniformly expand your world map again (say from 10,000 blocks on a side to 20,000 blocks on a side).
Minecraft Land Generator works so well, we can only report one downside to using it: increased world file size. Although every Minecraft map is essentially complete from the moment of world creation (remember the world seed + generation algorithm is like the DNA for the map) the world doesn’t actually exist as real hard drive consuming data until the player visits each new chunk and spawns the chunk generation.
As such a fresh map barely explored is around ~10MB or less in size to account for the first chunks and the support files but as the player explores it grows in size as the data for each chunk is written to the game file. By the time the map contains 5,000 x 5,000 blocks worth of chunks the game file will swell to around 600MB. Larger maps have larger file sizes (exponentially so); a 20,000 by 20,000 map has a game file that weighs in at a hefty 6GB.
That’s the only real trade off you’re making with Minecraft Land Generator. What you gain in increased load times and faster game play you pay for with disk space. Given how much chunk generation lags single player games (especially on lower end machines) and what a heavy processing burden it places on servers (where multiple players can be exploring in different directions and generating dozens of chunks a second) the tradeoff is more than worth it for most players and absolutely worth it if you’re running a server.
Using Minecraft Land Generator
Minecraft Land Generator (herein referred to as MLG for brevity) works absolutely flawlessly when you’ve properly configured it, but proper configuration can be a little bit tricky. Let’s walk through the installation process and configuration process to ensure you have a trouble free experience.
Downloading Minecraft Land Generator
The source files are hosted on Github and if you’re unfamiliar with Github the way you access them isn’t particularly transparent. To grab the most recent copy of MLG navigate to the project’s zip archives here.
Select the link that reads MinecraftLandGenerator_X.X.X_Vanilla_Server.zip (as of this tutorial the file is version 1.7.5). Don’t be concerned that the file seems out of date (the 1.7.5 version is from October 2013 which, in Minecraft terms, is practically ancient); it auto updates and we’ll do doing that in just a moment.
In the subpage for the zip file, select the “Raw” button, as seen in the screenshot above. Save the file.
Installing and Updating Minecraft Land Generator
After downloading the zip file, extract the contents. We keep all our Minecraft editing tools in our Minecraft archives under \Minecraft\Editing Tools\ but you can place the extracted “MinecraftLandGenerator” tool anywhere you wish as the application and support files are completely self contained.
Open the folder and look for the appropriate setup file for your operating system.
MLG includes setup files for Windows, Mac, and Linux, named clearly “MLG_Initial_Setup_OS.EXT” wherein the operating system and the appropriate extension for that operating system are clearly labeled. Windows users should run the MLG_Initial_Setup_Windows.cmd, and so on. Wait for the script to finish running. After running the initial setup file, your MLG folder will be significantly more populated and MLG will be up to date (1.7.6 as of this tutorial).
There is one bit of manual updating required, however. MLG can’t distribute the actual Minecraft server file (but it can download it from the Minecraft servers during the update process). While it does include a mechanism for downloading the most current server.jar file the mechanism is broken (because Mojang changed how they named their archive files and minecraft_server.jar no longer universally points at the most current release). As such the updater always downloads Minecraft Server 1.5.2 which is more than a tad out of date.
You can download the most current Minecraft server file (minecraft_server.1.8.1.jar as of this tutorial) from the official Minecraft server here. You can download older versions of the server.jar from Mojang by using this well organized table courtesy of MCVersions.net. Why download older versions?
Downloading the correct version of the server is the most critical step. The version number of the server.jar file must match the version of Minecraft you play the world map on. If you want to expand a map from Minecraft 1.6.4, for example, you cannot use the Minecraft 1.8.1 server to run MLG as the chunk generation algorithm and game content has changed so much between 1.6.4 and 1.8.* that even if MLG doesn’t outright crash it will generate very ugly errors and artifacts on your map.
Again, for emphasis, you must use a Minecraft server version that matches your game version.
This rule applies across the board. If you’re using a modified server.jar with game mods installed, for example, that is the server.jar file you need to give to MLG. Regardless of the circumstances (vanilla server, modded server, brand new server, old server) the server.jar file needs to match the map exactly.
Once you have downloaded the proper server.jar file (in the case of single player maps where you weren’t using a server) or you’ve copied the server.jar file (in the case of running a home server), remove the existing minecraft_server.jar file from the root of the MLG folder and replace it with the proper server file (renaming it to minecraft_server.jar if necessary).
In all our tests of MLG the only problems that ever arose were a direct result of the failure to pair the map we were working on with a matching server.jar file.
Running Minecraft Land Generator
Once you’ve completed the setup process in the previous step (with an emphasis on always, always, using the correct server.jar for your map) everything else is smooth sailing. In fact, you only have two simple choices to make. The first choice is whether or not you want to generate a brand new map or expand an existing map. The second choice is how big of an area you want to generate (keeping in mind that the size of the generated map scales rapidly; 5000 x 5000 blocks is ~600MB while 20,000 x 20,000 blocks is ~6GB).
Generating a Brand New Map
Although most people will be interested in expanding an existing map that they’ve already begun exploring and like, we’re going to cover generating a brand new map first because it requires the least set up and is still a worthy use of MLG (especially for users looking to generate and entire server map in one swoop).
The server.jar will use the server.properties file located in the MLG folder when it generates the world. The server.properties file uses the default Minecraft settings and, unless you have a specific need to modify something, there is no need to change any of the settings inside. If you want a better understanding of the server.properties file, check out this Minecraft wiki entry. If you’re already running a server (especially a modded server with custom server.properties entries) copy your existing server.properties file along with your existing server.jar file.
To generate a brand new world using your current server.jar file, simply run the Run_MLG_Windows.cmd (or equivalent file for your operating system). You’ll be prompted to enter the dimensions of the map like so.
For the sake of demonstration we’re going to eschew using equal length sides for our map and instead use rectangular dimensions (practically speaking you’ll likely want a square map). We’re starting the map generation process with the input X: 8,000 Z: 5,000.
Using the very super cool tool Mapcrafter that generates a Google Maps style version of your Minecraft map (see this tutorial if you’re interested it playing with it), we can see how our map looks within even loading the game.
When the process is complete, copy the generated /world/ folder and all files therein to either your Minecraft /saves/ folder or the appropriate location your server. Run the game or server as you normally would and enjoy your pregenerated map.
Extending an Existing Map
If you have an existing map, MLG does a fantastic job both expanding and filling the map in. If you’ve explored in a meandering pattern out to around 5,000 blocks from the spawn point, for example, and you want to expand the map to 10,000 x 10,000 blocks, MLG will not only extend the border of the map but fill in any holes within the already explored territory so that the generated map is continuous from border to border with no gaps. Here is an example map, a small world we’ve begun to explore courtesy of, like in the last section, of Mapcrafter.
In order to extend/fill an existing map you need to copy the contents of your world save file over into the MLG directory. For example, let’s say the map you wish to extend is called Super Awesome World and is located in your minecraft /saves/ folder in the directory /Super Awesome World/.
Copy that entire directory, /Super Awesome World/ and all its contents to your MLG directory and then rename the folder to /world/.
Run the run the Run_MLG_Windows.cmd (or equivalent file for your operating system) just as we did in the previous section. The only noticeable difference between the two methods, from the perspective of the application output, is that when you run the command with no existing world like we did in the previous section it will announce that there is no valid world and that one is being generated; when you run the script with an existing and valid /world/ directory it will load that instead and immediately begin expanding the world.
Let’s expand the very small world, seen above, into a decently sized 5,000 x 5,000 block world. Once the process is complete we can fire up Mapcrafter again and take a look. We’ve kept the scale/zoom level the same for both images so you can see just how many new chunks were generated and how MLG filled in the gaps.
Beautiful. Seamless edge-to-edge chunk generation without so much as a block gap anywhere on the map.
Now when we play, waiting for the game engine to churn through generating new chunks will be the least of our worries. Speaking of speeding up Minecraft, while today’s tutorial on pregenerating your map with Minecraft Land Generator will help lighten the load, there are a wide variety of tweaks you can employ from adjusting your video settings to installing performance boosting mods to make Minecraft run on even aging computers.
Have a pressing question about Minecraft or a tutorial you’d like us to write? Shoot us an email at firstname.lastname@example.org and we’ll do our best to answer them.