Introduction
Mover and GAS are currently two independent systems. However, they both have their own network prediction and input mechanisms.
Currently, among the resources provided by the official, only the Titan project fully demonstrates how GAS and Mover can be used together.
Titan Project Analysis
This article analyzes how some movement behaviors in the Titan project are achieved through the collaboration of GAS and Mover for your reference.
Attributes
Titan does not use GameplayAttribute in the attributes section.
Input
DA configuration uses InputAction->Tag mapping, and in the InputAction callback, the corresponding Tag is found using Action as the Key, which is then sent as GameplayEvent to ASC.
EventTag is the input Tag, and InstigatorTags contain the type of input: pressed, in progress, or released.
Aiming
Aim is implemented as a passive LocalOnly skill and listens for input events.
Jumping
GA_Sprint is a LocalOnly Ability, just
avoiding the use of CharacterMoverComponent.
The Mover plugin has built-in CharacterMoverComponent and encapsulates Crouch (through StanceModifier) and Jump behaviors. This class attempts to replace the capabilities originally possessed by the Character class. However, other code in the Mover plugin does not make extensive references to CharacterMovementComponent and StanceModifier.
Therefore, I recommend avoiding the use of CharacterMoverComponent and instead using a more pure MoverComponent.
Then, other behaviors such as Jump and Crouch are implemented using GAS.
Using GAS to proxy the input layer of MoverComponent.
Mover's default MovementSet (Walking, Falling,)
In addition to the basic controls encapsulated by CharacterDefaultInputs.
