Player Variables

Manual HomeProgramming

Important

These variables are frequently used and can be changed to achieve different effects.

Variable Description
url The unique identifier number for a character
player Your player number (1-4)
state Your current state
state_timer How many frames into the current state you are
state_cat Your current state category
prev_state The previous state you were in
prev_prev_state The state before the previous state you were in
attack The current attack you’re using or the last attack you used, if you aren’t currently attacking
window The window of the action you’re in
window_timer How many frames into the current window you are
spr_dir The direction the player is facing: 1 = right, -1 = left
spr_angle The angle at which to draw the player’s sprite
free Whether the player is aerial or not
hsp The current horizontal speed in pixels per frame
vsp The current vertical speed in pixels per frame
joy_pad_idle Whether the joystick is idle or not.
Also works with keyboard
joy_dir The direction of the joystick.
Also works with keyboard.
Only accurate if joy_pad_idle is false
[input_name]_pressed Checks whether an input was just pressed, buffer included
[input_name]_down Checks whether an input is being held down
[direction]_hard_pressed Used for joystick hard presses, like dashing or dropping through platforms
was_parried Whether your current attack has been parried or not
can_move Whether you can move during an attack or not
can_jump Whether you can jump or not.
Used for jump cancels in attacks
can_attack Whether you can attack or not.
Used for jab / tilt cancels
can_strong Whether you can use Fstrong / Dstrong or not.
Used for strong attack cancels
can_ustrong Whether you can Ustrong or not.
Used for strong attack cancels
can_special Whether you can use special attacks or not.
Used for special cancels
can_shield Whether you can shield or not.
Used for parry / roll cancels
can_wall_jump Whether you can currently walljump or not. To walljump, both this variable and has_walljump must be true. Use this to make recovery moves cancellable into walljump
has_walljump Whether you have your walljump or not
has_airdodge Whether you have your airdodge or not
can_fast_fall Whether you can fastfall or not
djumps The number of double jumps you’ve used
max_djumps The max number of double jumps you can use
off_edge Whether you can leave the ledge or not; used to prevent grounded attacks from leaving the ground
super_armor Whether you have full super armor or not
soft_armor The value of KB that it takes to break your armor.
For reference, Etalus Fair has a value of 12
invincible Whether you’re invincible or not
invince_time The number of invincibility frames until invincible is set to false
hitpause Whether the player is in hitpause or not
hitstop The number of frames remaining until hitpause ends
hitstop_full The number of frames this instance of hitpause lasts total
has_hit Whether you’ve hit something with the current attack
has_hit_player Whether you’ve hit a player with the current attack
can_wall_cling Whether you’re able to wall cling or not
clinging Whether you’re wall clinging or not.
Only functions if can_wall_cling is true
fall_through Whether you can land on platforms or not. false will cause you to fall through all platforms.
go_through Whether you can pass through other players without pushing them away or not.
grav The characters gravitational acceleration
strong_charge How long you’ve been charging a strong attack (0 – 60)
move_cooldown[attack] How long the move is on cooldown for.
0 = not on cooldown

Less Important

These variables can be changed, but usually don’t need to be, as they are normally managed by themselves.

