I know I have done this for Kraft before...
If you don't use the SDK:
Insert this above Main, below Game_Character
class Game_Character
attr_accessor :animation_change_count
alias_method :seph_animationchangecounter_gmchr_init, :initialize
def initialize
@animation_change_count = 18
seph_animationchangecounter_gmchr_init
end
end
Then, go into Game_Character 2, find:
if @anime_count > 18 - @move_speed * 2
Change to:
if @anime_count > @animation_change_count - @move_speed * 2
If you use the SDK, place this below the SDK and above Main (Suggest above all other scripts because it overwrites a method).
SDK.log('Character Sprite Animation Frame Change', 'SephirothSpawn', 0.1, '2007-07-18')
SDK.overwrite_log(:Game_Character, :update_animation)
class Game_Character
attr_accessor :animation_change_count
alias_method :seph_animationchangecounter_gmchr_init, :initialize
def initialize
@animation_change_count = 18
seph_animationchangecounter_gmchr_init
end
#--------------------------------------------------------------------------
# * Frame Update : Animation Counters
#--------------------------------------------------------------------------
def update_animation
# If animation count exceeds maximum value
# * Maximum value is move speed * 1 taken from basic value 18
if @anime_count > @animation_change_count - @move_speed * 2
# If stop animation is OFF when stopping
if not @step_anime and @stop_count > 0
# Return to original pattern
@pattern = @original_pattern
# If stop animation is ON when moving
else
# Update pattern
@pattern = (@pattern + 1) % 4
end
# Clear animation count
@anime_count = 0
end
end
end
Instructions for both:
To change players animation counter :
$game_player.animation_change_count = n
To change events animation counter:
$game_map.events[event_id].animation_change_count = n
Just change n to a number. The smaller it is, the more the sprite proceeds in frames. The bigger it is, the long it takes.