GunNut (UE5, blueprint)

Gun Nut is a 2D top down roguelike created during my final year of university. This project aimed to explore the uses of procedural generation considering multiple techniques, demonstrating complexity and limitations of the application of a chosen technique within the setting of a roguelike.

My role was that of a junior tech working in a team of mixed disciplines. My main responsibilities included:


Procedural generation

In the initial stages of development I considered the use of techniques such as the drunkards walk used in games such as “Nuclear Throne” as well as a marching method which created and connected each room at a time. The one I inevitably landed on was a method called the Tiny Keep algorithm used in the game “Tiny Keep”.

"

2D development in Unreal

The project also made use of 2D within Unreal which is something that is not quite common for game developed in Unreal with it mainly supporting the use of 3D development. This required learning a multitude of new workflows such as the paper 2D plugin as well as paper ZD a relatively new plugin. This allowed me to create procedural levels with the use of a tile-map, as well as the handling of sprites for animation of the player, enemies, and even the environment.


Contributions to development

By applying the generation to a game I had also tasked myself with taking a game throughout its entire requiring the planning, iteration, and development of features such as:

  • Player character
  • Part based weapon system
  • Enemy AI
  • Boss AI
  • Menus: main, pause, settings
  • Game management: persistence between levels
  • Game loop control: using managers
  • UI: Players HUD, death screen, part selection