During the last weeks of their summer vacation, my kids and I started up a small game dev experiment. I described it as an extended Game Jam. We only worked on in a couple hours a day at most. The project is on a small hiatus while they got back into the regular rhythm of school again, but we still talk about how to solve certain problems and what we still need to do on the game.
Rather than teach them how to use Unity, I figured it would be more interesting if we all learned something we were unfamiliar with. We are using the open source Godot engine and writing all the code in the python-like GDscript. The only python experience I have is writing a few automation scripts for Blender, so I wasn’t coming to this with any sort of head start.
The project is based off a concept I had a long time ago for a simple 3 Lane endless runner type game. The hook would be that rather than be about dodging items in your path, this game would be about holding up traffic and not letting it squeeze past you.
So far we have gotten a player character into the game and we have set up controls for it. You can use the keyboard or gamepad to move your little person around. We have set up and used trigger objects to detect the position of the ‘people’ trying to make their way past you. We have messed around with the Godot physics engine to drop items from the sky and shoot them toward the player at variable speed. We have messed with the camera, but not yet done anything with lighting and shading. We have set up an object spawning system to create the objects we need when we need them and a culling system to remove objects when they are out of view.
There is still a long way to go before I would call this project an actual game, but the kids have created some concepts for new characters along with their traits, and we have a decent plan on how to use what we have learned to add more structure to the game.
Some of our ideas won’t work out, and I have been pretty clear with them that this is what happens every time you make something as large and ungainly as a game. Some things just don’t work and some things do, but either way you learn something new.
I don’t feel like I am any more comfortable with python, but I think I understand some of the basic concepts of the Godot engine. I think that it is a very simple and elegant system, but one that can lead to a lot of clutter if not wrangled properly. When Godot can easily build to more platforms it will likely be a very viable game engine for indie devs.
This past weekend we didn’t do any work on our project, but I plan to rectify that next weekend and we can all come back to it with fresh eyes and new ideas ready to be tested.