AnimaX ABS Animation System - KageDesu/Alpha-ABS GitHub Wiki

โš ๏ธ Available since Build 1230

Alpha ABS have three animation systems

๐Ÿด๓ ง๓ ข๓ ท๓ ฌ๓ ณ๓ ฟ AnimaX system not works with others. You can use only one animation system in project.
๐Ÿ…ฐ๏ธ Since AnimaX is released, Motion System and Motion System 2 is not recommended for use.

AnimaX system has Demo project with animations examples
Demo Project

Features

  • Idle animations
  • Attack and skills animations
  • Battle state animations
  • Defense stance animations (player only)
  • Support party members
  • Support ABS and NON-ABS maps
  • Support enemies
  • Dead state animations (enemies only)
  • Changing animation sets during game depends on equipment
  • Flexible settings in plugin parameters for each animation
  • Quick animations states (sets) change during game

AnimaX require only main movement animation per character, attack, skills, idle, stances - it's all optional elements.

Overview

By default each ABS character have three animation sets:

  • Base - for movement (required)
  • inBattle - for movement in battle (with weapon in hands) (optional)
  • Dead - for enemy dead corpses (optional) (not used for player and party characters yet)

Each animation set have two states:

  • moving - animation when character is moving (required)
  • idle - animation sequence when character is stay (optional)

Idle animation example

AnimaX automatically changing animation sets (from Base to InBattle) and states (from Moving to Idle)

Set change example

Each set have settings:

  • One Direction?
  • Frames Count
  • Speed
  • Repeat first frame times


Create new animation

First, you should add animation with unique ID to Animations List
Animations List you can find in Plugin Parameters

ID will be using for folder name and as refer to animation from character (enemy) Note's

Then you should setup Base state (it's required). Other states is optional.
In Base states you should setup parameters for Movement animation.
Idle - it's optional.


Create default actions

Each animation set have own animation Actions, all actions it's optional

Action have settings:

  • Action Name - action name
  • Settings - animation settings (same as animation set settings)

Alpha ABS have three default actions:

  • Attack - when character (enemy) is attacking
  • Defense - when character is go to the defense stance
  • Skill - when character (enemy) is use skill (without own specified Action)

Defense action - is looped, and works only when character is not moving

All other actions is played once, _when action is playing character can't moving _

Attack example

Defense example


(this screenshot from AnimaX Demo project)

You can create own actions and assign them to the skills vie Note


Create custom actions for skills

  1. Add new action to animation set with unique Name (Action Name field)
  2. Assign action call to the skill via Note, add ABS parameter animaXAction:NAME,
    where NAME - Action Name


Set animation to characters

Add ABS parameter <xAnima:NAME> to Actor's Note section

Where NAME - it's default animation set name for character (without any equipment)


Folder and Files

Root folder for animations is ๐Ÿ“ img\charactersAA (you should create folder charactersAA)

Then you create folder ๐Ÿ“ for animation and name it as animation ID For example: Harold

In folder ๐Ÿ“ Harold, you should create two folders: actions and inBattle

In folder ๐Ÿ“ Harold should be images for Base set movement and idle

Naming rules:

  • Idle_DIRECTION_FRAME.png
  • Move_DIRECTION_FRAME.png

Supported directions:

  • D - down
  • L - left
  • R - right
  • U - up
  • DL - down left (diagonal)
  • DR - down right (diagonal)
  • UL - up left (diagonal)
  • UR - up right (diagonal)

โš ๏ธ For using diagonal sprites set Animation set parameter Is Support Diagonal? to ON (true). Plugin parameter Use diagonal movement? should be ON (true)

โš ๏ธ In movement animation, frame 0 - always only visible when characters is stopped (stay still) When character is walking, frames from 1 to last is repeating. This rule for all animations that start with Move_

All other animations: Idle_ and any action just repeating from 0 to last frame

File name example: Move_D_4 - moving animation, when character walking down, 4 frame

In folder ๐Ÿ“ Harold/inBattle should be images for inBattle set movement and idle

Naming rules is same

In folder ๐Ÿ“ Harold/actions should be images for all actions that you setup in Plugin Parameters for this animation set (Harold)

Naming rules:

  • ACTION_DIRECTION_FRAME.png

All actions animation playing from 0 to last frame
โš ๏ธ Defense action have special rule, this is looping animation, repeating frames until character is out from defense stance


Changing sets by equipment's

Add ABS parameter xAnimaSet:POSTFIX to equipment

You should create animation set for this equipment with proper unique ID = CHARACTER_ANIMATION_SET_NAME + POSTFIX

If you character have animation set with name Harold, your equipment postfix is Sword, you should create animation set with name Harold_Sword


โš ๏ธ Build 1236 update

Set animation to event

Add comment XA:NAME to event page.
If you switch event page to page without XA: comment, animation will be reset
For change animation switch event page to page with another comment XA:NAME

Add extra layers to character

1. With equipmentโ€™s
Add Note <xAnimaLayer:NAME> โ€“ layer frames will be loaded from img\charactersAA\CommonLayers\NAME\

Or Note <xAnimaLayerRelative:NAME>

What is Relative means?
Layer will be loaded not from CommonLayers, but from character current animation folder
Example: If you character have animation set with name Harold, your layer name is Hat, you should create folder Harold\Layers\Hat\
Itโ€™s allows you create different frame images for different characters of same layer

2. With plugin commands:

  • ChangePlayerAnimationSet NAME

     Where NAME - animation settings from Animations List plugin parameter
    
  • ResetPlayerAnimationSet

     Where NAME - animation settings from Animations List plugin parameter
     Example: StartLockpicking 1
    
  • PlayAnimationAction ACTION_NAME CHAR_ID IS_LOOP IS_WAIT

     Where ACTION_NAME - animation action name
     (should be defined for character current animation)
     CHAR_ID - 0 for player, -1 for this event or number = event ID
     IS_LOOP - true of false
     IS_WAIT - true of false
     (wait until animation is end before next event command)
    
  • StopAnimationAction CHAR_ID

  • AddAnimaLayer CHAR_ID LAYER_NAME IS_RELATIVE

  • RemoveAnimaLayer CHAR_ID LAYER_NAME

  • ClearAnimaLayers CHAR_ID


โš ๏ธ Build 1248 update

In Dead state, Idle animation not looping anymore, now it's play from 0 frame to last then stops on last frame.


  • preview - not all functions and features are implemented yet, there are limitations