News: Have you seen Chaos Project's fully automated Script Database Index yet?
Pages: [1] 2  All
  Print  
Author Topic: [XP] Blizz-ABS Event Anti-Lag  (Read 11667 times)
Blizzard
This sexy
Administrator
has over 9000 posts
*****

Level: 614
Offline Offline

Gender: Male
Posts: 19103


God created Stan in His own image


View Profile WWW
« on: January 09, 2008, 03:30:06 PM »

Blizz-ABS Event Anti-Lag
Authors: Blizzard
Version: 3.0b
Type: Performance Improving System
Key Term: Game Utility

Introduction

This script will decrease the lag caused by events on the map by disabling the update of events beyond the visible screen when their sprite is not visible on the screen anymore. All graphical sprites for events are substituted with a controller that handles those sprites. If an event's update is disabled, the event's sprite will be disposed and completely removed from the memory. "Auto-Start" and "Parallel Process" events are NOT affected by this script. If a character is moving outside of the screen, he will be updated as event, but not as sprite.

This work is protected by the following license:
Quote
Creative Commons - Attribution-NonCommercial-ShareAlike 3.0 Unported
( http://creativecommons.org/licenses/by-nc-sa/3.0/ )

You are free:

to Share - to copy, distribute and transmit the work
to Remix - to adapt the work

Under the following conditions:

Attribution. You must attribute the work in the manner specified by the author or licensor (but not in any way that suggests that they endorse you or your use of the work).

Noncommercial. You may not use this work for commercial purposes.

Share alike. If you alter, transform, or build upon this work, you may distribute the resulting work only under the same or similar license to this one.

- For any reuse or distribution, you must make clear to others the license terms of this work. The best way to do this is with a link to this web page.

- Any of the above conditions can be waived if you get permission from the copyright holder.

- Nothing in this license impairs or restricts the author's moral rights.

Features

In comparison to other scripts:
  • much more compatible
  • faster and better processing
  • about 5 times less code
  • built-in option to disable in specific maps
  • maximum possible performance
v2.0
  • an incredible performance improvement was achieved through a new system
v3.0
  • increased performance improvement to the highest possible level
  • new smart system: no need to configure the strength anymore
v3.0b
  • disallows the usage of this script if Blizz-ABS is already installed
  • now beta

Screenshots

N/A for this sort of script.

Demo

Blizz-ABSEAL 3.0

Script

Just make a new script above main and paste this code into it.
Script Download

Instructions

Inside the script in the first comment.

Compatibility

99% compatible with SDK v1.x. 80% compatible with SDK v2.x. Can cause incompatibility issues with map graphic manipulating scripts. This script comes UNDER all scripts that manipulate the Sprite_Character class. Can cause problems with Scripts that manipulate instances of the Sprite_Character class from the "outside".

Credits and Thanks

  • Blizzard
  • Special Thanks to Zeriab for making me post this before the release of Tons of Add-ons v5.x.

Author's Notes

This EAL is a simplified version of Blizz-ABS's original EAL. If you are using Blizz-ABS, please remove this script. Blizz-ABS has the full version of Blizz-ABSEAL built-in.

If you find any bugs, please report them here:
http://forum.chaos-project.com

That's it! N-Joy! =D
« Last Edit: August 22, 2012, 03:42:44 PM by Blizzard » Logged

Get King of Booze for Android, for iOS, for OUYA or for Windows!
Visit our website.
You can also love/hate us on Facebook or the game itself.


Get DropBox, the best free file syncing service there is!

Quote from: winkio
I do not speak to bricks, either as individuals or in wall form.

Quote from: Barney Stinson
When I get sad, I stop being sad and be awesome instead. True story.
Blizzard
This sexy
Administrator
has over 9000 posts
*****

Level: 614
Offline Offline

Gender: Male
Posts: 19103


God created Stan in His own image


View Profile WWW
« Reply #1 on: May 09, 2008, 06:26:23 PM »

Blizz-ABS 3.0 is up. :3

Blizz-ABSEAL 3.0b is up. >.<

MORE POWERFUL THAN EVER
« Last Edit: July 14, 2008, 03:46:29 PM by Blizzard » Logged

Get King of Booze for Android, for iOS, for OUYA or for Windows!
Visit our website.
You can also love/hate us on Facebook or the game itself.


Get DropBox, the best free file syncing service there is!

Quote from: winkio
I do not speak to bricks, either as individuals or in wall form.

Quote from: Barney Stinson
When I get sad, I stop being sad and be awesome instead. True story.
Fantasist
Lexima Warrior
*******

Level: 146
Offline Offline

Gender: Male
Posts: 2222



View Profile WWW
« Reply #2 on: December 10, 2008, 08:29:12 PM »

I made a script to play animations over events on the map. It's not working with the sprite control of Blizz-ABSEAL. Sprite_Character#loop_animation isn't available b/c Sprite_Character is no longer an RPG::Sprite. If I comment the sprite control part in Blizz-ABSEAL, it works fine. I'm using version 3.0b. Any suggestions?

Code: [Select]
class Spriteset_Map
 
  def animate(id=0, anim_id=98)
    if id > 0
     @character_sprites.each {|sprite_character|
      if sprite_character.character.id == id
        sprite_character.loop_anim=anim_id
      end}
    else
      @character_sprites.each {|sprite_character|
      if sprite_character.character.is_a?(Game_Player)
        sprite_character.loop_anim=anim_id
      end}
    end
  end
 
end

class Sprite_Character
 
  def loop_anim=(id=nil)
    anim = id ? $data_animations[id] : nil
    loop_animation(anim)
  end
 
end

class Scene_Map
  attr_reader :spriteset
end


PS: First (non-author) post, yay ^_^'
Logged

Do you like ambient/electronic music? Then you should promote a talented artist! Help out here. (I'm serious. Just listen to his work at least!)

The best of freeware reviews: Gizmo's Freeware Reviews


Blizzard
This sexy
Administrator
has over 9000 posts
*****

Level: 614
Offline Offline

Gender: Male
Posts: 19103


God created Stan in His own image


View Profile WWW
« Reply #3 on: December 10, 2008, 11:02:52 PM »

You can put it in Control_Sprite_Character for Blizz-ABSEAL to work. Just check out the code of the script, it's not complicated.
Logged

Get King of Booze for Android, for iOS, for OUYA or for Windows!
Visit our website.
You can also love/hate us on Facebook or the game itself.


Get DropBox, the best free file syncing service there is!

Quote from: winkio
I do not speak to bricks, either as individuals or in wall form.

Quote from: Barney Stinson
When I get sad, I stop being sad and be awesome instead. True story.
Fantasist
Lexima Warrior
*******

Level: 146
Offline Offline

Gender: Male
Posts: 2222



View Profile WWW
« Reply #4 on: December 11, 2008, 02:05:16 PM »

By 'it', you mean the code for loop_animation from RPG::Sprite? Or do you mean this:
Code: [Select]
def loop_anim=(id=nil)
    anim = id ? $data_animations[id] : nil
    loop_animation(anim)
  end

Or God forbid, do you mean Ulta XD
Logged

Do you like ambient/electronic music? Then you should promote a talented artist! Help out here. (I'm serious. Just listen to his work at least!)

The best of freeware reviews: Gizmo's Freeware Reviews


Blizzard
This sexy
Administrator
has over 9000 posts
*****

Level: 614
Offline Offline

Gender: Male
Posts: 19103


God created Stan in His own image


View Profile WWW
« Reply #5 on: December 11, 2008, 02:09:53 PM »

Add this additionally below Blizz-ABSEAL:

Code: [Select]
class Control_Sprite_Character
 
  def loop_anim=(id=nil)
    @sprite.loop_anim = id if @sprite != nil
  end
 
end

Your own code goes above Blizz-ABSEAL.

Also, instead of "if sprite_character.character.is_a?(Game_Player)" better use "if sprite_character.character == $game_player". This would make it better working with Blizz-ABS even though Blizz-ABS actually has loop animations implemented "character.loop_animation_id = ID". >.<
« Last Edit: December 11, 2008, 02:12:44 PM by Blizzard » Logged

Get King of Booze for Android, for iOS, for OUYA or for Windows!
Visit our website.
You can also love/hate us on Facebook or the game itself.


Get DropBox, the best free file syncing service there is!

Quote from: winkio
I do not speak to bricks, either as individuals or in wall form.

Quote from: Barney Stinson
When I get sad, I stop being sad and be awesome instead. True story.
Fantasist
Lexima Warrior
*******

Level: 146
Offline Offline

Gender: Male
Posts: 2222



View Profile WWW
« Reply #6 on: December 11, 2008, 02:18:29 PM »

Thanks Bliz, that solved the problem Happy

Quote
Also, instead of "if sprite_character.character.is_a?(Game_Player)" better use "if sprite_character.character == $game_player". This would make it better working with Blizz-ABS even though Blizz-ABS actually has loop animations implemented "character.loop_animation_id = ID". >.<

I'll do that. I wanted to implement the "character.loop_animation_id" thing, but I figured it's not necessary. btw, it's not for the BABS game, it's for QC Tongue
Logged

Do you like ambient/electronic music? Then you should promote a talented artist! Help out here. (I'm serious. Just listen to his work at least!)

The best of freeware reviews: Gizmo's Freeware Reviews


JanraeMendoza
Guest
« Reply #7 on: June 22, 2011, 05:04:15 PM »

Hi blizz, will this also work for all kinds of systems other than BlizzABS like TBS, (other SBSes), XAS and Neo?
Logged
Blizzard
This sexy
Administrator
has over 9000 posts
*****

Level: 614
Offline Offline

Gender: Male
Posts: 19103


God created Stan in His own image


View Profile WWW
« Reply #8 on: June 22, 2011, 07:33:30 PM »

It should, there is no reason that it doesn't.
It might not work properly with Mode 7, but it might work out if you change the the order of your scripts.
Logged

Get King of Booze for Android, for iOS, for OUYA or for Windows!
Visit our website.
You can also love/hate us on Facebook or the game itself.


Get DropBox, the best free file syncing service there is!

Quote from: winkio
I do not speak to bricks, either as individuals or in wall form.

Quote from: Barney Stinson
When I get sad, I stop being sad and be awesome instead. True story.
Apidcloud
Ethereal Devastator
****

Level: -10
Offline Offline

Gender: Male
Posts: 255


Epic pony is epic'


View Profile WWW
« Reply #9 on: August 22, 2011, 06:23:01 PM »

Gratz for the script lool xD
I really heard good comments about it already =)

Also, the demo that you posted works really well eheheh

Btw, once, a friend of mine said that if the event name was 'noupdate' it wouldn't be updated or something...Know anything about this?
Thanks and congratz once more =)
Logged

Instead of wanting to be somebody else, rather become somebody else



"I will treasure the knowledge like a squirrel treasures acorns."

Gibbo Glast 2D Engine - The sky is no longer a limit
Magus
Astral Trancist
*****

Level: -20
Offline Offline

Gender: Male
Posts: 541


Writer of Destiny


View Profile
« Reply #10 on: August 22, 2011, 07:01:58 PM »

Blizz abseal doesn't really work right for 2.8 O_O. I have to manually use script calls to disable and enable blizzabs ._. For maps and what not
Logged

LEVEL ME DOWN. THE ANTI-BLIZZ GROUP IS AMONG YOU... Do it for the chick below...She watches..<br />
Blizzard
This sexy
Administrator
has over 9000 posts
*****

Level: 614
Offline Offline

Gender: Male
Posts: 19103


God created Stan in His own image


View Profile WWW
« Reply #11 on: August 22, 2011, 11:35:47 PM »

You don't use this script if you are using Blizz-ABS.
Logged

Get King of Booze for Android, for iOS, for OUYA or for Windows!
Visit our website.
You can also love/hate us on Facebook or the game itself.


Get DropBox, the best free file syncing service there is!

Quote from: winkio
I do not speak to bricks, either as individuals or in wall form.

Quote from: Barney Stinson
When I get sad, I stop being sad and be awesome instead. True story.
Apidcloud
Ethereal Devastator
****

Level: -10
Offline Offline

Gender: Male
Posts: 255


Epic pony is epic'


View Profile WWW
« Reply #12 on: August 23, 2011, 03:54:27 AM »

This EAL is a simplified version of Blizz-ABS's original EAL. If you are using Blizz-ABS, please remove this script. Blizz-ABS has the full version of Blizz-ABSEAL built-in.
Blizz abseal doesn't really work right for 2.8 O_O. I have to manually use script calls to disable and enable blizzabs ._. For maps and what not

*Points to epicness*

Logged

Instead of wanting to be somebody else, rather become somebody else



"I will treasure the knowledge like a squirrel treasures acorns."

Gibbo Glast 2D Engine - The sky is no longer a limit
Magus
Astral Trancist
*****

Level: -20
Offline Offline

Gender: Male
Posts: 541


Writer of Destiny


View Profile
« Reply #13 on: August 30, 2011, 10:34:16 PM »

No, I'm talking about the Blizz-abseal that's built into Blizz-abs.  It's not working right for some reason, but I've gotten used to disabling and enabling things manually.
Logged

LEVEL ME DOWN. THE ANTI-BLIZZ GROUP IS AMONG YOU... Do it for the chick below...She watches..<br />
Blizzard
This sexy
Administrator
has over 9000 posts
*****

Level: 614
Offline Offline

Gender: Male
Posts: 19103


God created Stan in His own image


View Profile WWW
« Reply #14 on: August 30, 2011, 10:37:41 PM »

IDK, you should post that in the Blizz-ABS thread then so winkio can take a look at it. This thread is for the separate Blizz-ABSEAL script, unrelated to Blizz-ABS.
Logged

Get King of Booze for Android, for iOS, for OUYA or for Windows!
Visit our website.
You can also love/hate us on Facebook or the game itself.


Get DropBox, the best free file syncing service there is!

Quote from: winkio
I do not speak to bricks, either as individuals or in wall form.

Quote from: Barney Stinson
When I get sad, I stop being sad and be awesome instead. True story.
Magus
Astral Trancist
*****

Level: -20
Offline Offline

Gender: Male
Posts: 541


Writer of Destiny


View Profile
« Reply #15 on: August 30, 2011, 10:38:28 PM »

Ok.  I'll just copy and paste a few points from here.
Logged

LEVEL ME DOWN. THE ANTI-BLIZZ GROUP IS AMONG YOU... Do it for the chick below...She watches..<br />
Poe
Awakened Visionist
**

Level: 2
Offline Offline

Posts: 55



View Profile
« Reply #16 on: December 05, 2011, 12:36:35 AM »

maybe i'm doing something wrong here... i'm having some trouble understanding this bit:

Quote
If a character is moving outside of the screen, he will be updated as event, but not as sprite.

so events outside of screen are supposed to still get their movement code updated? because i tried that and the event stays at the same location until i move into range (unless i set it to parallel process, but that kinda defies the point).
Logged
ForeverZer0
The Cookie Monster
Global Moderator
Guardian of Chaos
****

Level: 288
Offline Offline

Gender: Male
Posts: 3121


Remember you are unique, just like everyone else.


View Profile
« Reply #17 on: December 05, 2011, 12:53:30 AM »

Do you have AUTO_KILL set to false?
Logged

I am done scripting for RMXP. I will likely not offer support for even my own scripts anymore, but feel free to ask on the forum, there are plenty of other talented scripters that can help you.
Poe
Awakened Visionist
**

Level: 2
Offline Offline

Posts: 55



View Profile
« Reply #18 on: December 05, 2011, 09:32:54 PM »

i've tried both false and true, same behavior, the event only starts moving when the player moves into visual range.

i put it in a completely fresh project because i thought it might be caused by a pathfinding script but the same thing happens (or doesn't happen).
Logged
LiTTleDRAgo
Astral Trancist
*****

Level: 500
Offline Offline

Gender: Male
Posts: 733


猫は可愛いです


View Profile
« Reply #19 on: December 07, 2011, 06:59:17 AM »

try remove this part

Quote

  alias upd_player_abseal_later update
  def update
    upd_player_abseal_later if self.update? || self.moving?
  end


that part of code is too evil
« Last Edit: December 07, 2011, 05:21:24 PM by LiTTleDRAgo » Logged

Pages: [1] 2  All
  Print  
 
Jump to:  


*
*
Shoutbox
Latest Shouts
View All
Today at 06:04:58 AM Ryex: (re-reader the quantum physics Wikipedia page + m theory and quantum loop gravity) holy shit guys. The world runs on floor division! 
Today at 05:20:58 AM Ryex: Zeno's paradox fails because the world is quantum. Suddenly quantum physics makes sense on a fundamental level. 
Today at 03:11:20 AM KK20: Finally fixed shaking in my Tilemap rewrite for what has been almost 4 days of solid guess-and-testing. Just need a couple more things and I can beta it.
October 31, 2014, 11:06:50 AM noixez: but no its just zexion
October 31, 2014, 08:49:55 AM noixez: Haha noob commin in here actin like he owns the place
October 31, 2014, 08:26:27 AM Blizzard: Lol, I was like "Hm, this noizex dude behaves as if he's been around for years. What a quirky and lively person."
October 31, 2014, 08:14:31 AM noixez: Lol, thanks rose! Fixed :b
October 31, 2014, 07:53:45 AM WhiteRose: Noixez, I think your avatar is out of date. Tongue
October 31, 2014, 07:53:03 AM WhiteRose: Hahaha. I know a few people who I could see doing something similar.
October 31, 2014, 05:43:19 AM gameus: This made me laugh harder than I should have, but all I could imagine was my girlfriend. xD
(click to show/hide)

View All


HB Games RpgMaker.org