Origins (IV/IV): Flight test with ECS

So we were able to walk on planetoids and it worked like a charm. But would we be able to fly across space? That was the next test, which came with a deep change in the software architecture that would become the foundation of Crossing Galaxies.

In Inky Caps Clash we used bags of components. Each entity, for instance one of the mushrooms that players controlled, was a class that cointained a reference to every single component that an entity might use, no matter if it was used or not: sensors, controllers, powerups, altered states... It was incredibly flexible but rather messy.

And then we stumbled upon something called Entity-Component-Systems (ECS) and we found it was the next logical step in our current architecture. In a naive ECS implementation:

  • An Entity is just an identifier.
  • A Component is just data.
  • There exists an structure that registers which components belong to which entity.
  • A System operates just with the subset of entities that match a set of required components.

It's quite a radical change compared to the classic object oriented programming we were used to. ECS is a software architecture that appears in 1998 in Thief: The Dark Project and it's used in many roguelikes.

For us, it was the answer to a flexible and organized architecture! 

After a few javascript and C# prototypes and a talk in the University of La Laguna in which we discussed with some fellow programmers whether this architecture made sense, we built our own ECS solution in Unity (yes, Unity has announced its own ECS solution quite recently, but we'll stick to our solution for the time being).  Then we created a first space flight simulator with some basic interaction to greet the new year (2017)

And that was it. The project became totally stalled due to work overload (we offer game design and development as a service) for a whole year.

Not anymore. We want Crossing Galaxies: Barks from the Deep to be the first game in the Crossing Galaxies series. A player-friendly space sim in which we flight across galaxies in a rescue mission. And we are working to make it true.

Stay with us and watch it grow!

This post belongs to the Origins series where we explain where Crossing Galaxies comes from: Part I, Part II, Part III, Part IV

Get Crossing Galaxies: Starworm Raiders

Download NowName your own price

Leave a comment

Log in with to leave a comment.