follow the traces
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
nek0 f678b216d6 add policeman 2 years ago
assets add policeman 1 year ago
ideas old new idea 4 years ago
src add policeman 1 year ago
.gitignore ignore more 3 years ago laying foundation 4 years ago
LICENSE laying foundation 4 years ago strike out old info 3 years ago
Setup.hs laying foundation 4 years ago
cabal.config various speed optimizations 2 years ago
cabal.project textify 2 years ago
shell.nix add missing library 1 year ago
tracer-game.cabal bump affection version 1 year ago



Tracer is an ongoing project, which is still under heavy development.

About the project

This is my first attempt at a game, which is not a clone or port of anything.

I've been working on it since February 2018 and is to date not finished. The game itself is written entirely in Haskell, using my own game engine Affection.

I aim to get the game into a presentable, playable state in September 2018 for the conference Datenspuren. But there is still quite a lot to do until then...

About the game

In this game you play an anonymous hacker/spy for hire. You have recently been hired to steal the database of a company. The database is stored offline on-site at the company's headquarters, where you set out to intrude using means of social engineering.


For building the game you need an installation of ghc and cabal-install.


There is a shell.nix file to build you a nix-shell environment as build environment. There is only one assumption in this file:

To get the build environment, just run

nix-shell shell.nix

in a console from the project's folder.

After the environment has been built, run

cabal run

to build and run the game's executable.

Other GNU/Linux systems

System dependencies

To get the build environment, make sure you have a recent version (>= 8.4.3) of ghc installed acompanied by a matching cabal-install. Both of these are available from in a bundle called haskell-platform. You can also check your system's package manager for it.

Additionally you need the development libraries for:

  • sdl2
  • libglew

Haskell sandbox

Before you install any haskell packages I recommend highly to build a sandbox for the project. To do this, invoke

cabal sandbox init

in a terminal in the project folder.

Now your sandbox is ready for installing all haskell dependencies by invoking

cabal install --only-dependencies -j

This may take some time, depending on your hardware.

Compiling the game

To compile the game, run

cabal build

in the sandbox.

Running the game

To run the game, invoke

cabal run

in the sandbox.