Category: Game Development

  • Resource Remaps Plugin for Godot

    I just finished work on a plugin for Godot that allows remapping of resources in a project based on feature tags. I expect this to be a very valuable tool for porting Godot projects. Resource Remaps plugin on the Godot Asset Library Source code and example project on GitHub And here is a video tutorial…

  • Godot Porting Guide

    Background and Goals Note: This post is a work in progress. Please let me know if you have experience or expertise to share! I helped port Keep Talking and Nobody Explodes to 8 platform targets with 6 optional VR APIs and multiple storefronts with different services. We did this with the Unity game engine from…

  • Godot Script Execution Order and Lifecycle

    Overview This post describes the initialization and execution order of scripts that are attached to Nodes in the Godot game engine. I created a GitHub repository that logs these notifications and I recommend playing around with a similar project to familiarize yourself. Initialization Member initialization happens in this order: Notifications Most execution is done from…

  • How to Enforce Static Typing in GDScript

    This post is written for programmers who have experience working with statically typed languages and want a similar experience when working with GDScript. It supplements the official Godot docs page on Static typing in GDScript. Index Project and Editor Settings Godot 4.2 introduces a valuable way to disable dynamic typing features in GDScript by enforcing…

  • Two Game Messaging Systems using Observer and Visitor Patterns

    Maximum output for minimum input. …That’s the idea behind Juicifying Your Game. But this can lead to some pretty messy code if you start injecting extra code at every event that happens in your game. This is where messaging/event systems come in handy to ensure that every component of the game is given an opportunity…

  • Post-Grad Talk at Carleton University

    Last week I was given an opportunity to join my manager at Magmic in a panel for a fourth year class in IMD to discuss my experience after graduating and joining the game development industry. This was the same class that I developed Hideout! for and I was happy to pass on some knowledge that…