Skip to content

A generic and modular Roguelike game on top of libtcod - I'll be back soon, just need a break!

Notifications You must be signed in to change notification settings

SuperFola/pataro

Repository files navigation

Pataro

CMake badge

A C++ 17 Rogue Like library built on top of lib TCOD.

Pataro means Walker Male in Quenya.

Read ARCHITECTURE.md before diving in.

Deps

  • CMake >= 3.8

Building

First, clone the repository and refresh the submodules to get vcpkg, then bootstrap vcpkg and install it.

Then you can compile using CMake, don't forget to point to vcpkg toolchain cmake file.

git clone https://github.com/SuperFola/Pataro.git
cd Pataro
git submodule update --init --recursive
(cd ./vcpkg && ./bootstrap-vcpkg && ./vcpkg integrate install)
cmake -Bbuild -DCMAKE_BUILD_TYPE=Debug -DCMAKE_TOOLCHAIN_FILE=./vcpkg/scripts/buildsystems/vcpkg.cmake
cmake --build build --config Debug

Controls

  • Move/attack with the arrows (up, down, left, right)
  • Take a screenshot with F3
  • Collect objects with g
  • Open the inventory with i

Code structure

Roadmap

  • generation of the world map (rooms + corridors)
  • field of view handling
  • explored tiles handling
  • the player can move and attack
  • monsters spawn, can follow the player (if they are in their field of view) and attack them
  • everyone has health points, attack power, and AI
  • transitionning from libtcod event system to SDL event system
  • the world map moves with the player
  • GUI about the player, events...
  • inventory GUI
  • items handling, generation and spawn
  • spells and ranged combat
  • travelling between levels / floors
  • saving player progress on a given map + level
  • loading preconfigured maps/levels (eg the overworld with shops...)
  • add a game menu
  • dungeons and character progression
  • (generic?) scripting engine to configure Pataro's engine
Screenshot

About

A generic and modular Roguelike game on top of libtcod - I'll be back soon, just need a break!

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published