Previous Post

UE 5.4 - AdventureGameLocomotionSystem V1.0.2 (EXPERIMENTAL) | (Project Files) [No Replication, only Windows]

Next Post
UE 5.4 - AdventureGameLocomotionSystem V1.0.2 (EXPERIMENTAL) | (Project Files) [No Replication, only Windows]
1 / 15
DESCRIPTION

Informations about animations:

In the project, not all animations will be included. Animations like Stealth Finishers come from the UE5 marketplace - Stealth Finishers - knife and hand In order for it to look like on a video, you need this package, which must later be uploaded to the project

How to reimport animations form Marketplace Pack to project (YT Video)

Edit: From this version, please do not edit the animation curves, now you only need to replace the damaged animations with the original ones.

Ultimate Traversal Anims by RamsterZ. I broke this animations but if you want to import orginal , buy this pack , export  choosed animations to fbx and reimport to the project.

 The Melee Combat also using Marketplace. Animations are not included in the project, but the system can still be used, although bugs may appear. If you have this Animation Pack - Brutal Finishers - Hand and Knife , do the same with it as with other bundles. Do not change any animation sequence settings, but reimport individual files. Attention! In the project, the names of the animations start with 'BF_H2H' or 'BF_Knife', so you need to replace the file names after exporting FBX.

Without these animations, the project will run normally.

I present the first results of my work on introducing the Motion Matching system into the Interaction With ALS project (IWALS v3.4). In this project, the motion matching logic was partially derived from the GASP project recently made available by Epic Games. Thanks to MM, the basic locomotion system appears more natural and dynamic. Currently, the GASP project only implemented 2 Gait states. I decided to add an additional one to have 3 states, just like in ALS. I also added many elements to the Pose Search database such as: crouching, collision reactions, quick direction changes, transitions between Standing and Crouching, walking on stairs, and others.

What are the other changes compared to the IWALS v3.4 project?

At this moment, there are quite a few. These changes are visible both in the final locomotion and in the logic of the code itself. Many blueprint elements have been replaced with C++, for example, recalculating basic data such as: IsMoving, Acceleration, Speed, and many others. It is worth noting that variables defined in the C++ class usually end with the suffix 'C', e.g., IsMovingC, AccelerationC. I have created many new AnimGraph nodes and helpful functions. Examples of such nodes are:

Modify Layering Curves: (created still in the IWALS project). A very commonly used node for quickly modifying animation curve values.

Curve Smoother: Used to smooth out the values of curves received at the input. Created to eliminate steps interpolation.

Layer Blending (EXPERIMENTAL!!!). This is the C++ version of the Layer Blending system from Anim Graph.

Save Current Pose To SnapShot (created still in IWALS). Saves the input pose to a variable. This allows reading the position of the bones of a given animation even though the final pose has already been overwritten by other logic.

C++ also performs many other actions. The player's character, some components, interfaces, the animation plan, and the Ability System have their own C++ class containing many functions and variables.

Currently, I have also decided to rebuild the overlay changing system. For this purpose, I decided to use asynchronous class loading. Thanks to this solution, overlays are not always loaded into memory, but only at the moment of their initiation. This solution also allows adding Unequip states in the future, which I have planned. More information, such as the pros and cons, can be found in the blueprint comments (ALS_AnimBP, ALS_CharacterBP).

Motion Matching now also supports Predictable Jumps, which selects the jump animation based on the calculated landing position. The Animation Base is not fully complete and will be further expanded along with this system.

Traversal Actions from the GAPS project contain more animations. This system does not only work on selected objects, but every collision is interpreted. However, sometimes problems arise in the case of Complex collisions due to the lack of 3-dimensional collision in this instance. Whenever possible, it is worth using convex collisions, especially in the case of a mesh.

The stair walking logic will also be expanded because currently, the detection of whether the player is moving on stairs is implemented based on a Sphere Trace to check if the IK_Object channel is blocked.

I have introduced Enhanced Inputs instead of the outdated Inputs system included in IWALS back in UE4.26.

At the moment, the Cover System, Crawling or Zombies AI are NOT SUPPORTED. It should be possible to add these in the next version.

