Lune Ultimate Anti-Lag

Raizen

Veteran
Veteran
Joined
Oct 24, 2012
Messages
228
Reaction score
237
First Language
Portuguese
Primarily Uses
RMMV
Lune Ultimate Anti-Lag
 
Introduction
This script will improve the games performance and handle better against parallel programming, multiple events and graphical systems/scripts
 
Features
- Corrected the classical bug in Anti-lags when teleporting other events
- Handles smartly the FPS to adjust to the needs of each map and players PC
- The classical anti-lag also present, in which events out of the map are only updated at your will
- Increases the RPG Maker priority over other programs
 
Portuguese user? Access the portuguese script here
 
Screenshots
Not necessary
 
 
How to Use
Put it above main and configure the script as necessary
 
Script
 
 

#=======================================================# Lune Ultimate Anti-Lag# Author: Raizen# Compatible with: RMVXAce# Comunity: centrorpg.com# This script allows a very well balanced anti-lag, in which# considers the own PC of the player, using a smart frame-skipper# to slow lags,#========================================================#To update constantly the event, put a commentary on the first# command of the script written :update:module Anti_conf#==============================================================================# ** Configurations#------------------------------------------------------------------------------# Configure what is necessary for a better performance.#==============================================================================# Choose how the script will act.# <=====Quality============================Performance=====># 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20# Default = 10Fr = 10# Configure the FPS rate (default = 60)Fps = 60# Configure the minimum FPS rate (default = 25)Mini = 25# Quantity of frames the anti-lag will study,# the higher the time, the more precise the script, # but will take longer to load the anti-lagTime = 60end=beginFunctions on this Anti-Lag* Common event positioning bug fixed* Smart Frame Skipper* updates what is only necessary* helps to lower lags from visual system/scripts* Changes its behavior according to the players PC* Increases the RPG Maker priority over other programs=end#=================================================================##=================================================================##====================  Alias methods =============================## command_203          => Game_Interpreter# start                => Scene_Map# update               => Scene_Map# perform_transfer     => Scene_Map#=================================================================##====================  Rewrite methods ===========================## update_events        => Game_Map# update_one_event     => Spriteset_Map#=================================================================##========================  New methods ===========================## need_to_update?      => Game_Event# near_the_screen?     => Sprite_Character# call_position_event  => Scene_Map# skip_calculate       => Scene_Map# update_one_event     => Spriteset_Map#=================================================================##=================================================================# #==============================================================================#============================  Início do Script!  =============================#==============================================================================#==============================================================================# ** Scene_Map#------------------------------------------------------------------------------#  Esta classe executa o processamento da tela de mapa.#============================================================================== class Scene_Map < Scene_Basealias lune_skip_start startalias lune_skip_update updatealias lune_perform perform_transfer  #--------------------------------------------------------------------------  # * Inicialização do processo  #--------------------------------------------------------------------------  def start    Graphics.frame_rate = Anti_conf::Fps    @update_skip = false    @count_up = 0    lune_skip_start  end  #--------------------------------------------------------------------------  # * Execução da transferência  #--------------------------------------------------------------------------  def perform_transfer    $get_new_ids = Array.new    Graphics.frame_rate = Anti_conf::Fps    lune_perform    @count_up = 0    @update_skip = false  end  #--------------------------------------------------------------------------  # * Atualização da tela  #--------------------------------------------------------------------------  def update    @update_skip ? lune_skip_update : skip_calculate  end  #--------------------------------------------------------------------------  # * Atualização de um personagem especifico  #--------------------------------------------------------------------------  def call_position_event(id)    @spriteset.update_one_event(id)  end  #--------------------------------------------------------------------------  # * Calcula o tempo necessário para rodar o update do Scene_Map  #--------------------------------------------------------------------------    def skip_calculate    @count_up += 1    return unless @count_up >= Anti_conf::Time    auto_skip = Time.now    lune_skip_update    old_skip = Time.now    get_skip = old_skip - auto_skip    Graphics.frame_rate -= (get_skip * Graphics.frame_rate * 2 * Anti_conf::Fr - 1).to_i    Graphics.frame_rate = [Graphics.frame_rate, Anti_conf::Mini].max    @update_skip = true  endend  #==============================================================================# ** Scene_Base#------------------------------------------------------------------------------#  Esta é a superclasse de todas as cenas do jogo.#==============================================================================class Scene_Basealias skipper_main main  #--------------------------------------------------------------------------  # * Processamento principal  #--------------------------------------------------------------------------  def main    @fr_cont = 0    skipper_main  end  #--------------------------------------------------------------------------  # * Execução da transição  #--------------------------------------------------------------------------  def perform_transition    Graphics.transition(transition_speed * Graphics.frame_rate / 60)  end  #--------------------------------------------------------------------------  # * Atualização da tela (básico)  #--------------------------------------------------------------------------  def update_basic    if @fr_cont >= 60      Graphics.update             @fr_cont -= 60    end    @fr_cont += Graphics.frame_rate    update_all_windows    Input.update  endend #==============================================================================# ** Aumento da prioridade do rpg maker#------------------------------------------------------------------------------Lune_high = Win32API.new("kernel32", "SetPriorityClass", "pi", "i")Lune_high.call(-1, 0x90)#============================================================================== #==============================================================================# ** Game_Event#------------------------------------------------------------------------------#  Esta classe gerencia os eventos. Ela controla funções incluindo a mudança# de páginas de event por condições determinadas, e processos paralelos.# Esta classe é usada internamente pela classe Game_Map. #============================================================================== class Game_Event < Game_Character  #--------------------------------------------------------------------------  # * necessário atualizar?  #--------------------------------------------------------------------------  def need_to_update? return false unless @list    ax = $game_map.adjust_x(@real_x) - 8    ay = $game_map.adjust_y(@real_y) - 6    ax.between?(-9, 9) && ay.between?(-7, 7) || @list[0].parameters.include?(':update:')  endend #==============================================================================# ** Sprite_Character#------------------------------------------------------------------------------#  Este sprite é usado para mostrar personagens. Ele observa uma instância# da classe Game_Character e automaticamente muda as condições do sprite.#============================================================================== class Sprite_Character < Sprite_Base  #--------------------------------------------------------------------------  # * Evento próximo a tela?  #--------------------------------------------------------------------------  def near_the_screen?    ax = $game_map.adjust_x(@character.x) - 8    ay = $game_map.adjust_y(@character.y) - 6    ax.between?(-11, 11) && ay.between?(-8, 8)  endend#==============================================================================# ** Game_Event#------------------------------------------------------------------------------#  Esta classe gerencia os eventos. Ela controla funções incluindo a mudança# de páginas de event por condições determinadas, e processos paralelos.# Esta classe é usada internamente pela classe Game_Map. #============================================================================== class Game_Event < Game_Characteralias lune_ant_initialize initialize  #--------------------------------------------------------------------------  # * Inicialização do objeto  #     event : RPG::Event  #--------------------------------------------------------------------------  def initialize(*args, &block)    lune_ant_initialize(*args, &block)    $get_new_ids.push(@event.id)  endend #==============================================================================# ** Game_Interpreter#------------------------------------------------------------------------------#  Um interpretador para executar os comandos de evento. Esta classe é usada# internamente pelas classes Game_Map, Game_Troop e Game_Event.#============================================================================== class Game_Interpreteralias lune_lag_command_203 command_203  #--------------------------------------------------------------------------  # Definir posição do evento  #--------------------------------------------------------------------------  def command_203    lune_lag_command_203    SceneManager.scene.call_position_event($get_new_ids.index(@event_id))  endend#==============================================================================# ** Game_Map#------------------------------------------------------------------------------#  Esta classe gerencia o mapa. Inclui funções de rolagem e definição de # passagens. A instância desta classe é referenciada por $game_map.#============================================================================== class Game_Map  #--------------------------------------------------------------------------  # * Atualização dos comandos dos eventos  #--------------------------------------------------------------------------  def update_events    @events.each_value {|event| event.update if event.need_to_update?}    @common_events.each {|event| event.update}  endend  $get_new_ids = Array.new#==============================================================================# ** Spriteset_Map#------------------------------------------------------------------------------#  Esta classe reune os sprites da tela de mapa e tilesets. Esta classe é# usada internamente pela classe Scene_Map. #==============================================================================class Spriteset_Map  #--------------------------------------------------------------------------  # * Atualização dos personagens  #--------------------------------------------------------------------------  def update_characters    refresh_characters if @map_id != $game_map.map_id    @character_sprites.each {|sprite| sprite.update if sprite.near_the_screen? }  end  #--------------------------------------------------------------------------  # * Atualização de algum personagem remoto  #--------------------------------------------------------------------------  def update_one_event(id)    @character_sprites[id].update  endend
 
 

 
 
 
FAQ
Does it bugs the event position?
Answer is in the topic
 
