GSoC/GCI Archive
Google Summer of Code 2012

Unknown Horizons and FIFE

Web Page:

Mailing List:

[IMAGE] The Unknown Horizons project aims at creating a free and open source realtime economy simulation with strategy elements in an isometric 2D engine loosely oriented towards Sunflowers' Anno / A.D. series. It is written in Python.

We mentor ideas together with our engine FIFE.

[IMAGE] FIFE stands for Flexible Isometric Free Engine and is a cross platform game creation framework written in C++. It provides you with the ability to create a game using Python interfaces. FIFE also comes as a DLL or static library so you can use C++ as well.

The first commits to a repository of Unknown Horizons were made in October 2007, but the actual development started as a C++ project OpenAnno mid-2005 already.

Since then we have achieved a lot in terms of development and gameplay:

  • Building a core development group and attracting many patchers
  • Releasing several highly playable releases of an open source real time strategy game
  • Setting up an excellent infrastructure that helps to focus on actual development
  • Using only high quality media under terms of a free, open license
  • Translating the game into more than 20 languages, resulting in many non-native English speakers contributing

Over the past twelve months, 38 developers contributed new code to Unknown Horizons. 
This is one of the largest open-source teams in the world, and is in the top 2% of all project teams listed on

If you are into game programming and love an active, IRC-based community, Unknown Horizons is the place to be. Be sure to stop by our IRC channel if you are interested in joining us in GSoC as student!


  • Combat AI, Diplomacy and Personalities For my GSoC task I'd like to extend current AI to handle ship combat AI, simple diplomacy and personalities feature. Also keeping in mind to prepare ground for future extension to ground units and more complex diplomacy.
  • Improvements to the FIFE GUI bindings: Guichan and Pychan The aim of this project is to decouple guichan/pychan from FIFE. F stands for Flexible and FIFE clients should be able to use any gui subsystem they wish. Two more subsystems will be offered by the Engine that will be available out-of-box, CE::GUI and Rocket. Another goal of the project is to fix as many guichan/pychan bugs as possible and to migrate some useful pychan features to C++, since some clients prefer to use FIFE with C++ rather than python.