RMRK is retiring.
Registration is disabled. The site will remain online, but eventually become a read-only archive. More information.

RMRK.net has nothing to do with Blockchains, Cryptocurrency or NFTs. We have been around since the early 2000s, but there is a new group using the RMRK name that deals with those things. We have nothing to do with them.
NFTs are a scam, and if somebody is trying to persuade you to buy or invest in crypto/blockchain/NFT content, please turn them down and save your money. See this video for more information.
Requesting Custom Movement System

0 Members and 2 Guests are viewing this topic.

**
Rep: +0/-0Level 88
~Genma
I'm wondering if anyone could throw together (or has one already made) a movement system similair to the old 2d sidescroll Brawlers like Streets Of Rage, The TMNT game, Battletoads, or Double Dragon. I tried simply editing the existing sprite sheets, but there is only one "moving down" set, so if i edit it match the movement patterns of the arcade games, your character would move down, but always look like he was either moving left or right, instead of whichever way was last entered. I suppose i'd need a simple pixel movement script, but one that keeps the Arcade Feel in mind...
Thanks to any who help me out!
~Django
"What a terible night to have a curse..."

********
EXA
Rep:
Level 92
Pikachu on a toilet
Project of the Month winner for April 2007
Have you tried to search for a side-scroller script on other sites? Maybe there is also a similar one to the one you are requesting. Try these links:

http://hbgames.org/forums
http://dubealex.com

Get King of Booze for Android, for iOS, for OUYA or for Windows!
Visit our website.
You can also love/hate us on Facebook or the game itself.


Get DropBox, the best free file syncing service there is!

***
Rep:
Level 88
Smarter than the average bear
yeah streets of rage was great(narc too :P) Im not sure if I ever saw a script like that, where you can move up and down and stuff, but heres a basic side-scroller thats just like metroid.

http://phanxgames.com/pxg/projects/view.asp?id=344

moving platforms are easy to make, just make a regular event and have it move. Just check out the demo to see how he did everything.

Oh but if you wanted to just edit for like, diagnal movements, instead of up and down, you could use sephirothspawns advanced movement system. If you want it, ill go find it.
« Last Edit: January 12, 2007, 01:56:09 AM by italianstal1ion »

********
Rep:
Level 96
2011 Most Missed Member2010 Zero To Hero
That is a seriously awesome piece of work.

Now I feel I must download Super Metroid.
« Last Edit: January 12, 2007, 02:36:23 AM by arrowone »

**
Rep: +0/-0Level 88
~Genma
yeah streets of rage was great(narc too :P) Im not sure if I ever saw a script like that, where you can move up and down and stuff, but heres a basic side-scroller thats just like metroid.

http://phanxgames.com/pxg/projects/view.asp?id=344

moving platforms are easy to make, just make a regular event and have it move. Just check out the demo to see how he did everything.

Oh but if you wanted to just edit for like, diagnal movements, instead of up and down, you could use sephirothspawns advanced movement system. If you want it, ill go find it.


Would you? that would rock! Thanks! I'll post some screens soon, so everyone can see all the progress ive made since i began bugging you all, hahahaa
"What a terible night to have a curse..."