If the FPS drops isn't it the same to just let the program decide?
 No, example, if you let your FPS drop to 20 without the anti-lag, it will be very unconstant the graphics frames, and will appear really "laggy", with the anti-lag it will set to 30 about, and will be way smoother the game.
 
Credit and Thanks
- Raizen- TheoAllen - for helping in bug fixing :)
 
Last edited by a moderator:

Nosleinad

Storyteller
Veteran
Joined
Dec 12, 2012
Messages
351
Reaction score
28
First Language
Portuguese
Primarily Uses
  This script is very interesting, as i am using light scripts, 640x480 res. and minimap. I tryed it and i entered the game with no problems, walked a little in my castle and went to the right where 02 guards are facing down. I could notice they appearing (like teleporting) when i was moving right. When i came back to the right, one fo them was literally pushed in the border of the window, like the screen was making him slide. When i came back to where he appears in the screen, he came back to it's normal position.

  Unfortunatelly there was no error message, it was only a visual bug with the default script configurations. If you need a screen or something, plz let me know.
 

Raizen

Veteran
Veteran
Joined
Oct 24, 2012
Messages
228
Reaction score
237
First Language
Portuguese
Primarily Uses
RMMV
@Nosleinad, thats actually because of the 640x480 res, since I made this script already thinking in the 544x416 xD, I was going to make an automatic check to see what res the user is using, but it would make the anti-lag way less effective.

