Game development. It's the one thing that I always wanted to do but never got very far. As a kid, I started programming with Scratch and absolutely loved it. I started getting into the various mods available like Snap! (formerly Build Your Own Blocks) and Panther which gave me even more control over the system or that made every element of the program first-class.
I had the time of my life learning how to make games and even fake operating systems using Scratch. Later, I tried to take the same ambition into my mastery of the Java language, but I never actually completed anything. Here's the problem: I had no direction. Every time I tried to make a game library, I failed because I had no idea how I would later use it to make a game; as a result, my APIs were a mess. I ended up lost in my own code and unable to make something that could actually support a game.
Years later, after learning far more about software development than 15-year-old me could ever imagine, I now have a purpose, a driven motivation to make a game engine that actually works. I've been inspired by games like Minecraft and the unlimited possibilities that voxel worlds provide. I enjoy building circuits using redstone, but I'm tired of having to work around its quirky game mechanics. With my own platform, I can build my own wires mod that behaves the way that I want, and predictably so.
Tsukurou! is the answer to these problems. It is my latest software project that aims to create an open platform for voxel game development with a modular suite of free/libre software packages. The name comes from Japanese and translates roughly to "Let's Build!" to describe the project's primary goals:
- To create an open, welcoming environment for game developers and players of all ages and levels of experience.
- To allow developers to create an unlimited set of opportunities.
- To provide players with an unlimited world for endless creativity.
As I mentioned in my previous blog post, I'm working on time management. My plan is to work on Tsukurou! as my sole personal project for a while, which means I'll hopefully make plenty of progress this year! However, I won't be touching any code for at least a few weeks. What's far more important at this stage is research and design. I've started reading some of the great articles on 0fps.net and designing the initial models for the project, so expect another blog post soon where I'll document my plans!