DoubleX RMVXA Substitute Edit

DoubleX

Just a nameless weakling
Veteran
Joined
Jan 2, 2014
Messages
1,787
Reaction score
939
First Language
Chinese
Primarily Uses
N/A
DoubleX RMVXA Substitute Edit  v1.01b​
by DoubleX​

Compatibility Fix

DoubleX RMVXA Substitute Compatibility Fix

Introduction

In the default setting, if more than one battler in the same side have the substitute flag, the one with the lowest id(the leftmost one) will always do the job, even if his/her/its hp isn't the highest among them all.

With this script, it's the one with the highest hp that'll always do the job, thus increasing the effectiveness of the substitute flag if more than one battler in the same side have it.

To understand why it's the case, let's compare the default with the "how this script works" part(and the only part) of this script(little scripting knowledge is needed to understand the following):

The default

def substitute_battler members.find {|member| member.substitute? } endThe one with the lowest id among all having the substitute flag will be returned by the method substitute_battler, and thus doing the job. Whether the returned member has the highest hp isn't checked at all.

"how this script works" part of this script

def substitute_battler    # This part is rewritten by this script to return the one having the highest hp among all having the substitute flag    member_hp = member_temp_hp = 0    member_temp = []    members.each { |member|      next if !member.substitute?      if member.state_resist?(member.death_state_id)        member_temp.push(member)        member_temp_hp = member.hp if member_temp_hp < member.hp      else       member_hp = member.hp if member_hp < member.hp      end    }    if !member_temp.empty?      member_hp = member_temp_hp      member_temp = members    end    member_temp.find {|member| member.substitute? && member.hp == member_hp}    #  end # substitute_battlerThe addition of member_hp is to store the highest hp value among all battlers having the substitute flag. The one with the lowest id among all having the highest hp in those having the substitute flag will be returned by the method substitute_battler, and thus doing the job.
(v1.00b+)Substitute flag applies to magic reflection and counterattack as well.

(v1.00c+)Compatible with DoubleX RMVXA Counterattack Edit(by putting below it)

(v1.00d+)Battlers resisting state with death_state_id take the substitute role

Features

Plug and play(You don't need to edit anything in this script but you may still do so)

Screenshots

Believe it or not, in the following 2 screenshots, Eric, Terence and Ernest have substitute flag while Isabelle doesn't.

Default setting:



With this script:

How to use

Open the script editor and put this script into an open slot between Materials and Main. Save to take effect.

FAQ

None

Credit and Thanks

DoubleX(Giving me credit is completely optional)

No terms of use other than not claiming this script as created by anyone except DoubleX or his alias

Compatibility

Scripts aliasing or rewriting method:

- substitute_battler under class Game_Unit

- invoke_counter_attack or invoke_magic_reflection under class Scene_Battle

may have compatibility issues with this script

Place this script above those aliasing any of these methods if possible

Changelog

v1.01b(GMT 1200 21-7-2014):

- Compatible with DoubleX RMVXA Formulae Edit

v1.01a(GMT 0700 4-7-2015):

- Lets users set if the substitute only triggers if the skill/item hits

- Improved this script's readibility

v1.00h(GMT 0200 5-7-2014):

- Improved the compatibility with DoubleX RMVXA Counterattack Edit

v1.00g(GMT 0500 14-3-2014):

- Substitute flag applies to mp damage also

v1.00f(GMT 1200 8-2-2014):

- Substitute flag doesn't apply to item targeting friends

v1.00e (GMT 0900 16-1-2014):

- Fixed a & b bug in damage formula of counterattack skills

v1.00d (GMT 0000 9-1-2014):

- Battlers resisting state with death_state_id take the substitute role

v1.00c (GMT 0400 5-1-2014):

- Compatible with DoubleX RMVXA Counterattack Edit(by putting below it)

v1.00b (GMT 0000 5-1-2014):

 - Substitute flag applies to MRF and CNT also

v1.00a (GMT 1200 2-1-2014):
 - 1st version of this script finished

(DoubleX)Substitute Edit v1.01b.rar
 

Attachments

Last edited by a moderator:

DoubleX

Just a nameless weakling
Veteran
Joined
Jan 2, 2014
Messages
1,787
Reaction score
939
First Language
Chinese
Primarily Uses
N/A
Updates

v1.01a(GMT 0700 4-7-2015):

- Lets users set if the substitute only triggers if the skill/item hits

- Improved this script's readibility
 

DoubleX

Just a nameless weakling
Veteran
Joined
Jan 2, 2014
Messages
1,787
Reaction score
939
First Language
Chinese
Primarily Uses
N/A
Updates

v1.01b(GMT 1200 21-7-2014):

- Compatible with DoubleX RMVXA Formulae Edit
 

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

Latest Threads

Latest Posts

Latest Profile Posts

How many parameters is 'too many'??
Yay, now back in action Happy Christmas time, coming back!






Back in action to develop the indie game that has been long overdue... Final Fallacy. A game that keeps on giving! The development never ends as the developer thinks to be the smart cookie by coming back and beginning by saying... "Oh bother, this indie game has been long overdue..." How could one resist such? No-one c
So I was playing with filters and this looked interesting...

Versus the normal look...

Kind of gives a very different feel. :LZSexcite:
To whom ever person or persons who re-did the DS/DS+ asset packs for MV (as in, they are all 48x48, and not just x2 the pixel scale) .... THANK-YOU!!!!!!!!! XwwwwX

Forum statistics

Threads
105,853
Messages
1,016,990
Members
137,562
Latest member
tamedeathman
Top