Help - Search - Members - Calendar
Full Version: Target Selection IN BATTLE [V1.3]
RPG RPG Revolution Forums > Scripting > Script Submissions > RGSS2-Submissions
cr4200
Title: Target Selection In Battle
Version: 1.3
Author: CR4200

Intro

This Script alows the player to directly decide whether or not to attack 1 enemy
or all. It might not llok glamorous but it adds a new level of strategy to battles.
It also divides the attack damage equally among the affect enemies.
It's nothing to glamorous but it gets the job done.
It's also my first 1day script :thumbsup:

*UPDATE*
I have returned from boston and so now i shall do some more work on this.
For right now i've just added a simple custom button input option as well
as a "damage effect" option, read about it in the V1.1 script.
thanks for the feedback everyone. :D
I will try and add in a party/enemy switch soon.

*UPDATE*
thanks to Broken Aesop, I've fixed a bug in the system that made it so that if you first chose a "target all" skill then attack for the next actor, then the skill would revert back to a single target. But I've fixed that and have put up the new script.

*UPDATE*
Now works for ally skills such as healing and buffing skills

Features
    V1.3
  • "Choose All" selection works for ally skills such as healing and buffing
    V1.2(bug fix)
  • Fixed bugs
  • cleaner script
    V1.1
  • Choose input button for choose all
  • New "damage effect" option to slightly control damage distribution
    V1.0
  • Determine which skills have the effect through notes section
  • Press Shift at enemy selection to target all
  • Help message box above enemy selection window
  • divides damages among the current enemies

Script

CODE
###############################################
=begin
V1.3
Made By: CR4200
This script adds the function to choose in battle
whether to attack a single target or all for certain skills.
The Damage of the attack is then split up among the
targets equally.

This is a script I have long looked for on the forums
and have been unable to find so i made it myself.
This is my first ONE day script and thus it's not
to flashy, but it does what it needs to do.

_-_-_-[How to use]-_-_-_

Simply put "<scopechoose>" (without quotes) within
the notes section of the desired skill.

=end
###############################################

module ChooseScope
#to customize button input simply put the button you wish to use after
#Input::
# i/e Input::A/Input::B/Input::CTRL
# supported buttons with default Input module:
# DOWN LEFT RIGHT UP
# A B C X Y Z L R
# SHIFT CTRL ALT
# F5 F6 F7 F8 F9
BUTTON_INPUT = Input::SHIFT
# This is what you put in the notes section of the skill
# to give it the choose skill attribute
CUSTOM_SCOPE = /<(?:CUSTOM_SCOPE|scopechoose)\s*(\d+)?>/i
#If you changedd BUTTON_INPUT you might want to change this as well ;)
HELP_TEXT = "Press SHIFT to target all."

#When true:
# Damage will be determined by CURRENT EXISTING ENEMIES
# i/e:
# If there are two enemies and an actor uses custom scope
# skill, this is what will happen.
# The first enemy will only recieve 1/2 damage
# If the first enemy dies, then the existing enemies changes
# to 1, thus enemy 2 recieves 1/1 damage
#When false:
# Damage will be determined by all enemies that exist in the
# Battle, Dead or alive.
# If there are two enemies and an actor uses a custom scope skill
# Then both will recieve 1/2 damage regardless if
# the first one dies or not
#note: if you target all enemies, and one dies before the skill
#is preformed, the calculated damage will be based off
#of the number of enemies alive when the skill was chosen
#
#i/e: 2 enemies alive
# actor 1 chooses attack
# actor 2 choose fire targeting all
# actor 1 kills one enemy ( 1 left)
# actor 2 does only 1/2 damage to the 1 enemy
#
#you can view this as a plus or a minus, i might make a way to
#make this controlable later on.
DAMAGE_EFFECT = true

end

###############################################
#RPG::Skill ChooseScope module
###############################################
class RPG::Skill < RPG::UsableItem
def create_choose_scope_cache
@choose_scope = false

