Dead Horizons 7DRL [Success!]

Dead Horizons was my seventh consecutive 7DRL success, and the most complex game I’ve done for the jam in years. But I also had help: the game is set in a world created by Matthew Ritter, and he also did the art, and the semi-procedural soundtrack was composed by Nick A. Day.

It’s a cover-based shooter with a sci-fi western feel. It’s also a true rogue-like 😉

It wasn’t until the final day that you could actually win or lose, but that first time that I started a game, died, and immediately played again, that was when I shouted in room.


  • Take the Dowser’s Bible back to civilization
  • Explore deserts, ghost towns, canyons, and strange underground caches
  • Rich background story, slowly revealed
  • Fight or avoid dust cats, slobots,  and blood vultures
  • Use a variety of unique weapon types
  • Watch enemies run for cover when they see you!
  • Dress yourself up in fancy western clothes
  • Procedural soundtrack
  • No leveling up…
Ghost Town Ambush

Download “Dead Horizons 7DRL


Day Zero: Preparation

I’ve been doing 7DRL every year since 2011. In the past I have usually really worked like a mad-man, but last year I took it easy. This year I plan to take the middle path: Actually accomplish something, but also not lose any sleep over it.

So, I went to bed thinking of ideas and woke up with a new interpretation of a recent design I was working on. It’s not going to be a roguelike, maybe more of a RLLL… turn-based and grid-based, but that’s about it.

It’s going to be a strategic space-fleet battle game. Players move their spaceships around a small battlefield. There are three different sizes of ships, and each kind does bonus damage against one of the other kinds, in a rock-paper-scissors sort of set-up.

I’ve been wanting to test something like this for a while, to see if it’s a viable idea, and if it’s *fun*.

Day One should be setting up the map, creating data files and sprites, and hopefully trying some player interaction and ship movement, maybe even some target shooting…

If I decide to include obstacles like asteroids or nebula, then I’ll need fog of war / line of sight. Those things would certainly add to the strategy aspect…

Then I’ll need to tackle AI. I already have plans for a “look at every possible move and evaluate it based on certain conditions” approach.

Finally, I intend to give it some nice graphical touches. People like it when spaceships explode, so I’ll see what I can do there. Of course, “nice graphics” is a relative term. Graphics are usually my least concern…

Anyway, that’s my plan for this year. I think I have gotten steadily less roguelike each year, but I’m fine with that.

Good luck everyone!

Feeding Frenzy, Day 5: DONE!

And on the 5th day, there was much rejoicing! Feeding Frenzy , my 5th 7drl success, is done. I set out to make it both simple and complete, and I have achieved those goals in abundance. You can download the finished game here.


    • Turn-based strategic play
    • Simple command set (move or wait)
    • 8 procedural levels
    • 18 kinds of enemies (3 sizes of 6 shapes)
    • Detailed enemy AI
    • 5 Power-ups
    • High Score Tracking
    • In-game instructions
    • Title screen
    • Death screen
    • Victory Screen
    • Sound
    • Music
    • Challenge
    • FUN!
You are the yellow spiral, trying to evolve by eating and not being eaten.

The download includes full instructions, as well as a complete copy of my daily progress log, with some entertaining diversions.

Good luck, everyone!


Hungry Mouths, Middle of Day 3

If there’s one thing I’ve really accomplished this year, it’s not being overly obsessed with my 7DRL. I’ve got a lot going on, and so I went with a simple design. But beyond that, I’m really taking my time…

