[XP] Advanced Analyze System

Started by Blizzard, January 09, 2008, 05:02:38 pm

Previous topic - Next topic

Blizzard

January 09, 2008, 05:02:38 pm Last Edit: October 07, 2021, 10:36:10 am by Blizzard
Advanced Analyze System
Authors: Blizzard
Version: 2.4
Type: Enemy Scan Window and Skill
Key Term: Battle Add-on

Introduction

This script will allow your characters to retrieve information about enemies during battle and show them in a window. It also has built-in compatibility for my "Bestiary" script and allows adding enemies to it only if enemies were analyzed at least once. This script can easily be used for Pokémon typed games.

This work is licensed under BSD License 2.0:
QuoteCopyright (c) Boris "Blizzard" Mikić
All rights reserved.

Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are met:

1.  Redistributions of source code must retain the above copyright notice,
    this list of conditions and the following disclaimer.

2.  Redistributions in binary form must reproduce the above copyright notice,
    this list of conditions and the following disclaimer in the documentation
    and/or other materials provided with the distribution.

3.  Neither the name of the copyright holder nor the names of its contributors
    may be used to endorse or promote products derived from this software
    without specific prior written permission.

THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
POSSIBILITY OF SUCH DAMAGE.

You may use this script for both non-commercial and commercial products without limitations as long as you fulfill the conditions presented by the above license. The "complete" way to give credit is to include the license somewhere in your product (e.g. in the credits screen), but a "simple" way is also acceptable. The "simple" way to give credit is as follows:
QuoteAdvanced Analyze System licensed under BSD License 2.0, Copyright (c) Boris "Blizzard" Mikić

Alternatively, if your font doesn't support diacritic characters, you may use this variant:
QuoteAdvanced Analyze System licensed under BSD License 2.0, Copyright (c) Boris "Blizzard" Mikic

In general other similar variants are allowed as long as it is clear who the creator is (e.g. "Advanced Analyze System created by Blizzard" is acceptable). But if possible, prefer to use one of the two variants listed above.

If you fail to give credit and/or claim that this work was created by you, this may result in legal action and/or payment of damages even though this work is free of charge to use normally.


Features

  • make one or more skills to be able to analyze enemies
  • display of full data of enemies
  • option to disable different information
  • integrated support for my "Bestiary" script and option to override it and only add analyzed enemies
  • press SHIFT/ENTER to change the appearance of the analyze window
  • use LEFT/RIGHT/UP/DOWN to navigate through the information database
v1.1b
  • shorter, better and more simple code
  • fixed the bug where trying to use a skill in the menu caused loss of SP no matter if the skill was used or could not be used
  • updates now the spriteset while the Analyze window is visible
v1.2b
  • improved coding (uses less RAM now and processes faster)
v1.3b
  • increased compatibility
v2.0b
  • completely overworked and fixed compatibility issues
v2.1b
  • added custom info possibility
v2.2b
  • rewritten conditions using classic syntax to avoid RGSS conditioning bug
  • improved coding
v2.21b
  • improved coding
v2.3b
  • improved coding
v2.4
  • added new license
  • added usage and crediting instructions


Screenshots

Spoiler: ShowHide


Demo

Advanced Analyze System

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

96% compatible with SDK v1.x. 70% compatible with SDK v2.x. May cause incompatibility issues with exotic CBS-es. WILL corrupt your old savegames.

Credits and Thanks

  • Boris "Blizzard" Mikić

Author's Notes

Do NOT give enemies analyzing skills! You MUST configure the one part if you have scripts that use dummy elements! Do NOT give your enemies MORE than 8 elements/status effects of one resistance type (e.g. 9 or more elements, that are absorbed), because they won't be displayed. Do NOT use this skill on party members.

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

That's it! N-Joy! =D
Check out Daygames and our games:

King of Booze 2      King of Booze: Never Ever
Drinking Game for Android      Never have I ever for Android
Drinking Game for iOS      Never have I ever for iOS


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

Quote from: Barney StinsonWhen I get sad, I stop being sad and be awesome instead. True story.

Calintz

This si compatible with Chaos Limit and everythin, correct?? ???

Nortos

yeah it's just a skill so it wouldn't do anything bad unless the person was really bad scripter and we know Blizzard is godly :P

Calintz

Yes...yes we do know that...
- Then I will probably use this...

Nortos

yeah I'm using it for my hunter class in my game gonna use different animation though

Calintz


Fantasist

All of Blizzard's scripts are compatible btw.
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




Nortos

with each other yeah and with almost all scripts cept like CRLS with  advanced CBS or battle commands (though I made mine compatable with a cross command window :))

GAX

Necroposting a script, but with a good question.

I have monsters that would be unaffected by specific WEAPON classes.  I have separated weapon classes by creating an element for each weapon (1handed sword, 2handed sword, Katana, etc.), but I figure it might look a little wierd if the Weapon immunity appears as a status immunity.

Any way to get around this or should I just deal with it and refer to them as "Weapon Elements" instead of "Weapon Classes"?