***
Rep:
Level 88
Smarter than the average bear
Spoiler for Advanced Player Movement:
#==============================================================================
# ** Advance Movement System
#------------------------------------------------------------------------------
# SephirothSpawn
# Version 1
# 2006-04-24
#------------------------------------------------------------------------------
# Script Concepts By: Homer, XK8 & Others
#------------------------------------------------------------------------------
# Walking, Sneaking, Dashing, Jumping & Isometric System
#------------------------------------------------------------------------------
# * Features & Syntax:
#
#  ~ Sneaking
#   To Enable Sneaking:
#     $game_player.enable_sneaking = true (On) or false (Off)
#   Editing Sneak Button
#     Sneak_Button = Input::Constant
#   Editing Sneak Speed
#     Sneak_Speed = move_speed (Should Be less than 4)
#   Editing Sneak Cost Per Second
#     Sneak_Cost = number_of_seconds
#   Editing Sneak Recover Per Second
#     Sneak_Recover = number_of_seconds
#   Modifing Max Sneak Level
#     Change the 5, under def max_sneak_level
#     For unlimited sneak, replace 5 + @max_sneak_bonus with nil
#   Increasing Max Sneak Bonus
#     $game_player.max_sneak_bonus
#   Show Sneak Animation (Uses Alternate File)
#     $game_player.enable_sneaking_animation
#     (Filename + _sneak)
#     
#  ~ Dashing
#   To Enable Dashing:
#     $game_player.enable_dashing = true (On) or false (Off)
#   Editing Dash Button
#     Dash_Button = Input::Constant
#   Editing Dash Speed
#     Dash_Speed = move_speed (Should Be greather than 4)
#   Editing Dash Cost Per Second
#     Dash_Cost = number_of_seconds
#   Editing Dash Recover Per Second
#     Dash_Recover = number_of_seconds
#   Modifing Max Dash Level
#     Change the 5, under def max_dash_level
#     For unlimited dash, replace 5 + @max_sneak_bonus with nil
#   Increasing Max Dash Bonus
#     $game_player.max_dash_bonus
#   Show Dash Animation (Uses Alternate File)
#     $game_player.enable_dash_animation
#     (Filename + _sneak)
#
#  ~ Jumping
#   To Enable Jumping:
#     $game_player.enable_jumping = true (On) or false (Off)
#   Editing Jump Button
#     Jump_Button = Input::Constant
#   Jump Distances
#     S_Jump_Dis = Sneaking Jump Distance
#     W_Jump_Dis = Walking Jump Distance
#     D_Jump_Dis = Dashing Jump Distance
#   Show Jump Animation (Uses Alternate File)
#     $game_player.enable_jump_animation
#     (Filename + _jump)
#
#  ~ Isometric Movement
#   To Enable Isometric Movement
#     $game_player.enable_isometric = true (On) or false (Off)
#   To Enable Isometric Animation (Uses 4 * 8 Sprite Sheet)
#     $game_player.enable_isometric_animation
#     (Filename + _iso)
#
#  ~ Filenaming
#   Sneak
#     Filename_sneak
#   Dash
#     Filename_dash
#   Standing
#     Filename_stand
#   Jumping
#     Filename_jump
#   Isometric Movement
#     Filename_iso
#   Isometric + Sneak
#     Filename_iso_sneak
#   Isometric + Dash
#     Filename_iso_dash
#   Isometric + Standing
#     Filename_iso_stand
#   Isometric + Jumping
#     Filename_iso_jump
#==============================================================================

#------------------------------------------------------------------------------
# * SDK Log Script
#------------------------------------------------------------------------------
SDK.log('Advance Movement System', 'SephirothSpawn', 1, '2006-04-24')

#------------------------------------------------------------------------------
# * Begin SDK Enable Test
#------------------------------------------------------------------------------
if SDK.state('Advance Movement System') == true
 
#==============================================================================
# ** Game_Player
#==============================================================================

