Our Little Garden Shop

Our Little Garden Shop is my first project since graduating from University and is a project created for the UK Games Fund's Tranzfuser program. It is currently just a demo created in 4 months for Tranzfuser's Protoplay event, and is still in active development.

Our Little Garden Shop blends elements of visual novels and gardening sims to create a cosy and relaxed shop management experience.

Players grow and tend plants in their garden in order to fulfil requests for local villagers. These requests help to build relationships with the villagers, who may in turn offer advice or new equipment to help with gardening.

Genre

Visual Novel / Gardening Sim

Engine

Unreal 5

Language

C++ & Blueprints

Release Date

TBD

Project Type

Indie Project (PigMe Studios)


Trailer

Gameplay

Screenshots

Skills and contributions

As the team's primary systems programmer, my main contributions to the project came in the form of implementing systems such as the tutorial and conversational textboxes (a system largely adapted and updated from my previous work on Terrath). Additionally, I designed and implemented such of the plant harvesting and packaging portions of gameplay.

Conversational Textboxes

As Our Little Garden shop is such a narrative heavy experience, it was important to create a dialogue system which would be easy to use for both players experiencing the game and fellow developers expanding the game with more dialogue and quests. My experience working on similar systems for Terrath and Space for Two made this task a perfect fit for me.

However, unlike those games where the player has no input on dialogue, Our Little Garden Shop allows the player to respond to characters with a variety of dialogue options in branching conversations.

Due to the added complexity and volume of dialogue planned for Our Little Garden Shop, I created a tool to allow other developers to create and edit dialogue lines and responses quicker than directly editing the large database where these responses are stored.

Other notable features of the system include dialogue lines triggering different character animations depending on their emotion and dialogue responses that only appear if certain conditions are met.

The player has multiple dialogue options

A screenshot of the tool used to managed dialogue lines

Code Snippet

Part of the Customer.cpp script, which updates the textbox, dialogue options and triggers the character's emotion animation.

Textbox System

The other major system I built for Terrath was its textbox system. The team's writer was inexperienced working in Unreal, so in order to allow him to freely add and edit lines without having to open up the Uproject, I created a CSV which could be imported into Unreal as a data-table.

Additionally, this data-table would include more than just plain text, and allow the team to freely edit textbox colour, character name and the audio played without having to open the Uproject and potentially causing a merge conflict within the scene.

How the above line is displayed in-game

Example of how a line is formatted within the CSV

Code Snippet

Part of the Textbox system, this snippet manages when the Text should be displayed/changed and if audio should be played.