2014 - 2020

What I did

Swift + Objective-C

Work by Others

Greg March
game design
Greg March
Jacob Rhein
Jacob Rhein


Tempire is an iOS game that I developed with my friend Greg March. It’s based on a web game that he and several others made as students as UCSC.

Greg did all of the game design and artwork, I did all of the programming.

We started working on this in 2014, while we were both still in undergrad. We released a version of it in 2015 that worked but lacked a player vs. AI mode and was optimized for the small phone sizes of that time. We eventually modernized it and rereleased it in 2020.

I wrote the first iteration in Objective-C, since we started the project before Swift was announced at WWDC 2014. I ported Tempire to swift shortly after the announcement. Over the years I have migrated the Tempire codebase through every Swift version. While this was a pain in the ass, it kept me up to speed with the evolution of the language while I was stuck working with Objective-C at Adobe.

The game is technically very simple. The menus are built with UIKit, the game is built with Spritekit, and the multiplayer is built on GameKit.

The AI agent is based on heuristics. We experimented with a look-ahead-based agent, but it proved to be too slow, since Tempire has a time aspect to it that balloons the number of possible future moves.