Player Animator [Forge 1.18.2, 1.19.2, 1.19.4, 1.20.1, 1.21.1]

Supported MCreator versions
2022.2
2022.3
2023.1
2023.2
2023.3
2023.4
2024.1
2024.2
2024.3
Tags / plugin type
API support
Global triggers
Procedures
player animator
Downloads:
13416
Upvotes: 157
About the plugin

Player Animator is a plugin that allows you to animate the player model using smooth keyframe (json) animations created with blockbench, blender or even by hand. This is done though the help of the playerAnimator library.

 

Example of a player animation:

 

animation example

flip animation

 

How to use:

 

First, you will need to use blockbench, animate a template player model and extract the .json animation. The animation in the first example is made with blender, but you can use the geckolib plugin in blockbench like I did to make the second example.

Now that you have the animation file, it will need to be placed here:

file location

Once you have placed your animation in the correct folder, you need to make an empty procedure and select the event shown below. The procedure does not need any further inspection.

name

procedure

Now, you are ready to use your animations! All you will need to do is include the procedure block provided by the plugin (and have the playerAnimator library enabled in workspace settings).

procedure block

Potential issues when using the plugin:

"I can't get the animation parts to work correctly!" -You can find the official bbmodel here

"The game keeps crashing when I try use the animation!" -You either didn't place the file in the right place, or you renamed the animation after exporting it. Don't do that.

"I'm getting a build error!" -You didn't name the SetupAnimations procedure correctly, or your use of the procedure block was simply not accounted for.

"The animation won't play!" -None of the entities in your event are players, therefore it has nothing to play for.

License
MIT License

Plugin downloads
Player Animator v1.8.1 - playerAnimator_0.zip Uploaded on: 04/13/2024 - 04:26   File size: 12.37 KB
Player Animator v1.9 (2024.1, 2024.2 ONLY) - (1.20.1 only) server synced - playerAnimator_1.zip Uploaded on: 07/27/2024 - 09:18   File size: 9.08 KB
Player Animator v2.0 (2024.2, 2024.3 ONLY) - (1.20.1 forge, 1.21.1 neoforge) server synced - playerAnimator.zip Uploaded on: 10/24/2024 - 10:53   File size: 9.41 KB

Comments

Hey, I keep trying different ways to do a walking animation but when i tried using "if, do" procedures, it would play the animation and wouldnt stop playing until i left clicked to play the attack animation before it switched back to the idle animation. Basically, i need it to stop playing when i stop sprinting

First of all, create a one frame animation with no modifications.
Create a variable called spriting (variable type logic, and variable scope player persistent)
Then create a procedure and set the global trigger to player tick update.
inside this procedure you'll need to put like that:
If player sprinting = true (you can get the player sprinting block in the entity data section)
do set global sprinting to true (you can get the variable block in custom variables section)
else set global sprinting to false
Then you going to create another procedure again global trigger player tick update.
this time is going to look like this:
if get global sprinting = true
do (block to play the animation here)
else (block to play that empty animation here SET TO IGNORE ANOTHER PLAYING ANIMATION TO TRUE)
And that should do the trick.

alright so the walking animation works perfectly, but all the other animations have been negated and i think its because the ignore active animations empty animation that i use for stopping the walking animation interuppts all animations except for the walking animation

Yeah sorry I forget to tell you.
You need to put the variable to false once you stop running, like that:
if get global sprinting = true
do (block to play the animation here)
else do set global sprinting to false and below this you put the empty animation block
(block to play that empty animation here SET TO IGNORE ANOTHER PLAYING ANIMATION TO TRUE)