Kasper Andersson Brandt


Game Programmer

GitHub LinkedIn CV


Gerda: A Flame in Winter


Narrative adventure
Worked on the prototype during my internship at PortaPlay
Unity | C#


Buy on Steam
Buy for Nintendo Switch

Things I Worked With



Unity

Plugins and Packages

As this was only a prototype, there weren't many people working on it. At the start we were two programmers and one designer, but after a short while the second programmer moved onto creating a new visual scripting system, leaving me as the only person writing code for the project. I sat in close physical proximity to the designer and almost exclusively worked on features he requested, to enable him to design the game and make the process as easy as possible for him. The rest of the time I would hunt for bugs and just fix, tweak, and polish the game as much as I could.

We used sevaral plugins and packages, most prominently PlayMaker and Dialogue System for Unity, which allowed the designer to create the content for the game using visual scripting. I mainly worked with these plugins by writing custom actions for PlayMaker exposing functionality to the designer, and modifying the Dialogue System editor to interface with our system for items and quests.

Towards the end of the internship, the prototype was effectly done and had served its purpose of testing the concept internally, as well as showcasing it to potential investors and publishers. Around this time, the new visual scripting system was ready to be tested in the game, and so I moved onto replacing PlayMaker and the Dialogue System with this new system, which had been the plan from the beginning. I made a list of all PlayMaker actions we were using, and created actions with the same functionality in the new system. As this was the first real test for this new system, I inevitably found some bugs and things to improve, some of which were fixed by the original creator, and some by myself.

Dialogue System for Unity, as far as I see it, is a good general purpose dialogue system, but I had been forced to fight with it a fair bit to make it do exactly what we needed, and even then there were things beyond my control. Due to this, it was with great relief that I made a new dialogue system using the new visual scripting system. As I had been working with the old dialogue system for months, I knew exactly what we needed for the project, and was able to create just that in only two days. When this was all done, I spent the remainder of my internship working on improving the new visual scripting system, making the editors a bit nicer for example.

The internship taught me a lot about working with Unity and programming in C#. It also gave me valuable experience from working in a team and making a game full-time for several months.