[Stardust Colonies]

Games C++ AI Date: Aug 2014

Stardust Colonies

Download Alien Farm Windows-compatible installation file
Technologies used: C++, OpenGL, Boost, Model-View-Controller, PHP, CodeIgniter, MySQL, JavaScript, RESTful Web Services, HTML, CSS, Git

Stardust Colonies is a strategy game in which player-controlled units are aware of and affected by both their own memory and preferences, as well as of their colony's well-being. The game offers a tutorial campaign, as well as randomly-generated maps with randomised objectives.

An innovative approach to the unit AI

Aliens in the game are able to collect resources and breed. To move, they use an obstacle avoidance algorithm for continuous environments that was based on Bourg's and Seeman's work. The units have an inner state which consists of happiness and activity - two variables which are adjusted for each alien based on what it did previously and whether it liked it or not, as well on how well the entire colony does in terms of the amount of stored food and living space.

A medium-sized alien colony Constructing a colony

In Stardust Colonies, each unit is an individual and its behaviour and work performance are affected by its happiness.

Alien with activity and happiness levels shownFrustrated aliens perform tasks slowly and sometimes disobey the player's orders, but doing their preferred job makes them very efficient. Furthermore, movement of an alien is slowed down if it is tired of frequent travelling of because of its age. Player therefore has to keep a constant eye on all colony members and make sure they stay happy and active. Fuzzy logic is used both for evaluation of a unit's current inner state as well as to adjust its behaviour.


The game was tested by a number of players who found the individualised behaviour interesting and harder to predict. The Kickstarter and Steam campaigns generated some attention, although the marketing and development had to be paused indefinitely due to my other engagements.

I started developing this game under the name "Alien Farm" as my Undergraduate project. Alien Farm was a great success amongst students and academic staff and was presented on the University's open day in May 2009.

My Roles

I pursued this project in my spare time during my MSc and PhD, and was the sole developer of the game as well as of its website. The game does not use an engine and all code was developed from the ground-up. I created the in-game assets, wrote the campaign story and designed the website. I contracted a freelance artist to develop promotional materials. My responsibilities also included marketing on KickStarter, Steam Greenlight, IndieDB and on other indie development websites.

{Please enable JavaScript in order to post comments}

The Hive Mind

The Hive Mind is a sci-fi puzzle game about insect-inspired construction with robots. The player takes on the role of an Overseer who was sent to an alien planet and designs simple rules that robots use to create structures brick by brick.

A small compiler script for C with GCC

One of my favourite classes at the moment is the one where they teach us C. Knowing C already, it is a nice relaxation for Monday morning...

A 2D iPhone Game Framework

The project reviews some of the existing design patterns and available algorithms used in iPhone games development. The application created is a template project for a 2D iPhone game.

Alien Strike

Alien Strike was an addictive copter shooter game sold on iTunes during 2009 and 2010, where you flew a UFO and fought against the futuristic Earth. The movement was controlled by holding a finger on the screen in order to go up, while the default UFO movement was to fall down. Player had the ability to shoot and drop bombs to watch the earthlings explode.

Inner States for Game Agent Systems

The theoretical part of the project focuses on currently used techniques for obstacle avoidance, task-oriented behaviour and fuzzy logic in the field of games AI. A number of approaches are discussed and evaluated.

Mayan Madness

Mayan Madness is a 3D third-person adventure game that I participated on as a lead developer in the last year of my undergraduate course.