Ashley Rogers

Programmer, Game Developer

Thirty Minute Metropolis is a post-apocalyptic city builder you can play on your lunch break. It began as 20 Minute Metropolis (20MM) in MassDiGI's SIP 2017 program as a collaboration between MassDiGI and Boston-based Dejobaan Games. 20 Minute Metropolis was then polished up and released in the Humble Monthly Bundle in March 2019. Thirty Minute Metropolis is the sequel to that game, built off of the 20MM codebase. I was brought back to MassDIGI for SIP 2019 to work on the project, developing the game alongside a team of two artists and our outside development partners at Dejobaan Games.

The goals for the summer were to replace the 3D voxel art style with a new isometric 2D one developed by our artists on the team, to implement procedurally generated levels, and to be able to try out new ideas and iterate on features quickly.

The difference between the state of the game before and the state of the game now is absolutely staggering:

A comparison of 20MM and 30MM side-by-side.

My accomplishments on Thirty Minute Metropolis include:

  • Implemented isometric rendering entirely from scratch in a 3D codebase.
  • Developed a procedural generation algorithm to create fun and interesting levels for 30MM (see below).
  • Created an asset pipeline to apply changes to sprites and generate thumbnails to save artists' time.
  • Worked with artists to create and implement a beautiful "fog of war" system.
  • Twice-a-week meetings with our outside partners to discuss the project's direction and enable rapid iteration of new ideas.
  • Concepted and implemented a water flow effect that follows the route of procedurally generated lakes and rivers.

Procedural Generation

The procedural generation was one aspect of Thirty Minute Metropolis where I really pushed myself and ended up with something great. Procedural generation had been something I'd always wanted to try, and 30MM offered a unique and challenging opportunity to dive right in. Through a few weeks of research and iteration, I developed a procedural generation algorithm that created levels that were interesting and fun to play with the mechanics of 30MM, and continued to modify and iterate upon it as new features were added. I created the following clip to demonstrate how my algorithm works:

Procedural generated terrain in the realm of 2D tile-based games is a rather unique challenge, and it's one that required a good amount of research, prototyping, and understanding of the design of our game to solve.