Designing a Game Engine for Beginners

Some reflections on how a game engine made for beginners should look.

Visual coding of a game in Scratch. A beginner friendly tool, but which is hard to advance coding skills with.

The Challenge of Learning Programming Today

While we have more amazing tools, hardware and resources available than ever before, it does present new and unique challenges.

// Location of 256 color VGA graphics with 320x200 pixels
char *video_buffer = 0xA000;

// draw pixel
video_buffer[y*320+x] = color

The Case for Pixel Art Games

This is why I believe in going back to basics and create retro looking pixel art games. I am talking about games that look like what you see below.

From CyberPop assets at Itch.io
From CyberPop assets at Itch.io

Pixel Art Game Engine Options

There are lots of engines which are tailored towards this kind of game development. A solution I have explored with my kids is MakeCode Arcade. This is actually a pretty good system.

Tiled Map Editor

The problem with Scratch and MakeCode is that they are not really part of the larger game making ecosystem which have a lot more tools available to make more exiting worlds.

Using Godot Game Engine

Godot is a very promising game engine, which I have spent time making a couple of very simple games with. Yet the jump from something like Scratch and MakeCode to Godot is too large.

PyGame, LÖVE, PyGame Zero and Others

This brings us to solutions existing somewhere between MakeCode and Godot which are various small 2D game oriented libraries made for friendly programming languages such as Python and Lua. We got:

  • LÖVE — A 2D game engine using Lua. Lua is a very popular programming language within game programming.
  • Pygame Zero — A more modern and beginner friendly Python game engine.

Game Simulators

What I think is a possible solution to this problem, is to have game engine which works in two different ways:

  • A non interactive game world simulator.

Geek dad, living in Oslo, Norway with passion for UX, Julia programming, science, teaching, reading and writing.

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store