long ass gif
Another Gif That you have to click on to see for some reason.


  • 8:05am : sat down at computer.
  • 8:14am : called a variable “Mo” and got  sidetracked  reading about Molybdenum.
  • 8:41am : you can now eat enemies if you have the right mouth. You can push small ones,and be killed by big ones. Excellent!
  • 8:54am : begin work on ENEMY ARTIFICIAL INTELLIGENCE!
  • 10:06am : basic enemy AI works! Using Dijkstra maps, they move, eat food, and eat each-other. Some problems remain. Must make allowances for size interactions.
  • 1:46pm : returned to development after taking care of my daughter.
  • 2:24pm  : have now improved the AI considerably. Must leave again.
  • AND I NEVER RETURNED… I went to my night job, came home, sent one email, watched Battlestar Galactica, and went to bed.


  • 8:25am : made the AI chase the player when appropriate.
  • 8:36am : streamlined monster spawning, and made monsters re-spawn on a level if too many are killed.
  • 9:07am : now have a working “dna meter”, which indicates progress toward next level.
  • 9:26am : you can now progress between levels.
  • 9:36am : fixed display of player “mouths”
  • 10:03am : changed one of the basic premises of the game: took out “rotation”.
  • 10:07am : gave the player the ability to “WAIT”.
  • 10:22am : refined on-going monster spawning.
  • 12:22pm : started filing my federal income taxes with turbotax
  • 1:33pm : finished filing taxes. Going to put baby to bed.
  • 1:55pm : got death working: instantly restarts game at level 1.
  • 2:05pm : added support for numpad keys.
  • 2:20pm : worked on a bunch of raw sound effects using BFXR
  •  3:42pm : this blog post, then dinner, and off to work again.

We’ll see about tonight and tomorrow…


Hungry Mouths, End of day 1

It’s end of day 1 for Hungry Mouths, and I really nailed the “not being obsessed about it” part of my plan! Still managed to get quite a lot done. The work week is coming up, so there won’t be as much time each day, but I’m confident I can pull off my design and have time to tweak it. Definitely going to be a “Puzzle” game.

hungry mouths gif 2
This is an animated GIF , you might need to click it to see…


From My Log:

  • 5:00pm : woke from nap. wrote simple animation function.
  • 5:40pm : Created level data file. Made program load it.
  • 5:58pm : I had that “It *#&$ing WORKS!” moment when the player sprite moved!
  • 6:18pm : I have debugged the animation function, and now it works.
  • 6:27pm : food is spawned on the map. player can eat food, and food re-spawns.
  • 10:49pm : returned to work after baths, dinner, filling out forms, more D&D, and bedtimes.
  • 11:28pm : MOUTHS: Spawning on map, picking up, and properly displaying on player.
  • 11:56pm : monsters spawn correctly on level. can not interact yet, no A.I.
  • END OF DAY 1

Hungry Mouths 7DRL, Progress Day 1, Part 1

“Hungry Mouths” will be my 5th 7DRL, and I just started this morning. The idea is a simple yet deep puzzle/strategy RL, based on a  “primordial soup” theme, with lots of time for polish, and a sub-goal of not getting too obsessed. Here is an account of my day so far:

  • first 22 minutes spent on music. wrong focus.
  • 10:40am : imported basic functions I always use: distance calc, text and sprite creating, random numbers, file reading.
  • 12:43pm : have created basic GAMEFLOW OUTLINE , played trains with the baby, played D&D with wife, and started website. No game yet.
  • 2:10pm : Baby in bed. Wife and daughter swimming. SIMPLE MAP GENERATION WORKING!
  • 2:22pm : preliminary code written for player rotation.
  • 2:30pm : preliminary code for player movement done.
  • 2:45pm (approx.) : wife coming home with PIZZA!


Eden Sector

To anyone who downloaded Eden Sector within the first hours of my announcement, please re-download. You may have noticed a little bug where you can’t actually die on planets. I always download my files and play them to make sure they work, but I was just buzzing through it…

I was in bed for 5 minutes when I realized why that disease didn’t kill me. I uploaded the wrong zip. They’re all called “Eden Sector!” The final code was still in the editor. I re-compiled, and put just the byte code into the existing downloads.

Phew! Ok, 7DRL, I am totally done with you for this year!

So Seriously, Eden Sector