Jahed Ahmed

GameDev Weekly: 10th February 2020

This is my first GameDev Weekly so it's going to be hard to provide complete context on what I've been working on.

The general idea is to improve my game development skills through iteration. Those skills being: design, programming, art, music and writing. Prioritised in that order. I'm hoping I'll get into a state similar to what FrontierNav is for my web development skills, where I have a single project to iterate on.

Unlike web development, I don't have professional experience with game development. Maybe I need it, maybe not. So I'm going to try making a game without it to see where my bottlenecks are then deal with them as needed.

I have made games in the past, but those have generally been toy experiments, nothing I would ask people to pay for. That's why I'm starting with game design, figuring out what makes games work. Programming of course is unavoidable but it isn't the main focus so I won't be looking into things like performance and design patterns until I need to.

Prototyping with Board Games

I've found board games (and card games) are a great way to iterate on design. There's no programming involved so redefining rules is simple. It's essentially lo-fi prototyping.

Experimenting with board games has brought back a lot of my interests in game design. Not surprising as it's how I used to design games in my childhood when I didn't know about programming and when my enthusiasm for the art was at its highest.

The downside is my audience is limited to those I have contact with in the physical world and the rules cannot be too complex as changing them can create problems.

The physical limitations can be solved using something like Table-Top Simulator and the rule limitation is actually a good thing. However, I want to avoid going down the rabbit hole of board games for this first iteration as I want to actually publish something.

The long-term goal is to create video games, not board games, which are quite different and much more difficult to publish.

Making a Card Game

I love card mechanics and deck building in games. I've never been that good at the competitive Player vs. Player ones, but I enjoy the Player vs. Enemy games.

I'm not going to dump game design ideas in these weekly posts. Like FrontierNav, they'll be more around what I've published. Ideas are plenty and getting too absorbed in them is a huge and addictive time sink.

Avoiding Game Engines

I'm going to avoid using an all-in-one game engine like Unity for now. Linux support for a lot of engines isn't great and personally I want to learn how to program games without dealing with a bunch of prefab and rewiring my brain to fit in a certain interface-specific mould.

I did try using Godot, but it's not really stable yet. The same can be said for game development in Rust/WASM. So I'll be using TypeScript and targeting the Web for rapid publishing and convenient access. In the future I may end up moving over to something else, but it's best to start with familiar technology.

I'll have more to share next week.

Thanks for reading.