The competition involves writing an algorithm that can create a settlement for a given, unknown Minecraft map. The challenge is to produce an algorithm that is adaptive towards the provided map, creates a settlement that satisfies a range of functional requirements – but also looks good and evokes an interesting narrative.
Selina Soo, Ho Kiu Lam, Rhys Davey (all studying BSc Computing with a Year in Industry) and William Chu (studying BSc Business Information Technology with a Year in Industry) wrote an AI Settlement Generation algorithm in the video game Minecraft, which can create a settlement for a random generated Minecraft map.
This project was originally created as a student project for the third year Computing module CO600, and was supervised by Dr Anna Jordanous, Senior Lecturer at the School of Computing. On the module students, working in small groups, undertake a project related to computer science and/or software engineering. The project involves the specification, design, implementation, documentation and demonstration of a technical artefact.
The team’s project takes the form of a filter script in MCEdit Unified, a third-party, community-driven Minecraft map editor, which allowed them to make use of libraries built for the software, which can modify the terrain of the Minecraft world, to construct the algorithm.
The team says: ‘Our primary objectives were to maximise adaptability, functionality, narrative and aesthetics. These four aspects were specified in the competition’s evaluation crite- ria and acted as a cornerstone and guideline for us during development, informing the decisions we made. In terms of adaptability, our algorithm needed to adjust to varied landscapes like uneven terrain, islands, mountain ranges, etc., ensuring that structures are placed on even ground. For functionality, we looked into creating a settlement that would make sense in the real world while considering Minecraft problems such as defence from mobs and food supply. We also wanted our settlement to evoke an intriguing narrative that would make users want to visit and learn more about it simply by looking at the area. Finally, our settlement needed to have a consistent theme and be aesthetically pleasing to look at’.
William says: ‘We were pleased with our progress and achievements and decided to submit our algorithm to the competition’.
‘Each of us worked on a different part of the settlement. Rhys looked into buildable area allocation; Selina looked into circle packing for tree placement; Ho Kiu looked into modifying the terrain and building allocation; and I looked into wall generation and path finding algorithms’.
‘We are currently looking at future developments on this project and publishing an academic publication on AI games conferences and journals’.
A video which demonstrates the project can be found here: