Using Open Geodata in Minecraft - 04/08/2014
The arrival of free open geodata in Denmark and open source code has sparked a fascinating public experiment involving a popular children’s computer game. But open source with open access means some players can bring you grief!
The 1 January 2013 sparked a revolution in Denmark when a vast array of public sector information was made publicly available at no cost for private companies and citizens. The objectives were to eliminate redundant databases, heighten data quality, facilitate links between datasets, improve distribution and ensure effective/coordinated development and usage. Private companies have fully embraced the initiative and are now focusing on creating services on top of the free public data. When the initiative is fully implemented it is expected to save the private and public sector more than €100m annually.
To demonstrate an alternative use of the free public data the Danish Geodata Agency (GST) launched “Denmark’s Free Geodata in a Minecraft World” on 24 April. The project comprises a set of Minecraft files for download and an online demonstration hosted on three servers; the purpose is to spur interest in geographic data for education. The interest has been enormous and the full potential of the model has yet to be seen with the latest addition of urban planners who are using it to demonstrate proposals.
The group of people working with digital height models at GST have several children playing Minecraft. Smitten by our kids’ fascination for the game, we had the idea of using Minecraft as a tool for visualising and interacting with our own ‘real’ data. The interaction part was essential. While there’s an abundance of data viewers, the way that Minecraft lets you walk around in, and intuitively reshape, the “landscape” is quite different from the possibilities offered in, for example, a traditional GIS.
The actual implementation started as a hobby project and initially it was just the two authors working on it, motivated by discussions with our manager at the time, Nynne Dalå. After we had developed a proof of concept in our free time and watched our kids’ reactions, we realised that this had a huge potential for a range of applications.
Nynne then did a tremendous job promoting the idea within GST - and it soon gained momentum and was formalised as an official project. Within GST, the main focus was on education as the most obvious use case – to get young people more aware of geography and the environment.
Creating the Model
The project was done in a very short time. First of all, to make a Minecraft world with nationwide coverage it is important to have good quality controlled data available. Time consumption can be broken down into work hours and computer hours, where the latter was much more substantial and it was only possible to complete the project using a high level of automation.
By using standard open source components it was possible to accomplish the task with a few thousand lines of code, most of which re-mapped – or translated – various geospatial objects into Minecraft blocks. Some modelling has been applied to merge datasets captured at different times, such as beaches that aren’t static. They move over time, so it was necessary to fix some inconsistencies between height model and vector data. Furthermore, the city of Copenhagen is mapped in a different format (without heights at building outlines) so heights had to be applied to buildings from a laser point cloud older than the map data. All in all, the process took a few hundred hours – much of it in our spare time.
Generating the model – basically through applying the algorithms – was a hands-off process. The 10km × 10km files available at download.kortforsyningen.dk are the exact files produced by the algorithms. The process was run in parallel using standard office equipment and controlled from a PostGIS database. This made it possible for us to prioritise certain areas and keep track of progress. One 10×10 tile takes roughly two hours to generate – most of it is spent on writing the Minecraft files from a 3D array. In total it took less than a week to calculate all 637 files. The total time could have been reduced by using more and better computers.
Among the software tools used for creating the model, we would like to mention:
- PostGIS – server to store the topological data
- GDAL – Geospatial Data Abstraction Library – to translate and manipulate data
- QGis – desktop GIS program
The so-called Named Binary Tag (NBT) data format used by Minecraft to store worlds is a kind of binary XML-format (http://minecraft.gamepedia.com/NBT_format). It is capable of storing a mixture of vector and 3d-voxel data and designed with real-time visualisation and disk usage as key factors! We also think that this format could also be useful for storing geospatial voxel-data not related to Minecraft.
Geodata as a Social Media
We were very surprised and flattered by the huge interest in the Minecraft model of Denmark. In the beginning our servers were flooded, prompting us to launch additional instances in parallel. We thought the interest would soon die but an interesting pattern appeared. Some people logged on to our servers and soon lost interest (we had disabled all the game elements such as monsters and dynamite) but others “moved in” inside the model and “lived” inside the virtual representation of their real-life homes. The Minecraft world created from free geodata had evolved into a “social media” with people chatting, building in cooperation, or just hanging out.
The news about our servers spread quickly in the Minecraft community and attracted the attention of all kinds of people, including so-called “griefers” (Minecraft slang for people with destructive in-game behaviour). We had foreseen that some demolition would happen, and we took a pretty relaxed stance. It is very easy for us to reset the model, but when people started to move in and build beautiful constructions around their homes, we had to take their work effort and enthusiasm into consideration and not just wipe it all out with a rollback.
At some time the stories of vast destruction went viral! A screenshot of tanks and American flags in front of the Copenhagen Central Station gave room for a story about Americans invading and vandalising the virtual Denmark. The debate evolved further into meta discussions about general internet behaviour and some gamers’ destructive tendencies. The destruction and vandalism was highly exaggerated and American visitors have been no more or less destructive than others. Out of the total 43,000 sq km, only a few hectares were “griefed” – primarily in areas where people gather. Apparently this is ‘normal’ Minecraft behaviour. We observed the creation of flags from a lot of countries, and people were welcome to do this as long as they did it respectfully and with consideration. The screenshots of American tanks fell well within the acceptable category and were not subject to our rollback.
The servers were not the primary focus of our project – they were conceived as a demonstration infrastructure only. The overwhelming number of visitors (at this point, more than 30,000) took us by surprise. Had we known beforehand, we might have scaled for a much larger number of players and implemented more tools to protect the world. We are still considering the future of the servers as we hope people will download the data and use it for themselves – to start their own servers.
There is definitely a lot of room for improvement for the model. We still consider it to be a proof of concept, a simple showcase for what can be done with good, freely available spatial data. There were several ideas and features that we chose not to implement.
Currently we are busy on the quality control of a new national height model, which has the potential for more refined modelling of real-world features and we hope to take things further forward – possibly to include other game engines, photorealistic texturing, etc.
While the use case for Minecraft in education is well established, there’s still a range of potential applications for an interactive, geographically accurate model, such as ours, that are, as yet, relatively unexplored. One example would be as a tool to democratise urban and rural planning.
With our use case in mind you can think of Minecraft as simply a high performance and very intuitive 3D GIS system. Minecraft is currently the most popular 3D sandbox game but there is a range of other games with similar capabilities and potential to provide powerful platforms for similar use cases.
This article was published in GIS Professional August 2014Last updated: 21/11/2019