Mysteria Studio and Asterfel

As part of my game programming education I interned remotely for Mysteria Studio. I started full-time from September 1st, 2025, and will finish my internship on April 10th, 2026. Mysteria Studio is developing Asterfel, an open world third-person action-RPG inspired by Gothic and The Witcher.

Working for Mysteria has been a valuable experience for me - I got to learn what it was like to develop a game professionally, both in terms of tasks and communcation. I found that my game programming education at The Game Assembly had prepared me better than I had expected, and learning Mysteria's approach has helped round out my understanding of game development.

My primary responsibility was Asterfel's gameplay, most of all the combat. Still, with a team size of about 16 people I had to stay versatile and spent much of my time fixing and improving many other parts of the game.

Asterfel is based on asset packs that have been bought and developed upon by the team for more than a year before I joined, so my work was mostly focused on iterating upon existing code, fixing bugs, and modifying the asset packs to suit our needs. As I am used to creating games from the ground up at The Game Assembly, it was a positive learning experience to have worked on a project where I can improve my abilities in reading others' code and iterating upon it. Likewise, Asterfel is made with visual scripting in Unreal Engine 5, while The Game Assembly is focused on custom engines using c++, meaning I have become proficient with both.

UNDER CONSTRUCTION

Combat

Player and Enemy Attacks

For the player I implemented the following abilities:

  • A melee AOE attack originating from the player.

  • A homing projectile.

  • An AOE that spawns where the cursor is pointing.

  • A shield that heals the player and makes them immune to damage for a limited duration.

  • A homing projectile that bounces between enemies.

  • A summon that follows the player and engages enemies if they come near.

The mobs in the game all have rather simple attacks, but the boss uses a more complicated pattern of abilities. Because the boss relies heavily on the state machine I specify more on its attacks there.

Hierarchy

An important part of the attacks and abilities in P6 is their hierarchial structure. All attacks share the same hierarchy but differentiate in how far down it they go. Because the attacks follow the same structure they are highly modular and well suited for implementation through the state machine.

Combat and Design

My primary responsibility was to improve the combat.

Boss Phases

The boss relies on the state machine more than any other entity in the game. Because the state machine is hierarchical the boss can have three different phases with completely separate behavior, allowing it to become more dangerous as it reaches later phases.

Boss Attack Patterns

Thanks to the versatility and modularity of the state machine, the boss' attack patterns can be created by linking states in unique ways. For example, one of the boss abilities is a chain of several AOE attacks that transition to each other in rapid succession, giving the illusion of them being part of a single, bespoke state when it in reality they are several states stringed together in an unique way.

Factories

Attacks are created using the state machine when a state is given an ability. Each state can contain a single ability, or none if it something like an idle or move state. When an entity is saved both the entity itself as well as all its states are stored as binary files.

As the game starts the entity factory and attack factory read and store the information from the binary files. Each entity then gets their states from the state factory. If a state contains an attack, that attack is created from the attack factory when the entity makes the attack.

Camera

The state machine forms the core of the entity behavior in the game. Each character executes the logic of its current state each tick, then checks if it should transition to another state using transitions created with the state machine tool.

Boss Phases

The boss relies on the state machine more than any other entity in the game. Because the state machine is hierarchical the boss can have three different phases with completely separate behavior, allowing it to become more dangerous as it reaches later phases.

Boss Attack Patterns

Thanks to the versatility and modularity of the state machine, the boss' attack patterns can be created by linking states in unique ways. For example, one of the boss abilities is a chain of several AOE attacks that transition to each other in rapid succession, giving the illusion of them being part of a single, bespoke state when it in reality they are several states stringed together in an unique way.

Factories

Attacks are created using the state machine when a state is given an ability. Each state can contain a single ability, or none if it something like an idle or move state. When an entity is saved both the entity itself as well as all its states are stored as binary files.

As the game starts the entity factory and attack factory read and store the information from the binary files. Each entity then gets their states from the state factory. If a state contains an attack, that attack is created from the attack factory when the entity makes the attack.

Joining an Existing Project

The state machine forms the core of the entity behavior in the game. Each character executes the logic of its current state each tick, then checks if it should transition to another state using transitions created with the state machine tool.

Boss Phases

The boss relies on the state machine more than any other entity in the game. Because the state machine is hierarchical the boss can have three different phases with completely separate behavior, allowing it to become more dangerous as it reaches later phases.

Boss Attack Patterns

Thanks to the versatility and modularity of the state machine, the boss' attack patterns can be created by linking states in unique ways. For example, one of the boss abilities is a chain of several AOE attacks that transition to each other in rapid succession, giving the illusion of them being part of a single, bespoke state when it in reality they are several states stringed together in an unique way.

Factories

Attacks are created using the state machine when a state is given an ability. Each state can contain a single ability, or none if it something like an idle or move state. When an entity is saved both the entity itself as well as all its states are stored as binary files.

As the game starts the entity factory and attack factory read and store the information from the binary files. Each entity then gets their states from the state factory. If a state contains an attack, that attack is created from the attack factory when the entity makes the attack.

Communication and Collaboration

The state machine forms the core of the entity behavior in the game. Each character executes the logic of its current state each tick, then checks if it should transition to another state using transitions created with the state machine tool.

Boss Phases

The boss relies on the state machine more than any other entity in the game. Because the state machine is hierarchical the boss can have three different phases with completely separate behavior, allowing it to become more dangerous as it reaches later phases.

Boss Attack Patterns

Thanks to the versatility and modularity of the state machine, the boss' attack patterns can be created by linking states in unique ways. For example, one of the boss abilities is a chain of several AOE attacks that transition to each other in rapid succession, giving the illusion of them being part of a single, bespoke state when it in reality they are several states stringed together in an unique way.

Factories

Attacks are created using the state machine when a state is given an ability. Each state can contain a single ability, or none if it something like an idle or move state. When an entity is saved both the entity itself as well as all its states are stored as binary files.

As the game starts the entity factory and attack factory read and store the information from the binary files. Each entity then gets their states from the state factory. If a state contains an attack, that attack is created from the attack factory when the entity makes the attack.

Communication and Collaboration

Much like in P7 I implemented not only the stats of the player, but also nearly all the base variables and functions shared between all entities and characters.

I implemented much of the shared code between the classes at the start of the project, rapidly setting up the initial structure and design of the classes, but I also iterated upon it during the rest of the game's development.