Últimos temas
» Proyecto Cristal [MV]
por Rafaxter Ayer a las 8:22 pm

» Al acabar los PM que se ponga el estado "x"
por Pokefanmati Dom Jul 23, 2017 7:58 pm

» [ACE] La Aventura de Sonik
por Sonik Sáb Jul 22, 2017 11:57 pm

» [XP] Engine de Terreno de Calayax
por Calayax Sáb Jul 22, 2017 1:40 am

» Taller del BGM
por ZororoWhite Vie Jul 21, 2017 12:48 pm

» Concurso de screens - Mayo/Junio 2017 [Resultados]
por ZororoWhite Vie Jul 21, 2017 12:44 pm

» Ayuda cob Interruptores
por KRiZaLiD Vie Jul 21, 2017 7:02 am

» Ayuda - Quitar opción de atravesar todo RPG VX ACE
por KRiZaLiD Vie Jul 21, 2017 6:57 am

» KUnits XP 2017
por kyonides Vie Jul 21, 2017 5:37 am

» Evento Comunes...todavía no la cazo bien con algo
por Calayax Jue Jul 20, 2017 8:50 pm

» Guía de trucos para ACE
por Pokefanmati Jue Jul 20, 2017 8:03 am

» Que el personaje desaparezca al usar habilidad [ayuda] [MV]
por Dream Jue Jul 20, 2017 5:53 am


ayuda con LAG T_T

Ver el tema anterior Ver el tema siguiente Ir abajo

ayuda con LAG T_T

Mensaje por stiven202 el Lun Jul 06, 2015 6:51 pm

Tengo un problema que me esta desesperando para RPG MAKER VX ACE

Tengo un evento en "inicio automatico" para una escena con pocos dialogos y este me causa lag, hace que el juego baje de los 60 FPS que va normalmente y lo peor, el lag nunca se quita, una vez iniciado ese evento sigue con lag eternamente, no importa lo que haga.

Deben saber varias cosas:

1. No tengo otros eventos en proceso paralelo ni en el mapa ni en eventos comunes.
2. He probado borrando el evento de inicio automatico y aun asi va con lag.

Este es el evento en cuestion...

link: http://illiweb.com/fa/pbucket.gif



Me parece muy raro que un solo evento en "Inicio automático" cause lag indefinidamente sabiendo que le asigno "2" a la variable para que pase a otra pagina en donde ya está en "proceso paralelo" y no hay nada de código ahí.

Ustedes diran: "y por qué no lo haces todo con proceso paralelo?" y yo les digo que lo quiero hacer con "inicio automático" porque de esta manera evito que el personaje pueda moverse mientras van apareciendo los diálogos.

Prácticamente esto haría inutilizable los eventos con detonate "inicio automático", si siempre van a causar lag.

¿me podrian ayudar con esto? que podria estar causando tanto lag? gracias.
avatar
stiven202
PJ de Relleno
PJ de Relleno

Masculino
Colombia
RPG Maker : Xp
Mensajes : 24
Monedas : 55
Reputación : 2
Edad : 28

Volver arriba Ir abajo

Re: ayuda con LAG T_T

Mensaje por JapoZero el Lun Jul 06, 2015 7:18 pm

Revisa si otros eventos con inicio automático te dan el problema antes que nada.
En las configuraciones del evento, quita el "borrar evento" al final, ya que no tiene uso si ya lleva a una página vacía.
Revisa que el evento NO tenga un movimiento fijado (aleatorio, seguir al personaje, o alguno por ese estilo que pueda estar dando problema) y que no este clonado en el mapa.
Si sigue dando lag, revisa que la variable que usaste no esté siendo usada por un evento común que la verifique en exceso (porque eso podría causar lag potencial).
Si no es ninguna de esas, prueba el evento en un proyecto en blanco y revisa si hay alguna solución.
Cualquier cosa, avisa.
Salu2
avatar
JapoZero
PJ Principal
PJ Principal

Masculino
Chile
RPG Maker : Ace
Mensajes : 640
Monedas : 3691
Reputación : 224
Edad : 17
Localización : Chile