Basically, on the line 209 it has this passage.

    ax.between?(-11, 11) && ay.between?(-8, 8)

thats how the screen in tiles will be updated, so if the 640x480 is bigger... you can change to something like this.

    ax.between?(-13, 13) && ay.between?(-10, 10)

Or if your kinda of confused what to do xD, I did it for you :) .

Code:
#=======================================================#         Lune Ultimate Anti-Lag# Author: Raizen# Compatible with: RMVXAce# Comunity: centrorpg.com# This script allows a very well balanced anti-lag, in which# considers the own PC of the player, using a smart frame-skipper# to slow lags,#========================================================#To update constantly the event, put a commentary on the first# command of the script written :update:module Anti_conf#==============================================================================# ** Configurations#------------------------------------------------------------------------------#  Configure what is necessary for a better performance.#==============================================================================# Choose how the script will act.# <=====Quality============================Performance=====># 1  2  3  4  5  6  7  8  9  10 11 12 13 14 15 16 17 18 19 20# Default = 10Fr = 10# Configure the FPS rate (default = 60)Fps = 60# Configure the minimum FPS rate (default = 25)Mini = 25# Quantity of frames the anti-lag will study,# the higher the time, the more precise the script, # but will take longer to load the anti-lagTime = 60end=beginFunctions on this Anti-Lag* Common event positioning bug fixed* Smart Frame Skipper* updates what is only necessary* helps to lower lags from visual system/scripts* Changes its behavior according to the players PC* Increases the RPG Maker priority over other programs=end#=================================================================##=================================================================##====================  Alias methods =============================## command_203          => Game_Interpreter# start                => Scene_Map# update               => Scene_Map# perform_transfer     => Scene_Map#=================================================================##====================  Rewrite methods ===========================## update_events        => Game_Map# update_one_event     => Spriteset_Map#=================================================================##========================  New methods ===========================## need_to_update?      => Game_Event# near_the_screen?     => Sprite_Character# call_position_event  => Scene_Map# skip_calculate       => Scene_Map# update_one_event     => Spriteset_Map#=================================================================##=================================================================# #==============================================================================#============================  Início do Script!  =============================#==============================================================================#==============================================================================# ** Scene_Map#------------------------------------------------------------------------------#  Esta classe executa o processamento da tela de mapa.#============================================================================== class Scene_Map < Scene_Basealias lune_skip_start startalias lune_skip_update updatealias lune_perform perform_transfer  #--------------------------------------------------------------------------  # * Inicialização do processo  #--------------------------------------------------------------------------  def start    Graphics.frame_rate = Anti_conf::Fps    @update_skip = false    @count_up = 0    lune_skip_start  end  #--------------------------------------------------------------------------  # * Execução da transferência  #--------------------------------------------------------------------------  def perform_transfer    $get_new_ids = Array.new    Graphics.frame_rate = Anti_conf::Fps    lune_perform    @count_up = 0    @update_skip = false  end  #--------------------------------------------------------------------------  # * Atualização da tela  #--------------------------------------------------------------------------  def update    @update_skip ? lune_skip_update : skip_calculate  end  #--------------------------------------------------------------------------  # * Atualização de um personagem especifico  #--------------------------------------------------------------------------  def call_position_event(id)    @spriteset.update_one_event(id)  end  #--------------------------------------------------------------------------  # * Calcula o tempo necessário para rodar o update do Scene_Map  #--------------------------------------------------------------------------    def skip_calculate    @count_up += 1    return unless @count_up >= Anti_conf::Time    auto_skip = Time.now    lune_skip_update    old_skip = Time.now    get_skip = old_skip - auto_skip    Graphics.frame_rate -= (get_skip * Graphics.frame_rate * 2 * Anti_conf::Fr - 1).to_i    Graphics.frame_rate = [Graphics.frame_rate, Anti_conf::Mini].max    @update_skip = true  endend  #==============================================================================# ** Scene_Base#------------------------------------------------------------------------------#  Esta é a superclasse de todas as cenas do jogo.#==============================================================================class Scene_Basealias skipper_main main  #--------------------------------------------------------------------------  # * Processamento principal  #--------------------------------------------------------------------------  def main    @fr_cont = 0    skipper_main  end  #--------------------------------------------------------------------------  # * Execução da transição  #--------------------------------------------------------------------------  def perform_transition    Graphics.transition(transition_speed * Graphics.frame_rate / 60)  end  #--------------------------------------------------------------------------  # * Atualização da tela (básico)  #--------------------------------------------------------------------------  def update_basic    if @fr_cont >= 60      Graphics.update             @fr_cont -= 60    end    @fr_cont += Graphics.frame_rate    update_all_windows    Input.update  endend #==============================================================================# ** Aumento da prioridade do rpg maker#------------------------------------------------------------------------------Lune_high = Win32API.new("kernel32", "SetPriorityClass", "pi", "i")Lune_high.call(-1, 0x90)#============================================================================== #==============================================================================# ** Game_Event#------------------------------------------------------------------------------#  Esta classe gerencia os eventos. Ela controla funções incluindo a mudança# de páginas de event por condições determinadas, e processos paralelos.# Esta classe é usada internamente pela classe Game_Map. #============================================================================== class Game_Event < Game_Character  #--------------------------------------------------------------------------  # * necessário atualizar?  #--------------------------------------------------------------------------  def need_to_update?    ax = $game_map.adjust_x(@real_x) - 8    ay = $game_map.adjust_y(@real_y) - 6    ax.between?(-9, 9) && ay.between?(-7, 7) || @list[0].parameters.include?(':update:')  endend #==============================================================================# ** Sprite_Character#------------------------------------------------------------------------------#  Este sprite é usado para mostrar personagens. Ele observa uma instância# da classe Game_Character e automaticamente muda as condições do sprite.#============================================================================== class Sprite_Character < Sprite_Base  #--------------------------------------------------------------------------  # * Evento próximo a tela?  #--------------------------------------------------------------------------  def near_the_screen?    ax = $game_map.adjust_x(@character.x) - 8    ay = $game_map.adjust_y(@character.y) - 6    ax.between?(-13, 13) && ay.between?(-10, 10)  endend#==============================================================================# ** Game_Event#------------------------------------------------------------------------------#  Esta classe gerencia os eventos. Ela controla funções incluindo a mudança# de páginas de event por condições determinadas, e processos paralelos.# Esta classe é usada internamente pela classe Game_Map. #============================================================================== class Game_Event < Game_Characteralias lune_ant_initialize initialize  #--------------------------------------------------------------------------  # * Inicialização do objeto  #     event : RPG::Event  #--------------------------------------------------------------------------  def initialize(*args, &block)    lune_ant_initialize(*args, &block)    $get_new_ids.push(@event.id)  endend #==============================================================================# ** Game_Interpreter#------------------------------------------------------------------------------#  Um interpretador para executar os comandos de evento. Esta classe é usada# internamente pelas classes Game_Map, Game_Troop e Game_Event.#============================================================================== class Game_Interpreteralias lune_lag_command_203 command_203  #--------------------------------------------------------------------------  # Definir posição do evento  #--------------------------------------------------------------------------  def command_203    lune_lag_command_203    SceneManager.scene.call_position_event($get_new_ids.index(@event_id))  endend#==============================================================================# ** Game_Map#------------------------------------------------------------------------------#  Esta classe gerencia o mapa. Inclui funções de rolagem e definição de # passagens. A instância desta classe é referenciada por $game_map.#============================================================================== class Game_Map  #--------------------------------------------------------------------------  # * Atualização dos comandos dos eventos  #--------------------------------------------------------------------------  def update_events    @events.each_value {|event| event.update if event.need_to_update?}    @common_events.each {|event| event.update}  endend  $get_new_ids = Array.new#==============================================================================# ** Spriteset_Map#------------------------------------------------------------------------------#  Esta classe reune os sprites da tela de mapa e tilesets. Esta classe é# usada internamente pela classe Scene_Map. #==============================================================================class Spriteset_Map  #--------------------------------------------------------------------------  # * Atualização dos personagens  #--------------------------------------------------------------------------  def update_characters    refresh_characters if @map_id != $game_map.map_id    @character_sprites.each {|sprite| sprite.update if sprite.near_the_screen? }  end  #--------------------------------------------------------------------------  # * Atualização de algum personagem remoto  #--------------------------------------------------------------------------  def update_one_event(id)    @character_sprites[id].update  endend
 
