libtcod is a free, fast, portable and uncomplicated API for roguelike developers providing an advanced true color console, input, and lots of other utilities frequently used in roguelikes.
If you want to get a quick overview of the features that libtcod provides, check out the Features page.
If you want to get a quick overview of games which have used libtcod, check out the Projects page.
libtcod is also well known for it's easy to follow tutorial, which many people have used to get started developing a roguelike. Follow the relevant links the tutorial gives, and it will point you to the right locations.
Windows and MacOS binaries are available from the GitHub Releases page.
If you are programming in C or C++, various sample projects are included within the repository which can be used as examples of various features.
For those who wish to program in Python which is the only scripting language support that has been contributed so far, the basics are described in part 1 of the tutorial. It's currently recommended to install libtcodpy via python-tdl rather than using the libtcodpy package included in this repository.
Warning: If you download these builds, run samples.exe
as your very first
action.
If you are unable to and get an error about vcruntime140.dll
being missing,
you need to install the two
Visual Studio 2015 runtimes.
Make sure you install the 32-bit runtime.
And make sure you also install the 64-bit runtime.
Then run samples.exe
again, and it should now work.
Whether you plan to develop in C, C++, Python or some other language, this is
required.
You can clone with Mercurial via the BitBucket repository, or with Git via the GitHub repository. You can then checkout a specific tag or get the in-development version from the default or master branches.
All compilation methods, currently including Visual Studio (Windows),
SCons (Windows, Linux, MacOS) and Autotools (Linux, MacOS), are located within
the build/
subdirectory.
Windows users who prefer to use Visual Studio directly can either run the top-level 'build.bat' script, or locate and open the provided solution directly using Visual Studio. The solution is currently for Visual Studio 2015, and the free community edition is highly recommended.
SCons automatically downloads SDL2 and can be used on all platforms. Instructions are provided here. The current release builds are built using SCons.
Autotools is a common standard on Linux, and can be used for MacOS. Instructions are provided here.
If you ever need to statically compile libtcod the easiest method would be to
use the src/libtcod_c.c
and src/libtcod.cpp
source files, which include all
the other sources. Further instructions are included in those files.
The latest documentation is here. Currently it's very incomplete, so most people will want to read the 1.5.1 documentation instead.
libtcod comes with a sample application, implementations of which are provided
in each of
C (samples_c.c),
C++ (samples_cpp.cpp),
and Python (samples_py.py).
This provides a decent overview of the basic features, in an interactive
fashion.
Each should be identical for the most part, so if you are using Windows,
downloading the pre-compiled binaries and running the included samples.exe
which is compiled from the C source code, should be representative of the other
versions.