Volver arriba Ir abajo

Re: ayuda con LAG T_T

Mensaje por fatyguero el Miér Jul 08, 2015 4:50 pm

Antes de ese evento automatico has creado alguna otra escena en la que pones muchas imagenes???? lo mas seguro es que si xD, el problema esta en que cuando colocas una imagen y aunque utilices el comando borrar imagen se queda un archivo basura guardado en la cache del maker por lo que si pones muchas imagenes se acumulan esos archivos que nunca se eliminan y esto causa un lago horroroso a la larga...

lo mejor es utilizar este script:
Código:

    #==============================================================================
    # ? Mithran Picture Bug Fix
    # -- Created: 3/12/2012
    #==============================================================================
    # The problem is caused when a picture is erased it holds an assoicated "picture"
    # object in memory as long as you stay on the same scene. Every time that picture
    # object comes up, it creates a NEW blank bitmap, every frame, basically if you
    # want it to lag, create a lot of blank pictures when they get garbage collected,
    # it lags.

    # Each erased picture creates a single 32x32 blank bitmap to associate
    # itself with, every frame, same with any picture shown as (none). Since the lag
    # is caused by garbage collection, which is basically uncontrollabe with Ruby.
    #
    # The reason why it constantly creates new blank pictures is because the base
    # scripts check for the picture name. And if it's "" (aka no picture name),
    # it keeps creating. When a picture is erased, it sets to ""
    #
    # This script fixes that.
    #==============================================================================

    class Sprite_Picture
      def update_bitmap
        if @picture.name != @pic_name
          self.bitmap = Cache.picture(@picture.name)
        end
        @pic_name = @picture.name
      end
     
    end


    class Spriteset_Map
     
      def update_pictures
        $game_map.screen.pictures.each do |pic|
          @picture_sprites[pic.number] ||= Sprite_Picture.new(@viewport2, pic)
          @picture_sprites[pic.number].update
          if pic.name == ""
            $game_map.screen.pictures.remove(pic.number)
            @picture_sprites[pic.number].dispose
            @picture_sprites[pic.number] = nil
          end
        end
      end

    end

    class Game_Pictures
     
      def remove(index)
        @data[index] = nil
      end
     
    end
Lo pones encima de main y listo no mas problemas con esa cosa.

Y si aun asi tienes problemas utiliza tambien este otro, pegalo encima de el anterior:

Código:
    #==============================================================================
    # +++ MOG - Anti Animation Lag (v1.1) +++
    #==============================================================================
    # By Moghunter
    # http://www.atelier-rgss.com
    #==============================================================================
    # Este script remove as travadas (Lag) relacionadas ao dispose de uma animação.
    #==============================================================================

    #==============================================================================
    # Durante a execução do jogo o Rpg Maker VX ACE leva um tempo considerável para
    # ler ou apagar (Dispose) um arquivo. (Imagem, som ou video)
    # O que acaba acarretando pequenas travadas durante o jogo, efeito perceptível
    # ao usar arquivos relativamente pesados. (Arquivos de animações.)
    #==============================================================================
    # NOTA - Este script não elimina as travadas relacionadas ao tempo de leitura
    # de uma animação, apenas ao tempo relacionado para apagar uma animação.
    #==============================================================================
     
    $imported = {} if $imported.nil?
    $imported[:mog_anti_animation_lag] = true

    #===============================================================================
    # ■ Game_Temp
    #===============================================================================
    class Game_Temp
      attr_accessor :animation_garbage
     
      #--------------------------------------------------------------------------
      # ● Initialize
      #-------------------------------------------------------------------------- 
      alias mog_anti_lag_animation_initialize initialize
      def initialize
          @animation_garbage = []
          mog_anti_lag_animation_initialize
      end 
     
    end

    #===============================================================================
    # ■ Game System
    #===============================================================================
    class Game_System
     
      attr_accessor :anti_lag_animation
     
      #--------------------------------------------------------------------------
      # ● Initialize
      #--------------------------------------------------------------------------   
      alias mog_antilag_animation_initialize initialize
      def initialize
          @anti_lag_animation = true
          mog_antilag_animation_initialize
      end 
     
    end 

    #===============================================================================
    # ■ SceneManager
    #===============================================================================
    class << SceneManager
     
      #--------------------------------------------------------------------------
      # ● Call
      #-------------------------------------------------------------------------- 
      alias mog_anti_lag_animation_call call
      def call(scene_class)
          mog_anti_lag_animation_call(scene_class)
          dispose_animation_garbage
      end 
     
      #--------------------------------------------------------------------------
      # ● Goto
      #--------------------------------------------------------------------------   
      alias mog_anti_lag_animation_goto goto
      def goto(scene_class)
          mog_anti_lag_animation_goto(scene_class)
          dispose_animation_garbage
      end
     
      #--------------------------------------------------------------------------
      # ● Dispose Animation Garbage
      #-------------------------------------------------------------------------- 
      def dispose_animation_garbage
          return if $game_temp.animation_garbage == nil
          for animation in $game_temp.animation_garbage
              animation.dispose
          end 
          $game_temp.animation_garbage = nil
      end 

    end

    #==============================================================================
    # ■ Game Map
    #==============================================================================
    class Game_Map
     
      #--------------------------------------------------------------------------
      # ● Setup
      #--------------------------------------------------------------------------   
      alias mog_anti_lag_animation_setup setup
      def setup(map_id)
          SceneManager.dispose_animation_garbage
          mog_anti_lag_animation_setup(map_id)
      end

    end

    #==============================================================================
    # ■ Scene Base
    #==============================================================================
    class Scene_Base
     
      #--------------------------------------------------------------------------
      # ● Terminate
      #--------------------------------------------------------------------------     
      alias mog_anti_lag_animation_terminate terminate
      def terminate
          mog_anti_lag_animation_terminate
          SceneManager.dispose_animation_garbage
      end
     
    end

    #==============================================================================
    # ■ Sprite Base
    #==============================================================================
    class Sprite_Base < Sprite 

      #--------------------------------------------------------------------------
      # ● Dispose Animation
      #--------------------------------------------------------------------------
      alias mog_anti_lag_animation_dispose_animation dispose_animation
      def dispose_animation
          if $game_system.anti_lag_animation 
            execute_animation_garbage 
            return
          end 
          mog_anti_lag_animation_dispose_animation
      end
       
      #--------------------------------------------------------------------------
      # ● Execute Animation Garbage
      #-------------------------------------------------------------------------- 
      def execute_animation_garbage 
          $game_temp.animation_garbage = [] if $game_temp.animation_garbage == nil
          if @ani_bitmap1
            @@_reference_count[@ani_bitmap1] -= 1
            if @@_reference_count[@ani_bitmap1] == 0
                $game_temp.animation_garbage.push(@ani_bitmap1)
            end
          end
          if @ani_bitmap2
            @@_reference_count[@ani_bitmap2] -= 1
            if @@_reference_count[@ani_bitmap2] == 0
                $game_temp.animation_garbage.push(@ani_bitmap2)
            end
        end
        if @ani_sprites
            @ani_sprites.each {|sprite| sprite.dispose }
            @ani_sprites = nil ; @animation = nil
        end
        @ani_bitmap1 = nil ; @ani_bitmap2 = nil
      end   
     
    end

El famoso antilag de mog.

Con esos dos script no deverias de tener ningun problema, pero si persisten es porque tienes algun evento en proceso paralelo como dice Japo, revisa todo.

saluuuuuuuuuuudos
avatar
fatyguero
PJ Principal
PJ Principal

Masculino
Argentina
RPG Maker : Ace
Mensajes : 341
Monedas : 375
Reputación : 92
Edad : 33
Localización : en el culo del mundo... digo el centro xD

Volver arriba Ir abajo

Re: ayuda con LAG T_T

Mensaje por Contenido patrocinado


Contenido patrocinado


Volver arriba Ir abajo

Ver el tema anterior Ver el tema siguiente Volver arriba

- Temas similares

 
Permisos de este foro:
No puedes responder a temas en este foro.