collapse collapse

 Community


 User Info




Willkommen Gast. Bitte einloggen oder registrieren.

 Partnerseiten

rpgvx.net

Das Forum ist offline

Autor Thema: Anti-Lag Vx  (Gelesen 2248 mal)

FlyBoy

  • Gast
Anti-Lag Vx
« am: Januar 11, 2009, 12:27:23 »
Anti-Lag Vx
By: GameBaker

Gives the largest boost to FPS out of all the anti-lag systems we tested, and is also used in 3 commercial games in-progress. There are minor issues with this one.

How to Use?
  • Open the ''Scripts Manager''.
  • Past this Script in ''? Scripts Adicionais''


Script

#==========================================================================
# * GameBaker Anti-Event Lag
#==========================================================================
# by sandgolem
#   Concept based on Near Fantastica's original RMXP script
#
# Still a beta version, still the looping bug
#
# Version 3 [VX]
# February 22nd, 2008
#==========================================================================

module GameBaker
  AntiLagDisable = 0
  AntiLagModifierX = 408
  AntiLagModifierWidth = 272
  AntiLagModifierY = 272
  AntiLagModifierHeight = 408
  AntiLagAlwaysMove = '&'
end

#==========================================================================
#
# To check for updates or find more scripts, visit:
#       http://www.gamebaker.com/rmvx/scripts/
# Our RMXP scripts: http://www.gamebaker.com/rmxp/scripts/
#
# This script is not exclusive to our site!
# Feel free to pass around as long as you leave the links here.
# A license is required for commercial use, see instructions below.
#
# Instructions: http://www.gamebaker.com/rmvx/scripts/e/anti-event-lag.php
# Discussion/Help: http://forums.gamebaker.com/showthread.php?t=1242
#
#==========================================================================

class Game_CommonEvent
  alias gamebaker_antilag_commonrefresh refresh
  def refresh
    gamebaker_antilag_commonrefresh
    gamebaker_antilag_add if @interpreter
    gamebaker_antilag_remove if !@interpreter
  end
 
  def gamebaker_antilag_remove
    return if !$game_map.gb_antilagcommons.include?(@common_event_id)
    $game_map.gb_antilagcommons -= [@common_event_id]
  end
 
  def gamebaker_antilag_add
    return if $game_map.gb_antilagcommons.include?(@common_event_id)
    $game_map.gb_antilagcommons += [@common_event_id]
  end
end

class Game_Event
  def force_move_route(move_route)
    super(move_route)
    if $game_map.gb_antilagnonmove.include?(@id)
      $game_map.gb_antilagnonmove -= [@id]
      $game_map.gb_antilagmoveevents += [@id]
    end
  end 
 
  alias gamebaker_antilag_init initialize
  def initialize(map_id, event)
    gamebaker_antilag_init(map_id, event)
    if event.name.include?(GameBaker::AntiLagAlwaysMove)
      $game_map.gb_antilagmove += [@id]
    end
  end
 
  alias gamebaker_antilag_evsetup setup
  def setup(new_page)
    gamebaker_antilag_evsetup(new_page)
    if @trigger == 3 or @trigger == 4
      start if @trigger == 3
      if !$game_map.gb_antilagprocess.include?(@id)
        $game_map.gb_antilagprocess += [@id]
      end
    elsif $game_map.gb_antilagprocess.include?(@id)
      $game_map.gb_antilagprocess -= [@id]
    end
    if @character_name == "" && @tile_id == 0
      if !$game_map.gb_antilagnosprite.include?(@id)
        $game_map.gb_antilagnosprite += [@id]
      end
    elsif $game_map.gb_antilagnosprite.include?(@id)
      $game_map.gb_antilagnosprite -= [@id]
    end
    if @move_type == 0 && !@step_anime &&
      !$game_map.gb_antilagnonmove.include?(@id)
      $game_map.gb_antilagnonmove += [@id]
    elsif $game_map.gb_antilagnonmove.include?(@id)
      $game_map.gb_antilagnonmove -= [@id]
    end
  end
 
  def gamebaker_antilag_interupdate
    if @interpreter != nil
      unless @interpreter.running?
        @interpreter.setup(@list, @event.id)
      end
      @interpreter.update
    end
  end
 
  def update
    super
  end
end