Last edited by a moderator:
  • Like
Reactions: Abi

Abi

Veteran
Veteran
Joined
Dec 3, 2012
Messages
191
Reaction score
10
First Language
English
Primarily Uses
Yay for a 640 x 480 version of this!
 

Nosleinad

Storyteller
Veteran
Joined
Dec 12, 2012
Messages
351
Reaction score
28
First Language
Portuguese
Primarily Uses
@Raizen Thanks a lot for pointing out the problem with the resolution, and i 'm happy it may help other people as well.

                There was no need for doing all the work rsrs, but thanks a lot for that too  BD

Edit: While walking a little in-game (after 1 min or so) with the modified script, i got this error:

http://imageshack.us/photo/my-images/839/screenhunter35mar051900.jpg/'>


 

 I am pretty sure i need to modify more codes between lines 184 and 211, but i don't know the exact values to completely avoid a crash with the 640x480 resolution.

class Game_Event < Game_Character
#--------------------------------------------------------------------------
# * necessário atualizar?
#--------------------------------------------------------------------------
def need_to_update?
ax = $game_map.adjust_x(@real_x) - 8
ay = $game_map.adjust_y(@real_y) - 6
ax.between?(-9, 9) && ay.between?(-7, 7) || @list[0].parameters.include?(':update:')
end
end

