Project_Banner
About
Robots that Explode (Most of the Time) is a game about AI Work Ethics….
Disguised as a Programming Game….
Disguised as a Puzzle Game…
Disguised as a Platformer.

I created this ridiculously named and described game in the last 2 months of my Masters Degree in Interactive Media & Game Development with the goal to create a piece of media that will allow us to envision a better AI future. The game focuses on deconstructing what it means to play a game in the first place and leveraging that to discuss the role of AI in everyday work.

The main system developed for this game was a flow-based programming model that streamlines the development of programming a responsive state-machine for the core puzzle gameplay. This development was two parts: One side was optimizing the UI/UX flow of the game and the other was the backend structure for the language itself.

The game also includes a custom Bot-building system where users can create their very own custom robots while playing the game.
Project-Image Project-Image Project-Image
Godot
Git
GD Script
Choosing a Programming Model
It was very important that the programming language system needed to be approachable by anyone in order for the message of the game to be effective and wide-reaching. I started to prototype a block-based system similar to that of Scratch whereby instructions were represented by conditionals and actions that robot would take
Project_Banner
I quickly realized that it would take a very large amount of time to perfect the UI design of a Scratch-based system using the tools and time that I had available, so I needed to pivot to another system.

A Flow-Based Model
While researching other accessible programming models, I was reminded of Flow-Based models similar to those found in Unreal Engine’s Blueprints or Shader Graphs in various game engines.
Project_Banner
Project_Banner
Simplifying the UI
Switching to a Flow-based model allowed for further simplification of the UI. I eventually ended up removing all text on the nodes completely in favor of clear images that would visually show what the nodes did. Just in case these images were not clear enough, hovering over them would reveal a tooltip describing exactly what they did.
Project_Banner
Project_Banner
Ease of Workflow
I put in a lot of work into adding additional ways of interacting with the workflow that obeyed laws of Human-Computer-Interaction to make programming as seamless as possible. This resulted in the addition of highlight code selection, dragging out blocks from a sidebar and even a mini-view of the entire workspace.
Project_Banner
Project_Banner
Capstone Presentation & Report
The presentation I gave for my Masters capstone presentation on the game, including additional insight on the development leading up to the game and focusing on discussing the narrative implications of the game.
Project_Banner