Two years ago I started to follow RogueBasin’s roguelike C++ tutorial, a somewhat outdated tutorial in term of good practices and C++ version, but very on point in term of roguelikes.

My goal when I started Pataro what quite ambitious: I wanted to make a modern C++ roguelike from the tutorial, and write an updated version of said tutorial to help the community! Even better (or worse, in term of choosing your goals) I thought I could make a modern C++ roguelike library for people to use.

I got the first 9 parts of the tutorial working pretty smoothly, having set up an architecture inspired by Bob Nystrom about game architecture with roguelikes in mind (great talk by the way: https://www.youtube.com/watch?v=JxI3Eu5DPwE). Then I got to a big hurdle: saving and loading. Having used a lot of polymorphism, it makes quite hard to load correctly things and I stopped there.

progress as of june 2021

Then a few weeks ago, I picked up the project again, with a much lower set of goals in mind:

  • finishing to implement the tutorial from RogueBasin
  • ease the configuration of the project, so that people can pick parts of it or just make a roguelike from it
  • fix a bunch of problems related to the map and how it is used to be able to extend it and modify it (imagine being able to have spells that could alter the map)
  • rearchitecture a few more things because it’s still very rough on the edges
  • modernize the C++ code (again)

Progress as of july 2023