Lustrum: A relationship story

A Preface

Preface: People will surprise you in ways unimaginable. Less than a week after completing Lustrum, my girlfriend of five years let me know she had cheated on me. This came as a shock and obviously was not known by me when making the game. It is unfortunate I spent so much time on a project that was scraped, but I learned a lot and it was the first project I really had completed.

Lustrum: A relationship story



Lustrum is a game I developed for my (now ex) girlfriend. The idea came to me in January of 2025 while thinking about what project I should tackle next. My five year anniversary was in about seven months, and I was really looking to increase my Unreal Engine skills. I purchased a course by CobraCode from Udemy and followed his tutorials. After learning that information, I applied it to my own game.



First order of business was thinking of the idea, which luckily came quite quickly. My plan was to create a game where you could play through different “major” parts of our relationship. Where we first met, had our first kiss, and more. You would play as either her or myself at different levels within the game. At the time we were watching Supernatural and utilizing a teddy bear she had gotten me, he would turn into a full on actual bear because the TV show was left on. This would trigger a boss fight on our five year anniversary (breaking that 4th wall) and after it completed, you would have saved the day.



Now that the ideas were flowing, I needed to get some pixel art for the game. Luckily, there was a pack by LimeZu that was relatively cheap on Itch. The pack allowed me to import different sprite sheets into Affinity Photo and mix and match them to painstakingly create lots of characters. After the sprite sheets were generated, I imported them into Aseprite. I would select each frame for idle and walking animations while tagging them for export. When exported, it would generate a .json file that could be imported straight into UE. After, I would have to change the pivot mode and framerate while creating a new animation source, and animation blueprint for their movement and directionality logic.



Creating the talking, dialogue, and user interface were by far the most challenging aspects of this project. I had to closely follow CobraCodes tutorial and really understand what each function did. It was easy to forget all the variables and how to use them. Data tables were utilized for the dialogue, which allowed easy editing in Excel. The user interface was adaptive based on how much dialogue there was, and would change position based on where the recipient was in the level.

The final boss fight was another hurdle as I was combining information from different tutorial series. It ended up working quite well, and I had some fun making my own edits afterwards. The fight scene felt mostly fluid, and was really fun to play. The bear only moved towards the player and had no advanced walking logic. Regardless I am quite proud of how it turned out.



Overall, the game takes about 10 minutes to complete and contains twelve levels. I learned a lot on this project and became significantly more comfortable with Unreal Engine. Although the relationship did not work out, it was a wonderful way to spend my little free time and I am glad I learned how to make a 2D game in Unreal Engine.