Feb 19 2020

Generating a BSP dungeon

All right, in order to start doing something cool I need a to navigate in. RougeBasin to the rescue! They have a really cool tutorial on a BSP dungeon (Binary Space Partitioning, simply put: a node tree where every node has two child nodes). Link here

First step: Create a child node of the entire area. Then randomly split it vertically or horisonatlly (offset the split by a random amount) and add the two inner segments as childnodes. Then repeat for each child node.

Second step: Take all the leaf nodes, shrink them a bit and move them around by some random amount.

Third step: Draw a corridor between every sibling node. Then move up to the parent node and draw a corridor between those siblings. This picture only has corridors on it's outmost leafs.

Fourth step (cheat): Turns out that connecting the parent nodes are a real hassle! In order to keep any kind of speed I did a cheat and drew corridors through the center of each sibling node. As long as I don't offset any room beyond the center coordinate the corridor will pass through a room.

This was fun, but getting step 4 up and running took way too much time. You don't want to lose too much momentum when dealing with hobby projects like these, and this is good enough for me to continue with the next exciting step!

Jan 19 2020

Scrolling camera

Got a scrolling camera to work in tonights short session, showing a part of a bigger underlying map. Next up:

  1. Generate Dungeon
  2. Shadow casting/field of view
Jan 10 2020


Today, by chance, I stumbled upon the free tileset section on (, and I instantly fell in love with so many of them! I'm usually not a big fan of using random peoples stuff, but I think this made me change my mind!

I downloaded a few and started playing around with one of them, making ireggular semi-topdown floor tiles. I could easily integrate them since this is not a console at all, but a regular window I draw bitmap fonts into. Easy peasy!

But the very reason I started with this in ascii was to NOT having to bother with graphics… so even though it looks realy nice, it will have to wait for another project.

Dec 28 2019

AsciiBrain 1

Bought myself a new hobby gamedev laptop. It's really small, and really neat. And kind of weak… So I needed a project that it could handle.

After trying haxe it was clear that compiling haxeflixel was painfully slow. If I did it directly in c++ instead it worked like a charm.

So c++ project it is! Using SDL and the base from my Ludum Dare code base. Got a dude moving and placing blocks. Good first progress =)