I've renamed this blog to Grid Bugs to better reflect the true nature of roguelike development.

New Name

Even Separation Algorithm
This post describes an algorithm for evenly spreading out a sequence of items made up of two distinct types of item. I came up with it when attempting to draw straight lines on a grid, where lines are represented by discrete steps in one of two directions. In order for such a line to appear straight, the steps in one direction should be spread out as much as possible with respect to the steps in the other direction. The solution generalizes to spreading out any sequence made up of two distinct types of item that are repeated a number of times.

Skeleton Crew
I wrote this game for the 2016 7 Day Roguelike challenge.

7 Day Roguelike 2016: Success
It's now Friday night (technically Saturday morning). Tomorrow morning it will have been 1 week since I started work on "Skeleton Crew". This is the final entry in my development log.

7 Day Roguelike 2016: Ending
Tonight I implemented stairs and an ending for the game. You must reach the teleporter on the 3rd floor of the ship, and teleport to safety. I also added some more flavour text, fixed some bugs, and balanced some characters. At this point the game is largely complete. I'll spend some of tomorrow playtesting and adding any remaining polish and balance I think is necessary. I also want to add a rocket launcher which shouldn't be too complicated given I already have projectile weapons and explosions.

7 Day Roguelike 2016: Polish
Tonight I finished the level generator, adding weapons and items. I fixed a bug in my recursive shadowcast implementation causing strange behaviour when looking at the edge of the map. I tweaked a couple of mechanics, namely:

7 Day Roguelike 2016: Pathfinding
The most notable change from tonight is that I turned on pathfinding for NPCs for the first time. Up until now they had been stationary, and could be injured or killed, or affected by vacuum, but could never observe the world or take actions. Enabling AI is scary because it greatly increases the amount of work the computer is doing between human turns. The vision system is now running once per NPC turn as well as the player. Then there's the additional cost of pathfinding for each NPC. I use Dijkstra maps for pathfinding which are explained in detail on roguebasin. This post is about solving a performance problem introduced by all the extra characters.

7 Day Roguelike 2016: Procedural Generation
This is my second attempt at a procedurally generated space ship. The first attempt involved generating the hull first by starting with a large rectangle and stripping smaller rectangular pieces away until I got something roughly hulllooking. I would then attempt to fill the hull with rooms. Adding rooms to a preexisting hull proved messy and prone to difficult edge cases.

7 Day Roguelike 2016: Day 1
It's one day in. Here's my progress so far!

7 Day Roguelike 2016: Plan
The 7 Day Roguelike Challenge is a game jam where participants make a roguelike in 7 days. This year I'm making a game called "Skeleton Crew" where you fight undead things on a spaceship. I'll post updates to this site as I make progress.