top of page
FPMGIF-ezgif.com-optimize.gif
Grats.png

VERMINTIDE 2 COMBAT SYSTEM

A Vermintide 2 inspired first person combat system made in unreal engine 5

ROLE

Technical Designer

GENRE: Action.
TEAM SIZE: SOLO
PROJECT DURATION: ~8 weeks
ENGINE: Unreal Engine 5
PLATFORM: Planned for FAB Marketplace

My Role And Responsibilities.

Since this project was a solo project it was my responsibility to research, develop and document the entire project and progress. My focus for this project was to make a highly modular, user friendly and reference accurate system inspired by Vermintide 2.
​
Modularity:
The core goal of this project was to make the system as modular as possible, allowing for quick weapon creation and making it usable by both the player and AI. This also made it so future developers could easily expand upon the system.
​
Ease of Use:

Part of the goal to make the system as modular as possible was to make it as easy to set up and use in a new project as possible. Utilizing proper blueprint structure and commenting as well as utilizing data tables and actor components

​

Accuracy:
As a personal goal, I also wanted replicate Vermintide 2's system as accurately as possible, without negatively impacting the ease of use or modularity of the system. In order to accomplish this extensive research on the target game needed to be conducted.

​

Based on these core goals I tackled the development timeline by:

Researching > Developing > Documenting.

Based on the research conducted and findings during the developing stage, I ended up implementing the following:

  1. Implemented a true first-person character.

  2. Designed a highly modular weapon system.

  3. Created melee enemy AI utilizing the weapon system.

  4. Built an overview level and gym level.

Performing Extensive Reference Game Research

Implemented A True First-Person Character

Based on the research conducted on the reference game it became clear that I needed a way to aim the melee attacks on both the horizontal and vertical axes, as the attack's hitbox is dependant on the weapon position

​

In Vermintide 2, a combination of arm models for the player, and full body for multiplayer are used. I opted for a true first-person character utilizing full body animations that bends with camera movement for a more modular approach.

I researched true first-person implementations and animation blueprints, then used skeletal mesh sockets, animation montages, and spine bone transformations to successfully achieve the true first-person system I envisioned.

​

AttackAimingGif-MadewithClipchamp-ezgif.com-optimize.gif
BendinSpineGIF-MadewithClipchamp-ezgif.com-optimize.gif

Aiming Attack Traces

Visual of how the mesh bends

Created An Overview And Gym Level

To help developers quickly understand and test the system, I created an overview level.

Using a template provided by my lecturer and referencing Unreal Engine marketplace examples, I structured the level to showcase key features. I also added a combat arena/gym level to properly test the melee weapons against enemy AI.

The final overview level clearly demonstrates the system’s capabilities, with detailed explanations covered in the pipeline document and tutorial video.

FPMCombatArena.png

Combat Arena

OverviewLevelGIF-MadewithClipchamp-ezgif.com-optimize.gif

Overview Level

Wrote A Pipeline Document And Created A Tutorial Video For The System

To document and explain the system, I created a pipeline document and a tutorial video.

The pipeline document, written in Microsoft Word, was iterated based on peer feedback and inspired by examples from lecturers. The tutorial video followed the steps outlined in the document but demonstrated implementation using a third-person character to highlight the system’s versatility and modularity. This also made elements like spine bone transformation clearer in real-time.

Both received positive feedback from lecturers. I plan to refine them further before potentially publishing the system on FAB.

​

To better understand the reference system and its design elements, I conducted thorough research by:

  • Analyzing the game’s wiki and testing each weapon for their individual stats and animations. I cross-verified this information using the Vermintide 2 Armory mod.

  • Categorizing weapons into a mind map and spreadsheet to identify common patterns.

  • Discovering that many weapons shared the same animation sets, which helped me understand how weapons could feel different despite using identical animations.
     

The research document turned out a bit too extensive, it was invaluable for designing the technical aspects of the system, in hindsight, I wish I had focused more on the game-feel element. As I think this is the major weak point of the project.​​

WeaponTableExample.png

Designed A Highly Modular Melee Weapon System

To ensure modularity and ease of use, I designed a system allowing different actors to interact with it and making weapon creation simple. Inspired by Vermintide 2, I implemented light/heavy attacks, blocking, and dashing.

​

I adapted a weapon pickup system from a previous project and used animation montages for melee combat. Attacks are selected based on combo count and input duration, with hitboxes traced during animation notify states.

​

​​

​

​

​

​

​

​

​

​

​

​

​

​

​

​

To streamline weapon customization, I implemented data tables and structs. The data table stores all weapon-related variables, including animations, stamina costs, attack properties, and combo structures. A nested struct system allows infinite attack variations without needing new variables for each weapon. Adding a weapon is as simple as creating a new data table row and a child blueprint.

​

​

​

​

​

​

​

​

​

​

​

​

​

​

​

​

​

​

​

​

For actor - weapon communication, I developed a Combat Component, which manages health, stagger, and combat actions. Using functions and interfaces, it enables modular interactions for attacking, blocking, and dashing.

This approach enabled fast weapon creation and easy adaptation for future projects while deepening my knowledge of data tables, structs, and actor components.

​

​​

WeaponActor.png
WeaponTable.png

Weapon Struct

AttackStruct.png

Attack Struct

AttackSelection.png
FPMCommunication.png

Graph of how blueprints communicate

CombatComponent.png

Created Melee Enemy AI Utilizing The Weapon System

 

To properly test and showcase the system, I created an enemy AI.

I used the same weapon and combat setup as the player but replaced input actions with a behavior tree and custom tasks. Additionally, I created dummy enemies that repeatedly perform single actions to highlight specific mechanics inside the overview level.

The enemy integrated smoothly into the system, providing a useful actor to test the system, however further balancing and features would be needed for proper gameplay use.

FPMGIF-ezgif.com-optimize.gif

Enemy AI attacking and being attacked by the Player

bottom of page