參考教學:
Complete roguelike tutorial using C++ and libtcod - part 1: setting up。
原文教學系列係以 libtcod 函式庫 為 RougeLike 核心開心的引擎。原文即說明了 libtcod 的主要功能:
libtcod is a free, fast, portable and uncomplicated API for roguelike developpers providing an advanced true color console, input, and lots of other utilities frequently used in roguelikes.
有個開源的即時戰略遊戲:ASCIIWar,竟然就是以 libtcod 所開發的 ASCII 字符純文字遊戲,但卻又能展現出即時戰略的效果。
首要安裝套件 (pre-requisite):
Ubuntu 14.04 需安裝 libsdl1.2debian 套件;Raspbian 則已預先安裝。
$ sudo apt-get install libsdl1.2debian |
** 另外兩者尚須安裝 libsdl1.2-dev 套件 (如此編譯 libtcod 才不會有問題):
$ sudo apt-get install libsdl1.2-dev |
SDL (Simple DirectMedia Layer) is a cross-platform development library designed to provide low level access to audio, keyboard, mouse, joystick, and graphics hardware via OpenGL and Direct3D.
安裝 libtcod
需至該官方網站下載所相依的平台版本 (這裡需同時下載 1.51/1.52 版本檔案,然後再合併後編譯)。
http://doryen.eptalys.net/libtcod/download
下載回來均需解壓再執行 make 編譯;以 Raspbin 下載、解壓與編譯的程序為例,參考如下:
# download and untar both, 1.5.1 and 1.5.2 of libtcod
$ cd $ mkdir tmp $ cd tmp $ wget http://doryen.eptalys.net/?file_id=26 -O libtcod-1.5.1-linux32.tar.gz $ tar xfv libtcod-1.5.1-linux32.tar.gz $ wget http://doryen.eptalys.net/?file_id=48 -O libtcod-1.5.2-linux32.tar.gz $ tar xfv libtcod-1.5.2-linux32.tar.gz |
# copy makefiles from 1.5.1 into 1.5.2 and make lib
$ cp -R libtcod-1.5.1/makefiles/ libtcod-1.5.2 $ cd libtcod-1.5.2 $ make -f makefiles/makefile-linux $ make -f makefiles/makefile-samples-linux |
編譯完成後,可以執行 libtcod-1.5.2/samples_c 程式 (在 X-Windows 的 Terminal 下),藉此測試編譯完成的 libtcod.so (位於 libtcod-1.5.2/ 目錄下)是否成功。
未來要開發 RogueLike 遊戲 (或是執行有引用該函式庫的 ASCII-based 遊戲),則需要把 libtcod.so 複製至所需參考引用的工作目錄內。