#==============================================================================
# ** Sprite_Character
#------------------------------------------------------------------------------
# Este sprite é usado para mostrar personagens. Ele observa uma instância
# da classe Game_Character e automaticamente muda as condições do sprite.
#==============================================================================

class Sprite_Character < Sprite_Base
#--------------------------------------------------------------------------
# * Evento próximo a tela?
#--------------------------------------------------------------------------
def near_the_screen?
ax = $game_map.adjust_x(@character.x) - 8
ay = $game_map.adjust_y(@character.y) - 6
ax.between?(-13, 13) && ay.between?(-10, 10)
end
end
 
Last edited by a moderator:

Raizen

Veteran
Veteran
Joined
Oct 24, 2012
Messages
228
Reaction score
237
First Language
Portuguese
Primarily Uses
RMMV
Oh.. Now I'm really having a trouble to simulate that, the error comes from here.

@list[0].parameters.include?, but I tried a lot of ways and no error came up on my tests :/

Ah and I tested with 640x480, the values I passed before don't quite work kk, I'll need to put some different ones :p .
 

Nosleinad

Storyteller
Veteran
Joined
Dec 12, 2012
Messages
351
Reaction score
28
First Language
Portuguese
Primarily Uses
I still have the script installed and if i can detail a more specific situation of the error i will tell you.  :)
 

Daemonium

Villager
Member
Joined
Mar 13, 2013
Messages
19
Reaction score
1
First Language
Spanish
Primarily Uses
I have the same issue, after some tests, I know that is caused by events deleted by "Erase Event" going out of screen, and by events that stays invisible until cumplits a condition (for example, be active when Switch 1 is ON, these kinds of conditions) being out of screen.

