Asan'Tear Battle System
Authors: Ryex
Version: 1.26
Type: Front View Battle System
Key Term: Custom Battle System
IntroductionThis script modifies the default battle system to provide better aesthetics and a more flowing feel in the UI.
Features
- New lay out for the DBS
- Easy to use battler animation for actors and enemies (now included death images)
- Animated windows
- New status bar with Hp/Sp bars
Screenshots
(http://img195.imageshack.us/img195/4185/captureqbs.png)
(http://i15.photobucket.com/albums/a400/ryex/Exsamples/Capture2.png)
(//)
Videohttp://www.youtube.com/watch?v=Sz7Pjv_K0Gs (http://www.youtube.com/watch?v=Sz7Pjv_K0Gs)
please note:
Quote from: Quote from: Ryexander on June 20, 2009, 04:40:58 PM
the idle is just a demonstration of frames I just drew the text over the battler in photo shop. your frames could be anything from ready stance to a sword flourish, the same for the attack, skill, item, and defend. you don't have to use the text stuff its just a demonstration that you can have animated battlers for each pose. if you don't put the images in the battlers folder they wont show, the idle and attack stuff is text I drew over the battlers in photo shop then put in as separate frames to the battler
YOU DO NOT HAVE TO USE THE "BLINKING TEXT" THAT IS DISPLAYED OVER THE BATTLERS IN THIS VIDEO IT IS ONLY A DEMONSTRATION OF THE ANIMATION SYSTEM!
DemoMedia Fire (http://www.mediafire.com/?troij3rmzza) (now updated for latest version)
Scripthttp://docs.google.com/View?id=dgb5wg25_6mxsgg9dx (http://docs.google.com/View?id=dgb5wg25_6mxsgg9dx)
Plug-insIf you are using CRLS
Place CRLS below AnTBS and this plugin below both
#=============================================================================
#
# ** AnTBS/CRLS Bridge/Plugin
#
#-----------------------------------------------------------------------------
#
# By Ryex
# V 1.1
#
#-----------------------------------------------------------------------------
#
# Features
#
# * New lay out for the DBS
# * Easy to use battler animation for actors and enemies
# * Animated windows
# * New staus bar with Hp/Sp bars
#
#-----------------------------------------------------------------------------
#
# Instructions
#
# Place in a new script above main but below both AnTBS AND CRLS
# note that CRLS should be below AnTBS
#
#=============================================================================
if $crls == nil
p "The AnTBS-CRLS Brige/Plugin is installed but CRLS is not. Install CRLS."
end
class Sprite
#----------------------------------------------------------------------------
# draw_actor_sr
# actor - the actor
# x - x-coordinate
# y - y-coordinate
# width - maximal allowed width
# This method draws the SR attribute.
#----------------------------------------------------------------------------
def draw_actor_sr_shaded(actor, x, y, w = 144)
w = 120 if !$scene.is_a?(Scene_Menu) && !BlizzCFG::RTAB_ACTIVE
self.bitmap.font.color = Color.new(0, 0, 0, 255)
self.bitmap.draw_text(x-1, y-16-1, w, 64, BlizzCFG::SR_NAME)
self.bitmap.draw_text(x+1, y-16-1, w, 64, BlizzCFG::SR_NAME)
self.bitmap.draw_text(x-1, y-16+1, w, 64, BlizzCFG::SR_NAME)
self.bitmap.draw_text(x+1, y-16+1, w, 64, BlizzCFG::SR_NAME)
self.bitmap.draw_text(x-1, y-1, w, 32, actor.sr_text, 2)
self.bitmap.draw_text(x+1, y-1, w, 32, actor.sr_text, 2)
self.bitmap.draw_text(x-1, y+1, w, 32, actor.sr_text, 2)
self.bitmap.draw_text(x+1, y+1, w, 32, actor.sr_text, 2)
self.bitmap.font.color = system_color
self.bitmap.draw_text(x, y-16, w, 64, BlizzCFG::SR_NAME)
self.bitmap.font.color = normal_color
self.bitmap.draw_text(x, y, w, 32, actor.sr_text, 2)
end
#----------------------------------------------------------------------------
# draw_actor_sr_with_bar
# actor - the actor
# x - x-coordinate
# y - y-coordinate
# width - maximal allowed width
# This method draws the bar of the SR attribute.
#----------------------------------------------------------------------------
def draw_actor_sr_with_bar(actor, x, y, w = 148)
rate = actor.sr.to_f / 1000
# SR bar colors
c = Color.new(130, 0, 130)
self.bitmap.draw_bar_ryex(x, y + 10, w, 12, rate, c)
# draw the text
if $scene.is_a?(Scene_Battle)
draw_actor_sr_shaded(actor, x, y, w)
else
draw_actor_sr_shaded(actor, x, y)
end
end
end
class Sprite_BattleStatus_Ryex_AnTeBS < RPG::Sprite
#--------------------------------------------------------------------------
# * Object Initialization
#--------------------------------------------------------------------------
def initialize(x, y, actor_id, recreate_flag = false)
super(nil)
self.x = x
self.y = y
self.y -= 14 unless recreate_flag
self.bitmap = Bitmap.new(150, 88)
@level_up_flag = false
@actor = $game_party.actors[actor_id]
@box_number = actor_id
refresh
end
#--------------------------------------------------------------------------
# * Refresh
#--------------------------------------------------------------------------
def refresh
self.bitmap.clear
draw_background
self.bitmap.font.name, self.bitmap.font.size = RyexCFG::BATTLE_NAMES_FONT, 22
self.bitmap.font.italic, self.bitmap.font.bold = true, true
draw_actor_name(@actor, 15, 0)
self.bitmap.font.italic, self.bitmap.font.bold = false, false
self.bitmap.font.name, self.bitmap.font.size = RyexCFG::BATTLE_HP_SP_FONT, 20
draw_actor_hp_bar_ryex(15, 24, 120, @actor)
draw_actor_hp_Ryex(@actor, 15, 14, 120)
draw_actor_sp_bar_ryex(15, 38, 120, @actor)
draw_actor_sp_Ryex(@actor, 15, 28, 120)
# if using SR
if BlizzCFG::DRAW_SR && BlizzCFG::SR_ENABLED.include?(@actor.id)
draw_actor_sr_with_bar(@actor, 15, 42, 120)
end
if @level_up_flag
self.bitmap.font.color = normal_color
self.bitmap.draw_text(15, 56, 120, 32, 'LEVEL UP!')
else
draw_actor_state(@actor, 15, 56)
end
self.bitmap.font.name, self.bitmap.font.size = 'Arial', 22
end
#--------------------------------------------------------------------------
# * Draw Background
#--------------------------------------------------------------------------
def draw_background
back_color = Color.new(75, 75, 75)
88.times do |i|
bcr = back_color.red * i / 88
bcg = back_color.green * i / 88
bcb = back_color.blue * i / 88
self.bitmap.fill_rect(0, 88 - i - 1, 150, 1, Color.new(bcr, bcg, bcb, 200))
end
case @box_number
when 0
self.bitmap.fill_rect(0, 0, 1, 88, Color.new(0, 0, 0, 200))
when ($game_party.actors.size - 1)
self.bitmap.fill_rect(149, 0, 1, 88, Color.new(0, 0, 0, 200))
end
self.bitmap.fill_rect(0, 0, 150, 1, Color.new(0, 0, 0, 200))
self.bitmap.fill_rect(0, 87, 150, 1, Color.new(0, 0, 0, 200))
end
end
#==============================================================================
# Window_HCommand_WI_Battle
#------------------------------------------------------------------------------
# This class was modified to support the slide-from-the-right feature for
# CDS, SRS and SLS.
#==============================================================================
class Window_HCommand_WI_Battle < Window_Selectable
attr_accessor :commands
attr_reader :actor
#----------------------------------------------------------------------------
# override initialize
#----------------------------------------------------------------------------
alias initialize_crls_later initialize
def initialize(width, commands)
initialize_crls_later(width, commands)
@commands2 = [@commands[0][1], BlizzCFG::SRS_NAME, BlizzCFG::CDS_NAME]
end
#----------------------------------------------------------------------------
# set_player_command
# new_actor - the new actor
# This method updates the actor in the window and all connected displays and
# data.
#----------------------------------------------------------------------------
def set_player_command(new_actor)
# if old actor exists and command is limit
if @actor != nil && @commands[0][1] == @actor.limit_name
# put back old command
@commands[0][1] = @commands2[0]
end
# set command to new actor's command
@commands2[0] = new_actor.limit_name
# store actor
@actor = new_actor
refresh
end
#----------------------------------------------------------------------------
# swap_commands
# index - at which position
# This method changes the command in the window.
#----------------------------------------------------------------------------
def swap_commands(index)
@commands[index][1], @commands2[index] = @commands2[index], @commands[index][1]
refresh
end
#----------------------------------------------------------------------------
# override refresh
# This method was completely modified to support the faster animated cursor
# and the moving animation.
#----------------------------------------------------------------------------
alias refresh_crls_later refresh
def refresh
# fotn fix
if $fontface != nil
self.contents.font.name = $fontface
self.contents.font.size = $fontsize
elsif $defaultfonttype != nil
self.contents.font.name = $defaultfonttype
self.contents.font.size = $defaultfontsize
end
# if actor exists
if @actor != nil
# if SLS usable and already command active
if BlizzCFG::SLS_ACTIVE && BlizzCFG::SL_USERS.include?(@actor.id) &&
@actor.sl_can_use?
if self.index != 0 || @commands[0][1] != @actor.limit_name
# draw the normal command
self.contents.fill_rect(0, 0, 152, 32, Color.new(0, 0, 0, 0))
draw_item(0, normal_color)
# draw arrows
self.contents.draw_text(-2, 0, 152, 32, '››', 2)
elsif @commands[0][1] == @actor.limit_name
# get color
self.contents.font.color = BlizzCFG::LIMIT_COLOR
# move the command in 6 steps
(0..6).each {|j|
x = self.index * 152
# remove display
self.contents.fill_rect(x, 0, 152, 32, Color.new(0, 0, 0, 0))
rect = Rect.new(x, -36 + j * 6, 152, 32)
# draw command
self.contents.draw_text(rect, @commands[0][1], 1)
Graphics.update}
end
else
self.contents.fill_rect(0, 0, 152, 32, Color.new(0, 0, 0, 0))
draw_item(0, normal_color)
end
# if SRS usable and already command active
if BlizzCFG::SRS_ACTIVE && BlizzCFG::SR_USERS.include?(@actor.id)
if self.index != 1 || @commands[1][1] != BlizzCFG::SRS_NAME
# draw the normal command
self.contents.fill_rect(152, 0, 152, 32, Color.new(0, 0, 0, 0))
draw_item(1, normal_color)
# draw arrows
self.contents.draw_text(150, 0, 152, 32, '››', 2)
elsif @commands[1][1] == BlizzCFG::SRS_NAME
# get color
self.contents.font.color = BlizzCFG::RAGE_COLOR
# move the command in 6 steps
(0..6).each {|j|
x = self.index * 152
# remove display
self.contents.fill_rect(x, 0, 152, 32, Color.new(0, 0, 0, 0))
rect = Rect.new(x, -36 + j * 6, 152, 32)
# draw command
self.contents.draw_text(rect, @commands[1][1], 1)
Graphics.update}
end
else
self.contents.fill_rect(152, 0, 152, 32, Color.new(0, 0, 0, 0))
draw_item(1, normal_color)
end
# if CDS usable and already command active
if BlizzCFG::CDS_ACTIVE && BlizzCFG::CD_USERS.include?(@actor.id)
if self.index != 2 || @commands[2][1] != BlizzCFG::CDS_NAME
# draw the normal command
self.contents.fill_rect(152 * 2, 0, 152, 32, Color.new(0, 0, 0, 0))
draw_item(2, normal_color)
# draw arrows
self.contents.draw_text(151 * 2, 0, 152, 32, '››', 2)
elsif @commands[2][1] == BlizzCFG::CDS_NAME
# move the command in 6 steps
(0..6).each {|j|
x = self.index * 152
# remove display
self.contents.fill_rect(x, 0, 152, 32, Color.new(0, 0, 0, 0))
rect = Rect.new(x, -36 + j * 6, 152, 32)
# if already CD actor
if @actor.states.include?(BlizzCFG::CD_ID)
# show Revert command
self.contents.font.color = BlizzCFG::REVERT_COLOR
self.contents.draw_text(rect, BlizzCFG::REVERT_NAME, 1)
else
# get color
if @actor.cd_can_use?
self.contents.font.color = BlizzCFG::CHAOS_COLOR
else
self.contents.font.color = disabled_color
end
# draw command
self.contents.draw_text(rect, @commands[2][1], 1)
end
Graphics.update}
end
else
self.contents.fill_rect(152 * 2, 0, 152, 32, Color.new(0, 0, 0, 0))
draw_item(2, normal_color)
end
else
refresh_crls_later
end
end
#----------------------------------------------------------------------------
# test_limit
# This method serves for quick testing if SL is available.
#----------------------------------------------------------------------------
def test_limit
return (@actor != nil && @actor.sl_can_use? && @index == 0)
end
#----------------------------------------------------------------------------
# limit
# This method serves for SL name retrieval.
#----------------------------------------------------------------------------
def limit
return (@actor != nil ? @actor.limit_name : '')
end
end
#==============================================================================
# Scene_Battle
#------------------------------------------------------------------------------
# This class was modified to allow the processing of CDS, SRS and SLS during
# battle.
#==============================================================================
class Scene_Battle
#----------------------------------------------------------------------------
# start_rage_select
# This method creates a CD window and sets it active.
#----------------------------------------------------------------------------
def start_chaos_select
# RTAB compatibility
battler = (BlizzCFG::RTAB_ACTIVE ? @active_actor : @active_battler)
# create and set up window
@chaos_window = Window_ChaosDrive.new(battler)
@chaos_window.help_window = @help_window
@chaos_window.z = 300
@chaos_window.y = 160
@actor_command_window.active = false
@actor_command_window.move(@actor_command_window.x, 481)
end
#----------------------------------------------------------------------------
# start_rage_select
# This method creates an SR window and sets it active.
#----------------------------------------------------------------------------
def start_rage_select
# RTAB compatibility
battler = (BlizzCFG::RTAB_ACTIVE ? @active_actor : @active_battler)
# create and set up window
@rage_window = Window_SoulRage.new(battler)
@rage_window.help_window = @help_window
@rage_window.z = 300
@rage_window.y = 160
@actor_command_window.active = false
@actor_command_window.move(@actor_command_window.x, 481)
end
#----------------------------------------------------------------------------
# end_rage_select_plus
# This method triggers the SR window and the other windows visible.
#----------------------------------------------------------------------------
def end_rage_select_plus
# if SR window exists
if @rage_window != nil
if @rage_window.visible
# set command window to active
@actor_command_window.active = @actor_command_window.visible = true
@actor_command_window.move(@actor_command_window.x, 416)
@help_window.move(@help_window.x, 481)
else
# set SR window to active and make visible
@rage_window.active = @rage_window.visible = true
end
end
end
#----------------------------------------------------------------------------
# end_rage_select
# This method removes the SR window and returns to the command menu.
#----------------------------------------------------------------------------
def end_rage_select
end_rage_select_plus
@actor_command_window.swap_commands(1)
@rage_window.dispose
@rage_window = nil
@help_window.move(@help_window.x, 481)
end
# end_rage_select_plus
# This method triggers the CD window and the other windows visible.
#----------------------------------------------------------------------------
def end_chaos_select_plus
# if SR window exists
if @chaos_window != nil
if @chaos_window.visible
# set command window to active
@actor_command_window.active = @actor_command_window.visible = true
@actor_command_window.move(@actor_command_window.x, 416)
@help_window.move(@help_window.x, 481)
else
# set CD window to active and make visible
@chaos_window.active = @chaos_window.visible = true
end
end
end
#----------------------------------------------------------------------------
# end_chaos_select
# This method removes the CD window and returns to the command menu.
#----------------------------------------------------------------------------
def end_chaos_select
end_chaos_select_plus
@actor_command_window.swap_commands(2)
@chaos_window.dispose
@chaos_window = nil
@help_window.move(@help_window.x, 481)
end
#----------------------------------------------------------------------------
# override update_phase3_basic_command
# This method was enhanced with advanced selection control of the
# slide-from-the-right commands.
#----------------------------------------------------------------------------
#alias update_phase3_basic_command_crls_later update_phase3_basic_command
def update_phase3_basic_command
# RTAB compatibility
battler = (BlizzCFG::RTAB_ACTIVE ? @active_actor : @active_battler)
# restore commands
restore_commands(battler)
# stop if SLS activated
return if update_sls_input(battler)
# stop if SRS activated
return if update_srs_input(battler)
# stop if CDS activated
return if update_cds_input(battler)
# RTAB left pressing limitation
if !BlizzCFG::RTAB_ACTIVE || !Input.press?(Input::DOWN) && !Input.press?(Input::UP)
# call original method
update_phase3_basic_command_crls_later
end
end
#----------------------------------------------------------------------------
# restore_commands
# battler - the currently active battler
# Sets up the commands displayed.
#----------------------------------------------------------------------------
def restore_commands(battler)
# if able to use SLS, but not selected
if BlizzCFG::SLS_ACTIVE && BlizzCFG::SL_USERS.include?(battler.id) &&
@actor_command_window.index != 0 &&
@actor_command_window.commands[0][1] == @actor_command_window.limit
# reset command
@actor_command_window.swap_commands(0)
@help_window.set_text('', 1)
@help_window.move(@help_window.x, 481)
end
# if able to use SRS, but not selected
if BlizzCFG::SRS_ACTIVE && BlizzCFG::SR_USERS.include?(battler.id) &&
@actor_command_window.index != 1 &&
@actor_command_window.commands[1][1] == BlizzCFG::SRS_NAME
# reset command
@actor_command_window.swap_commands(1)
end
# if able to use CDS, but not selected
if BlizzCFG::CDS_ACTIVE && BlizzCFG::CD_USERS.include?(battler.id) &&
@actor_command_window.index != 2 &&
@actor_command_window.commands[2] == BlizzCFG::CDS_NAME
# reset command
@actor_command_window.swap_commands(2)
end
end
#----------------------------------------------------------------------------
# update_sls_input
# battler - the currently active battler
# Sets up the command window data.
#----------------------------------------------------------------------------
def update_sls_input(battler)
# if able to use SLS
if BlizzCFG::SLS_ACTIVE && BlizzCFG::SL_USERS.include?(battler.id)
# if able to use SL and RIGHT is being hold
if @actor_command_window.test_limit && Input.press?(Input::UP)
# if command not visible
if @actor_command_window.commands[0][1] != @actor_command_window.limit
# make it visible
$game_system.se_play($data_system.decision_se)
skill = $data_skills[@actor_command_window.actor.limit_id]
@help_window.set_text(skill.description, 1)
@help_window.move(@help_window.x, 352)
@actor_command_window.swap_commands(0)
end
# prevent going crazy when pressing UP or DOWN
if !Input.press?(Input::RIGHT) && !Input.press?(Input::LEFT)
@actor_command_window.update
end
# RTAB fix
abort = true
# if command visible
elsif @actor_command_window.commands[0][1] == @actor_command_window.limit
# change back
$game_system.se_play($data_system.cancel_se)
@actor_command_window.swap_commands(0)
@help_window.set_text('', 1)
@help_window.move(@help_window.x, 481)
end
# if command visible and C is being pressed
if @actor_command_window.commands[0][1] == @actor_command_window.limit &&
Input.trigger?(Input::C)
# execute SL use setup
$game_system.se_play($data_system.decision_se)
battler.current_action.kind = BlizzCFG::SL_KIND
battler.current_action.skill_id = @actor_command_window.actor.limit_id
@skill = $data_skills[battler.current_action.skill_id]
@help_window.move(@help_window.x, 481)
# depending on the skill specsifications, allow target selection
if @skill.scope == 1
start_enemy_select
@actor_command_window.swap_commands(0)
elsif [3, 5].include?(@skill.scope)
start_actor_select
@actor_command_window.swap_commands(0)
else
@actor_command_window.swap_commands(0)
phase3_next_actor
end
return true
end
# abort if RTAB to prevent character change
return true if abort
end
end
#----------------------------------------------------------------------------
# update_srs_input
# battler - the currently active battler
# Sets up the command window data.
#----------------------------------------------------------------------------
def update_srs_input(battler)
# if able to use SRS
if BlizzCFG::SRS_ACTIVE && BlizzCFG::SR_USERS.include?(battler.id)
# if able to use SR and RIGHT is being hold
if @actor_command_window.index == 1 && Input.press?(Input::UP)
# if command not visible
if @actor_command_window.commands[1][1] != BlizzCFG::SRS_NAME
# make it visible
$game_system.se_play($data_system.decision_se)
@actor_command_window.swap_commands(1)
end
# prevent going crazy when pressing UP or DOWN
if !Input.press?(Input::RIGHT) && !Input.press?(Input::LEFT)
@actor_command_window.update
end
# RTAB fix
abort = true
# if command visible
elsif @actor_command_window.commands[1][1] == BlizzCFG::SRS_NAME
# change back
$game_system.se_play($data_system.cancel_se)
@actor_command_window.swap_commands(1)
end
# if command visible and C is being pressed
if @actor_command_window.commands[1][1] == BlizzCFG::SRS_NAME &&
Input.trigger?(Input::C)
# execute SR use setup
$game_system.se_play($data_system.decision_se)
battler.current_action.kind = BlizzCFG::SR_KIND
start_rage_select
return true
end
# abort if RTAB to prevent character change
return true if abort
end
end
#----------------------------------------------------------------------------
# update_cds_input
# battler - the currently active battler
# Sets up the command window data.
#----------------------------------------------------------------------------
def update_cds_input(battler)
# if able to use CDS
if BlizzCFG::CDS_ACTIVE && BlizzCFG::CD_USERS.include?(battler.id)
# if able to use CD and RIGHT is being hold
if @actor_command_window.index == 2 && Input.press?(Input::UP)
# if command not visible
if @actor_command_window.commands[2][1] != BlizzCFG::CDS_NAME
# make it visible
$game_system.se_play($data_system.decision_se)
@actor_command_window.swap_commands(2)
end
# prevent going crazy when pressing UP or DOWN
if !Input.press?(Input::RIGHT) && !Input.press?(Input::LEFT)
@actor_command_window.update
end
# RTAB fix
abort = true
# if command visible
elsif @actor_command_window.commands[2][1] == BlizzCFG::CDS_NAME
# change back
$game_system.se_play($data_system.cancel_se)
@actor_command_window.swap_commands(2)
end
# if command visible and C is being pressed
if @actor_command_window.commands[2][1] == BlizzCFG::CDS_NAME &&
Input.trigger?(Input::C)
unless @actor_command_window.actor.states.include?(BlizzCFG::CD_ID)
# if can use CD
if @actor_command_window.actor.cd_can_use?
# execute CD use setup
$game_system.se_play($data_system.decision_se)
battler.current_action.kind = BlizzCFG::CD_KIND
start_chaos_select
else
$game_system.se_play($data_system.buzzer_se)
end
else
# execute CD revert setup
$game_system.se_play($data_system.decision_se)
battler.current_action.kind = BlizzCFG::CD_KIND
battler.chaos_action = 2
@actor_command_window.swap_commands(2)
phase3_next_actor
end
return true
end
# abort if RTAB to prevent character change
return true if abort
end
end
end
InstructionsIn script
Compatibilitytested with:
CRLS - Plug in needed see above
Ryex's Weapons unleash skills - works
should be compatible with most scripts with a few edits for visual things
Credits and Thanks
- Ryex
- WcW
- Blizzard
- I'd like to thank Calintz for his valued input
Author's NotesMake sure to look at the demo for battler animation clarification.
Enjoy!
An attractive looking system, Ryex. If I wasn't using Blizz ABS, I'd use this. ;) :levels up:
This is beautiful Ryex!!
*LVL up*
Working on a CRLS plugin
!! YES !!
BTW:
I was wondering what some of YOUR ideas were for the animated battlers. Are you gonna use them in Asan'Tear?
Quote from: Calintz on June 20, 2009, 11:21:26 pm
!! YES !!
BTW:
I was wondering what some of YOUR ideas were for the animated battlers. Are you gonna use them in Asan'Tear?
yes. yes I am.
What kind of picture sets do you have in mind?
how do you mean?
and the CRLS plugin is going to take a while, I have to rework four methods, and the edits to the command window, to get it to work off of an up input instead of a left right input
It's okay ...
I mean, what picture ideas do you have for replacing the IDLE text and stuff?
oh well you know how in golden sun the battlers kinda bounce (don't know another word for it) when they are idle? they move up and down with their knees and stuff, that's what i was thinking. then there would be special movements for using skill and items and stuff.
Are you gonna use standard size battlers!? They will be hard to animate.
Quote from: Calintz on June 21, 2009, 12:39:48 am
Are you gonna use standard size battlers!? They will be hard to animate.
slightly smaller like 75 x 115 or around there
Very nice :)
Looks nice. If i ever decide to make a game with front-view battle´s, i´ll use this! :) leve up!
WTF am I doing in the credits? O_o Take me out of there. I didn't do anything.
Quote from: Blizzard on June 21, 2009, 08:00:18 am
WTF am I doing in the credits? O_o Take me out of there. I didn't do anything.
i used your Animated Battlers for Non Action BS from tones as the basis for my animation system so i think you deserve some credit
Lol! Ok, then feel free to leave me there. ^_^
is this not database worthy? O_o
Nice battle system though ryex I really like it and yea it was easy adding my edits in there. Thanks *lv's up*
*GASPS****
4 6's
6666 at blizz's posts
OK I got CRLS working with a few graphical glitches once i fix them i'll release the plugin
My only complaint is that the blinking "idle" and "defend" text and such, are making my eyes bleed. Otherwise it looks very cool.
Quote from: Ryexander on June 20, 2009, 09:02:05 pm
Video
http://www.youtube.com/watch?v=Sz7Pjv_K0Gs (http://www.youtube.com/watch?v=Sz7Pjv_K0Gs)
please note: Quote from: Quote from: Ryexander on June 20, 2009, 04:40:58 PM
the idle is just a demonstration of frames I just drew the text over the battler in photo shop. your frames could be anything from ready stance to a sword flourish, the same for the attack, skill, item, and defend. you don't have to use the text stuff its just a demonstration that you can have animated battlers for each pose. if you don't put the images in the battlers folder they wont show, the idle and attack stuff is text I drew over the battlers in photo shop then put in as separate frames to the battler
YOU DO NOT HAVE TO USE THE "BLINKING TEXT" THAT IS DIDPLAED OVER THE BATTLERS IN THIS VIDEO IT IS ONLY A DEMONSTRATION OF THE ANIMATION SYSTEM!
@Kagutsuchi READ THE FIRST POST PLEASE!!!^^^^
On a side note I've discovered a few errors in the first version while trying to make it compatible with CRLS so expect a version upgrade with the plugin release
Ry, the script only works with 4 actors in the party.
Your drawing methods, you don't have to draw for $game_party.size, you draw it for 1-4 even when there could be 3 actors in the party, resulting in errors
Quote from: Ryexander on June 21, 2009, 04:12:31 pm
On a side note I've discovered a few errors in the first version while trying to make it compatible with CRLS so expect a version upgrade with the plugin release
that would be one of them, don't worry I'm fixing it as we speak. I expect a new version by the end of the day with a CRLS plugin on the side
Edit:
UPDATE TO V1.20! :D VERY IMPORTANT UPDATE
IMPORTANT: THE CRLS PLUGIN IS OUT LOOK IN THE FIRST POST BELOW THE MAIN SCRIPT IN THE PLUG-INS SECTION IF YOU WISH TO USE IT YOU
MUST UPDATE TO V1.20 OF AnTBS!
@Aqua the bug you reported is now fixed at a part of making it work with Chaos Drive
Even if there is an update, you shouldn't double post. Editting the post would automatically bump a target as having new messages.
~Aqua
Uh oh - sounds great!!
This would kick ass if one makes the battlers Side-View (Non-moving-nor-sprite-animation). The thought of it gives me an Idea ~
Holy horse! As soon as I finish my vx game, imma gonna use this!
This error occurs while trying to use a Limit while using your system:
Script 'CRLS' line 2062: NoMethodError occurred.
undefined method '[]' for nil:NilClass.
I installed the scripts properly, and all. CRLS and the default battle system work perfectly before adding your script and plugin, so I must be making a silly error.
Love your system, by the way.
by limit you meant the thing that appears over attack when you sr and hp are right correct? also I need to se what is on that line in your script it is probably an error i made while making the plug in.
and your sure you have the scripts in this order?
AnTBS
CRLS
CRLS/AnTBS Plugin
Your script is compatible with CRLS... just tested that. However, it's Tons of Addons Part 1 that's causing the problem with CRLS and your script. Not sure which script it is... but whatever it is doesn't need to be active to cause the error. I reinstalled the script to be sure.
Edit: It seems that the whole Tons 1 script is causing the problem, somehow. I tried deleting the add-ons one by one(from the bottom up), and only when I removed the last actual lines of code, it finally worked properly. When I tried tons without those, though, the same error repeats itself.
I would still like to see what the line was that has the error I might be able to solve this so you can use tons
battler.use_limit if @repeat[0] <= 1
Line 2046 in Blizzard's demo.
make sure you have the Latest version of tons (http://forum.chaos-project.com/index.php?topic=105.0)
and the latest version of AnTBS (yes I updated to day because of a small error with tons but not this one) found in the first post of this topic
the latest version of CRLS (http://forum.chaos-project.com/index.php?topic=110.0) and follow this script order (http://forum.chaos-project.com/index.php?topic=23.0)
with the small exception that the CRLS plug-in needs to go below CRLS
and tell me if you still have the problem
I have, and have done, what you've posted. My scripts were a little out of order... however, the same problem still persists.
... Err, and what's with the "1" popups? :P. That happened after getting your 1.21.
aa darn i for got to removethat. press ctrl +f and search for
p @battler.max_frame_idle
delete the line that will get rid of the 1
have you perhaps removed the multihit add on from tons part two?
yep ok this error is not cause by my system, it is cause by tons and CRLS you have probably removed multihit from tons part two and it is causing an error the easy way to fix this is to get the latest version of tons again
ps: the script in this topic now has that annoying debug 1 pop up window removed so you can copy it from there
No, multi-hit is not deleted. As an interesting note, when I activate multi-hit, the error moves to tons2 line 4065
( if @repeat[2] == 3).
After installing the latest version of tons, again... the error is still the same as before.
battler.use_limit if @repeat[0] <= 1
It's fine if I delete tons part 1, but I like those addons. :3.
What does the error message say? In that line about half a million things can go wrong.
he's getting a no method '[]' error for nilclass which makes no sense unless he has another script BELOW tons that is stopping @repeat from being crated or forcing it to nil and i've tested my script and plugin with tons and can't replicate the error
Multihit inactive:
Script 'CRLS' line 2062: NoMethodError occurred.
undefined method '[]' for nil: NilClass
Line contents: battler.use_limit if @repeat[0] <= 1
Multihit active:
Script 'Tons 2' line 4065: NoMethodError occurred.
undefined method '[]' for nil: NilClass
Line contents: if @repeat[2] == 3
I mentioned the error stayed the same. Perhaps another script is messing it up, Ry. I have a Blood Mage, AMS(by dubealex), title skip, class change, pause function, and Guillaume's script below your plugin, in that order.
could you list ALL your scripts in the order you have them in the editor?
Sure.
- RTP Scripts (with minor edit to remove brackets around states)
- STCMS 5.38b
- Tons 1
- Tons 2
- Tons 3
- AnTBS
- CRLS
- - Scene Soulrage(Subscript)
- - Soulforce(Subscript)
- Plugin
- Blood Mage 1.8
- Dubealex's Advanced Message System R4(update 2)
- Title Skip
- Class Change 1.67 by LB
- Pause function
- Guillaume's Multi-Equip 6.2.1
- Main
Quote from: Blizzard on January 07, 2008, 09:35:43 pm
- Resource Tester
- ~ RTP scripts
- ~ SDK
- ~ Other people's scripts
- Tons of Add-ons Part 1
- Tons of Add-ons Part 2
- Tons of Add-ons Part 3
- StormTronics CMS (any Edition)
- Blizz-ABS Part 1
- Blizz-ABS Part 2
- Blizz-ABS Part 3
- Creation System
- Chaos Rage Limit System
- CRLS + Blizz-ABS plugin
- Scene_SoulRage
- Soul Force Combo System
- Easy Overdrive System
- Advanced Analyze System
- Bestiary
- Chaos Project Debug System
- Dynamic Day and Night System
- DREAM for Music Files
- DREAM for Save Files
- Easy Party Switcher
- Easy LvlUp Notifier
- Custom Stat Growing System
- Stat Distribution System
- RO Job/Skill System
- Full Reflection System
- Blizz-ABSEAL (DO NOT USE IF YOU HAVE BLIZZ-ABS!!!)
- Main
Good call, Blizzard, good call. Unfortunately, it didn't make a difference. Same error, still...
... Might as well call it all a vain effort, though. I found out that I'm moving tomorrow, and in addition, may not have the net for a while... shame. If I'm the only person with the error, then it's not worth solving.
are you even using multi-hit? if not the easy answer is just to remove the if @repeat[0] <= 1
part fo the line and keep multi-hit off you won't get the error that way but you wont be able to use multi hit
Yeah. If you're having so many problems with the Multi-Hit add-on, just delete it.
Having it deleted doesn't do anything different... to my memory. I just moved, and am going without a computer for the time being.
... City library, however, has internet. I am thankful.
Could you make blizz's add on compatible with this?
THe Unique Class Commands one thnx in advnace ^^
So, this has been updated for compatibility with Blizz's Chaos Rage Soul Limit system??
Yup theres ia plugin in the main post
Alright cool.
I think I might look into using this then.
Arg. The script is down. I cant test it with my script >_>
grrr my entire site is down just get it from the demo
but the demo says its a bugged version >_> oh well I guess it really doesnt matter
The script link has been updated as it dose not seem like it will be up any time soon
I dunno if this is some silly thing on my behalf...
but when using yur battle system, though there is no direct /fail error in the system or script,
if I put some weather effects up, and/or screen darkening/lightening,
it only affects the part of the battle screen where the default battle status window originally was set.
Err...maybe someone else noticed? I was just messing around and it happened.
Again, not a fatal error of sorts...but surely there is some ridiculously easy fix?
EDIT: And also, if this is the appropriate place or not im not sure, but it involves requests for this battle system:
Wuld it be possible to create different animations for different skills?
So that there isn't just one generic per character that can be used for 'Super Slash' and 'Fire 4'...
You know?
And also on that note, a death animation for each appropriate character?
Or death image anyways.
ToNs seems to have a generic one for all characters...but tombstones are dull to look at.
Again, not sure if this is the place to place this scribble at, but...yeah. Reply?
No double posting within 24 hours
oh yes I'll have to fix that part about the weather stuff
also the death image will be added (I've been planing to add it any way)
as for separate skill battlers while it would not be hard I don't feel that they are necessary but I may add them in a later version if I have time.
UPDATE TO VERSION 1.23!
BUG FIX:
weather, screen tones, and screen shaking now work properly
new! Death images! simply add the _death tag to the end of file name and fallow the _death, _death1, _death2, _death3 pattern for more frames!
if there is no death image they simply follow the default death
Ryexander I tried your battle system it's good but for some odd reason the HP text doesn't show up no matter what I change the font to and I HAVE the LEGAL version of RPG Maker XP so I'm really not sure why this is happenning so I really need help fixing it. By the way I'm using thr CRL and the CRL plug in but I noticed even in your demo the font for the HP doesn't show up.
EDIT: Sorry the font for the HP does show up in your demo I just didn't notice but it's not showing up in my game for some reason.
can you try to replicate the problem and upload a demo?
Here's the demo of the problem. You might want to download it as quickly as possible because filedropper doesn't keep files that long.
http://www.filedropper.com/gameproject
Well it seams to work fine on my comp... upload a screen shot of exactly what is happening.
ALSO I sook a look at your script editor
please please look at this
Quote from: Blizzard on June 27, 2009, 06:20:06 am
Quote from: Blizzard on January 07, 2008, 09:35:43 pm
- Resource Tester
- ~ RTP scripts
- ~ SDK
- ~ Other people's scripts
- Tons of Add-ons Part 1
- Tons of Add-ons Part 2
- Tons of Add-ons Part 3
- StormTronics CMS (any Edition)
- Blizz-ABS Part 1
- Blizz-ABS Part 2
- Blizz-ABS Part 3
- Creation System
- Chaos Rage Limit System
- CRLS + Blizz-ABS plugin
- Scene_SoulRage
- Soul Force Combo System
- Easy Overdrive System
- Advanced Analyze System
- Bestiary
- Chaos Project Debug System
- Dynamic Day and Night System
- DREAM for Music Files
- DREAM for Save Files
- Easy Party Switcher
- Easy LvlUp Notifier
- Custom Stat Growing System
- Stat Distribution System
- RO Job/Skill System
- Full Reflection System
- Blizz-ABSEAL (DO NOT USE IF YOU HAVE BLIZZ-ABS!!!)
- Main
you have tones ABOVE AnTBS
using the proper script order ensures that methods are aliased properly meaning less bugs. if you don't have them now it may help in the future
(http://img53.imageshack.us/img53/4362/errorh.png)
The HP number text does not appear no matter what order I put the scripts.
EDIT: Never mind figured it out. I dumbly forgot to change the font name in the CRL plug in script because I did not have the font you're using on my computer. That was what happened sorry.
oh ya.... in the next update i should include an option to control the fonts that way the plug in and the script will work together in that respect
Sorry to bother you again but I found another problem. When it goes to the next characters' turns the box with attack, skill, defend and escape moves and gets cut off with the CRL Plug in for some odd reason.
(http://img42.imageshack.us/img42/1461/error2y.png)
EDIT: Sorry again, but also when I transform a character with the choas drive using the CRL Plug in I get this error.
(http://img18.imageshack.us/img18/3286/error3i.png)
*flinch* I can't believe I forgot to add nil-handling
*UPDATE* AnTBS 1.24 and AnTBS CRLS bridge 1.1 released
the new update should make things more compatible get rid of Rose Guardian's error and make it easy er to control the fonts in the status bar
@Rose update the pluging and the main script from the first post and configure the fonts at the top of the script (it will effect the main script and the plug-in)
then tell me if you still get errors
It got rid of the nil error but I 'm still having this problem in the screen shot.
(http://img34.imageshack.us/img34/8813/error4w.png)
ya... um... I'm utterly confused here because in the demo you sent me no such problem exists! did you add any scripts since you uploaded that demo project?
and could you explain the events surrounding this glitch? this has to be a compatibility glitch because I built this system to NOT do that.
That's weird. However I did add any scripts to the demo. However I do have center status set to true in Tons of add ons but that shouldn't be a problem. So I'm very confused about why this is happening. What I'm trying to say is when it goes to the next character the command box moves off the screen.
EDIT: Never mind figured it out. It really was the centered battler add on in Tons of Add ons causing it.
Nice work you have done here with this battle system. It fits perfectly in the place of some edditings I myself have been trying to do, but my scripting skills are very limited so I will be using your system instead.
I see you have done lots of considerations and mostly everything works fine but there is a major problem with the death state. I'll write bellow the step-by-step case I have encountered.
1) Enter a battle and have one of your party members killed.
2) Win the battle.
3) Enter another battle. - The dead character won't be displayed (shouldn't he be displayed with his death state?)
4) Worse still, if you try to use an item or skill to bring him back, the game will display his death animation (even tough he is no longer dead) and will only update to his proper graphic on his next turn in battle. Until then He'll still be in his death state animation.
This won't happen if you ressurect him in the same battle that he died, or if you ressurect him outside of battle. The case listed above seems to be the only death case you didn't account for in your script. Would you fix it in your next release? It would be really helpful! Thanks for your time. :)
aw yes the death images come back to haunt me. I had a lot of problems getting the resurrection animation to play right. I look into the problem it is probably something small I over looked and can be fixed in a small edit.
EDIT: yep easy fix I just have to make sure to set action states right at the beginning of the battle
Glad to hear it. I'm looking foward to it. :)
After that is concluded I'll be testing some code of my own that I've been thinking for this script and if all goes well I'll share it here.
Update to 1.25
Hey cool, I'll be testing it now and try to add some other code.
Thanks again for your time and prompt feedback! =]
Hi
I think your script is really cool and im usint it right now, but i have a problem (maybe because when it comes to scripting my capabilities are almost 0, if not actually 0 :^_^': ), i managed to change the icons but when a battle starts the name of the actor, the hp, the sp and the status doesn't apear. i already tried to type in the name of the actor where it says actor.name but it came out as an error and the game shut down. so can you tell me where to do i need to put that information. the only other script i have rigth now is Law's Custom Equipment Screen thanks
could you perhaps post a screen shot of the problem?
and you changes the icons in the Configuration of the script yes?
I managed to get the icons i wanted, but i cant get the actor's name, hp, sp and status to show, if it's just from my low experience and knowledge in scripting, tell me where should i change the things so they appear. The only other script i have running right now is law's custom equipment script
this is what i get:
(http://img402.imageshack.us/img402/7411/prtscr.th.png) (http://img402.imageshack.us/i/prtscr.png/)
thanks
the font that is used to draw the text dose not exist of your computer either acquire the font or change which font is used in the configuration at the top of the script
thanks it worked :D i love your script. any other that sugestion?
Update: v1.26 is up. fixed a compatibility bug with multiple difficulties.
Hi, i tried to use this, but when i attacked (or chose attack sommand) it gave me this error.
(http://img204.imageshack.us/img204/5573/erroratbs.png)
So, do i need a plugin for EOS? Or is my script order messed up? My script order is:
F12 fix by Blizzard
RTP
ATBS (this script)
UMS (by ccoa)
Parallax Background by dubealex
G_G's skill shop
Mog Scene File
Mog Scene shop
Mog scene end
Guillames multislot
TONS
STCMS
EOS
what is the EOS? what dose it do ect.?
also make sure your following this script order
F12 Fix
RTP
Other peoples scripts
AnTBS
Blizzard's scripts
EOS= Easy Overdive System by our very own Blizzard. I´ll have to check the script order when i get home. I´m in school right now.
oh that... I'll probably need to make an edit for it it. however I don't really have time. Just don't let me forget and I'll get to it when I can.
Are you still busy, or could someone else make the pulgin/edit
@Pyhankoski I'm gonna attempt to make this plugin since I'm not that busy right now.
Ok, thanks. Until then, i´ll use CRLS with the plugin to it...
It doesn't show the states in my game, all I did was copy it directly from your link, doesn't show in the demo either....
Is there any way I can change the hp/sp bars from another script?
like the ones from tons-of-addons?
ya it should be fairly simple to do, in fact I think some one has done it. check my cms topic I think some one did it there and the precess would be the same
Hey, a small little question...
Could it be made so that the icon for the attack command varied by either character or by what they have equipped, or by class?
you could, it would be a small modification. I'm sure you can figure it out. if you have trouble finding things I can point you to the right methods. I'm a proponent of learning to do such small modifications your self. you will be more self reliant that way and I don't have to spend as much effort helping you. :P
Ok, well i'll try it myself and i i can't do it, i'll ask for advice.
Oh, and it seemed that this is incompatible with your collapsing menu... I have to try to figure that out, might just be something caused by the fact that i used the newest version of this, but i didn't get the newest (?) version of the menu...
sorry for asking a very noobish question, im using this battle system and i was wondering if theres a way to make my character or enemy move to target when they use certain skills or when a certain character attacks.
Example: Grungust type 3 (Super Robot Wars Original Generations 2) uses his drills as a standard attack.
this attack has about 26 frames and I'd him to move at frame 12 and the enemy to take damage at frame 19.
is this possible?
Quote from: Zolnova on January 28, 2011, 10:33:48 pm
sorry for asking a very noobish question, im using this battle system and i was wondering if theres a way to make my character or enemy move to target when they use certain skills or when a certain character attacks.
Example: Grungust type 3 (Super Robot Wars Original Generations 2) uses his drills as a standard attack.
this attack has about 26 frames and I'd him to move at frame 12 and the enemy to take damage at frame 19.
is this possible?
Is this what you're referring to?
http://www.youtube.com/watch?v=bWuN9SrtjFs
Man, this totally reminds me of all the epic animations Golden Sun incorporates into their games.
Anyway, this can be done with lots of elaborate and creative battle animations. But uh, doesn't this work best with a side-view battle system? ._. The Asan'Tear system seems pretty front-view from here, so you can only do so much (Like have a battle animation of the face animation or something maybe).
yeh that is the game I was referring to, Im just wondering if I can move my characters to the enemy when they attack.
this guy made a digimon rpg using a script similar to this and one of his characters actually did move to the enemy and slash it in half
ya sorry but the best you can do is have the battler swing a weapon or something like that.