self.note.split(/[\r\n]+/).each { |line|
case line
when ChooseScope::CUSTOM_SCOPE
@choose_scope = true
else
@choose_scope = false
end
}
end
def choose_scope?
create_choose_scope_cache if @choose_scope == nil
return @choose_scope
end
end
###############################################
#Scene_Battle aliases
###############################################
class Scene_Battle < Scene_Base
alias choose_start_alias start
def start
choose_start_alias
@help_window2 = Window_Help.new
@help_window2.visible = false
@help_window2.active = false
end
###############################################
alias choose_update_alias update
def update
choose_update_alias
unless $choose_scope == nil
if ($choose_scope == true and @target_enemy_window != nil and @target_enemy_window.active) or ($choose_scope == true and @target_actor_window != nil and @target_actor_window.active)
@help_window2.z += 10
@help_window2.visible = true
@help_window2.y = (416 - 128 - @help_window2.height)
@help_window2.set_text(ChooseScope::HELP_TEXT)
else
@help_window2.visible = false
end
end
end
###############################################
alias end_selection_alias1 end_target_enemy_selection
def end_target_enemy_selection
end_selection_alias1
$choose_scope = false
end
alias end_selection_alias2 end_target_actor_selection
def end_target_actor_selection
$choose_scope = false
end_selection_alias2
end
###############################################
alias choose_scope1 update_target_enemy_selection
def update_target_enemy_selection
choose_scope1
$choose_all = false if @skill = nil
if Input.trigger?(ChooseScope::BUTTON_INPUT)
if $choose_scope == false
Sound.play_buzzer
return
end
Sound.play_decision
$choose_all = true
@active_battler.action.target_index = @target_enemy_window.enemy.index
end_target_enemy_selection
end_skill_selection
end_item_selection
next_actor
end
end
alias choose_scope2 update_target_actor_selection
def update_target_actor_selection
choose_scope2
$choose_all = false
$choose_all = false if @skill = nil
if Input.trigger?(ChooseScope::BUTTON_INPUT)
if $choose_scope == false
Sound.play_buzzer
return
end
Sound.play_decision
$choose_all = true
@active_battler.action.target_index = @target_actor_window.index
end_target_actor_selection
end_skill_selection
end_item_selection
next_actor
end
end
###############################################
alias scope_skill determine_skill
def determine_skill
scope_skill
if @skill.need_selection?
if @skill.choose_scope?
$choose_scope = true
else
$choose_scope = false
end
end
end
end
###############################################
#Game_BattleAction Alias
###############################################
class Game_BattleAction
alias battleaction_alias make_obj_targets
def make_obj_targets(obj)
if $choose_all == true
targets = []
if obj.for_opponent?
targets += opponents_unit.existing_members
return targets.compact
elsif obj.for_friend?
targets += friends_unit.existing_members
return targets.compact
end
end
return battleaction_alias(obj)
end
end
###############################################
#----------This Redefines make_obj_damage_value
#i wasn't able to alias it for some reason...
###############################################
class Game_Battler
def make_obj_damage_value(user, obj)
damage = obj.base_damage # get base damage
if damage > 0 # a positive number?
damage += user.atk * 4 * obj.atk_f / 100 # Attack F of the user
damage += user.spi * 2 * obj.spi_f / 100 # Spirit F of the user
unless obj.ignore_defense # Except for ignore defense
damage -= self.def * 2 * obj.atk_f / 100 # Attack F of the target
damage -= self.spi * 1 * obj.spi_f / 100 # Spirit F of the target
end
damage = 0 if damage < 0 # If negative, make 0
elsif damage < 0 # a negative number?
damage -= user.atk * 4 * obj.atk_f / 100 # Attack F of the user
damage -= user.spi * 2 * obj.spi_f / 100 # Spirit F of the user
end
damage *= elements_max_rate(obj.element_set) # elemental adjustment
damage /= 100
damage = apply_variance(damage, obj.variance) # variance
damage = apply_guard(damage) # guard adjustment
if $choose_all == true
if ChooseScope::DAMAGE_EFFECT == false
if obj.for_opponent?
damage /= $game_troop.members.size
elsif obj.for_friend?
damage /= $game_party.members.size
end
else
if obj.for_opponent?
damage /= $game_troop.existing_members.size
elsif obj.for_friend?
damage /= $game_party.existing_members.size
end
end
end
if obj.damage_to_mp
@mp_damage = damage # damage MP
else
@hp_damage = damage # damage HP
end
end
end


[Show/Hide] V1.2(bug fix)

CODE

