Endless Vendetta

Project Description

Crime, violence and betrayal runs rampant throughout the solar system. Take on bounties as you hunt to kill the one who murdered your family, and left you for dead.

Endless Vendetta is an realistic FPS game that features both bounties that progress the main story and boast high payouts, or exploration of the world.

Endless Vendetta is a 3rd year university project that was created by a team of 12 people with different specialties over the course of 6 months.
Game Source

Project Features

Unreal Engine 5.1 C++ Windows
  • First Person Shooter
  • Complex Gun Play
  • Weapon Attachments
  • Open World
  • Mantling System
  • Bounties
  • Enemy AI
  • Spatial Inventory
  • Dialog System
  • Gadgets

Trailer

Pitch

My Contributions

Dialog System

The dialog system was designed to be designer friendly first. The system conforms to this by allowing the designer to create dialogue trees through modifying a plugin called Generic Graph by jinyuliao. This allows a designer to create a dialog tree through a graph which is immensely easier to understand and work with rather than programmatically entering the tree.

This system allows for multiple speakers, voice overs and unlimited dialogue choices. Dialogue Choices can also be constrained to player values such as inventory items, favours, quest flags or even previous dialogue choices.

Dialog Snippet
Dialog Snippet Dialog Snippet

Enemy AI

The Enemy AI uses unreal engine's behavior tree system programmed to have a patrol system, a restricted bounds system, stealth system and a combat system. The patrol system allows the enemy to move between points in the world and the restricted bounds system allows the enemy know if the player is in a restricted area and to attack the player if they are within a certain area. The stealth system allows the enemy to detect the player and alert other enemies to the player's presence. The combat system allows the enemy to shoot the player and take cover when needed using unreal engines EQS system to calculate the best spot possible.

The AI also reacts to the player's actions such as if the player is shooting the AI will immediately take cover and shoot back. If the player is in stealth the AI will search for the player and alert other AI to the player's presence if they are able to sense the players movements.

AI Snippet
AI Snippet AI Snippet

Spacial Inventory

The Inventory system was designed to be a grid spacial inventory system that restricts the player from holding an indefinite amount of items by how much grid space it uses a.k.a. similar to Tarkov's & Resident Evil's inventory system.

The UI exists however was cut due to time constraints. However the system is fully functional and in place integrated with the dialog system for quest items. Future plans for the system include ammunition and swapping weapons.

Inventory Snippet Inventory Snippet

Movement System

The movement system is using the Advanced Locomotion System by LongmireLocomotion. This system allows for a smooth and realistic feel to the player's movement as well as a well tested mantling system. The system is modified to allow for custom animations and weapons to be used along side it.

Movement Snippet
Movement Snippet

First Person Animations

Due to the lack of an animator on the team I took it upon myself to create the first person animations for both the pistol and the rifle. As these weapons were custom made and no pre-made animations would do the trick. The animations were created in blender and imported into unreal engine using the unreal engine animation system. The animations were created to be realistic and to give the player a sense of weight and power when firing the weapons.

The animations are triggered in blueprints using the animation system and montages to trigger them on demand. The animations are also integrated with the ALS system allowing for the smooth movement whist also having custom made weapons.

Animation Snippet Animation Snippet
Animation Snippet

UI Programming

I have created the final UI for the game in line with our concepts and the game's theme. I have made UI animations using unreal engine's widget sequencer to make the UI more dynamic and grabs the users attention when needs be.

I have also created UI animations with images using Photoshop and imported them into unreal and created a material to animate them.

AI Snippet
Dialog Snippet Dialog Snippet