Tcod

Latest version: v16.2.3

Safety actively analyzes 714815 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 29 of 44

1.20.1

Fixed
- BDF files with blank lines no longer fail to load with an "Unknown keyword" error.

1.20.0

Added
- `TCOD_RENDERER_XTERM` was added.
[100](https://github.com/libtcod/libtcod/pull/100)

Fixed
- `const` was missing from `tcod::Tileset`'s `get_X` methods.
- Fixed segfault during cleanup when an OpenGL2 context fails to load.

Removed
- Removed deprecated overrides that existed to help transition obsolete code.
This affects `Console::clear` and the C++ printing methods which take pointers to colors such as `tcod::print`.

1.19.0

Added
- Added `TCOD_context_convert_event_coordinates` and `TCOD_Context::convert_event_coordinates` as an easier way to convert mouse pixel coordinates to tile coordinates.
- Added `tcod::print`, `tcod::print_rect`, and `tcod::get_height_rect` to replace the older C++ functions.
- Added `tcod::Tileset`, `tcod::load_tilesheet`, and `tcod::load_bdf` for working with tilesets in C++ along with the character maps `tcod::CHARMAP_CP437` and `tcod::CHARMAP_TCOD`.
- `TCOD_Context`, `TCOD_ContextParams`, `TCOD_ViewportOptions`, and `tcod::new_context` are now public.
- Added vprintf-like console printing functions: `TCOD_console_vprintf` and `TCOD_console_vprintf_rect`.
- Added the `tcod::Timer` class. A way of handing frame limiting and delta time without depending on libtcod's internals.
- Added `TCOD_sys_get_internal_context`. An easy way to get a `TCOD_Context` from the old API.
- Added `TCOD_sys_get_internal_console`. This returns a pointer to the root console used by the old API.
- Added `tcod::ColorRGB` and `tcod::ColorRGBA` to help with color type conversions.
- Added libtcod logging functions, for debugging and internal use.
- Added `tcod::draw_quartergraphics` to replace older C++ blit2x functions.
- Added `tcod::blit` to replace older C++ blit functions.
- Added `tcod::stringf` to encapsulate printf formatted strings so that other C++ functions won't have to deal with them.
A library like [fmt](https://fmt.dev/latest/index.html) is safer and faster if you have access to it.

Changed
- Initializing libtcod with the old API will now enable VSync by default.
You can set the environment variable `TCOD_VSYNC=0` to disable this or use the new API where VSync is a setting.
- `TCODConsole::get_data` now returns a non-NULL pointer to the root console.
- Fixes to Gaussian number generation will have changed the resulting numbers and any subsequent random numbers.
- `TCOD_Random` now points to a union type.
- Libtcod now uses the C++17 standard.
- The newer C++ printing functions now take `std::string_view` instead of `std::string`.
- `TCODConsole`, `TCODBsp`, `TCODPath`, `TCODDijkstra`, `TCODNoise`, `TCODImage`, and `TCODMap` can now handle move operations.
Their copy operators have been deleted. This makes them safe to use as a value instead of using `new`/`delete`.

Deprecated
- Deprecate `TCOD_chars_t` enum values because they are non-Unicode.
- Deprecated C++ color constants because of class `static const` initialization issues.
- Deprecated libtcod's older timing functions.
- Deprecated older font loading functions.
- Deprecated `TCOD_random_t` type.
- Console defaults have been deprecated.
- Root console initiation has been deprecated.

Fixed
- Gaussian number generation no longer affects the results of unrelated RNG's.
- Gaussian number generation is now reentrant and thread-safe.

Removed
- Dropped support for C++14.

1.18.1

Fixed
- Fixed potential crash in PNG image loading.

1.18.0

Added
- Added REXPaint functions which don't use TCOD lists for multiple consoles.

Fixed
- Resolved C++17 deprecation warnings with `tcod::BresenhamLine`.

1.17.1

Fixed
- Fixed regression with loading PNG images.

Page 29 of 44

Links

Releases

Has known vulnerabilities

© 2025 Safety CLI Cybersecurity Inc. All Rights Reserved.