mathuin edited this page Jan 27, 2013 · 5 revisions
Clone this wiki locally

Running TopoMC under Windows is not supported. That being said, this is what I did and it worked for me.

Python and GDAL

I installed the 64-bit version of Python 2.7.3 from to match my 64-bit version of Windows 7. I then went to where I clicked on "release-1600-x64-gdal-1-9-1-mapserver-6-0". This page contains links for GDAL itself (gdal-19-1600-x64-core.msi) and for the Python bindings (, both of which I installed.

At this point I modified the Path variable to contain the locations of GDAL, Python, and the Python scripts directory -- C:\Program Files\GDAL;C:\Python27;C:\Python27\Scripts got stuck at the end of the existing variable.

Python Dependencies

I went to for most of the remaining dependencies, including numpy-MKL, scipy, pywin32, and pyyaml.

I downloaded from and ran it in order to install easy_install. I then used easy_install to install suds, since it's not available from LFD. This is done by the command "easy_install suds" from within the Windows command shell.

GitHub for Windows and git commands

Now that GDAL, Python, and all their dependencies are installed, I installed GitHub for Windows from which included a Powershell install. Once that install completed, I visited the web page and clicked the 'Clone in Windows' button. Once the clone finished, I opened the Powershell (right-click on the repository, select 'open a shell here') and ran the following commands:

  • git checkout develop
  • git submodule init
  • git submodule update

These commands switch to the develop branch (the most recent code with all the fixes), initialize the submodules (currently just pymclevel), and update those same submodules (checking out the proper version of pymclevel).

Let's Make Some Maps!

At this point TopoMC is ready to roll. From this same shell, try the following commands:

  • python ./ --name Provincetown --ymax 42.0901 --xmin -70.2611 --ymin 42.0091 --xmax -70.1100
  • python ./ --name Provincetown
  • python ./ --name Provincetown

The USGS is having trouble with their servers, so ./ isn't working. I have a trouble ticket with them and hope they get it fixed soon!

When the scripts are run, an error message is displayed:

ERROR: The system was unable to find the specified registry key or value.

This message appears to be innocuous. Additionally, ./ may cause two error windows to appear with titles like this:

gdalwarp.exe: No Disk

and saying something about not seeing a CD or something. Click 'Continue' and all should be well.

Once the third script is complete, use Windows Explorer to cruise around the Regions directory. It should contain a subdirectory named Provincetown. This subdirectory should contain directories named Datasets and Tiles, and files named Map.tif and Region.yaml. The Worlds directory should contain a subdirectory named Provincetown which contains the generated world, which can be copied to your Minecraft saves directory if you want to play single-player, or to your server directory, or wherever you like.

Please note: if you have not updated your pymclevel checkout, the map will need to be opened from inside Minecraft in order to convert it to Anvil.

Using compiled NBT code in pymclevel

This is what I had to do.

I downloaded and installed Virtual Studio C++ Express 2008 and Platform SDK 7.0, including the 64 bit compilers.

I opened the CMD shell from within the Windows SDK 7.0 menu in the Start menu.

I set the DISTUTILS_USE_SDK variable to 1.

I ran python build_ext --inplace from the pymclevel directory.

Potential improvements

My laptop does not support OpenCL so I was unable to take advantage of this feature. If you have a desktop with a modern video card, visit the OpenCL site at to see if it will work for you. Once you have OpenCL working, you will need to install the pyopencl module from LFD. OpenCL support should be detected automatically by ./ if it is installed. Again, if you get it to work, please let me know!