Game Development

Game development was always something which has intrigued me. Originally inspired by text adventure games I created my own which have since been lost to time… before dipping my toe more recently into 2D game development.

I have written games using-

  • Python and the Pygame library which is an established wrapper around SDL.
  • Java using FXGL which was created by Almas Baimagambetov. When I was using early versions of this library and found some bugs, I contacted Almas with details who was quick to resolve.
  • GODOT game engine which uses GDScript (which is similar to Python), C# and C++.

Game development makes you realise how important it is to load resources ahead of time and how careful you have to be with asset objects so you don’t waste memory resource and cause unnecessary pauses, especially with languages which use garbage collection. So making respective asset objects invisible when they are ‘blown up’ and returning them to a pool is a must.

You can see a selection of games which I have written below with references to useful pages & projects at the end of the page.

When I have sometime I will be looking at Unreal Engine, to develop a 3D game……. but in the meantime enjoy…


BREAK SPACE

‚ÄčThis is a short game play video of a game I developed. Its a clone of Lunar Jetman, with some enhancements. The original game was released in 1983 for the ZX Spectrum. It was originally developed and published by Chris and Tim Stamper of ‘Ultimate Play The Game’ who went on to found ‘Rare’. I named this game ‘Break Space’ which was the wording on one of the keys of the rubber keyed ZX Spectrum.


Manic Miner Rebooted

This is a short game play video of a game I developed. It is a clone & my take on ‘Manic Miner’ a platform video game originally written for the ZX Spectrum by Matthew Smith who went on write ‘Jet Set Willy’. The game was first released by Bug-Byte software in 1983.


Jet Man Prototypes

Some initial prototypes of Jet Man were developed using Python and Pygame and a side scrolling version written in Java using FXGL which also made use of the map editor called ‘Tiled’.

I decided less on screen is better otherwise it looks cluttered. Some ideas like guided missiles worked well which I put in my final game (see Break Space above). I was unsure of having the Odyssey from the cartoon Ulysses 31 and Red Dwarf flying in the background so decided against it in the end.


Pyacman

Following some development of a script I wrote in Python using curses on my Linux machine, I was inspired to write a text version of Pacman. The original was developed and released by Namco in 1980.

Its written in Python and makes use of Dijkstra’s algorithm for the ghost path finding, and the curses library for its terminal independent screen painting and keyboard handling.


References:

Java FXGL https://github.com/AlmasB/FXGL

Pygame https://www.pygame.org/news

Tiled https://www.mapeditor.org/

GODOT https://godotengine.org

Curses programming with Python https://docs.python.org/3/howto/curses.html

%d bloggers like this: