CACAflag is a text-based game based on the BZFlag concept, which uses the libcaca render library.


  • Network support (a player hosts the game)
  • Map is a text file (you can use a C source file)
  • Tanks can move, shoot bullets


  • Every BZFlag's flags represented
  • Jump
  • Score system
  • Chat system
  • Time limit for games


  • libcaca (>= 0.99b14)


Currently, CACAflag development is in progress, and there isn't any release available.

Get the sources from git:

$ git clone


To use CACAflag, first compile it with 'make'.

Commande-line parameters

Then run it with one of this parameters:

  • - s — run game as server;
  • - f filename — if you are a server, set here what file to use as map;
  • - H hostname — if you are a client, use this to set where is server, if you are a client this is the binded IP address (default;
  • - P port — on what port to bind or connect (default 5150);
  • - n nickname — set your nickname in game (default your system name);
  • - c color — set color of your player (id, default yellow).


  • n or m: respawn your tank;
  • sd or ki: move your tank forward or backward;
  • tr or jl: turn left or right;
  • p or space: shoot a bullet;
  • q or ESC: quit game;

Also available in: HTML TXT