Envision, Create, Share

Welcome to HBGames, a leading amateur game development forum and Discord server. All are welcome, and amongst our ranks you will find experts in their field from all aspects of video game design and development.

Weird error "Script Is Hanging"

I'm making a new script and when I start the game, it shows me an error that says "Script Is Hanging". What does that mean? How can I avoid it?

Edit
It seems to do this on $game_player.refresh. When i remove it, it works but it's weird.
Curiously, it was working this afternoon.
 

Aran

Member

aahh... i had a problem like this before. same error n everything... i forget how it was handled... it occurs tho when sumthing keeps occuring without an end or sumthin like that.
 
That's weird, it was working this afternoon and i posted it in the Submited Script section. Anyway, here's my script. It's placed directly above main
.
Code:
#------------------------------------------------------------------------------
# * SDK Log Script
#------------------------------------------------------------------------------
SDK.log('Title Map & Intro Script', 'Dargor', 1, '2006-08-18')

#------------------------------------------------------------------------------
# * Begin SDK Enable Test
#------------------------------------------------------------------------------
if SDK.state('Title Map & Intro Script') == true
  class Startup
    #--------------------------------------------------------------------------
    # * Main
    #--------------------------------------------------------------------------
    def main
      SDK.write
      # Some variables
      @map_id = 1
      @pos_x = 1
      @pos_y = 1
      # Load database
      $data_actors        = load_data("Data/Actors.rxdata")
      $data_classes       = load_data("Data/Classes.rxdata")
      $data_skills        = load_data("Data/Skills.rxdata")
      $data_items         = load_data("Data/Items.rxdata")
      $data_weapons       = load_data("Data/Weapons.rxdata")
      $data_armors        = load_data("Data/Armors.rxdata")
      $data_enemies       = load_data("Data/Enemies.rxdata")
      $data_troops        = load_data("Data/Troops.rxdata")
      $data_states        = load_data("Data/States.rxdata")
      $data_animations    = load_data("Data/Animations.rxdata")
      $data_tilesets      = load_data("Data/Tilesets.rxdata")
      $data_common_events = load_data("Data/CommonEvents.rxdata")
      $data_system        = load_data("Data/System.rxdata")
      # If in debug mode, go directly to the title screen
      if $DEBUG
        setup_title_map
        $scene = Scene_Title.new
      else
        # Check if there is at least one save file
        for i in 0..3
          if FileTest.exist?("Save#{i+1}.rxdata")
            @continue_enabled = true
          end
        end
        # If there is at leats one save file, go to title screen
        if @continue_enabled
          setup_title_map
          $scene = Scene_Title.new
        else
        # If there is no save file, go to the intro
          command_intro
        end
      end
    end
    #--------------------------------------------------------------------------
    # * Setup Title Map
    #--------------------------------------------------------------------------
    def setup_title_map
      # Reset frame count for measuring play time
      Graphics.frame_count = 0
      # Make each type of game object
      $game_temp          = Game_Temp.new
      $game_system        = Game_System.new
      $game_switches      = Game_Switches.new
      $game_variables     = Game_Variables.new
      $game_self_switches = Game_SelfSwitches.new
      $game_screen        = Game_Screen.new
      $game_actors        = Game_Actors.new
      $game_party         = Game_Party.new
      $game_troop         = Game_Troop.new
      $game_map           = Game_Map.new
      $game_player        = Game_Player.new
      # Set up initial party
      $game_party.setup_starting_members
      # Set up initial map position
      $game_map.setup(@map_id)
      # Move player to initial position
      $game_player.moveto(1, 1)
      # Refresh player
      $game_player.refresh
      # Run automatic change for BGM and BGS set with map
      $game_map.autoplay
      # Update map (run parallel process event)
      $game_map.update
    end
    def command_intro
      # Make system object
      $game_system = Game_System.new
      # Reset frame count for measuring play time
      Graphics.frame_count = 0
      # Make each type of game object
      $game_temp          = Game_Temp.new
      $game_system        = Game_System.new
      $game_switches      = Game_Switches.new
      $game_variables     = Game_Variables.new
      $game_self_switches = Game_SelfSwitches.new
      $game_screen        = Game_Screen.new
      $game_actors        = Game_Actors.new
      $game_party         = Game_Party.new
      $game_troop         = Game_Troop.new
      $game_map           = Game_Map.new
      $game_player        = Game_Player.new
      # Set up initial party
      $game_party.setup_starting_members
      # Set up initial map position
      $game_map.setup($data_system.start_map_id)
      # Move player to initial position
      $game_player.moveto($data_system.start_x, $data_system.start_y)
      # Refresh player
      $game_player.refresh
      # Run automatic change for BGM and BGS set with map
      $game_map.autoplay
      # Update map (run parallel process event)
      $game_map.update
      # Switch to map screen
      $scene = Scene_Map.new
    end
  end
  #==============================================================================
  # ** Scene_Title
  #------------------------------------------------------------------------------
  #  This class performs title screen processing.
  #==============================================================================

  class Scene_Title
    #--------------------------------------------------------------------------
    # * Background Initialization
    #--------------------------------------------------------------------------
    def main_background
      # Make title graphic
      @spriteset = Spriteset_Map.new
    end
    #--------------------------------------------------------------------------
    # * Main Menu Initialization
    #--------------------------------------------------------------------------
    def main_menu
      # Make command window
      s1 = "New Game"
      s2 = "Continue"
      s3 = "Shutdown"
      @command_window = Window_Command.new(190,[s1,s2,s3])
      @command_window.back_opacity = 160
      @command_window.x = 320 - @command_window.width / 2
      @command_window.y = 288
      @command_window.opacity = 0
      @command_window.disable_cursor
    end
    #--------------------------------------------------------------------------
    # * Frame Update
    #--------------------------------------------------------------------------
    alias map_title_screen_update update
    def update
      # Update map, interpreter, and player order
      # (this update order is important for when conditions are fulfilled 
      # to run any event, and the player isn't provided the opportunity to
      # move in an instant)
      $game_map.update
      $game_system.map_interpreter.update
      # Update system (timer), screen
      $game_system.update
      $game_screen.update
      @spriteset.update
      map_title_screen_update
    end
  end
#--------------------------------------------------------------------------
# * End SDK Enable Test
#--------------------------------------------------------------------------
end
 
I have already tried it but it didn't work :S
I have placed this just before the last end in main.
Code:
# Execute transition
    Graphics.transition
    # Main loop
    loop do
      # Update game screen
      Graphics.update
      # Update input information
      Input.update
      # Frame update
      update
      # Abort loop if screen is changed
      if $scene != self
        break
      end
    end
    # Prepare for transition
    Graphics.freeze

It did nothing.

OK i have resolved the problem, thanks all of you ;)
 

Thank you for viewing

HBGames is a leading amateur video game development forum and Discord server open to all ability levels. Feel free to have a nosey around!

Discord

Join our growing and active Discord server to discuss all aspects of game making in a relaxed environment. Join Us

Content

  • Our Games
  • Games in Development
  • Emoji by Twemoji.
    Top