class Game_Map
  attr_accessor :gb_antilagcommons, :gb_antilagnonmove, :gb_antilagnosprite,
    :gb_antilagmoveevents, :gb_antilagmove, :gb_antilagprocess,
    :gb_antilagspriteevents, :gb_antilag_spriteupdate
 
  def gamebaker_antilag?(sg)
    return false if sg.real_x < @gb_antilagscreen_x or
                    sg.real_x > @gb_antilagscreen_width or
                    sg.real_y < @gb_antilagscreen_y or
                    sg.real_y > @gb_antilagscreen_height
    return true
  end
 
  alias gamebaker_antilag_setupev setup_events
  def setup_events
    gamebaker_antilag_getscreen
    @gb_antilagnonmove = []
    @gb_antilagmove = []
    @gb_antilagnosprite = []
    @gb_antilagprocess = []
    @gb_antilagcommons = [] if !@gb_antilagcommons
    gamebaker_antilag_setupev
    gamebaker_antilag_refresh_events
  end
 
  def gamebaker_antilag_getscreen
    @gb_antilagscreen_x = @display_x - GameBaker::AntiLagModifierX
    @gb_antilagscreen_y = @display_y - GameBaker::AntiLagModifierY
    @gb_antilagscreen_width =
      @display_x + (Graphics.width * 8) + GameBaker::AntiLagModifierWidth
    @gb_antilagscreen_height =
      @display_y + (Graphics.height * 8) + GameBaker::AntiLagModifierHeight
  end
 
  def gamebaker_antilag_refresh_events
    @gb_antilagalwaysmove = []
    @gb_antilagmoveevents = []
    @gb_antilagspriteevents = []
    for i in @events.values
      next if @gb_antilagnosprite.include?(i)
      @gb_antilagspriteevents += [i]
    end
    @gb_antilagspriteevents += [$game_player]
    for vehicle in $game_map.vehicles
      next if vehicle.map_id != @map_id
      @gb_antilagspriteevents += [vehicle]
    end
    for i in 0...@gb_antilagmove.size
      @gb_antilagalwaysmove += [@events[@gb_antilagmove[i]].id]
    end
    for i in @events.values
      next if @gb_antilagnonmove.include?(i.id)
      next if @gb_antilagmove.include?(i.id)
      @gb_antilagmoveevents += [i.id]
    end
    @gb_antilag_spriteupdate = true
  end
 
  alias gamebaker_antilag_ue update_events
  def update_events
    return gamebaker_antilag_ue if $game_switches[GameBaker::AntiLagDisable]
    gamebaker_antilag_getscreen
    for i in 0...@gb_antilagprocess.size
      @events[@gb_antilagprocess[i]].gamebaker_antilag_interupdate
    end
    for i in 0...@gb_antilagalwaysmove.size
      @events[@gb_antilagalwaysmove[i]].update
    end
    for i in 0...@gb_antilagmoveevents.size
      j = @gb_antilagmoveevents[i]
      @events[j].update if gamebaker_antilag?(@events[j])
    end
    for i in 0...@gb_antilagcommons.size
      @common_events[@gb_antilagcommons[i]].update
    end
  end
 
  alias gamebaker_antilag_maprefresh refresh
  def refresh
    gamebaker_antilag_maprefresh
    gamebaker_antilag_refresh_events
  end
end

class Game_Vehicle; attr_accessor :map_id; end

class Spriteset_Map
  def gamebaker_antilag_characters
    @gb_antilag_eventsprites = []
    for sprite in @character_sprites
      next if !$game_map.gb_antilagspriteevents.include?(sprite.character)
      @gb_antilag_eventsprites += [sprite]
    end
    $game_map.gb_antilag_spriteupdate = nil
  end
 
  alias gamebaker_antilag_uc update_characters
  def update_characters
    return gamebaker_antilag_uc if $game_switches[GameBaker::AntiLagDisable]
    gamebaker_antilag_characters if $game_map.gb_antilag_spriteupdate
    for sprite in @gb_antilag_eventsprites
      sprite.update if $game_map.gamebaker_antilag?(sprite.character)
    end
  end
end

#==========================================================================
# End of file! You can find more of our scripts at http://www.gamebaker.com
#==========================================================================
« Letzte Änderung: Januar 11, 2009, 12:28:05 von FlyBoy »

Re: Anti-Lag Vx

Offline Sk!p

  • Foren-ReArchitekt
  • VX-Großmeister
  • *****
  • Beiträge: 975
  • Mit(t)arbeiter schreibt man mit einem T =P
    • Foren-ReArchitekt
Re: Anti-Lag Vx
« Antwort #1 am: Januar 11, 2009, 12:30:28 »
Hm..

We Still have an Anti-Lagg Script by hellMinor.
I dont know wich is better. I Think Someone have to test it.^^

Sk!p

Klischee Antagonist! | Back From Hell To Conquer The World!


Re: Anti-Lag Vx

Offline eugene222

  • König der Lügner
  • VX-Meister
  • ****
  • Beiträge: 675
Re: Anti-Lag Vx
« Antwort #2 am: Januar 11, 2009, 14:14:25 »
Skip, er hat schon gesagt, dass dies die beste Performance gebracht hat, von allen, die sie getestet haben. Auserdem wird dieses Skript in 3 Spielen benutzt, die verkauft werden.

@FlyBoy
Nice Skript, i know it already, but thanks that you have posted it here^^