###############################################
=begin
V1.2
Made By: CR4200
This script adds the function to choose in battle
whether to attack a single target or all for certain skills.
The Damage of the attack is then split up among the
targets equally.

This is a script I have long looked for on the forums
and have been unable to find so i made it myself.
This is my first ONE day script and thus it's not
to flashy, but it does what it needs to do.

_-_-_-[How to use]-_-_-_

Simply put "<scopechoose>" (without quotes) within
the notes section of the desired skill.

=end
###############################################

module ChooseScope
#to customize button input simply put the button you wish to use after
#Input::
# i/e Input::A/Input::B/Input::CTRL
# supported buttons with default Input module:
# DOWN LEFT RIGHT UP
# A B C X Y Z L R
# SHIFT CTRL ALT
# F5 F6 F7 F8 F9
BUTTON_INPUT = Input::SHIFT
# This is what you put in the notes section of the skill
# to give it the choose skill attribute
CUSTOM_SCOPE = /<(?:CUSTOM_SCOPE|scopechoose)\s*(\d+)?>/i
#If you changedd BUTTON_INPUT you might want to change this as well ;)
HELP_TEXT = "Press SHIFT to target all."

#When true:
# Damage will be determined by CURRENT EXISTING ENEMIES
# i/e:
# If there are two enemies and an actor uses custom scope
# skill, this is what will happen.
# The first enemy will only recieve 1/2 damage
# If the first enemy dies, then the existing enemies changes
# to 1, thus enemy 2 recieves 1/1 damage
#When false:
# Damage will be determined by all enemies that exist in the
# Battle, Dead or alive.
# If there are two enemies and an actor uses a custom scope skill
# Then both will recieve 1/2 damage regardless if
# the first one dies or not
#note: if you target all enemies, and one dies before the skill
#is preformed, the calculated damage will be based off
#of the number of enemies alive when the skill was chosen
#
#i/e: 2 enemies alive
# actor 1 chooses attack
# actor 2 choose fire targeting all
# actor 1 kills one enemy ( 1 left)
# actor 2 does only 1/2 damage to the 1 enemy
#
#you can view this as a plus or a minus, i might make a way to
#make this controlable later on.
DAMAGE_EFFECT = true

end

###############################################
#RPG::Skill ChooseScope module
###############################################
class RPG::Skill < RPG::UsableItem
def create_choose_scope_cache
@choose_scope = false

self.note.split(/[\r\n]+/).each { |line|
case line
when ChooseScope::CUSTOM_SCOPE
@choose_scope = true
else
@choose_scope = false
end
}
end
def choose_scope?
create_choose_scope_cache if @choose_scope == nil
return @choose_scope
end
end
###############################################
#Scene_Battle aliases
###############################################
class Scene_Battle < Scene_Base
alias choose_start_alias start
def start
choose_start_alias
@help_window2 = Window_Help.new
@help_window2.visible = false
@help_window2.active = false
end
###############################################
alias choose_update_alias update
def update
choose_update_alias
unless $choose_scope == nil
if $choose_scope == true and @target_enemy_window != nil and @target_enemy_window.active
@help_window2.z += 10
@help_window2.visible = true
@help_window2.y = (416 - @target_enemy_window.height - @help_window2.height)
@help_window2.set_text(ChooseScope::HELP_TEXT)
else
@help_window2.visible = false
end
end
end
###############################################
alias end_selection_alias end_target_enemy_selection
def end_target_enemy_selection
end_selection_alias
$choose_scope = false
end
###############################################
alias choose_scope1 update_target_enemy_selection
def update_target_enemy_selection
choose_scope1
$choose_all = false if @skill = nil
if Input.trigger?(ChooseScope::BUTTON_INPUT)
if $choose_scope == false
Sound.play_buzzer
return
end
Sound.play_decision
$choose_all = true
@active_battler.action.target_index = @target_enemy_window.enemy.index
end_target_enemy_selection
end_skill_selection
end_item_selection
next_actor
end
end
###############################################
alias scope_skill determine_skill
def determine_skill
scope_skill
if @skill.need_selection?
if @skill.choose_scope?
$choose_scope = true
else
$choose_scope = false
end
end
end
end
###############################################
#Game_BattleAction Alias
###############################################
class Game_BattleAction
alias battleaction_alias make_obj_targets
def make_obj_targets(obj)
if $choose_all == true
targets = []
targets += opponents_unit.existing_members
return targets.compact
end
return battleaction_alias(obj)
end
end
###############################################
#----------This Redefines make_obj_damage_value
#i wasn't able to alias it for some reason...
###############################################
class Game_Battler
def make_obj_damage_value(user, obj)
damage = obj.base_damage # get base damage
if damage > 0 # a positive number?
damage += user.atk * 4 * obj.atk_f / 100 # Attack F of the user
damage += user.spi * 2 * obj.spi_f / 100 # Spirit F of the user
unless obj.ignore_defense # Except for ignore defense
damage -= self.def * 2 * obj.atk_f / 100 # Attack F of the target
damage -= self.spi * 1 * obj.spi_f / 100 # Spirit F of the target
end
damage = 0 if damage < 0 # If negative, make 0
elsif damage < 0 # a negative number?
damage -= user.atk * 4 * obj.atk_f / 100 # Attack F of the user
damage -= user.spi * 2 * obj.spi_f / 100 # Spirit F of the user
end
damage *= elements_max_rate(obj.element_set) # elemental adjustment
damage /= 100
damage = apply_variance(damage, obj.variance) # variance
damage = apply_guard(damage) # guard adjustment
if $choose_all == true
if ChooseScope::DAMAGE_EFFECT == false
damage /= $game_troop.members.size
else
damage /= $game_troop.existing_members.size
end
end
if obj.damage_to_mp
@mp_damage = damage # damage MP
else
@hp_damage = damage # damage HP
end
end
end




