Dev Blog #0 - New project, old foes

This blog post is part of the Project W series. Project W is an unnamed game I'm developing.

It's okay to take a break on everything. Things come and go. But every now and then, there are ideas that are interesting - ideas that you consider worth chasing.

Project W is an idea like that. I've had this idea for the past few days as of writing this, and it's something I haven't seen done before. At the very least, it'll be a great learning experience for me. At best, this game might make it out of the development stages.

So yes, Project W is a game. It's inspired by the indie title Unrailed!, a multiplayer experience about keeping a train going without derailing - except you need to place the tracks yourself. What starts as a fun little roguelike quickly turns into a chaotic, arcady but fun mess. Unrailed! has a, in my opinion, incredibly art style. It's a voxelated side scroller, and gets everything right - just enough to keep your eyes busy, but not too much to be draining. Enough variety to keep you playing for hours - but not too much to not be able to learn quickly. Check it out for yourself.

This lovable chaos inspired me to get back into developing games. And here I am starting this project again. Last game I was working on had development stalled, so I'm back to developing on my own.
Today I was mostly out to aggregate ideas, and that's what I did. Here's what I have to chew on for the next few days:

  • Get the world generation algorithms to work
  • Design some basic models
  • Get some basic gameplay down
  • Refine, rewrite, expand

What might seem like a very short loop is easily the hardest part about getting a game to work. For today, I started working on the world generation.
To be precise, I want to have world generation work somewhat like this:

  • Voroni Diagrams determines biome distribution
  • Perlin determines height maps
  • A simple room algorithm builds dungeons
  • and cellular automata allows procedural models

For now, I was implementing Voroni. However, here's when I came across a small, yet significant problem I need to solve. Can you spot it?
If your guess was "Hey, that map is too small!" then you're partially right. If your guess was "You can't expand the map!"... congratulations!
My current Voroni implementation does not allow for the map to be extensible. However, I've come up with a solution for that.
Interested? Then stick around for the next blog.