Variable Description
hit_player_obj The instance ID of the last player that you either hit or got hit by. Mainly used for hit_player.gml and got_hit.gml.
last_player The last player that hit you
last_attack The last attack that hit you
last_hbox_num The index of the last hitbox that hit you
old_hsp The hsp to apply when hitpause ends
old_vsp The vsp to apply when hitpause ends
ground_type Is 1 while on a solid block and 2 while on a platform.
marked Whether you’re marked by Maypul
wrapped Whether you’re wrapped or not
wrapped_player The player number of the character that wrapped you
burned Whether you’re on fire or not
burnt_id The player id of the character that burned you
burned_color The palette of Zetterburn to use when setting someone on fire. Should be from 0 to 5.
burn_timer How long you’ve been on fire for.
Automatically extinguishes the fire once it’s above 150
bubbled Whether you’re trapped in Ranno’s bubble or not
bubbled_id The Ranno whose bubble you’re in
bubble_time Time remaining in Ranno’s bubble
poison The number of poison stacks on you
can_freeze_timer The amount of frames left until frozen state ends. Only applicable if the player’s state is PS_FROZEN
frozen_player The player slot that froze you.
plasma_pause Whether you’re in Clairen’s plasma stun or not.
plasma_id the instance ID of the player that stunned you.
plasma_player The player slot that stunned you.
stuck Whether you’re stuck by Elliana’s mine
stuck_id The Elliana that stuck you
clone Whether you’re Forsburn’s clone or not
clones_player_id The owner of this clone
draw_indicator Set to false to hide the character’s overhead HUD
hud_offset_dest The vertical offset the indicator moves towards, relative to the player’s char_height.
old_jump Whether you started the current attack during a double jump with acceleration, like Absa’s double jump. Set this to false to prevent the attack from rising while jump is held
outline_color[R, G, B] Used to change the outline color of the character’s sprite. Should be used in conjunction with init_shader() Reference→
draw_x The horizontal offset to draw the player at. This does not effect hurtboxes or hitboxes.
draw_y The vertical offset to draw the player at. This does not effect hurtboxes or hitboxes.

Gameplay Attributes

These values determine the character’s gameplay properties. These should be set in init.gml, but can also be changed during gameplay. (“Rivals Values” are the range of values used by the default cast of Rivals of Aether).

Variable Rivals Values Description
hurtbox_spr sprites

The sprite to use for hurtbox collisions in most states
crouchbox_spr sprites

The sprite to use for your crouching hurtbox
air_hurtbox_spr sprites

The sprite to use for your hurtbox while aerial
-1 = use hurtbox_spr
hitstun_hurtbox_spr sprites

The sprite to use for your hurtbox while in hitstun
-1 = use hurtbox_spr
knockback_adj .91.2 The multiplier to knockback dealt to you:
1 = default value
higher values = lighter character
lower values = heavier character
walk_speed 34.5 The maximum speed you can achieve while walking, in pixels per frame
walk_accel .2.5 The speed gained per frame while walking
walk_turn_time 6 for all characters The number of frames it takes to turn around
initial_dash_time 816 The number of frames in your initial dash
initial_dash_speed 411 The speed of your initial dash in pixels per frame
dash_speed 4.759 The speed of your run in pixels per frame
dash_turn_time 820 The number of frames it takes to turn while running
dash_turn_accel .12 The acceleration applied when turning while running
dash_stop_time 46 The number of frames it takes to stop while running
dash_stop_percent .25.5 The value to multiply your hsp by when going into idle from dash or dashstop
ground_friction .31 Natural deceleration while on the ground
moonwalk_accel 1.21.4 The acceleration to apply while moonwalking
max_djumps 03 The number of double jumps you can perform before touching the ground again
jump_start_time 5 for all characters The number of frames of jumpsquat minus one
jump_speed 7.612 The vsp applied when fullhopping
short_hop_speed 47.4 The vsp applied when shorthopping
djump_speed 812
-1 for Absa
The vsp applied when double jumping
jump_change 3 for all characters The hsp applied if left or right is held when jumping. Will not slow you down if you’re already going faster. When reversing your momentum with a double jump, this is the maximum hsp you can have
djump_accel -1.4 The amount of acceleration to apply during your double jump.
Allows for Absa-style double jump cancels
djump_accel_start_time 4 The first frame of your double jump that acceleration is applied
djump_accel_end_time 15 The last frame of your double jump that acceleration is applied
leave_ground_max 48 The maximum hsp you can have when you go from grounded to aerial without jumping
air_max_speed 37 The maximum hsp you can accelerate to when in a normal aerial state
max_jump_hsp 48 The maximum hsp you can have when jumping from the ground
air_accel .2.4 The hsp acceleration applied when you hold left or right in a normal aerial state
air_friction .02.07 Natural deceleration applied while in the air.
Also applies while in hitstun
double_jump_time 2440 The number of frames to play the double jump animation.
Most characters have a value of 32 so that the double jump animation transitions into the falling portion of the normal jump animation
gravity_speed .3.6 The gravitational acceleration applied in non-hitstun aerial states
hitstun_grav .45.525 The gravitational acceleration applied in hitstun
max_fall 811 The maximum vsp you can accelerate to while falling normally
fast_fall 1116 The vsp applied when fastfalling
land_time 46 The number of frames in your normal landing state
prat_land_time 324 The number of frames in your prat land state
prat_fall_accel .41.5 A multiplier to your normal horizontal aerial acceleration:
1 = normal
0 = no acceleration
walljump_hsp 47 The horizontal speed to apply while walljumping, in pixels per frame
walljump_vsp 710 The vertical speed to apply while walljumping, in pixels per frame
walljump_time 1832 The number of frames the walljump state takes. Normally 32, but some characters have shorter values
roll_forward_max 911 The speed of your forward roll
roll_backward_max 911 The speed of your backward roll
wave_land_time 612
usually 8
The number of frames your waveland state lasts
wave_land_adj 1.21.5 The multiplier to your initial hsp when wavelanding.
Usually greater than 1
wave_friction 0.15 Grounded deceleration when wavelanding
techroll_speed 811 The speed during techroll’s movement
air_dodge_speed 7.58 The speed during airdodge’s movement
char_height 3674 Used for centering things on the character, placing the overhead HUD, etc
bubble_x -8-8 Used for visually positioning the character in Ranno’s bubble horizontally
bubble_y 010 Used for visually positioning the character in Ranno’s bubble vertically