Cleaning up the old content from the project has also not been completed. One of the reasons for this is that I have not yet fully assessed which resources can be safely removed.

Significant changes have also been made to the IK. Currently, for basic locomotion, Foot IK solving is done through the 'Foots Placement' node. However, for example, in the case of Climbing, this task is handled by Control Rig and manually calculating the required foot positions. The 'Foots Placement' node has several drawbacks, one of which is that the alpha value for a selected bone can only be set through an animation curve. This node also has a built-in Foot Lock system. By default, this is enabled, but I have not focused on detailed configuration, so sometimes the leg position can get locked in the wrong place. Of course, I will also try to fix this.

Compared to the ALS project, the skeleton has been slightly modified. I added a new bone named 'attach'.

Will the project continue to be developed?

Of course. At the moment, I have many plans. An important element of the project's development will be the release of Unreal Engine 5.5, along with updates to the GASP project. In my case, the main planned changes are:

Adding a Cover and Crawl System

More detailed animations for Pose Search and additional locomotion, such as Injured or Tired

Improving overlay animations due to incomplete compatibility with GASP poses

Performance improvements, such as introducing asynchronous loading for the Ability System

Adding Motion Matching for AI, including Zombies

Rebuilding and introducing new AI logic, as the current systems are outdated. This might take more time

Adding better transitions between some systems, such as jumping to grabbing a ledge or beam, etc. ✔

Improving Foot IK and many other elements of the player’s animation logic

Attempting to convert animation logic, such as the Sliding or Swimming system, to Motion Matching

Providing a proper retarget asset that allows characters to be transferred from the UE4 skeleton to UE5 during the game ✔

I hope the project will be able to meet your expectations. At the moment, it may contain errors or bugs, but over time, most of them should be fixed. On a scene without any AI controllers, my computer was able to generate around 80 to 95 FPS on high graphics settings. PC specification: AMD Ryzen 7 3800X, 32 GB RAM, NVIDIA GeForce RTX 3060.

DOWNLOAD PROJECT FILES LINK (UE5.4, No Replication)

Small update 13.08:

Now packaging project should be possible. However, to ensure the process completes successfully, you must disable the 'Trajectory Generator' plugin before attempting to package, becouse it is only functions in the editor.

Update 19.08 (v 1.0.2):

Added retarget files for the UE5 skeleton (SKM_Manny or SKM_Quinn), which is compatible with Metahuman. I should mention that the UE5 skeleton is not fully compatible with the bone hierarchy of the UE4 skeleton. These differences are not very noticeable in animations where hand and finger positions can be simplified. However, when holding something like a rifle, manual adjustment of hand positions was required.

An actor has been added that can influence the accuracy of ledge detection in specific areas. 'BP_ModifyClimbingParamsVolume' allows for extending the ledge detection for climbing. With this solution, when you need the player to be able to grab high ledges, you simply place the actor near the floor to increase the reach of the edge detection function. Along with this modifier, im added additional transition animations between the 'Grounded state' and 'Climbing Ledge'.

The 'AnimMan' mesh has been modified to reduce the number of material instances. Now, VertexColor is responsible for separating parts of the skeleton, and the entire model contains only one material. The coloring system hasn't changed much, the only thing removed was the 'Create Dynamic Material' nodes. This makes it easier to create coloring patterns and helps reduce DrawCalls.

Minor changes and bug fixes:

Basic overlay not initializing on game start

Fixed wrong position of 'twist' bone in some animations

Visible 'Trace Debug' during Traversal Action has been hidden

Sound files have been mostly placed in 'Game/Audio' folder

Added additional sounds for Climbing System

I would also like to mention a small request. Namely, it is about private messages sent on Patreon. I would ask that this method of communication be limited, due to its large constraints. If your question is about the project, please send it on the Discord server, or in the comments under the Patreon post. In other cases, I would suggest an email or possibly via a Patreon mailbox. Please note that due to the large number of messages, I am unable to reply to all of them. Most often I answer questions asked on the Discord server, followed by emails, comments under the Patreon post, and Patreon private messages. Thank you for your understanding.

JakubW PATREON 9 favs
VIEWS1
FILES16 files
POSTEDAug 10, 2024
ARCHIVEDJun 10, 2026