CODE

###############################################
=begin
V1.1
Made By: CR4200
This script adds the function to choose in battle
whether to attack a single target or all for certain skills.
The Damage of the attack is then split up among the
targets equally.

This is a script I have long looked for on the forums
and have been unable to find so i made it myself.
This is my first ONE day script and thus it's not
to flashy, but it does what it needs to do.

_-_-_-[How to use]-_-_-_

Simply put "<scopechoose>" (without quotes) within
the notes section of the desired skill.

=end
###############################################

module ChooseScope
#to customize button input simply put the button you wish to use after
#Input::
# i/e Input::A/Input::B/Input::CTRL
# supported buttons with default Input module:
# DOWN LEFT RIGHT UP
# A B C X Y Z L R
# SHIFT CTRL ALT
# F5 F6 F7 F8 F9
BUTTON_INPUT = Input::CTRL
# This is what you put in the notes section of the skill
# to give it the choose skill attribute.
# to change, after the CUSTOM_SCOPE|"this is what you should change" without the quotes
CUSTOM_SCOPE = /<(?:CUSTOM_SCOPE|scopechoose)\s*(\d+)?>/i
#If you changedd BUTTON_INPUT you might want to change this as well ;)
HELP_TEXT = "Press SHIFT to target all."

#When true:
# Damage will be determined by CURRENT EXISTING ENEMIES
# i/e:
# If there are two enemies and an actor uses custom scope
# skill, this is what will happen.
# The first enemy will only recieve 1/2 damage
# If the first enemy dies, then the existing enemies changes
# to 1, thus enemy 2 recieves 1/1 damage
#When false:
# Damage will be determined by all enemies that exist in the
# Battle, Dead or alive.
# If there are two enemies and an actor uses a custom scope skill
# Then both will recieve 1/2 damage regardless if
# the first one dies or not
#note: if you target all enemies, and one dies before the skill
#is preformed, the calculated damage will be based off
#of the number of enemies alive when the skill was chosen
#
#i/e: 2 enemies alive
# actor 1 chooses attack
# actor 2 choose fire targeting all
# actor 1 kills one enemy ( 1 left)
# actor 2 does only 1/2 damage to the 1 enemy
#
#you can view this as a plus or a minus, i might make a way to
#make this controlable later on.
DAMAGE_EFFECT = true

end

###############################################
#RPG::Skill ChooseScope module
###############################################
class RPG::Skill < RPG::UsableItem
def create_choose_scope_cache
@choose_scope = false

