top of page
omen-to-empath.png

OMEN TO EMPATH

INTRODUCTION

Omen to Empath is a 3D third-person action adventure RPG. The game combines exciting melee combat and interesting boss encounters. This project shares the story of an unsung hero who must venture through a portal to restore his town back to its previous glory. 

 

You play a town knight who seeks to restore the lives of the villagers who perished overnight in a storm. The Temple of Empath which has been closed for centuries has finally reopened. You will embark on an exciting journey through purgatory-like places and encounter challenging bosses. The fate of the village is in your hands.

geometric_shapes_edited_edited_edited_edited_edited.jpg

PROJECT GOALS

Create a game in Unreal that explores different aspects of an RPG such as a health bar, stamina bar, upgrades, interactive NPCs, and world-building.

Explore melee combat design and unique boss encounters.

Make an interactive level with functioning and purpose-driven rooms.

Create a functioning Shopkeeper and in-game currency. 

GAMEPLAY

Role:  Gameplay design, programmer, lighting, animation, sound design, dialog script

Platform: Windows

Engine: Unreal Engine 4.27

Tools: UE4, Synty Packs

Duration: 1 year​​, completed in 2024

Dialogue editor:  Megan Rodriguez

Voice actors:  

  • Knight: Michael Vilches   

  • Slime: Inkyun (Twitch)

  • Duck: FGCDraft (Twitch)     

  • ​Boulder: EmptyWasher (Twitch)

GAME FEATURES

The original purpose of this project was to gain a better understanding of setting up and blending animations. Upon achieving skills in implementing animations, I made the decision to move forward and explore different elements of an RPG. This included various key features such as:​

​

Gameplay Mechanics
Interactive Elements
User Interface
World-Building
Health and stamina system
Interactive level design
UI design
EQS events
Player and AI combat
Interactable NPCs
Tutorial
AI behavior trees
Boss encounters
Merchant inventory
Currency
Landscaping
Loot drops
Foliage
Consumables
Narrative design

SHOPKEEPER

The primary purpose of the Shopkeeper is to sell player upgrades and access to a bonus level. Additionally, it gives a reason to collect and work towards unlocking those upgrades, thereby giving the in-game currency meaning and offering slaying monsters/bosses a meaningful reward. The secondary purpose of the Shopkeeper is to support world-building.

​

Scripts used to create the functionality of the Shopkeeper: 
 

  • Data Table & Data Structure 

  • UI widgets and clickable Widgets

  • Set input mode only on UI with mouse

  • Inventory

PLAYER COMBAT

I sourced from souls-like inspirations for player combat regarding quad-directional rolling, blocking, and stamina/health management by the use of potions. I consider this approach to gameplay to be intense, engaging, and strategic, aligning closely with one of the core pillars of the game. 

​

Scripts used to create the functionality of the Player Combat: 
 

  • Animation blueprints & Blendspaces

  • Multiple keys simultaneously pressed to roll in different directions

  • Tab-targeting 

  • Player inventory

  • Blocking 

  • Health & Stamina

INTERACTABLE NPCS

Interactive NPCs were a key part of my design to bring the game's story to life and help players feel more engaged in the world.


I created a modular NPC where all dialogue and text can be altered from the viewport. This allowed the NPC to be placed in the world and for their text and voice lines to be swapped out without necessitating opening up their code. The dialogue and sound move to the next line as the player presses the interact key. To achieve this, I shared a common integer starting at -1 that rises every time it's called. 

​

Scripts used to create the functionality of the Interactable NPCs:
 

  • Interactable interface

  • Voice lines & Text function 

  • Giving quests

  • Starting events 

BOSSES

Boss encounters are designed to provide players with a sense of achievement upon defeating them while offering a deeper insight into the game's story and world.

The game contains 3 enemy AI behavior trees. The first behavior tree has a patrol route with combat on sight, the second has direct melee combat, and the third has melee combat in range with two attack phases.

​

Scripts used to create the functionality of the Interactable NPCs: 

​

  • Behavior trees

  • EQS 

  • Enum states 

  • AI controller 

  • Using events in the level 

geometric_shapes_edited_edited_edited_edited.jpg

WHAT I LEARNED

Developing an NPC interaction system that could display text and play sound in a specific sequence with a single keystroke was a challenging task. After spending approximately seven hours debugging and refining the logic, I achieved the desired outcome, albeit with one remaining bug. The issue arose from the way Unreal Engine 4.27 handles sound playback in relation to my function's setup. The final word in the sound queue wouldn't align perfectly with the closure of the text dialogue, leading to a mismatch where the audio either played awkwardly or cut off prematurely. To address this, I implemented a creative workaround: adding a short voice line at the end, humorously timed with a "QUACK" sound, followed by the duck exploding for comedic effect. This not only resolved the timing issue but also added an unexpected and whimsical element to the game, enhancing the overall experience in a way I hadn't initially planned.

JW

ABOUT

Looking for a role where I can blend my creative spirit and skill as a Game Designer with like minded individuals. 

PROJECTS
CONTACT ME

Always open for collaboration, please contact me at the links below. 

  • mail-icon_edited
  • alt.text.label.LinkedIn
  • Twitch
bottom of page