< Back to projects

Time to Steal Artifacts

This was made for the 2021-2022 TSA competition. It runs on a desktop or laptop. The theme for this year’s competition was an arcade game related to a museum. TSA (the abbreviation for the game) has you playing as a thief trying to steal artifacts from the museum!

https://tsavideogame.github.io

For this project I made a game engine and entity component system (ECS) from scratch in C.

jin (Game Engine)

jEL (ECS)

I’m calling it a game engine, but it’s more of a framework which glues together libraries and provides a common API for graphics, input, audio, and possibly other functions I forgot about.

Originally the game was going to be a native application, but the competition required an online port so emscripten was used to port the game to the web. Thanks to the modularity of the game engine, it was fairly easy to make a port.

The graphics use OpenGL, and it gave pretty cool lighting effects.

The audio uses OpenAL.

Creating a window and handling inputs uses native platform APIs.

A speedrun channel covered this game. YouTube