self.note.split(/[\r\n]+/).each { |line|
case line
when ChooseScope::CUSTOM_SCOPE
@choose_scope = true
else
@choose_scope = false
end
}
end
def choose_scope?
create_choose_scope_cache if @choose_scope == nil
return @choose_scope
end
end
###############################################
#Scene_Battle aliases
###############################################
class Scene_Battle < Scene_Base
alias choose_start_alias start
def start
choose_start_alias
@help_window2 = Window_Help.new
@help_window2.visible = false
@help_window2.active = false
end
###############################################
alias choose_update_alias update
def update
choose_update_alias
unless $choose_scope == nil
if $choose_scope == true and @target_enemy_window != nil and @target_enemy_window.active
@help_window2.z += 10
@help_window2.visible = true
@help_window2.y = (416 - @target_enemy_window.height - @help_window2.height)
@help_window2.set_text(ChooseScope::HELP_TEXT)
else
@help_window2.visible = false
end
end
end
###############################################
alias command_alias update_actor_command_selection
def update_actor_command_selection
command_alias
if Input.trigger?(Input::C)
case @actor_command_window.index
when 0 # Attack
$choose_scope = false
end
end
end
###############################################
alias enemy_selection_alias start_target_enemy_selection
def start_target_enemy_selection
enemy_selection_alias
end
alias end_selection_alias end_target_enemy_selection
def end_target_enemy_selection
end_selection_alias
$choose_scope = false
end
###############################################
alias choose_scope1 update_target_enemy_selection
def update_target_enemy_selection
choose_scope1
$choose_all = false
if Input.trigger?(ChooseScope::BUTTON_INPUT)
if $choose_scope == false
Sound.play_buzzer
return
end
Sound.play_decision
$choose_all = true
@active_battler.action.target_index = @target_enemy_window.enemy.index
end_target_enemy_selection
end_skill_selection
end_item_selection
next_actor
end
end
###############################################
alias scope_skill determine_skill
def determine_skill
scope_skill
if @skill.need_selection?
if @skill.choose_scope?
$choose_scope = true
else
$choose_scope = false
end
end
end
end
###############################################
#Game_BattleAction Alias
###############################################
class Game_BattleAction
alias battleaction_alias make_obj_targets
def make_obj_targets(obj)
if $choose_all == true
targets = []
targets += opponents_unit.existing_members
return targets.compact
end
return battleaction_alias(obj)
end
end
###############################################
#----------This Redefines make_obj_damage_value
#i wasn't able to alias it for some reason...
###############################################
class Game_Battler
def make_obj_damage_value(user, obj)
damage = obj.base_damage # get base damage
if damage > 0 # a positive number?
damage += user.atk * 4 * obj.atk_f / 100 # Attack F of the user
damage += user.spi * 2 * obj.spi_f / 100 # Spirit F of the user
unless obj.ignore_defense # Except for ignore defense
damage -= self.def * 2 * obj.atk_f / 100 # Attack F of the target
damage -= self.spi * 1 * obj.spi_f / 100 # Spirit F of the target
end
damage = 0 if damage < 0 # If negative, make 0
elsif damage < 0 # a negative number?
damage -= user.atk * 4 * obj.atk_f / 100 # Attack F of the user
damage -= user.spi * 2 * obj.spi_f / 100 # Spirit F of the user
end
damage *= elements_max_rate(obj.element_set) # elemental adjustment
damage /= 100
damage = apply_variance(damage, obj.variance) # variance
damage = apply_guard(damage) # guard adjustment
if $choose_all == true
if ChooseScope::DAMAGE_EFFECT == false
damage /= $game_troop.members.size
else
damage /= $game_troop.existing_members.size
end
end
if obj.damage_to_mp
@mp_damage = damage # damage MP
else
@hp_damage = damage # damage HP
end
end
end



CODE

###############################################
=begin
Made By: CR4200
This script adds the function to choose in battle
whether to attack a single target or all for certain skills.
The Damage of the attack is then split up among the
targets equally.

This is a script I have long looked for on the forums
and have been unable to find so i made it myself.
This is my first ONE day script and thus it's not
to flashy, but it does what it needs to do.

note: if you target all enemies, and one dies before the skill
is preformed, the calculated damage will be based off
of the number of enemies alive when the skill was chosen

i/e: 2 enemies alive
actor 1 chooses attack
actor 2 choose fire targeting all
actor 1 kills one enemy ( 1 left)
actor 2 does only 1/2 damage to the 1 enemy