Animation Attributes

These variables determine the way the character animates during certain states.

Variable Description
wall_frames The number of animation frames to play before you leave the wall
dodge_startup_frames Number of animation frames during parry’s startup. Usually just 1
dodge_active_frames Number of animation frames during parry’s active frames
dodge_recovery_frames Number of animation frames during parry’s recovery frames
tech_active_frames The number of animation frames during tech in place’s invincibility
tech_recovery_frames The number of animation frames during tech in place’s recovery
techroll_startup_frames The number of animation frames during techroll’s startup
techroll_active_frames The number of animation frames during techroll’s movement
techroll_recovery_frames The number of animation frames during techroll’s recovery
air_dodge_startup_frames The number of animation frames during techroll’s startup
air_dodge_active_frames The number of animation frames during techroll’s movement
air_dodge_recovery_frames The number of animation frames during techroll’s recovery
roll_forward_startup_frames The number of animation frames during roll forward’s startup
roll_forward_active_frames The number of animation frames during roll forward’s movement
roll_forward_recovery_frames The number of animation frames during roll forward’s recovery
roll_back_startup_frames The number of animation frames during roll backward’s startup
roll_back_active_frames The number of animation frames during roll backward’s movement
roll_back_recovery_frames The number of animation frames during roll backward’s recovery
idle_anim_speed The speed of your idle animation in anim frames per gameplay frame
walk_anim_speed The speed of your walk animation in anim frames per gameplay frame
dash_anim_speed The speed of your dash animation in anim frames per gameplay frame
crouch_anim_speed The speed of your (held) crouch animation in anim frames per gameplay frame
pratfall_anim_speed The speed of your pratfall animation in anim frames per gameplay frame

Sound Attributes

These variables determine which sounds to play during certain states.

Variable Description
land_sound The sound effect to play when landing
waveland_sound The sound effect to play when wavelanding
jump_sound The sound effect to play when jumping from the ground
djump_sound The sound effect to play when double jumping
air_dodge_sound The sound effect to play when airdodging
landing_lag_sound The sound effect to play when landing during an attack

AI variables

Variables used by the AI.

Variable Description
ai_target The current target of the AI.
ai_recovering Is true while the AI is attempting to recover back onto the stage.
temp_level The difficulty level of the AI, from 1 to 9.
ai_attack_timer The amount of frames since the AI last attacked.
ai_attack_time The minimum amount of frames before the AI can try attacking again.
ready_to_attack Is true if the AI can perform an attack.
ai_going_into_attack Is true if the AI is attempting to attack.
ai_going_left Is true if the AI is moving left.
ai_going_right Is true if the AI is moving right.