Difference between revisions of "Doryen library"

From RogueBasin
Jump to navigation Jump to search
m
m (Update versions, fix changelog ref.)
(31 intermediate revisions by 13 users not shown)
Line 1: Line 1:
The Doryen Library is the function library built for the chronicles of doryen.
{{library| name = Doryen Library (libtcod)
|developer = [[User:HexDecimal|Kyle Benesch]]
|released = 2008-05-01 (1.0.0)
|updated = 2022-01-07 (1.20.1)<ref>[https://github.com/libtcod/libtcod/blob/develop/CHANGELOG.md Libtcod changelog].</ref>
|dependencies = [[SDL]]
|status = Stable
|licensing = BSD License<ref>[https://github.com/libtcod/libtcod/blob/develop/LICENSE.txt Libtcod license].</ref>
|language = [[C]], [[C++]]
|platforms = [[Windows]], [[Haiku]], [[Linux]], [[Mac OS X]]
|site = https://github.com/libtcod/libtcod
}}
{{library| name = Python-tcod
|developer = [[User:HexDecimal|Kyle Benesch]]
|released = 2009-01-31 (1.0.0)
|updated = 2022-01-07 (13.3.0)<ref>[https://github.com/libtcod/python-tcod/blob/develop/CHANGELOG.md Python-tcod changelog].</ref>
|dependencies = [[SDL]], libtcod
|status = Stable
|licensing = BSD License<ref>[https://github.com/libtcod/python-tcod/blob/develop/LICENSE.txt Python-tcod license].</ref>
|language = [[Python]]
|platforms = [[Windows]], [[Mac OS X]], [[Linux]]
|site = https://github.com/libtcod/python-tcod
}}
== The Doryen Library ==


It is an uncomplicated library for roguelike developers.
Also known as libtcod, the Doryen Library is a collection of utilities originally built for [[Doryen|The Chronicles of Doryen]] by [[Jice]].  The library has received many contributions from the community<ref>[https://github.com/libtcod/libtcod/blob/develop/LIBTCOD-CREDITS.txt Libtcod credits file], has a list of notable contributors.</ref> and is now maintained by [[User:HexDecimal|HexDecimal]].
 
It is meant to be an uncomplicated library for roguelike developers.


Features :
Features :
    * windowed or full screen console with true color support
* windowed or full screen console with true color support
    * support for custom character sets using bitmap fonts
* Mersenne twister and Complementary Multiply With Carry [[random number generator]]
    * Mersenne twister random number generator  
* inbuilt support for [[dice]] (string parsing, rolling)
    * Bresenham line drawing toolkit
* Bresenham line drawing toolkit
    * Perlin noise generator
* Perlin, Simplex and Wavelet noise generator
    * field of view toolkit  
* [[FOV|field of view]] toolkit with 5 different algorithms
    * image toolkit with support for rotation/stretching  
* image toolkit with support for rotation/stretching and subcell resolution blitting
    * support for turn by turn and real time games
* mouse support
    * mouse support
* bsp toolkit
    * advanced configuration file parser
* heightmap toolkit
    * fast generic container with array/list/stack interfaces
* pathfinding toolkit (A* and Dijkstra)
    * bsp toolkit
* antialiased and [[Unicode]] font support
    * heightmap toolkit
* custom/dynamic font characters mapping
    * pathfinding toolkit
* PNG images support
    * compression toolkit
* customizable name generator with 20 predefined syllable sets
    * antialiased font support
 
    * custom/dynamic font characters mapping
== Python-tcod ==
    * PNG images support
 
Python-tcod is the official Python port.  This port was able to fix significant performance issues with the previous ports by using NumPy arrays to pass data to the C library.  This library is backwards compatible with the original Python bindings "libtcodpy" which have been deprecated.
 
== Other ports ==
 
Since [[C]] is relatively easy to port the Doryen Library is sometimes ported to various languages.  The simplistic language bindings included with libtcod other than [[C++]] are no longer maintained.


It currently has bindings for [[C]], [[Cpp|C++]] and [[python]] languages.
== See also ==


A binding exists for [[C#]] through [[Libtcod-net]].
* [[Doryen library:Reviews]]
* [https://libtcod.readthedocs.io/en/latest/ Libtcod C/C++ documentation]
* [https://python-tcod.readthedocs.io/en/latest/ Python-tcod documentation]


[http://thedoryenlibrary.appspot.com Homepage]
== References ==
<references />


[http://roguecentral.free.fr/libtcod/doc/doc.php Documentation]
[[Category:Open source]]
[[Category:Library]]

Revision as of 08:55, 4 February 2022

Doryen Library (libtcod)
Library project
Developer Kyle Benesch
Released 2008-05-01 (1.0.0)
Updated 2022-01-07 (1.20.1)[1]
Status Stable
Licensing BSD License[2]
P. Language C, C++
Platforms Windows, Haiku, Linux, Mac OS X
Dependencies SDL
Official site of Doryen Library (libtcod)


Python-tcod
Library project
Developer Kyle Benesch
Released 2009-01-31 (1.0.0)
Updated 2022-01-07 (13.3.0)[3]
Status Stable
Licensing BSD License[4]
P. Language Python
Platforms Windows, Mac OS X, Linux
Dependencies SDL, libtcod
Official site of Python-tcod


The Doryen Library

Also known as libtcod, the Doryen Library is a collection of utilities originally built for The Chronicles of Doryen by Jice. The library has received many contributions from the community[5] and is now maintained by HexDecimal.

It is meant to be an uncomplicated library for roguelike developers.

Features :

  • windowed or full screen console with true color support
  • Mersenne twister and Complementary Multiply With Carry random number generator
  • inbuilt support for dice (string parsing, rolling)
  • Bresenham line drawing toolkit
  • Perlin, Simplex and Wavelet noise generator
  • field of view toolkit with 5 different algorithms
  • image toolkit with support for rotation/stretching and subcell resolution blitting
  • mouse support
  • bsp toolkit
  • heightmap toolkit
  • pathfinding toolkit (A* and Dijkstra)
  • antialiased and Unicode font support
  • custom/dynamic font characters mapping
  • PNG images support
  • customizable name generator with 20 predefined syllable sets

Python-tcod

Python-tcod is the official Python port. This port was able to fix significant performance issues with the previous ports by using NumPy arrays to pass data to the C library. This library is backwards compatible with the original Python bindings "libtcodpy" which have been deprecated.

Other ports

Since C is relatively easy to port the Doryen Library is sometimes ported to various languages. The simplistic language bindings included with libtcod other than C++ are no longer maintained.

See also

References