Realms is a project which I have created with the purpose of learning the UE4 workflow, getting a better understanding of its features, and further improving my skillets.
To achieve the said goals I simply decided on creating a prototype in less than 6 months which would hopefully give me a detailed run down of what UE4 is all about.
By using the Unreal Asset store for 3D models and for the general systems I was hoping to cut down the production time while keeping the quality at an acceptable level.
The premade systems also served as an excellent study case in terms of how UE4 handles combat, animations, UI, AI, and level design.
Coming from Unity, I have already mastered the basic knowledge of how to operate a game engine prior to this experience.
I officially began the project in March 2020, with no prior expertise in UE4.
Stylized Forest v2
Dynamic Combat System (Full)
Dynamic Combat System
Inventory & RPG Elements:
Inventory & Interactive System
Inventory & Interactive System
Simple building system
Inventory & Interaction
Base & Units
Resource Management System
I spent a few days researching game titles that offered a similar experience to what I was trying to achieve with Realms. I then designed a simple system with up to 4 resources: Wood, Stone, Food, and Metal.
Having only 4 resources allowed for easier balancing & straightforward gameplay in terms of base construction.
Using wood and stone for basic buildings while keeping metal as a higher tier resource, I felt that I had a decent setup without overwhelming the potential player.
AI Unit Commands
- Gatherer commands: Follow, Stay, Mine, Cut Wood, Build, Return home.
- Combat Unit Commands: Follow, Stay, Aggressive, Defensive, Return Home.
For this system, I relied on my previous UI knowledge as well as a lot of trial and error, figuring out the best way of switching between the two command menus.
AI Resource Gathering System
I needed the AI to do the following:
- The AI needed to understand where the resource objects were.
- Travel to said object & play animation accordingly
- Store the resource value & reduce the value on the resource object
- Change to carry animation & reduce speed
- Find the closest resource drop off point
- Leave resource IF resource point has enough space
- Change back to regular animation & speed
- Repeat process
On top of that, I also wanted the AI to have a stamina system which forced the AI to break from resource gathering and instead find a spot to sit down or interact with other NPCs until said stamina is enough to continue the previous work.
Building Placement & AI building system
I managed to rather quickly implement it with my character controller but I also needed to further expand upon it and allow my AI gatherers to build.
Using my previous code for the AI gathering system, I was able to modify the AI behavior to do the following:
- Find a foundation placed by the player
- Inspect the foundation and determine which resources are needed
- Find a storage point that contains resources
- Pick up the needed resource, change animation & speed
- Drop off resource and begin the construction process
- Repeat process until building is complete or resources are depleted
I designed Erefin with only one entry point, the Portal.
With that choice, I wanted to introduce the Portal system to the player, a system used to travel to different locations.
Imagine it as a dialing device, much like a phone but instead of a number connecting to another phone, the dialing device opens up a portal to another location.
Surrounding the portal I placed out high-level stone elementals which served as an extra challenge.
They also served as a warning in terms of the upcoming difficulty.
The main challenge with the entrance is not the elementals themselves, but the puzzle combination needed to open up the portal.
By placing out specific runes around the portal itself I wanted to promote players’ ability to use environmental indicators to solve the combination.
First Level Overview
Upon entering the dungeon I wanted the player to face directly towards the point of interest.
The reasoning behind it was that I wanted to reduce confusion and instantly orient the player towards the goal.
Additionally, I decided to add a small welcoming party to grab the player’s attention.
Going from right to left:
With the initial welcoming party (Red circle) I introduced three new enemy types:
1. Imps – Low-tier support units
2. Demon Lords – Higher tier tanks
3. Magic Imps – Ranged damage dealers
The ground-level enemies serve as cannon fodder while the real threat comes from the ranged enemies stationed in the tower (Green Circle).
Together, these two elements create the core experience of Erefin.
Upon defeating the initial enemies I wanted to introduce the player to the barrier system.
Using the dialing device, which is housed in a massive structure (First red circle), the player is able to turn off the barrier (Second red circle) to progress to the next section of the dungeon.
However, in order to figure out the right combination, the player needs to explore the house ruins for clues (Green Arrow)
Puzzle concept - Why and How
While designing the layout for Eferin I tried to keep in mind two main aspects:
- How I want the player to progress/experience each level
- How the city might have been built and used by its inhabitants
I ended up dividing the dungeon into 3 sections: Residental Area, Library & Arcane Hall.
Each section would include a combination of towers, used as platforms for powerful ranged units, and ground units used as cannon fodder.
I decided to cut off each section by a magical barrier which the player had to turn off in order to progress further.
This choice was made based on two reasons:
- I did not want the player to simply run through the dungeon and ignore enemies.
- I wanted to introduce some lore through lootable books and pages.
By using the barrier control device the player is able to turn off the barrier and progress to the next section of the dungeon.
There are 9 different symbols on the device making it almost impossible for the player to solve without finding the necessary clues.
By forcing the player to search for clues I tried to teach the player to explore the surroundings and not just focus on combat.
I decided upon using house ruins as the perfect place to scatter loot and clues for the barrier combination.
Each house ruin has a set of randomized loot chests and one dusty scroll.
The dusty scroll had two main functions:
1. Combination clue
2.A short story explaining the lore of the dungeon
First Boss Room Explained
The first boss is located at the end of the second section called The Library.
I used this section to introduce the player to boss fights and to further explain the lore.
The library was designed to throw the player off guard.
I placed the barrier control device in the opposite direction of the entrance, to be used as bait. On the sides, I added former mages now turned undead. They are low-tier enemies and do not pose much of a challenge, but rather serve as another building stone for the lore.
The central part of the library was designed to be used as space for the upcoming boss battle.
My goal was to have the boss drop down from the roof and land in front of the unsuspected player.
Upon entering the central chambers, the boss dropdowns to the central platform and raises a shield, trapping the player within the red circle boundaries.