class Game_Player < Game_Character
  #--------------------------------------------------------------------------
  # * Buttons, Speed & Distance
  #--------------------------------------------------------------------------
  Sneak_Button = Input::X    # Input Button it Sneak
  Dash_Button  = Input::Y    # Input Button it Dash
  Jump_Button  = Input::Z    # Input Button it Jump
  Sneak_Speed  = 3           # Sneak Speed (4 is Normal Walking)
  Walk_Speed   = 4           # Walk Speed (4 is Normal Walking)
  Dash_Speed   = 5           # Dash Speed (4 is Normal Walking)
  S_Jump_Dis   = 2           # Sneak Jump Distance (Jump Distance W/ Sneak)
  W_Jump_Dis   = 2           # Walk Jump Distance (Jump Distance W/ Walk)
  D_Jump_Dis   = 3           # Dash Jump Distance (Jump Distance W/ Dash)
  Sneak_Cost = 1             # Number of Seconds to Decrease Sneak
  Sneak_Recover = 2          # Number of Seconds to Recover Sneak
  Dash_Cost = 1              # Number of Seconds to Decrease Dash
  Dash_Recover = 2           # Number of Seconds to Recover Dash
  #--------------------------------------------------------------------------
  # * Public Instance Variables
  #--------------------------------------------------------------------------
  attr_reader :current_sneak_level           # Sneak Stamina Left
  attr_reader :current_dash_level            # Dash Stamina Left
  attr_accessor :max_sneak_bonus             # Sneak Bonus (To Max)
  attr_accessor :max_dash_bonus              # Dash Bonus (To Max)
  attr_accessor :enable_sneaking             # Sneak Enabler
  attr_accessor :enable_dashing              # Dash Enabler       
  attr_accessor :enable_jumping              # Jump Enabler
  attr_accessor :enable_isometric            # Isometric Movement Enabler
  attr_accessor :enable_sneaking_animation   # Sneak Animation
  attr_accessor :enable_dashing_animation    # Dash Animation
  attr_accessor :enable_jumping_animation    # Jump Animation
  attr_accessor :enable_isometric_animation  # Isometric Animation
  #--------------------------------------------------------------------------
  # * Alias Listings
  #--------------------------------------------------------------------------
  alias seph_wsdanim_gameplayer_init initialize
  alias seph_wsdanim_gameplayer_refresh refresh
  alias seph_wsdanim_gameplayer_update update
  alias seph_wsdanim_gameplayer_uj update_jump
  alias seph_wsdanim_gameplayer_um update_move
  alias seph_wsdanim_gameplayer_us update_stop
  alias seph_wsdanim_gameplayer_upm update_player_movement
  alias seph_wsdanim_gameplayer_md move_down
  alias seph_wsdanim_gameplayer_ml move_left
  alias seph_wsdanim_gameplayer_mr move_right
  alias seph_wsdanim_gameplayer_mu move_up
  alias seph_wsdanim_gameplayer_mll move_lower_left
  alias seph_wsdanim_gameplayer_mlr move_lower_right
  alias seph_wsdanim_gameplayer_mul move_upper_left
  alias seph_wsdanim_gameplayer_mur move_upper_right
  alias seph_wsdanim_gameplayer_mrand move_random
  alias seph_wsdanim_gameplayer_mf move_forward
  alias seph_wsdanim_gameplayer_mb move_backward
  alias seph_wsdanim_gameplayer_cett check_event_trigger_there
  #--------------------------------------------------------------------------
  # * Object Initialization
  #--------------------------------------------------------------------------
  def initialize
    # Original Initialization
    seph_wsdanim_gameplayer_init
    # Enable Movement Features Test
    @enable_sneaking = false               # Enable Sneaking Test
    @enable_dashing = false                   # Enable Dashing Test
    @enable_jumping = false                   # Enable Jumping Test
    @enable_isometric = true                 # Enable Isometric Test
    # Enable Movement Features Animation Test
    @enable_standing_animation = false        # Enable Stand Animation Test
    @enable_sneaking_animation = false        # Enable Sneak Animation Test
    @enable_dashing_animation = true         # Enable Dashing Animation Test
    @enable_jumping_animation = true         # Enable Jumping Animation Test
    @enable_isometric_animation = false       # Enable Isometric Animation Test
    # Sneak & Bonuses
    @max_sneak_bonus = 0
    @max_dash_bonus = 0
    # Sets Current Sneak & Dash Level
    @current_sneak_level = max_dash_level    # Starting Sneak Level
    @current_dash_level = max_sneak_level    # Starting Dash Level
    # Sneaking & Dashing
    @sneaking = false
    @dashing = false
    # Jump Direction
    @jump_direction = @direction
    # Isometric
    if @enable_isometric_animation
      @character_name += '_iso'
    end
    # Duplicate Character Name
    @dup_character_name = @character_name
  end
  #--------------------------------------------------------------------------
  # * Refresh
  #--------------------------------------------------------------------------
  def refresh
    # Original Refresh Method
    seph_wsdanim_gameplayer_refresh
    # Isometric
    if @enable_isometric_animation
      @character_name += '_iso'
    end
    # Duplicate Character Name
    @dup_character_name = @character_name
  end
  #--------------------------------------------------------------------------
  # * Player Movement Update
  #--------------------------------------------------------------------------
  def update
    # If Sneak Enabled
    if @enable_sneaking && !@dashing
      # Update Sneak
      update_sneak
      # Update Sneak Level
      update_sneak_level unless max_sneak_level.nil?
    end
    # Id Dash Enabled
    if @enable_dashing && !@sneaking
      # Update Dash
      update_dash
      # Update Dash Level
      update_dash_level unless max_dash_level.nil?
    end
    # Update Walking
    update_walk
    # If Jumping Enabled
    if @enable_jumping
      # Update Jump
      update_jumping
    end
    # Original Update Player Movement
    seph_wsdanim_gameplayer_update
  end
  #--------------------------------------------------------------------------
  # * Frame Update (jump)
  #--------------------------------------------------------------------------
  def update_jump
    # Original Update Jump
    seph_wsdanim_gameplayer_uj
    # Jump Animation
    if @enable_jumping_animation
      unless @character_name.include?('_jump')
        @character_name = @dup_character_name + '_jump'
      end
      # Isometric Animation
      if @enable_isometric_animation
        @direction = @jump_direction
      end
    end
    @jump_direction = @direction
  end
  #--------------------------------------------------------------------------
  # * Update frame (move)
  #--------------------------------------------------------------------------
  def update_move
    # Original Update Move
    seph_wsdanim_gameplayer_um
    # Sneak Animation
    if @sneaking && @enable_sneaking_animation
      unless @character_name.include?('_sneak')
        @character_name = @dup_character_name + '_sneak'
      end
    elsif @dashing && @enable_dashing_animation
      unless @character_name.include?('_dash')
        @character_name = @dup_character_name + '_dash'
      end
    else
      @character_name = @dup_character_name
    end
    # Isometric Animation
    @direction = @jump_direction if enable_isometric_animation
  end
  #--------------------------------------------------------------------------
  # * Frame Update (stop)
  #--------------------------------------------------------------------------
  def update_stop
    # Original Update Stop
    seph_wsdanim_gameplayer_us
    # Restore Character Name
    if @pattern == @original_pattern
      @character_name = @dup_character_name
    end
    # Standing Animations
    if @enable_standing_animation
      @step_anime = true
      unless @character_name.include?('_stand')
        @character_name = @dup_character_name + '_stand'
      end
    else
      @step_anime = false
      @character_name = @dup_character_name
    end
    # Isometric Animation
    @direction = @jump_direction if enable_isometric_animation
  end
  #--------------------------------------------------------------------------
  # * Player Movement Update
  #--------------------------------------------------------------------------
  def update_player_movement
    # If Isometic Enabled
    if @enable_isometric
      # Branch Point By Input
      case Input.dir8
      when 1 # Down-Left
        move_lower_left
        return
      when 3 # Down-Right
        move_lower_right
        return
      when 7
        move_upper_left
        return
      when 9
        move_upper_right
        return
      end
    end
    # Original Update Player Movement
    seph_wsdanim_gameplayer_upm
  end
  #--------------------------------------------------------------------------
  # * Move Down
  #--------------------------------------------------------------------------
  def move_down(turn_enabled = true)
    # Original Move Down
    seph_wsdanim_gameplayer_md(turn_enabled)
    # Adjust Jump Direction
    @jump_direction = @direction
  end
  #--------------------------------------------------------------------------
  # * Move Left
  #--------------------------------------------------------------------------
  def move_left(turn_enabled = true)
    # Original Move Left
    seph_wsdanim_gameplayer_ml(turn_enabled)
    # Adjust Jump Direction
    @jump_direction = @direction
  end
  #--------------------------------------------------------------------------
  # * Move Right
  #--------------------------------------------------------------------------
  def move_right(turn_enabled = true)
    # Original Move Right
    seph_wsdanim_gameplayer_mr(turn_enabled)
    # Adjust Jump Direction
    @jump_direction = @direction
  end
  #--------------------------------------------------------------------------
  # * Move up
  #--------------------------------------------------------------------------
  def move_up(turn_enabled = true)
    # Original Move Up
    seph_wsdanim_gameplayer_mu(turn_enabled)
    # Adjust Jump Direction
    @jump_direction = @direction
  end
  #--------------------------------------------------------------------------
  # * Move Lower Left
  #--------------------------------------------------------------------------
  def move_lower_left
    # Original Move Lower Left
    seph_wsdanim_gameplayer_mll
    # Isometric Animation
    @direction = 10 if enable_isometric_animation
    # Jump Direction
    @jump_direction = 10
  end
  #--------------------------------------------------------------------------
  # * Move Lower Right
  #--------------------------------------------------------------------------
  def move_lower_right
    # Original Move Lower Right
    seph_wsdanim_gameplayer_mlr
    # Isometric Animation
    @direction = 12 if enable_isometric_animation
    # Jump Direction
    @jump_direction = 12
  end
  #--------------------------------------------------------------------------
  # * Move Upper Left
  #--------------------------------------------------------------------------
  def move_upper_left
    # Original Move Upper Left
    seph_wsdanim_gameplayer_mul
    # Isometric Animation
    @direction = 14 if enable_isometric_animation
    # Jump Direction
    @jump_direction = 14
  end
  #--------------------------------------------------------------------------
  # * Move Upper Right
  #--------------------------------------------------------------------------
  def move_upper_right
    # Original Move Upper Right
    seph_wsdanim_gameplayer_mur
    # Isometric Animation
    @direction = 16 if enable_isometric_animation
    # Jump Direction
    @jump_direction = 16
  end
  #--------------------------------------------------------------------------
  # * Move at Random
  #--------------------------------------------------------------------------
  def move_random
    # Isometric Movement
    case rand(8)
    when 4 # Down-Left
      move_lower_left
    when 5 # Down-Right
      move_lower_right
    when 6 # Up-Left
      move_upper_left
    when 7 # up-Right
      move_upper_right
    else
      # Original Movement
      seph_wsdanim_gameplayer_mrand
    end
  end
  #--------------------------------------------------------------------------
  # * 1 Step Forward
  #--------------------------------------------------------------------------
  def move_forward
    # Isometric Movement
    case @jump_direction
    when 10
      move_lower_left
    when 12
      move_lower_right
    when 14
      move_upper_left
    when 16
      move_upper_right
    else
      # Original Movement
      seph_wsdanim_gameplayer_mf
    end
  end
  #--------------------------------------------------------------------------
  # * 1 Step Backward
  #--------------------------------------------------------------------------
  def move_backward
    # Remember direction fix situation
    last_direction_fix = @direction_fix
    # Force direction fix
    @direction_fix = true
    # Isometric Movement
    case @jump_direction
    when 10
      move_upper_right
    when 12
      move_upper_left
    when 14
      move_lower_right
    when 16
      move_lower_left
    else
      # Original Movement
      seph_wsdanim_gameplayer_mb
    end
    # Return direction fix situation back to normal
    @direction_fix = last_direction_fix
  end
  #--------------------------------------------------------------------------
  # * Max Sneak Level
  #  ~ Nil For Unlimited
  #--------------------------------------------------------------------------
  def max_sneak_level
    return 5 + @max_sneak_bonus
  end
  #--------------------------------------------------------------------------
  # * Max Dash Level
  #  ~ Nil For Unlimited
  #--------------------------------------------------------------------------
  def max_dash_level
    return 5 + @max_dash_bonus
  end
  #--------------------------------------------------------------------------
  # * Frame Update : Sneak
  #--------------------------------------------------------------------------
  def update_sneak
    # If Sneak Button is Pressed
    if Input.press?(Sneak_Button)
      # If Sneak Level is Greater than 0 (Or Max is nil)
      if @current_sneak_level > 0 || max_sneak_level.nil?
        # Turn Sneaking On
        @sneaking = true
        # Adjust Move Speed
        @move_speed = Sneak_Speed
        return
      end
    end
    # Turn Sneaking Off
    @sneaking = false
  end
  #--------------------------------------------------------------------------
  # * Frame Update : Sneak Level
  #--------------------------------------------------------------------------
  def update_sneak_level
    # If Sneaking
    if @sneaking
      # Lose 1 Every Sneak Cost
      if Graphics.frame_count % (Graphics.frame_rate * Sneak_Cost) == 0
        # Decrease Sneak
        @current_sneak_level -= 1
      end
    # Recover Sneak
    else
      # Gain 1 Every Sneak Recover
      if Graphics.frame_count % (Graphics.frame_rate * Sneak_Recover) == 0
        # Increase Sneak Level
        @current_sneak_level += 1 if @current_sneak_level < max_sneak_level
      end
    end
  end
  #--------------------------------------------------------------------------
  # * Frame Update : Dash
  #--------------------------------------------------------------------------
  def update_dash
    # If Dash Button is Pressed
    if Input.press?(Dash_Button)
      # If Dash Level is Greater than 0 (Or Max is nil)
      if @current_dash_level > 0 || max_dash_level.nil?
        # Turn Dash On
        @dashing = true
        # Adjust Move Speed
        @move_speed = Dash_Speed
        return
      end
    end
    # Turn Dash Off
    @dashing = false
  end
  #--------------------------------------------------------------------------
  # * Frame Update : Dash Level
  #--------------------------------------------------------------------------
  def update_dash_level
    # If Dashing
    if @dashing
      # Lose 1 Every Dash Cost
      if Graphics.frame_count % (Graphics.frame_rate * Dash_Cost) == 0
        # Decrease Dash
        @current_dash_level -= 1
      end
    # Recover Dash
    else
      # Gain 1 Every Dash Recover
      if Graphics.frame_count % (Graphics.frame_rate * Dash_Recover) == 0
        # Increase Dash Level
        @current_dash_level += 1 if @current_dash_level < max_dash_level
      end
    end
  end
  #--------------------------------------------------------------------------
  # * Frame Update : Walk
  #--------------------------------------------------------------------------
  def update_walk
    # Reset Move Speed (Walking)
    unless @sneaking || @dashing
      @move_speed = Walk_Speed
    end
  end
  #--------------------------------------------------------------------------
  # * Frame Update : Jumping
  #--------------------------------------------------------------------------
  def update_jumping
    # If Jump Button Pressed
    if Input.trigger?(Jump_Button)
      # Gets Distance
      dist = @sneaking ? S_Jump_Dis : @dashing ? D_Jump_Dis : W_Jump_Dis
      # Case Jump Direction
      case @jump_direction
      when 2 # Down
        jump(0, dist)
      when 4 # Left
        jump(- dist, 0)
      when 6 # Right
        jump(dist, 0)
      when 8 # Up
        jump(0, - dist)
      when 10 # Down-Left
        jump(- dist, dist)
      when 12 # Down-Right
        jump(dist, dist)
      when 14 # Up-Left
        jump(- dist, - dist)
      when 16 # Up-Right
        jump(dist, - dist)
      end
    end
  end
  #--------------------------------------------------------------------------
  # * Front Event Starting Determinant
  #--------------------------------------------------------------------------
  def check_event_trigger_there(triggers)
    # If event is running
    if $game_system.map_interpreter.running?
      return false
    end
    # Isometric Direction
    if @enable_isometric_animation
      if [10, 12, 14, 16].include?(@jump_direction)
        check_event_trigger_there_iso(triggers)
        return
      end
    end
    # Original Check Event Trigger
    seph_wsdanim_gameplayer_cett(triggers)
  end
  #--------------------------------------------------------------------------
  # * Front Event Starting Determinant (Isometric)
  #--------------------------------------------------------------------------
  def check_event_trigger_there_iso(triggers)
    result = false
    # Calculate front event coordinates
    case @jump_direction
    when 10
      new_x, new_y = @x - 1, @y + 1
    when 12
      new_x, new_y = @x + 1, @y + 1
    when 14
      new_x, new_y = @x - 1, @y - 1
    when 16
      new_x, new_y = @x + 1, @y - 1
    end
    # All event loops
    for event in $game_map.events.values
      # If event coordinates and triggers are consistent
      if event.x == new_x and event.y == new_y and
         triggers.include?(event.trigger)
        # If starting determinant is front event (other than jumping)
        if not event.jumping? and not event.over_trigger?
          event.start
          result = true
        end
      end
    end
    # If fitting event is not found
    if result == false
      # If front tile is a counter
      if $game_map.counter?(new_x, new_y)
        # Calculate 1 tile inside coordinates
        new_x += (@direction == 6 ? 1 : @direction == 4 ? -1 : 0)
        new_y += (@direction == 2 ? 1 : @direction == 8 ? -1 : 0)
        # All event loops
        for event in $game_map.events.values
          # If event coordinates and triggers are consistent
          if event.x == new_x and event.y == new_y and
             triggers.include?(event.trigger)
            # If starting determinant is front event (other than jumping)
            if not event.jumping? and not event.over_trigger?
              event.start
              result = true
            end
          end
        end
      end
    end
    return result
  end
