Clone wiki

libtcod / Features

Features

All screenshots come from the libtcod sample source code.

Portable

Makes your C/C++/Python game code easily portable on Windows and Linux. Third party ports also exists for other systems and languages.

Keyboard and mouse input

The keyboard module supports both turn-by-turn and real time games.

True color console

Don’t limit yourself to monochrome or 16 color roguelikes. True colors create a whole world of new visual possibilities. Check the Projects page to see some examples.

libtcod-color-full.jpg

Antialiased bitmap font support

Antialiasing makes it possible to have better looking fonts, even when you’re using characters as small as 8×8.

libtcod-aa-full.jpg

Sub-cell resolution & SDL callback

Use a few special characters within a font to simulate pixels half the size of a console cell or directly apply SDL post-processing on the image.

Unicode support

Several unicode bitmap fonts are included.

High quality pseudo-random number generation

Using Complementary Multiply With Carry or Mersenne twister algorithm.

Advanced plain text configuration file parser

Configuration files use a human readable format with built-in support for many types of properties including color, dice, ...

BMP and PNG image support

You can blit images onto your console background.

libtcod-image-full.jpg

Perlin noise toolkit

Support for Perlin, simplex and wavelet noises.

libtcod-noise-simplex-full.jpg

Heightmap toolkit

Tools to generate heightmaps. Check out the YouTube video, to see it in action.

libtcod-heightmap-full.jpg

A field of view toolkit

Supported algorithms:

  • Basic raycasting.
  • Recursive shadowcasting.
  • Diamond raycasting.
  • Precise permissive fov.
  • Restrictive shadowcasting a.k.a. MRPAS.

libtcod-fov-full.jpg

Path finding toolkit

Using A* or Dijkstra algorithms, with either a builtin map data structure or your own internal data structure through function callbacks.

libtcod-path-full.jpg

BSP toolkit

For regions, cities, dungeons building. See this article.

libtcod-bsp-full.jpg

Compression support through zlib

Useful to reduce the size, and loading/saving time of save games.

Flexible name generator

Highly customizable syllables based name generator. Comes with 20 predefined syllables sets including Celtic, Norse sounding names and Region/Cities dedicated sets.

Updated