Description
Multiplayer FPS Procedural Animation Toolkit
Disclaimer: If you already own the Ultimate
Multiplayer FPS Framework With Runtime Multiplayer Level Editor
then you already own a more updated version of this plugin, no need
to purchase this plugin as well.
Showcase / Documentation (Google
Doc) / Support Discord
Current Version: 1.2 05/08/2022
What is this plugin:
This plugin is designed to be completely character independent
so you can use your own characters with the system. The goal is to
take a lot of the difficulty out of the animation process and bring
you a smooth system that handles most of the common animations
procedurally, while also being fully replicated for multiplayer
use. The system is written in C++ with everything exposed to
blueprint to give you ease of use with blueprint while being more
performant than the competitions. I provide examples for everything
required which is an example firearm, character, and animation
blueprint which can easily be retargeted to your own character.
Every procedural aspect of this system is customizable through
either graphs, variables, or both. For example recoil. Recoil is
controlled through two graphs, one for the location and one for the
rotation of each shot. Then it has a series of variables so you can
get a random result with each shot that is unique per firearm. To
perform recoil you call PerformProceduralRecoil on the firearm or
animbp. This function takes in a multiplier so you scale up/down
your recoil effortlessly based on your stance such as
standing/crouching/prone.
How does this plugin work:
This plugin works through a component. Provided is a character
component which you simply add to your character. To set it up all
you have to do is call the Init function in BeginPlay and the
system is ready to go. The character component acts as an interface
for the system. For example if you want to lean left/right, you
call LeanLeft and LeanRight from the character component and the
system takes care of it for you with full replication. I provide a
firearm base class which holds all of the needed information and
customization required. If you want to add a sight to aim with all
you have to do is add a static or skeletal mesh component to the
firearm and give it the component tag FPSAnim. After that add a
socket with the name S_Aim (this is the default name, set it to
what you want in the firearm) where you want to aim and you are
finished. This allows you to aim with anything such as a sight,
magnified optic, light/laser, even the magazine and you can do so
in less than 2 minutes! If you already have existing firearms all
you have to do is reparent them to my firearm class and simply add
the component tag to the firearm mesh FPSAnimFirearm and your done!
Its that easy.