I hope you may fix these issues~

By the way, what is the use that you have planned with the comment :static:? Was for decorative events? That would help, can you try to do that the pages of the events with the :static: tag aren't NEVER proccessed by the RPG Maker, being a completely static graphic like another graphic of the map, or, if possible, that doesn't check the page conditions repeatedly, unless the player interacts with them (either by Touch Event/Player or Press Action Key, that would be useful for events like doors which if you touch them, it enables a self-switch for go to its page 2 which doesn't have the tag :static:, and process the door movement)?

Also two suggestions, can you provide a choice for load all autorun and parallel process events without the need of place the :update: tag on them? And can you provide the choice to alter "Fr" with an ingame variable? So using another script like Yanfly System Options the player would be able to configure easily the Quality-Performance level in the game menu.
 
Last edited by a moderator:

Raizen

Veteran
Veteran
Joined
Oct 24, 2012
Messages
228
Reaction score
237
First Language
Portuguese
Primarily Uses
RMMV
@Daemonium: Oh, erasing events, ok now I can simulate that error and correct it xD, like another script of mine, I'm just waiting for my PC to get fixed to correct everything, so probably by saturday I'll have everything fixed.

Oh about the :update: if I get it, you want to change it and make the script do the opposite? Like everything updates fine, and the :static: makes that event not update? The Fr is quite easy to make it a global variable, so I'll make it as soon as I get the ideia of the static :D . But anyway, hope the script is helping in relation to lags and stuff :) , you don't have to worry much about the script checking the page, but I'll try to improve the script ;D.
 

Daemonium

Villager
Member
Joined
Mar 13, 2013
Messages
19
Reaction score
1
First Language
Spanish
Primarily Uses
I mean, only Autorun and Parallel Processes shouldn't need the :update: tag for run automatically when they are out of screen, apart of it, the function of :update: is fine.

And the :static: tag should not update the events, even their classic page-checking, unless, if possible, the player triggers them by Action Key or Event/Player Touch, or even better, but might be really complicated to do (sadly my scripting knowledge is really poor, for now I only know modify the coordinates of the interface :x).

Do that your script, by default, only checks the page conditions:

  1. If the player enters inside the map, all page conditions are checked once.
  2. If the event has the :update: tag, is an Autorun Event, or a Parallel Process, the page conditions will be checked always, unless they change to another kind of event, for example, Page 1 is a Parallel Process/Autorun/has the :update: tag, but Page 2 is Action Key and doesn't have :update:, when that event changes to Page 2, its page conditions won't be checked constantly.
  3. If the player runs any event by Action Key or Player/Event Touch, 1~10 frames before run their content, the script checks their page conditions.
  4. If the event has at some point an script call for tell to RPG Maker check the page conditions of every event inside the current map, or specified events, for example:
recheck_event(0) #Tells to RPG Maker check again the page conditions of every event of the map.recheck_event(Event ID,Event ID, etc) #Tells to RPG Maker check again the page conditions only of the specified events.All four points would help specially with the task of remove the annoying lag for have over 100 events with any page conditions in the current map (for example, a big city which at night the doors of most houses are closed, its citizens tells things depending of the switches enabled, etc).

I'm sure that all what I'm suggesting is a hard task and would take some time to do, but at the end, would be worth, the script would be truly the Ultimate Antilag Script.

PS: Oh, you should do also easily customizable the name of the comment tag, so users that currently has for example the Victor's Event Antilag, can switch with no problem to your script because they only would need change :update: for <always update> and :static: for <never update>, and they wouldn't need replace the comment tags of every event that has said tags.
 
Last edited by a moderator:

Vox Novus

Knight of Whispers
Veteran
Joined
Mar 18, 2013
Messages
3,307
Reaction score
2,480
First Language
English
Primarily Uses
N/A
This is pretty great Raizen I was experiencing some lag problems and when I saw this I decided to try it out. So far it seems to be working fine and my game is running without the lag problems it was having before. Thanks for the script and your hard work.

Edit-Ran into the same problem as a couple of the others, I'll look forward to when you get the chance to fix it.
 
Last edited by a moderator:

KenzoMe92

Lazy Maker
Member
Joined
Mar 15, 2013
Messages
27
Reaction score
1
First Language
Italian
Primarily Uses
RMVXA
I've found a problem with some my friends, the problem is that the script search for the method 'now' in the Time class, but in the script in your first post, there isn't the Time class.
 

Raizen

Veteran
Veteran
Joined
Oct 24, 2012
Messages
228
Reaction score
237
First Language
Portuguese
Primarily Uses
RMMV
I've found a problem with some my friends, the problem is that the script search for the method 'now' in the Time class, but in the script in your first post, there isn't the Time class.
But the method now in Time class is a standard Ruby class >.>

http://www.ruby-doc.org/core-1.9.3/Time.html

And by the version of Ruby that is present in RMVXAce, it has that class, unless it is missing from the library.

@Vox: I'm really sorry for the long time, without a PC was really hard to edit my scripts :/, tomorrow I hope I'll have everything fixed :) .
 

