Libtcod Versions Save

A collection of tools and algorithms for developing traditional roguelikes. Such as field-of-view, pathfinding, and a tile-based terminal emulator.

1.4.1

1 year ago

This release archives the older official builds of libtcod.

Thanks to Jice for providing these and Nataraj for asking for them. #119

1.4.0

1 year ago

This release archives the older official builds of libtcod.

Thanks to Jice for providing these and Nataraj for asking for them. #119

1.3.2

1 year ago

These are the oldest official builds of libtcod.

Thanks to Jice for providing these and Nataraj for asking for them. #119

1.21.0

1 year ago

Added

  • Added the tcod::Context class to better handle contexts in C++.
  • Added a CMake toggle LIBTCOD_THREADS to remove deprecated threading functions. CMAKE_DISABLE_FIND_PACKAGE_Threads=1 can also be used.

Changed

  • Libtcod can now be built without SDL by passing the -DLIBTCOD_SDL2=disable flag in CMake or by setting CMAKE_DISABLE_FIND_PACKAGE_SDL2=1.
  • SDL-based accumulate functions can now handle a non-window render target.
  • The SDL2 renderer has been rewritten to use SDL_RenderGeometry when compiled with SDL 2.0.18. #104
  • C++ inline functions switched to use C++17 filesystem types.
  • Error messages are no longer thread-local.
  • C++ objects have been moved to their .hpp headers: tcod::ColorRGB, tcod::ColorRGBA, tcod::BresenhamLine, REXPaint functions.

Deprecated

  • Older REXPaint functions using TCOD_list_t have been deprecated.
  • C++ methods gotten through TCOD_Context have been moved to a specialized class. Replace tcod.new_context(params) with tcod::Console(params).

Fixed

  • Fixed poor attribute handing causing compile errors in GCC 12. #116
  • Context screenshots no longer crash when given NULL which the API implied was possible.

1.20.1

2 years ago

Fixed

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

1.20.0

2 years ago

Added

  • TCOD_RENDERER_XTERM was added. #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

2 years ago

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.
  • Several C++ drawing and print functions have been made public.
  • Several C++ tileset functions have been made public.
  • C++ context functions are now public.
  • Added vprintf-like console printing functions.
  • Added the 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 functions won't have to deal with them. A library like fmt 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

2 years ago

Fixed

  • Fixed potential crash in PNG image loading.

1.18.0

3 years ago

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

3 years ago

Fixed

  • Fixed regression with loading PNG images.