top of page

Aspiring Alchemist - A prototype

ROLE

Solo Project

DESCRIPTION

A little prototype I made for personal research and educational purposes. 

Wanted to try to make a, grid based building system together with a crafting system to go with it.

As most games with these features a core, I picked the top-down perspective, and got a little adventures also implementing a basic quest system.

YEAR

2025

GENRE

Cosy Adventure

PLATFORM

PC

Engine

Unreal 5

Image by Vincentiu Solomon

Concept

The idea was to make this to a full game where you played as an alchemist apprentice, learning the ropes from your mother. 

You would get quest to brew and cure different potions, and unlike the quest example shown later. The player would only get the symptoms of the patient, and after that they would have to read up on different ingredients and experiment to find the correct "recipe" to help the patient.

But for this the player would need ingredients, some would be grown from seeds found in the wilds, or bought from the merchant. But other ingredients later would force the player to explore forests and caves, hunting monsters and get ingredients only growing underground.

This turned out to be a bit much for a one man army, at least in my current level, as many things would be a first time attempt as well. So I cut it down to a simple prototype of the things I had not done before. 

​

Image by Vincentiu Solomon

Grid System

As I would only use a grid system for the objects placeable by the player. I wanted something I could place in the world, and from there generate a grid, so I could customize it after my own needs.

After some research and trying out some examples I ended up combining the different kinds of grid generation methods I found, and afterwards made my own version which I understood and felt comfortable with.

The Grid Spawner

Actor responsible for:

  • Spaw tiles.

  • Remember spawned tiles.

  • Send out calls to tiles spawned, toggling visibility on & off.

  • Check and set tile height index.

The Tiles

Actor responsible for:

  • Marking a valid area where objects can be placed.

  • Check overlap events for blocking actors.

  • Remembering what objects is currently occupying the tile.

  • When occupied (by building) also remember what other tiles are connected to that object.

  • If it is in a greenhouse or not.

Image by Vincentiu Solomon

Building

Allowing the player to place objects in the world using the earlier explained grid system. Some just static decoration pieces, but also plant different flowers and vegetables that can later be used for crafting. 

The Build Component

Component responsible for:

  • Tracing for grid tiles.

  • Showing current object mesh preview.

  • Rotating object.

  • Setting correct offset for preview mesh to not overlap with player.

  • Sending overlapping tiles to affected tiles when object is placed.

  • Placing objects (Spawning Actors).

The Build Objects

A base class which all objects the player can place in the world derive from. This actor holds all the info about the building which is contained within a "Data Asset".

From the data asset it creates the mesh that are to be shown as the preview mesh, which the build component use. And it is also responsible for changing the overlay material on the object (indication if object can be placed or not).

But most importantly the data asset contains the actor class to spawn when object is placed. And depending on the actor different logic is applied which make it very modular.
Some actors is dependent and change mesh depending on neighboring actors, and others like the plants have different meshes and logic depending on growth index and so on .

Image by Vincentiu Solomon

Plants & Growth

The plants themselves can be grown, found in the world or be received as quest rewards. The plants can't be planted directly, but instead the player would have to get the different plants seeds, which then could be planted and grown.
 

The plants themselves would have different amount of "Time" needed to get fully grown. And the only way the player could influence that time, would be to place the plants within the greenhouse where they would grow twice as fast.
The greenhouse does however have a limited amount of space, so the player would have to make a decision on what goes in to the greenhouse and what is not. 

 

Image by Vincentiu Solomon

Crafting

The grand concept is that there are 4 slots which the player can place different (or the same) ingredient in. Each combination leading to a new recipe added in the players journal, as well as the actual potion being added to your inventory.

The player would get recipes from completing quests, or simply experimenting themselves using the information of each ingredients which also is found in the player journal. Be careful however when experimenting, as any items used in a brewing attempt will be lost.

 

Image by Vincentiu Solomon

Quests

I started out just making a simple "Give me x amount of item x" kind of system focusing on tying a dialog system to it. This worked great, but then after some more work I realized I hadn't thought this through enough. Yes this system worked, but and it was something I had not done before, but it was boring, and not really what I wanted. 

I wanted more "complex" quests. Where the Npc who gave you the quest, wasn't necessary the one you turned it in to. But the the system I had made didn't really work, and as I was rapping the prototype up, I made some hacky tweaks to the system to support this feature. 

If I were to make this system again, I would make sure to think through and really know what feature and different quest setups the system would need to support. 
But all in all, it works, and I am happy with having the experience of making a if yet flawed quest system. A for the purpose of this prototype, a functional one.

 

bottom of page