Skip to content

Unreal Engine 5 C++ project, an attempt to resurrect Warhammer 40K: Eternal Crusade. Developed using "UE best practices" from Lyra for a more complex behaviour

Notifications You must be signed in to change notification settings

Waagheur/EternalCrusadeResurrection

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Eternal Crusade: Resurrection

Open Source? Yes! Website eternal-crusade.com Discord Codacy Badge

ECR is an attempt of resurrection of an online third-person shooter video game Eternal Crusade.

This project can be used as a template for creating a similar genre game, and ECRCommon module contains functionality that may be useful for a wide range of games.

Features

  • C++ Unreal Engine 5 project
  • Customization system for modular characters (material customization, mesh customization)
  • Epic Online Services P2P matchmaking (users can create their own matches)
  • Python Scripts for automation of restoring non-exportable or hardly-exportable data for an unpacked UE4 game (socket data, maps data, materials, references to materials within meshes)
  • Enhanced Input Subsystem is used for input (borrowed from Lyra)
  • 3rd person multiplayer shooter and melee combat system based on Lyra's GAS

GAS differences from Lyra (5.0)

  • A better nested directory structure
  • Fixed a bug with improper spread cooldown activation on ranged weapons
  • Several attributes are used to consume damage (First shield, then health, then bleeding health)
  • QuickBar component has multiple channels (eg one for ranged weapons, one for melee)
  • ECREquipmentManagerComponent is capable of hiding equipment by visibility channels (eg LeftHand, RightHand for two-handed weapon)
  • PawnData is defined in GameState and on Character as a spawn option, so it can be customizable, unlike Lyra, where it's defined by experience and is the same for all players
  • Shooting uses advanced tracing to get a point on the camera vector where pawn should aim from weapon actor, unlike Lyra, where shooting is done from camera
  • GAS debugger correctly works on 3rd page, checking costs on abilities CDOs without producing errors in the log
  • Gameplay Abilities can asynchronously load montages for different skeletons using cosmetic tags without having to create multiple GA instances
  • Advanced interaction system allows interaction options to be set by actors in blueprints, makes possible interactions via input tags and overriding input mappings
  • Advanced melee combat prediction system

GIT policy

In both this repo and ECRContent (in private access) master branch is locked, all work should be done after creating a new branch based on dev

About

Unreal Engine 5 C++ project, an attempt to resurrect Warhammer 40K: Eternal Crusade. Developed using "UE best practices" from Lyra for a more complex behaviour

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C++ 91.6%
  • Python 7.0%
  • Other 1.4%