Rule 2: ShowHide
Quote from: Rule No.2Keep your signatures at reasonable size. The pictures in your signature may altogether be no more than 200kB and take up an area of 1600px2. That means 2 pictures of 400x200 are fine, one picture of 800x200 is fine and so on. Also your pictures height must not exceed 200 pixels, width can be as big as you want as long as your pictures match the other criteria. Every signature not matching this criteria is a subject of the moderator team to remove and leave this rule as message in your signature.

Nortos

Can't you just put that element in the dummy element section? and than write that it's immune to that weapon somewhere else?
Or am I missing the problem?

Blizzard

It would appear as elemental immunity. Well, you'll have to edit the script a bit if you want them to appear as weapon classes. The best way would be to add those elements as dummies and make an addition that displays the weaknesses for weapon class elements. You'd have to copy paste the code for the elements and change the number of pages.
Check out Daygames and our games:

King of Booze 2      King of Booze: Never Ever
Drinking Game for Android      Never have I ever for Android
Drinking Game for iOS      Never have I ever for iOS


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

Quote from: Barney StinsonWhen I get sad, I stop being sad and be awesome instead. True story.

Exiled_by_choise

I but your Advanced Analyse System and your Beastiary scripts into my game but they don't work together.

The beastiary works by itself but when I but the analysis system with it the skill wont work and i can't see the monster.

Can you help me?? :) :)

Blizzard

Check out Daygames and our games:

King of Booze 2      King of Booze: Never Ever
Drinking Game for Android      Never have I ever for Android
Drinking Game for iOS      Never have I ever for iOS


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

Quote from: Barney StinsonWhen I get sad, I stop being sad and be awesome instead. True story.

Exiled_by_choise


clashlucifer


Starrodkirby86

Hopefully it works like usual with the RTAB. I do not see any compatibility issues with RTAB, but I have not tested this, so I'm quite unsure. Just configure it like how you usually configure a skill script like this. (Look in the Configuration part of the script and read the instructions :x).

What's osu!? It's a rhythm game. Thought I should have a signature with a working rank. ;P It's now clickable!
Still Aqua's biggest fan (Or am I?).




Blizzard

v2.21b is up. After about 2 years. xD
Check out Daygames and our games:

King of Booze 2      King of Booze: Never Ever
Drinking Game for Android      Never have I ever for Android
Drinking Game for iOS      Never have I ever for iOS


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

Quote from: Barney StinsonWhen I get sad, I stop being sad and be awesome instead. True story.

Blizzard

Check out Daygames and our games:

King of Booze 2      King of Booze: Never Ever
Drinking Game for Android      Never have I ever for Android
Drinking Game for iOS      Never have I ever for iOS


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

Quote from: Barney StinsonWhen I get sad, I stop being sad and be awesome instead. True story.

LordOfThunder

Hi,

at first: Thanks for this precious script.
But I have a little trouble using it.

I want to have different Analyse-Skills which reveal more or less of the enemy, e.g.

Simple Analyse => Shows only BASIC and STATS
Better Analyse => Shows the above, plus EXTSTATS and XTRWEAK

Since now, I tried to set them via Common Event, made them global variables and have put them in an initialize function with a case-structure inside.
Unfortunately, nothing works. I always get some kind of error.

Can You help me please and tell me how to set the variables when calling a skill?

Thanks so far
Lord

Blizzard

I did not intend this system to be able to create different analyzing skills.
Check out Daygames and our games:

King of Booze 2      King of Booze: Never Ever
Drinking Game for Android      Never have I ever for Android
Drinking Game for iOS      Never have I ever for iOS


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

Quote from: Barney StinsonWhen I get sad, I stop being sad and be awesome instead. True story.

Starmage

Hello!! first off, I really like this script!! Very nicely made!! Thanks so much for this!! xDD

But I'm having some sort of problem.. umm.. when I start the game, the skill works fine.. but when I use a save file of the project.. and I use the skill in battles.. this error pops up:



I don't know what I'm doing wrong x(( btw, I'm using Moonpearl scripts along with it! any help would be very appreciated!

KK20

Quote
Compatibility

96% compatible with SDK v1.x. 70% compatible with SDK v2.x. May cause incompatibility issues with exotic CBS-es. WILL corrupt your old savegames.

Other Projects
RPG Maker XP Ace  Upgrade RMXP to RMVXA performance!
XPA Tilemap  Tilemap rewrite with many features, including custom resolution!

Nintendo Switch Friend Code: 8310-1917-5318
Discord: KK20 Tyler#8901

Join the CP Discord Server!

Starmage

Ohh!! I just realized CBS stands for "Costume battle system"! xDD I forgot what it was, so sorry for my newbness once again!! And.. that is so sad indeed!! I was even hoping I could use the script for my project! x((

I wonder how I can do a scan skill without these problems though x((

KK20

You said that it worked when you started a new game, but it failed when you used an old save file, right?
Quote from: KK20 on May 25, 2016, 03:48:05 pm
Quote
Compatibility

96% compatible with SDK v1.x. 70% compatible with SDK v2.x. May cause incompatibility issues with exotic CBS-es. WILL corrupt your old savegames.


Other Projects
RPG Maker XP Ace  Upgrade RMXP to RMVXA performance!
XPA Tilemap  Tilemap rewrite with many features, including custom resolution!

Nintendo Switch Friend Code: 8310-1917-5318
Discord: KK20 Tyler#8901

Join the CP Discord Server!

Starmage

Yeahh!! Oh my!! But my problem is that, people have already played my project and have save-files already! x(( if they have to keep on restarting everytime I update my game, that would be quite tiresome for them! x((

I'm very sorry for the confusions caused Kk20! but I really do my best to cater to my project's players as much as possible.. x((

KK20

May 25, 2016, 06:42:41 pm #25 Last Edit: May 25, 2016, 06:44:33 pm by KK20
How about throwing this code at the bottom of the script?

class Scene_Load < Scene_File
  alias load_adv_anal_sys on_decision
  def on_decision(filename)
    load_adv_anal_sys(filename)
    @analyze_mode ||= 0
    @analyzed ||= []
  end
end

inb4 blizz posts xD

Other Projects
RPG Maker XP Ace  Upgrade RMXP to RMVXA performance!
XPA Tilemap  Tilemap rewrite with many features, including custom resolution!

Nintendo Switch Friend Code: 8310-1917-5318
Discord: KK20 Tyler#8901

Join the CP Discord Server!

Starmage

Thanks so much for this KK20, but the error still pops up! x(( hmm, maybe I did something wrong? I pasted your code at the bottom-most part of Blizzard's Advanced Analyze script right after the "end end end" from Scene_battle within the script.. or do you mean I paste it as another script placed below Advanced analyze script? x((

KK20

Oh wow I was tired.

class Scene_Load < Scene_File
  alias load_adv_anal_sys on_decision
  def on_decision(filename)
    load_adv_anal_sys(filename)
    $game_system.analyze_mode ||= 0
    $game_system.analyzed ||= []
  end
end

Other Projects
RPG Maker XP Ace  Upgrade RMXP to RMVXA performance!
XPA Tilemap  Tilemap rewrite with many features, including custom resolution!

Nintendo Switch Friend Code: 8310-1917-5318
Discord: KK20 Tyler#8901

Join the CP Discord Server!

Starmage

May 26, 2016, 01:48:47 am #28 Last Edit: May 26, 2016, 01:52:12 am by Starmage
Thanks for your help KK20, but it seems I still get the error even though I used your new code now! Hmm!! I'm very sorry for all the trouble! and thanks once again for all your help! please take your time with this and don't be pressured by my request! I believe that you can find a remedy for this.. as you had for my previous problems Kk20! :)

Honestly, I couldn't find any other scan scripts that are perfect for my game right now except for this! which I really feel would be a big addition for my project! x((

KK20

It's probably script order then. I forgot your script list has a lot of instances where class methods are redefined. In other words, my fix is being ignored because some script below it is overwriting it.

In that case, put the snippet as far down as possible in your scripts list while still being above Main.

Other Projects
RPG Maker XP Ace  Upgrade RMXP to RMVXA performance!
XPA Tilemap  Tilemap rewrite with many features, including custom resolution!

Nintendo Switch Friend Code: 8310-1917-5318
Discord: KK20 Tyler#8901

Join the CP Discord Server!

Starmage

Umm, the problem is.. I've already put the script (Analyze along with your codes) at the most bottom part (above main)..

I did try putting the script vice-versa (above MP's scripts).. though there was no error, the skill didn't do anything (the spell was being cast by the char, all the animations took place.. but it didn't do anything as to reveal the enemies' data)..

So the problems on the orders were:

If at bottom most part or middle parts = The error pops up
If at top most part = there was no error, BUT, when the skill is cast, it does nothing!

OH! and here's my script.rxdata file (the one i'm using now), maybe you can see clearly there what might be the problem:
https://www.mediafire.com/?kvtmvegquhg7hzn

:(

KK20


class Scene_File < Scene_Base
  alias load_adv_anal_sys read_save_data
  def read_save_data(file)
    load_adv_anal_sys(file)
    $game_system.analyze_mode ||= 0
    $game_system.analyzed ||= []
  end
end

I guess aliasing that method actually does make more sense instead. I should change one of my scripts...

Other Projects
RPG Maker XP Ace  Upgrade RMXP to RMVXA performance!
XPA Tilemap  Tilemap rewrite with many features, including custom resolution!

Nintendo Switch Friend Code: 8310-1917-5318
Discord: KK20 Tyler#8901

Join the CP Discord Server!

Starmage

Woww!!!! It worked!! I am no longer encountering the error with the new safe-file!! and the skills worked perfectly fine now!! I knew you could find the remedy KK20!! Thank you so much!! xDD This script will be a very perfect additional feature in my game! and I cannot thank you guys enough! for the script itself and all the help that you've given!! :D

Your codes and patches are not only helpful for me, but also to everyone who may have encountered the same problems as I do! so thank you so much once again! :)