Lune Ultimate Anti-Lag
Compativel com: RMVXAce
Compatibilidade :bom
Facilidade de uso: fácil
Lag gerado: nulo
[box class=titlebg]
Condições de Uso
[/box]
Pode ser modificado, e divulgado, mas mantenha os créditos a mim obrigado.
[box class=titlebg]
Para que serve o script
[/box]
Esse é o último script em relação a lag que faço, e é o mais eficiente, e diferente de todos os anti-lags que já tiveram experiência sobre. NÃO utilize outro anti-lag junto com esse, pode aumentar o lag do que diminuir.
Ele é diferente dos outros scripts de anti-lag, não tem bugs, e conta com várias funções trabalhando juntos para reduzir o lag.
Propriedades:
- Não tem o bug clássico dos anti-lags de quando relocar um evento o gráfico ficar travado na tela.
- Contém um sistema inteligente de FPS, que considerá a velocidade do jogador, e não do maker, logo ele se adapta a computadores mais rápidos e mais lerdos.
- Código limpo
- Ignora os eventos não comentados, basta utilizar o comentário :update: para sempre atualizarem.
- Possibilita mudar o script para desempenho ou qualidade, dependendo da preferência do maker.
- Aumenta a prioridade do RPG Maker em relação a outros programas ativos.
Se mesmo assim enfrentar problemas com lag, terá que rever todos scripts/sistemas que está usando u_u, ele não faz milagres ^^.
[box class=titlebg]Script.
[/box]
#=======================================================
# Lune Ultimate Anti-Lag
# Autor: Raizen
# Compativel com: RMVXAce
# Comunidade: [url=http://www.centrorpg.com]www.centrorpg.com[/url]
# O script permite um pulo de frames na atualização de gráficos,
# muito útil para jogos que tem uma programação pesada, e
# atualização de gráficos, funcionando com um anti-lag.
# Detalhe: anti-lags são compátiveis com esse script.
#========================================================
#Para atualizar um programa constantemente, coloque um comentário
#no primeiro comando daquele evento escrito :update:
module Anti_conf
#==============================================================================
# ** Configurações
#------------------------------------------------------------------------------
# Configure o que for necessário para um maior desempenho.
#==============================================================================
# Escolha como o Frame_Skip irá agir.
# <=====Qualidade============================Desempenho=====>
# 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
# Padrão = 10
Fr = 10
# Configure a taxa de FPS (padrão = 60)
Fps = 60
# Quantidade de frames que o analizador de FPS irá levar,
# Quanto menor o número mais rápido o script funcionará, porém
# será menos preciso.
Time = 60
end
=begin
Funções desse Anti-Lag
* Bug comum de posição de evento corrigido
* Frame Skip inteligente
* atualiza apenas o que é necessário
* ajuda inclusive outros scripts visuais a reduzir o lag
* Ele muda o seu comportamento de acordo com as necessidades de cada jogador
* Aumenta a prioridade do RPG Maker diante de outros programas
=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_Base
alias lune_skip_start start
alias lune_skip_update update
alias 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
@update_skip = true
end
end
#==============================================================================
# ** Scene_Base
#------------------------------------------------------------------------------
# Esta é a superclasse de todas as cenas do jogo.
#==============================================================================
class Scene_Base
alias 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
end
end
#==============================================================================
# ** 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:')
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?(-11, 11) && ay.between?(-8, 8)
end
end
#==============================================================================
# ** 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
alias 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)
end
end
#==============================================================================
# ** 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_Interpreter
alias 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))
end
end
#==============================================================================
# ** 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}
end
end
$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
end
end
[box class=titlebg]Imagens
[/box]
Não perceptível por imagens
[box class=titlebg]Download
[/box]
Não necessário
[box class=titlebg]Créditos e Avisos
[/box]
Raizen
Citação de: Raizen online 22/02/2013 às 14:43
[...] não tem bugs, [...]
Ui... que segurança hein... :seei:
Enfim, cara, acho que agora sim vou conseguir utilizar um anti-lag,
depois de décadas lutando para encontrar um que me servisse.
E pelo que li, você deu um jeitinho naquele probleminha lá que eu
tive né... ? De as minhas árvores se "prenderem" na tela... :rick9:
Depois quero saber como chegou à essa façanha...
E bacana que conseguiu juntar ambas as formas de reduzir o lag,
dessa forma não se limita só à quantidade de eventos. Isso
impressiona bem.
No mais, nada mais do que mais um elogio, mano. Excelente trabalho
novamente e... mais um script dos seus que surrupio. Assim que
possível vou tentar implementá-lo la no meu projeto, vamos ver se
a coisa é boa mesmo... :ok:
Citação de: King Gerar online 26/02/2013 às 08:01
Citação de: Raizen online 22/02/2013 às 14:43
[...] não tem bugs, [...]
Ui... que segurança hein... :seei:
90% dos scripts meus bugam hsuHASU, por isso tenho que passar segurança u__u.
Eu não sei esse bug hsuAHSU, porque não sei como ele acontece, aah... wait na verdade eu sei kk, tenho que colocar uma parte no script para configurar os limites :será: , esse atual vai acontecer a mesma coisa.
raizen tu é um GENIO ._. uns eventos meus bugavam por apenas lag, quando coloquei esse scrip voltaram a funcionar perfeitamente *U*
Só uma coisa raizen ...
Quando coloco uma variável para calcular a posição X e outra para calcular a posição Y do personagem
e +2 para calcular a posição X e Y de um tal evento e coloco uma condição caso os 2 estejam no mesmo lugar, ocorrer alguma coisa ( do tipo mensagem ) não tá mais funcionando isso .-.
Tipo, sem o script da pra fazer isso, agora quando eu coloco não funciona isso :C
teria como arrumar? pf isso tirou bastante lag do meu projeto
Deixa deu uma simples lida no script e vi qual foi meu erro kkkkkk ... Para quem esta com o mesmo erro, e no mesmo caso, é só por um evento-comentário com o seguinte texto : :update:
Tava bem explicito no tópico, mas do jeito que está no tópico não da para entender muito bem para os leigos no assunto \:
Raizen, esse script tem uma incompatibilidade com o script de iluminação do khas :/. Eu tentei resolver a incompatibilidade mas não consegui. Você poderia dar uma olhada? Eu queria muito usar ele no meu projeto, pois gostei bastante, achei ele bem completo.
@katumblo: kk xD, qualquer coisa só chamar manolo.
Citação de: Klarth online 30/03/2014 às 00:59
Raizen, esse script tem uma incompatibilidade com o script de iluminação do khas :/. Eu tentei resolver a incompatibilidade mas não consegui. Você poderia dar uma olhada? Eu queria muito usar ele no meu projeto, pois gostei bastante, achei ele bem completo.
Aqui velho :D, mas cara vê se isso realmente melhora, porque aqui parece lagar mais quando usado junto com o script do Khas, já que o dele é bem pesado.
#=======================================================
# Lune Ultimate Anti-Lag
# Autor: Raizen
# Compativel com: RMVXAce
# Comunidade: [url=http://www.centrorpg.com]www.centrorpg.com[/url]
# O script permite um pulo de frames na atualização de gráficos,
# muito útil para jogos que tem uma programação pesada, e
# atualização de gráficos, funcionando com um anti-lag.
# Detalhe: anti-lags são compátiveis com esse script.
#========================================================
#Para atualizar um programa constantemente, coloque um comentário
#no primeiro comando daquele evento escrito :update:
module Anti_conf
#==============================================================================
# ** Configurações
#------------------------------------------------------------------------------
# Configure o que for necessário para um maior desempenho.
#==============================================================================
# Escolha como o Frame_Skip irá agir.
# <=====Qualidade============================Desempenho=====>
# 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
# Padrão = 10
Fr = 10
# Configure a taxa de FPS (padrão = 60)
Fps = 60
# Quantidade de frames que o analizador de FPS irá levar,
# Quanto menor o número mais rápido o script funcionará, porém
# será menos preciso.
Time = 60
end
=begin
Funções desse Anti-Lag
* Bug comum de posição de evento corrigido
* Frame Skip inteligente
* atualiza apenas o que é necessário
* ajuda inclusive outros scripts visuais a reduzir o lag
* Ele muda o seu comportamento de acordo com as necessidades de cada jogador
* Aumenta a prioridade do RPG Maker diante de outros programas
=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_Base
alias lune_skip_start start
alias lune_skip_update update
alias 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
@update_skip = true
end
end
#==============================================================================
# ** Scene_Base
#------------------------------------------------------------------------------
# Esta é a superclasse de todas as cenas do jogo.
#==============================================================================
class Scene_Base
alias 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
end
end
#==============================================================================
# ** 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
return false unless @list
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?(-11, 11) && ay.between?(-8, 8)
end
end
#==============================================================================
# ** 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
alias 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)
end
end
#==============================================================================
# ** 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_Interpreter
alias 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))
end
end
#==============================================================================
# ** 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}
end
end
$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
end
end
Opa valeu mesmo raizen :D
Pelos testes aqui aumentou uns 4-5fps, ta rodando a 95-97 fps com umas 7 luzes no mapa.
Ajuda aqui? ;-;
Eu coloquei o Script compatível com o Khas, mas quando fui fazer o PlayTest, deu esse erro:
line 155: NoMethodError ocurred.
undefined method `>='for nil:nilClass
Tem como consertar isso? :T.T:
Coloca o Anti-lag abaixo do script do khas x)
Belo script Raizen, mesmo que ainda não percebi diferenças no meu projeto! :=p:
De qualquer forma, só passei pra falar que esse script da incompatibilidade com seu próprio script de reflexos! (Como também o de reflexo da incompatibilidade com o de adicionar mais frames no char! lol, eu estava colocando todos pra testar e deu isso! x3)Bug
(http://i.imgur.com/PmR1ooa.png?1?7163)
De certa forma, eu acabei de pegar um punhado de script seu pra usar... :*-*:
E gostaria de te pedir um pequeno favor, se puder aceitar, enviarei uma PM com o assunto! x3
No mais, espero ter ajudado com isso e espero respostas! x3
Vish, tentou mudar a ordem dos scripts?
coloca o anti-lag abaixo do de reflex, ou ao contrário.
Agora não posso testar isso :/
Pode mandar a MP eu vejo o que posso fazer.
Citação de: Raizen online 17/04/2014 às 16:49
Vish, tentou mudar a ordem dos scripts?
coloca o anti-lag abaixo do de reflex, ou ao contrário.
Agora não posso testar isso :/
Pode mandar a MP eu vejo o que posso fazer.
Sim sim, eu mudei a posição e ainda sim não funcionou! x-X
Mas nada pra se preocupar, não usarei o sistema de reflexo, vim mais mesmo dar avisar! x3
Oks, estarei mandando! :³
Diminuiu bastante o lag. Mas começou a dar um problemas para iniciar os processos paralelos que usei. Alguém mais teve esse problema?
Citação de: Zugzwang online 18/04/2014 às 12:36
Diminuiu bastante o lag. Mas começou a dar um problemas para iniciar os processos paralelos que usei. Alguém mais teve esse problema?
Coloque o comando " :update: " como comentário no inicio de seus eventos, eu já tive esse problema, em um comentário meu ali em cima explicou isso o/ kkkk
Bom, acho que é esse seu problema mesmo :3'
Cara seu scrpt salvou meu projeto XD valewww por disponibilizar :wow:
Olá, quando eu tento usar o script o jogo não aparenta diferença com relação ao lag, e logo após alguns segundos aparece a mensagem de erro:
"Script "x" line 187:NoMethodError occured
undefined method '[]' for nil:NilClass"
Não entendo de programação e não encontrei alguém que pudesse me ajudar, o que eu poderia fazer para o script funcionar corretamente?
Eu não sou um programador, então eu não sei se esta é a melhor solução. Mas parece que remover esta linha corrigir o problema.
Citação de: Maquixo online 25/02/2017 às 15:08
Olá, quando eu tento usar o script o jogo não aparenta diferença com relação ao lag, e logo após alguns segundos aparece a mensagem de erro:
"Script "x" line 187:NoMethodError occured
undefined method '[]' for nil:NilClass"
Não entendo de programação e não encontrei alguém que pudesse me ajudar, o que eu poderia fazer para o script funcionar corretamente?
Você está usando algum outro script junto com esse?
Citação de: Raizen online 25/02/2017 às 18:11
Citação de: Maquixo online 25/02/2017 às 15:08
Olá, quando eu tento usar o script o jogo não aparenta diferença com relação ao lag, e logo após alguns segundos aparece a mensagem de erro:
"Script "x" line 187:NoMethodError occured
undefined method '[]' for nil:NilClass"
Não entendo de programação e não encontrei alguém que pudesse me ajudar, o que eu poderia fazer para o script funcionar corretamente?
Você está usando algum outro script junto com esse?
Eu estava, mas mesmo tirando e voltando a testar aconteceu o mesmo erro.
Citação de: Yamashi online 25/02/2017 às 16:05
Eu não sou um programador, então eu não sei se esta é a melhor solução. Mas parece que remover esta linha corrigir o problema.
Estranhamente funcionou kkkk O erro deixou de aparecer, mas o lag permaneceu.
Dá um help ae, quando eu clico em novo jogo, ae ele entra na tela preta pra carregar da esse erro Script Lune Ultimate Anti-Lag line 188: TypeError ocurred. can't convert String into Tone
Obs: essa é a linha 188
ax.between?(-9, 9) && ay.between?(-7, 7) || @list[0].parameters.include?(':update:')
Isso é conflito com outro script que você está usando, pode listar eles aqui?
Você também pode alterar a ordem dos scripts, as vezes isso funciona.