Skip to content

x33-redacted/ALSv4-Lyra

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Advanced Locomotion System Refactored

Completely reworked and improved С++ version of Advanced Locomotion System V4.

The main purpose of this ALS version is be a complete compatible Lyra GameFeature plugin.

Lyra Compatability

  • Added: LyraGame & GAS Dependency.
  • Fix: "Mantle is only doing "In Air" mantles.."
  • Rewrite: ALS Inputs as Lyra Gameplay Abilites...
  • Fix: "Ragdoll Detaching Completely.."
    • Fix: Can not get up from ragdoll, probably because of above.
  • Fix: "Ragdoll Falling Through Ground.."
  • Set: Appropriate ALS Gaits for Gameplay Tags e.g Sprint Gait in Sprint Ability
  • Add/Set: Appropriate ALS Overlays to the Lyra weapons.
    • Rewrite: ALS Overlay System Tags
  • AAlsCharacter now inherits ALyraCharacter.
  • UAlsCharacterMovementComponent now inherits ULyraCharacterMovementComponent.
  • Added: Retargeting Rigs AnimMan Skeleton (UE4) <-> Manny Skeleton (UE5).
    • Retarget: ALS Animations/Skeletion -> UE5 Skeleton

Showcase

https://www.youtube.com/watch?v=l-zVg79OXcQ

Quick Start - Incomplete!

  1. Clone the repository to your project's Plugins/GameFeatures folder.
    • Recommended Installation:
      • git submodule add https://github.com/RemainingToast/ALS4Lyra.git Plugins/GameFeatures/ALS
  2. Merge the DefaultEngine.ini and DefaultInput.ini files from the plugin's Config folder with files from your project's Config folder.
  3. Enable Tick on ALyraCharacter.cpp
  4. Recompile your project.
  • Incomplete Setup Guide!
    • (Likely will make a video tutorial that will get linked here)

Updating

git submodule update --init --recursive

Forked Readme

Sixze/ALS-Refactored - Features

Features

  • Refactored plugin structure. Content is now separated into 3 categories: ALS - main content, ALSCamera - camera-related content and ALSExtras - other optional content
  • Use of multiple linked animation blueprints instead of a single monolithic animation blueprint.
  • Use of animation layer interfaces to dynamically switch overlay states at runtime instead of referencing them directly in animation blueprints.
  • Use of the Control Rig plugin for IK and other bone manipulation tasks instead of animation graph nodes.
  • Significantly reduced number of virtual bones required by the plugin.
  • Added the ability to disable the use of IK bones and use only virtual bones for all bone manipulation tasks, which can be useful in cases where IK bones are not animated in your custom animations.
  • Added a skeleton asset action that can help set up all the necessary skeleton stuff: animation curves, slots, virtual bones, and so on. Can be accessed by right clicking on the skeleton asset -> Scripted Asset Actions -> Setup Als Skeleton.
  • Reworked foot locking to make it more performant and reliable, especially in network multiplayer.
  • Reworked foot and pelvis offset logic for smoother character movement on stairs or sloped surfaces.
  • Added "Slot" layering animation curves that allow to control the blending of overlay poses with animation montages played inside "Layering" animation slots.
  • Added Blend Curves and Blend Poses by Gameplay Tag animation graph nodes. Blend Curves allows to blend animation curves without the need for the VB curves virtual bone and Blend Poses by Gameplay Tag is similar to Blend Poses by Enum but uses gameplay tags instead of enum.
  • Moved thread-safe animation instance logic to the worker thread to improve game thread performance.
  • Replaced some C++ enums such as EAlsOverlayMode with gameplay tags so new entries can be added without the need to modify the code.
  • Reworked UAlsCharacterMovementComponent for better movement synchronization over the network.
  • Reworked mantling. Implemented as a root motion source for better movement synchronization over the network.
  • Reworked camera. Implemented as a component similar to the standard camera component, no need for custom APlayerCameraManager or APlayerController classes.
  • Reworked debug mode. Can be toggled by pressing Shift + [1-8] or using console commands such as ShowDebug ALS.Curves.
  • Use of Push Model for more efficient replication.
  • Use of MetaSounds and Enhanced Input plugins.
  • Support of Update Rate Optimization (disabled by default) and Large World Coordinates.
  • Most of the recent significant changes from the Community Version are also present here.
  • A lot of other fixes, improvements and refactorings.

Also see the Releases page for more details.

Plugin Version Unreal Engine Version
4.13 5.3
4.12 5.2
4.11 5.1
4.10 - 4.9 5.0
4.8 and below 4.26, 4.27 and 5.0 Early Access

Reading the changelogs is a good way to keep up to date with all the latest features that the plugin has to offer.

Sixze/ALS-Refactored - Versions & Platforms ## Supported Unreal Engine Versions & Platforms
Plugin Version Unreal Engine Version
4.12 5.2
4.11 5.1
4.10 - 4.9 5.0
4.8 and below 4.26, 4.27 and 5.0 Early Access

The plugin is mainly developed and tested on Windows, so use it on other platforms at your own risk.

Sixze/ALS-Refactored - Known Issues

Known Issues & Discussion

  • See Issues section for list of known issues.
  • See Discussions section to discuss anything about the plugin, and ask questions. Please do not open an issue for questions.
Sixze/ALS-Refactored - License

License & Contribution

ALS Refactored is licensed under the MIT License, see LICENSE.md for more information.
Other developers are encouraged to fork the repository, open issues & pull requests to help the development.

Sponsor this project

Languages

  • C++ 94.3%
  • C 5.2%
  • Other 0.5%