you can view this as a plus or a minus, i might make a way to
make this controlable later on.

_-_-_-[How to use]-_-_-_

Simply put "<scopechoose>" (without quotes) within
the notes section of the desired skill.

=end
###############################################

module ChooseScope
CUSTOM_SCOPE = /<(?:CUSTOM_SCOPE|scopechoose)\s*(\d+)?>/i
HELP_TEXT = "Press SHIFT to target all."
end

###############################################
#RPG::Skill ChooseScope module
###############################################
class RPG::Skill < RPG::UsableItem
def create_choose_scope_cache
@choose_scope = false

self.note.split(/[\r\n]+/).each { |line|
case line
when ChooseScope::CUSTOM_SCOPE
@choose_scope = true
else
@choose_scope = false
end
}
end
def choose_scope?
create_choose_scope_cache if @choose_scope == nil
return @choose_scope
end
end
###############################################
#Scene_Battle aliases
###############################################
class Scene_Battle < Scene_Base
alias choose_start_alias start
def start
choose_start_alias
@help_window2 = Window_Help.new
@help_window2.visible = false
@help_window2.active = false
end
###############################################
alias choose_update_alias update
def update
choose_update_alias
unless $choose_scope == nil
if $choose_scope == true and @target_enemy_window != nil and @target_enemy_window.active
@help_window2.z += 10
@help_window2.visible = true
@help_window2.y = (416 - @target_enemy_window.height - @help_window2.height)
@help_window2.set_text(ChooseScope::HELP_TEXT)
else
@help_window2.visible = false
end
end
end
###############################################
alias command_alias update_actor_command_selection
def update_actor_command_selection
command_alias
if Input.trigger?(Input::C)
case @actor_command_window.index
when 0 # Attack
$choose_scope = false
end
end
end
###############################################
alias enemy_selection_alias start_target_enemy_selection
def start_target_enemy_selection
enemy_selection_alias
end
alias end_selection_alias end_target_enemy_selection
def end_target_enemy_selection
end_selection_alias
$choose_scope = false
end
###############################################
alias choose_scope1 update_target_enemy_selection
def update_target_enemy_selection
choose_scope1
$choose_all = false
if Input.trigger?(Input::SHIFT)
if $choose_scope == false
Sound.play_buzzer
return
end
Sound.play_decision
$choose_all = true
@active_battler.action.target_index = @target_enemy_window.enemy.index
end_target_enemy_selection
end_skill_selection
end_item_selection
next_actor
end
end
###############################################
alias scope_skill determine_skill
def determine_skill
scope_skill
if @skill.need_selection?
if @skill.choose_scope?
$choose_scope = true
else
$choose_scope = false
end
end
end
end
###############################################
#Game_BattleAction Alias
###############################################
class Game_BattleAction
alias battleaction_alias make_obj_targets
def make_obj_targets(obj)
if $choose_all == true
targets = []
targets += opponents_unit.existing_members
return targets.compact
end
return battleaction_alias(obj)
end
end
###############################################
#----------This Redefines make_obj_damage_value
#i wasn't able to alias it for some reason...
###############################################
class Game_Battler
def make_obj_damage_value(user, obj)
damage = obj.base_damage # get base damage
if damage > 0 # a positive number?
damage += user.atk * 4 * obj.atk_f / 100 # Attack F of the user
damage += user.spi * 2 * obj.spi_f / 100 # Spirit F of the user
unless obj.ignore_defense # Except for ignore defense
damage -= self.def * 2 * obj.atk_f / 100 # Attack F of the target
damage -= self.spi * 1 * obj.spi_f / 100 # Spirit F of the target
end
damage = 0 if damage < 0 # If negative, make 0
elsif damage < 0 # a negative number?
damage -= user.atk * 4 * obj.atk_f / 100 # Attack F of the user
damage -= user.spi * 2 * obj.spi_f / 100 # Spirit F of the user
end
damage *= elements_max_rate(obj.element_set) # elemental adjustment
damage /= 100
damage = apply_variance(damage, obj.variance) # variance
damage = apply_guard(damage) # guard adjustment
if $choose_all == true
damage /= $game_troop.members.size
end
if obj.damage_to_mp
@mp_damage = damage # damage MP
else
@hp_damage = damage # damage HP
end
end
end


