I am currently participating in r/roguelikedev’s ‘RoguelikeDev Does the Complete Python Tutorial’. The goal of this is to, as a group, run through the entire ‘Complete Roguelike Tutorial in Python’, from RogueBasin, written by Jotaf. This tutorial is a classic, in my opinion (and a few years ago, I took the opportunity to run through it myself, you can find my code on github), and is very well suited to new coders, or those who are looking to get a good overview of how a Roguelike is constructed.
For this project, I decided, since I have already run through the tutorial in Python, that I would learn a new language in the process. I chose Go, as I’ve been meaning to dive into it for a while. From there, I chose the excellent BearLibTerminal for my terminal display needs, as there is a Go package ready to use. I’ll be posting my progress here, as well as a weekly blog post walking through the steps I’m taking to follow along (and any interesting Go tidbits I pick up along the way).
Part 1: Setup - code
Part 2: Movement - code
Part 3: Entities and the Map - code
Part 4: A more interesting Map - code
Part 5: Field of Vision - code
Part 6: Preparing for Combat - code
Part 8: ECS Refactor - code
[Part 9: Combat] - code
[Part 10: Basic UI] - code
Sidenote 1: Cameras - code
Sidenote 2: Vim Keys and Diagonal Movement