mfg. eugene

Re: Anti-Lag Vx

Offline Sk!p

  • Foren-ReArchitekt
  • VX-Großmeister
  • *****
  • Beiträge: 975
  • Mit(t)arbeiter schreibt man mit einem T =P
    • Foren-ReArchitekt
Re: Anti-Lag Vx
« Antwort #3 am: Januar 11, 2009, 14:25:22 »
Ja 'alle die wir getestet haben' ist nunmal aber relativ.
Du weißt nicht was für Skripte getestet wurden oder?^^

Sk!p

Klischee Antagonist! | Back From Hell To Conquer The World!


Re: Anti-Lag Vx

Mr.Wolna

  • Gast
Re: Anti-Lag Vx
« Antwort #4 am: Januar 25, 2009, 09:47:54 »
kann mir eienr erklären wozu ds jetz genau gut sit? i

Re: Anti-Lag Vx

Offline OceanBlue

  • Palmenfan
  • VX-Großmeister
  • *****
  • Beiträge: 822
  • Back from the Dead
Re: Anti-Lag Vx
« Antwort #5 am: Januar 25, 2009, 09:57:48 »
Wenn du viele Events auf einer Map hast, kann das Spiel anfangen zu ruckeln. Mit diesem Script hört das Ruckeln auf oder wird ganz unterbunden.


Re: Anti-Lag Vx

Mr.Wolna

  • Gast
Re: Anti-Lag Vx
« Antwort #6 am: Januar 25, 2009, 13:45:17 »
joa das solten mal die devs in der nöächten version einbauen^^ apropos wird grad an nen update gearbeitet? also von ofizieler seite.


und dieses script mach keinerlei probleme? ich meine ich habe bis jetz kiene fps probs, aber schaden kans ja nicht wenn cih das ding trotzdem reinopacke, für die zukunft oder?

Re: Anti-Lag Vx

Offline Klex

  • CoAD - Tiles Publisher
  • VX-Kenner
  • ****
  • Beiträge: 561
    • Klex Blog
Re: Anti-Lag Vx
« Antwort #7 am: Januar 25, 2009, 13:54:41 »

Also der Skript macht leider Probleme...
Ich weiß zwar nicht genau mit was er sich zankt, aber auf meiner
40x30 Map mit 95 Events geht das Teleporten auf diese Map nicht
mehr. Mit Hellminor geht es. Weiß jetzt nicht an was es liegt,
hier der Fehler der kommt.



Grüße Klex

Re: Anti-Lag Vx

Offline Franky

  • Blutiger Fortgeschrittener
  • Eventmeister
  • ***
  • Beiträge: 390
Re: Anti-Lag Vx
« Antwort #8 am: Oktober 13, 2009, 18:59:16 »
Ist es normal, dass mit diesem Script nichts passiert, wenn man es eingebaut hat?
Also ich merke nichts vom Anti-Lag (minimal vlt. nur)!
Läuft dieses Anti-Lag überhaupt gut?

Edit: Super, es funktioniert überhaupt nicht mehr xD... na dann...
« Letzte Änderung: Oktober 13, 2009, 19:38:11 von Franky »

Re: Anti-Lag Vx

Offline bensen

  • Ralph
  • *
  • Beiträge: 2
Re: Anti-Lag Vx
« Antwort #9 am: Februar 08, 2011, 00:03:49 »
? Scripts Adicionais

Kann mir jemand sagen, wo das ist? Ich habe den japanischen Maker und das meiste im Scripteditor ist japanisch.
Vielleicht hat jemand nen Screenshot für mich?

Oder ne bessere oder aktuellere Anleitung für eine Anti-Ruckel-Funktion?...

Ich wiiiiill das unbedingt, da es echt den Spielspaß verdirbt wenn das Spiel die ganze Zeit stockt.

Re: Anti-Lag Vx

Offline FlipelyFlip

  • Will sein Alter nicht verraten xD
  • Administrator
  • VX-Großmeister
  • ****
  • Beiträge: 884
  • Heyho (=
    • Flips Musik Kariere auf Facebook xD
Re: Anti-Lag Vx
« Antwort #10 am: Februar 08, 2011, 10:20:07 »
du musst es unter Materials, aber über Main einfügen ;)

lg flip

 


 Bild des Monats

rooftop party

Views: 3581
By: papilion

 Umfrage

  • Wer soll das BdM gewinnen?
  • Dot Kandidat 1
  • 3 (25%)
  • Dot Kandidat 2
  • 1 (8%)
  • Dot Kandidat 3
  • 2 (16%)
  • Dot Kandidat 4
  • 0 (0%)
  • Dot Kandidat 5
  • 6 (50%)
  • Stimmen insgesamt: 12
  • View Topic

 Schnellsuche





SimplePortal 2.3.3 © 2008-2010, SimplePortal