end

#==============================================================================
# ** Sprite_Character
#==============================================================================

class Sprite_Character < RPG::Sprite
  #--------------------------------------------------------------------------
  # * Alias Listings
  #--------------------------------------------------------------------------
  alias seph_wsdanim_sprchara_update update
  #--------------------------------------------------------------------------
  # * Frame Update
  #--------------------------------------------------------------------------
  def update
    super
    # If Game Player
    if @character.is_a?(Game_Player)
      if @character.enable_isometric_animation
        # If tile ID, file name, or hue are different from current ones
        if @tile_id != @character.tile_id or
           @character_name != @character.character_name or
           @character_hue != @character.character_hue
          # Remember tile ID, file name, and hue
          @tile_id = @character.tile_id
          @character_name = @character.character_name
          @character_hue = @character.character_hue
          # If tile ID value is valid
          if @tile_id >= 384
            self.bitmap = RPG::Cache.tile($game_map.tileset_name,
              @tile_id, @character.character_hue)
            self.src_rect.set(0, 0, 32, 32)
            self.ox = 16
            self.oy = 32
          # If tile ID value is invalid
          else
            self.bitmap = RPG::Cache.character(@character.character_name,
              @character.character_hue)
            @cw = bitmap.width / 4
            @ch = bitmap.height / 8
            self.ox = @cw / 2
            self.oy = @ch
          end
        end
        # Set visible situation
        self.visible = (not @character.transparent)
        # If graphic is character
        if @tile_id == 0
          # Set rectangular transfer
          sx = @character.pattern * @cw
          sy = (@character.direction - 2) / 2 * @ch
          self.src_rect.set(sx, sy, @cw, @ch)
        end
        # Set sprite coordinates
        self.x = @character.screen_x
        self.y = @character.screen_y
        self.z = @character.screen_z(@ch)
        # Set opacity level, blend method, and bush depth
        self.opacity = @character.opacity
        self.blend_type = @character.blend_type
        self.bush_depth = @character.bush_depth
        # Animation
        if @character.animation_id != 0
          animation = $data_animations[@character.animation_id]
          animation(animation, true)
          @character.animation_id = 0
        end
        return
      end
    end
    # Original Update
    seph_wsdanim_sprchara_update
  end
