Caleb Olson
Caleb Olson

Categories

  • gamedev

Here is a shot from a throwaway game I worked on (more details below)… Camera detection

I am using the lovely Godot Engine, version 3.2, to jump into game development as a hobby, with the goal of releasing a game I’ve been planning for quite a while.

I have been learning the very basics of GDScript and putting together small demo games for the purposes of learning the quirks of the engine.

I have read that there are a few inefficiencies in the rendering code that will addressed in Godot 4. However, that has not affected me yet, since I have only been working on 2D games.

I think I have a solid grasp of using the engine and its overall philosophy. I have not implemented any real gameplay yet, as I do not really have a drive to work on a 2D game longer than is necessary to learn.

The top image is a shot from the beginnings of a top-down stealth game, “Heist”, which I was working through a tutorial for. To be honest, it just does not draw my attention to innovate or polish or really move much further on. I yearn to make 3D networked games!

Luckily, that is the very next project I will work on. The course I am taking is headed into 3D games (again with Godot) and I hope to really learn the meat and potatoes of what it has to offer and its limitations. I hope to speed through the next 3 games and fill the bucket of my mind up with the water of knowledge. I don’t think it will take long before I am comfortable enough with the engine to begin creating something on my own.

Another thing I’ve read about Godot is that GDScript is slow. With my understanding of how it handles the node hierarchy and general scripting implementation, I am inclined to believe it. I have not personally reached the ends of what it can do, but I expect to begin to do so in the coming months.

To that end, I will be following a short series on writing Nativescript in C++ that can be built and dynamically loaded separately. I think getting that working will be quick, and then its off to another test game to make sure I grasp the concepts enough to use it when I need it. That said, I do intend to generally stick to GDScript until it proves to be inefficient enough to warrant a switch.

A shipped game you say?

It is a tall order for a game dev noob to already proclaim he is on the journey to a shipped game! Too true; it is certainly not going to happen tomorrow! Alas, I have a plan to get to where I hope to be.

After learning Godot enough to be able to slap some stuff together myself confidently, I will begin a plan to release some small games for free on itch.io. I will write about the development of those as the time approaches, and detail the process I take to do so and what I’ve learned in the process.

These games will be nothing glamorous. Simply prototypes to prove to myself that I can follow-through with the plan and hopefully document some neat things as I go for others to learn from. I will try to learn to work with at least one artist through all that, too… Then the big stuff will start.

So those aren’t the “shipped game” you were talking about?

In my mind, a shipped game is one you charge for and have a marketing budget behind. The “learning games” for my portfolio and learning won’t count, no.

I have been planning a game for some time with some innovative gameplay concepts and a unique approach to storytelling. I will not get into it now, but I really have a lot of hope for it and truly want to see it through.

The shipping of that game is what drives me to do all the above.

As time goes on, I will expand on that game a bit more, but I need to keep the horse ahead of the cart, so for the next 8 months, I will be writing exclusively about the games intended for itch.

So what comes first?

I don’t know yet! I have brainstormed a few (what I’ll call “toy”) games for possible free itch games. Even they are a big task that require lots (or at least some!) planning to execute properly, especially so I can benefit from the effort in the future.

When I finish the course I am currently taking and learning Nativescript, I will write more on the first game and its related project management minutiae.

Until next time, friend.
Caleb.