top of page
Merchant Rush Banner

About

You take control over a merchant who desperately needs to earn gold. Taking place in a fantasy/medieval world, you need to travel between village to village & sell goods & take on quests in order to earn that gold.

 

Along the way you will get into fights that you need to survive & events that needs to be resolved, but you need to be thoughtful about your actions since you have limited time & you only have one life.

Background

An internship project initiated by the school (Futuregames) for students that didn't manage to get an internship on their own.

In this project the group consisted by a majority of designers, that's why it was very important that we worked & assisted each other in any way possible.

Details

Genre: Management, Strategy
Engine: Unreal Engine
Team Size: 12
Role: System Design
Platform: PC
Merchant Top
screenshot_6.png

RESPONSIBILITIES

System Design

  • Creating Excel documents & inputting data to the document

  • Implementing the data into the game

UI Design

  • Implementing designs created by our teams UX Designer

  • Implement any other needed UI for the game

screenshot_5.png

System Design

Creating Excel documents & inputting data to the document

While doing research for the game, we realized that we wanted to use Unreals Data Table function. To make it work we need to add the data to a Excel document & export it as a CSV file to make it work.

Implementing the data into the game

Using the Data Table/CSV files, we implemented the data from the data tables & added them in different situations such as: creating your merchant avatar, quests & factions.

Merchant Archetype

Choosing Archetypes

About

Before the game starts, the player is required to create a "merchant". The player can choose from 3 merchant archetypes:

"Street", "High-End" & "Naive".

 

Each merchant has their own stats, choose up to 3 different "traits" that boosts the the chosen archetype starting values. Finally the player can choose a piece of equipment that's only available to that specific archetype.

Using a spreadsheet

To display the correct values & making it so that you don't have to manually input the archetype values by hand in Unreal, we used a spreadsheet (in this case Google Spreadsheets).

Each archetype starts with their own "archetype" value that impacts the game in some way. For example: Haggling makes it easier for the player to barter, HP affects the players overall health, Item Limit affects how much the player can carry & so on.

Using Blueprints

To create the players "archetype", we created a blueprint that is used to adjust the archetype that the player has chosen through different widget menus (Unreals name for UI-elements). In this specific case, the player will first enter the "Character Customization" widget.

In this particular blueprint, we store all the changes/decisions that the player has made before we enter the game.

While working with Blueprints, we all together as a team, collaborated whenever we could to balance our strengths & weaknesses throughout the project.

If you are on a PC, you can hold down right-click to navigate the blueprint & use CTRL + Scroll to zoom in/out.

Quests

Quests

About

Another part of the game is that the player can pick up Quests in order to earn extra gold. Throughout the game, the player may encounter quests where the player needs to deliver a certain amount of items, exterminate enemies, escort individuals to a specific village to name a few.

Each quest are based on a spreadsheet that contains the quest information, quests that benefits certain factions in the game or how much gold they can earn.

Each quest has a time limitation based on how far away the quest destination is, the longer away the destination is, the more gold the player can earn.

Using a spreadsheet for Quests

Similar to the spreadsheet where we display the archetype values. We use another spreadsheet to contain all of our quests that the player may encounter throughout the game.

Compared to the previous data table (where we could select a specific item), with Quests we want to randomly choose a quest to display on a "quest board" that can be found in every village inside the game.

Generating quests using widgets

With a collaborative effort, we used widgets to display & generate quests when the player enters a village. When the player enters a village, it checks a certain percentage on how many quests will be generated for a village.

If it is within at least 50% or more, 1 quest is generated. When a quest is created, it fetches a quest from the Quest spreadsheet randomly & displays all of the necessary information to the player.

Using a variant of the Dijkstra's pathfinding algorithm, it generates a village destination that the player has to reach within a given time. Depending on the distance away from where the quest has been accepted, it adjusts the quest reward for the quest.

If you are on a PC, you can hold down right-click to navigate the blueprint & use CTRL + Scroll to zoom in/out.

UI Design

Implementing designs created by our teams UX Designer

For "Merchant's Rush", we needed a understandable UI/UX experience for our game. With the help of our dedicated UX Designer, it was my responsibility to implement the UX design they created.

Implementing any other UI needed for the game

When I wasn't implementing designs based on what our UX Designer created, I created any UI element that was necessary for our game at the request by the team.

CharacterCustomization

Character Customization

Creating Archetype

About

To create the "Character Customization", I used widget blueprinting & created the design based on what our UX Designer had come up with.

With this menu, the player can create a more personal merchant before the game starts. This way the game becomes a little bit different for each player.

Using Widget Blueprint to summarize

Using the Summary as an example after creating your custom merchant. We take all of the options that the player has chosen & display it to the player before they start the game.

Creating this specific "Character Customization" widget was done in a collaborative effort in order to make it work.

 

If you are on a PC, you can hold down right-click to navigate the blueprint & use CTRL + Scroll to zoom in/out.

Quest Board

Quest Board

About

In "Merchant's Rush", the player needs to earn as much gold as possible. One way to earn capital, is to take on various quests.

To display the quests, the player can view them on a "quest board". This quest board is created based on the design of our UX Designers illustration.

The player can take on various quests: Delivery (deliver items from point A to B), Escort (escort a character) or Extermination (go to a village & fight).

Using widgets to display Quests

This part of the "quest" widget creates a quest & shows the information regarding the quest when the player looks inside it.

In order to save some time, this quest widget is reused when the player checks their active quests that they have accepted.

Creating this specific "Quest Board" widget was done in a collaborative effort in order to make it work.

 

If you are on a PC, you can hold down right-click to navigate the blueprint & use CTRL + Scroll to zoom in/out.

Project Summary

The challenge

One of biggest challenges that we faced in this project was that the majority of the developers were designers (save for 1 programmer who wasn't used to C++).

 

That meant we had to be adaptive & collaborate as much as possible during this project.

What have I learned?

During this project, since I am a System Designer. I worked as much as possible with CSV-files & Data Tables.

This has helped me deepen my understanding of System Design & I also worked a lot with widgets in Unreal as well.

bottom of page