KenzoMe92

Lazy Maker
Member
Joined
Mar 15, 2013
Messages
27
Reaction score
1
First Language
Italian
Primarily Uses
RMVXA


Also I have this problem with resolution 640x480, there's any solution?
 

Nosleinad

Storyteller
Veteran
Joined
Dec 12, 2012
Messages
351
Reaction score
28
First Language
Portuguese
Primarily Uses
It still isn't supporting the 640x480 res (I have the same problem). I hope Reizen will find a solution for this  :rock-right: .
 

Kuro Neko

Veteran
Veteran
Joined
Sep 26, 2013
Messages
173
Reaction score
15
First Language
English
Primarily Uses
I got this bug, and look like someone got the same. But in my case, i'm using 544x416 res. Maybe it's a problem of compability. Can you tell me what's this problem, so that i can find out which script doesn't compability with this?

bug.jpg
 

Dreadshadow

Lv 38 Tech Magician
Moderator
Joined
Mar 2, 2014
Messages
3,941
Reaction score
2,562
First Language
Greek
Primarily Uses
RMMV
Interesting.

Terms of use?

Is it free for commercial projects?
 

TheoAllen

Self-proclaimed jack of all trades
Veteran
Joined
Mar 16, 2012
Messages
4,816
Reaction score
5,505
First Language
Indonesian
Primarily Uses
RMVXA
I don't know if I'm allowed to give the patch for this script, but ...

For those who have problem with line 191 undefined method [] for nilClass.

This might help

class Game_Event < Game_Character def need_to_update? return false unless @list ax = $game_map.adjust_x(@real_x) - 8 ay = $game_map.adjust_y(@real_y) - 6 ax.between?(-9, 9) && ay.between?(-7, 7) || @list[0].parameters.include?(':update:') endendThe error might happen if none of the event pages met the page conditions

Put the patch below the script
 
Last edited by a moderator:

Raizen

Veteran
Veteran
Joined
Oct 24, 2012
Messages
228
Reaction score
237
First Language
Portuguese
Primarily Uses
RMMV
Interesting.

Terms of use?

Is it free for commercial projects?
You can use it, no problem xD, its a small script so you can use for commercial purposes :)

I don't know if I'm allowed to give the patch for this script, but ...

For those who have problem with line 191 undefined method [] for nilClass.

This might help

class Game_Event < Game_Character def need_to_update? return false unless @list ax = $game_map.adjust_x(@real_x) - 8 ay = $game_map.adjust_y(@real_y) - 6 ax.between?(-9, 9) && ay.between?(-7, 7) || @list[0].parameters.include?(':update:') endendThe error might happen if none of the event pages met the page conditions

Put the patch below the script
Ah, thanks I'll update in the man script, sorry for taking long to answer the questions xD
 

Dreadshadow

Lv 38 Tech Magician
Moderator
Joined
Mar 2, 2014
Messages
3,941
Reaction score
2,562
First Language
Greek
Primarily Uses
RMMV
You can use it, no problem xD, its a small script so you can use for commercial purposes :)

Ah, thanks I'll update in the man script, sorry for taking long to answer the questions xD
Good forum guy is good!

Kudos @Raizen!
 

Users Who Are Viewing This Thread (Users: 0, Guests: 1)

Latest Threads

Latest Posts

Latest Profile Posts

It's weird I actually have MORE work to do when stuck at home than before.
The No Travel Game Jam is here! Jump in to make a game in the month of April that takes place all in one town!


Decided to take a stab at video editing.... Even made a clickbait screen. I'm so proud of my sellout ways. :LZSexcite:

Forum statistics

Threads
95,470
Messages
929,395
Members
125,712
Latest member
Flane
Top