Roguelike Tutorial from /r/roguelikedev - Week 1

So I just did the first week's Tutorial for the /r/roguelikedev Roguelike Tutorial.

My Repo on GitHub is:

I'm going to look into the upcoming weeks tutorials and see what is coming up, and figure out what kind of things I should plan for.

I did follow the RogueBasin tutorial a few years back, but I honestly don't remember what came of that.

I did happen to notice some sort of an omission in the Tutorial dealing with drawing the @ symbol. When it was discussed on how to initially draw it, and what was happening in the code, it seems a bit lacking.

libtcod.console_put_char(0, player_x, player_y, ' ', libtcod.BKGND_NONE)
this line of code was mentioned in the last code block as something to be replaced, but it wasn't ever discussed before the end of the section.

So I'm wondering if something didn't come across from the old RogueBasin Tutorial. I'll have to do some digging, and see if I can help expand out that tutorial section in the future.

I am having some fun so far with this, I hope I can manage to make something that someone wants to actually play.


  1. This comment has been removed by the author.

  2. I've been following the tutorial again this year, I definately have some gripes with the tutorial, I really wish there was some more refactoring involved, first explaining how to implement something simply, then how it should fit in with the engine that you're building. Not going to learn much if you never learn how to expand on it and make it your own. I'd be interested to read any amendments you'd like to make to the tutorial.

    1. Yeah it's little bit frustrating that so many tutorials are just follow a-longs with little exploration or explaining or how things work.

      Ideally you would have a tutorial where it gives you a very basic outline, gives you the tools to implement something and gives you a chance to write it yourself, and then afterwards shows you a good way to do it.

      A good tutorial should regularly pull you up and give you things to actually do that demonstrate your understanding. Follow a-long tutorials are just where you read along and copy code verbatim allowing you to build complex things with 0 understanding.

      For example the tutorial, instead of just telling you to write code that moves the character '@', tells you have to have a go writing yourself (providing a couple of examples of relevant methods like how to draw a char to screen), and then give you a few challenges like make your char move 3x as fast, or have the character be represented as 2 chars, or make the character leave a trail of where they've been with a different character.

      These little tasks where the student actually has to think is where real learning occurs, not just blindly copying code.

  3. It seems like there's two vastly different groups following the tutorial. Experienced coders using it as an opportunity to build a RL or just there first game, often in a new language or framework or with some fun features, and then all the newbies copying down the code and trying to understand what the code they're copying does and getting their head around basic programming concepts.

    I think the tutorial could be improved a lot by addressing these two groups separately, doing into detail explanations of how things work for the newbies, and then for the experienced group get more abstract with directions (so it's no longer Python/libtcod specific) and giving them lots of challenge stretch goals for each week to get them thinking and experimenting.


Post a Comment

Popular posts from this blog

Roguelike Dev 2019