Customization

Not much needed to customize...
You can change the message in the help window if needed
and change whats needed in the notebox
as well as slightly change how damage is divided.
and the button to be press to target all.

Compatibility

I aliased most things except make_obj_damage_value in Game_Battler
Not Compatible with Takentai SBS

Screenshot

Not a whole lot to show with a screen shot

DEMO

Demo Here: MediaFire(V1.0)

Installation

Put above main as usual.
To make a skill have the in battle target choose function, simply put
<scopechoose>
within it's notes section

Credits

CR4200 (me)
Shanghai
Interesting. Would you allow for us to choose a different button to do the select all thing? I much prefer L and R buttons to do it since I'm already using shift for something else.
BizarreMonkey
I would like the feature to be able to select not only all or 1 but also select either enemies or party, rpgmaker vx is limiting like that, if you could have it so you can choose all your party or all enemies as well as any individual party member it would be awesome. ofcourse, you would have to do a scrolling list for Window_Target selection. because it only expect there to be a max of 8, where this could become a max of 12 [or more if you count large party]... alternatively, you could have a key combo like L and R switch between enemy and actors

That would be the most tits thing ever. since monsters can do it via the troops, only players would need the ability to do it.

I can see someone making All materia of this script biggrin.gif
Octople Threat
QUOTE (BizarreMonkey @ Jul 22 2009, 12:08 PM) *
I can see someone making All materia of this script biggrin.gif


They already have working materia systems...
SuperMega
Ah man, I loved FFIX. Thanks for the script! It works great! It would be great if it would work with Takentai though. If possible, I suggest you do so.

On Shanghai's suggestion, how about a choice for the button, because I'm using L and R for something already. biggrin.gif
Learwolf
I've been waiting for a script that does this for sooooo long!
Thank you so much for posting this!
Also, as BizzareMonkey said, being able to choose between enemies AND allies, would be one step closer to having a more free-feeling battle.
jin69
Nice work man.
cr4200
Thanks for the feedback everyone.
I've updated the top post with a new script(V1.1) that allows you to choose the buttons.
I've also added a new way to control damage distribution.
As for the party/enemy switch idea i will try and work on it soon.
But i can't promise anything right now.
Andrelvis
Simple and elegant script, for a useful function. Nicely done wink.gif

EDIT: Can I post this script at the brazilian forum http://www.mundorpgmaker.com/forum ?
I'll give all due credit, of course.
cr4200
ya sure that would be fine.
Andrelvis
Thanks =)
jin69
I'm surprised that there's not that much post for a script like this one i just hope it gets compatible with Tankentai cuz that will really make it feel more like FF. biggrin.gif
BizarreMonkey
This is looking good, i would like it compatible with tankentai too if possible, since for some reason i fail at making games without tankentai.
Shanghai
Tankentai uses a completely different targetting system than this one or the default as far as scripting is concerned. It won't be as easy of a request, but don't let that stop the OP from making it if he decides to. I won't fault him for not wanting to deal with the mess of coding that Tankentai has.
Broken Aesop
Please help sad.gif
This script isn't working for me. For some reason, the scope selection only works if no one else is doing anything. If anyone else does anything other than guard, it just targets whoever I had my cursor over. Why does this happen? I have no other scripts going yet so it can't be a compatibility issue, I'm just wondering if anyone has had that problem or has any idea why this is happening.
cr4200
@Broken Aesop, thanks for catching this bug. I'm surprised no one else noticed it. Anyway, i took another look at the code and found the problem
and i'll upload the fixed script to the main post.
tell me if you find anymore problems.
Broken Aesop
Better, but it only works if someone used a command before the character who used target all. If Ulrika casts Fire on all, after Ralph attacked, it works. If Ralph casts Fire on all and then Ulrika attacks, it just casts on one.
cr4200
@Broken Aesop
I am unable to get the same results you are getting.
are you using any other scripts or anything?
Broken Aesop
EDIT: Nevermind, I don't know what happened, but the problem fixed itself.

????

But, anyway, awesome! The only thing I could ask for now is to get it working on party member spells as well!
cr4200
@Broken Aesop
glad to know the problem fixed itself.
as for your request, i have done just that with V1.3
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Invision Power Board © 2001-2013 Invision Power Services, Inc.