end

#------------------------------------------------------------------------------
# * End SDK Enable Test
#------------------------------------------------------------------------------
end

Well, there it is, most everything you need to edit/know is in the first 200 lines.
Youll probably need a demo, its got the resource names for diagonal guys and such.

http://savefile.com/files/409004

Credits go to sephirothspawn!

*wonders if this will work with the metroid game*

**
Rep: +0/-0Level 88
~Genma
What do you mean a demo? If you mean A.) someone to show me how to use it, or B.) someone who has a isometric movement sprite sheet template, then yes, i need both ahahaha. Thanks alot though!
"What a terible night to have a curse..."

***
Rep:
Level 88
Smarter than the average bear
Humm, yeah its an RMXP demo, its just there to show u how it works, and what to name your sprites for diagonal movements. Like if you have 001-Fighter01 as your guys sprite, the sprite named 001-Fighter01_diagonal will be its diagonal movements. (not sure if thats correct, but check the demo)

**
Rep:
Level 87
Hell Hath No Fury
Humm, yeah its an RMXP demo, its just there to show u how it works, and what to name your sprites for diagonal movements. Like if you have 001-Fighter01 as your guys sprite, the sprite named 001-Fighter01_diagonal will be its diagonal movements. (not sure if thats correct, but check the demo)
Can you put it in a compressed zipped folder? i don't have WinZip and i cant get it  >:(
Like, one time, I played RPG Maker, and I liked it.

***
Rep:
Level 88
Smarter than the average bear
Umm, that statement is a little contradictory..
Do you want it in a compressed file or not one because you dont have winzip!?!?!

anyway get winrar, you wont regret it. Google it.

********
EXA
Rep:
Level 92
Pikachu on a toilet
Project of the Month winner for April 2007
And you don't need WinZip to unzip zipped .zip files. (LOL!)
Windoze has a .zip Encryptor/Decryptor built in.
Get King of Booze for Android, for iOS, for OUYA or for Windows!
Visit our website.
You can also love/hate us on Facebook or the game itself.


Get DropBox, the best free file syncing service there is!