Help - Search - Members - Calendar
Full Version: Animated Battle System Troubleshooting
RPG RPG Revolution Forums > Scripting > Script Development and Support > RGSS
pokket
Why hello there...

So I've been missing around with an rpg I've been working on in XP on and off for the past couple months. And lately I decided to replace that old crummy battle system with Minkoff's Animated Battlers Enhanced. I've spent the last three days configuring it with some "stockholder" battler images I found(which I would totally credit the makers of right now if I remember where I got them, but they're stocks right now as I test this out so hopefully they don't mind. I plan on making my own at some point and/or getting a good pixel artist to help me out on it as I plan to do most of this myself).

Anyway, so. I got everything worked out (I believe) but am running into two main problems.

1. For some reason the frames scroll. I don't know if that's what's happening but I can't figure out what I did to make it happen. The images though are not sticking where they should be currently and it's pretty infuriating trying to figure it out as I've spent a good couple of hours trying to understand this as I'm new to the whole scripting process and have been focusing on the rest of the game.
2. Is it possible to move the actors/enemies around on the battle scene? Like the enemies are towards the center and I'd like to move their cute little butts over to the left.

I finally decided to ask for help. I really hate not being able to figure out things on my own. And I also hate being that guy who doesn't even try and just asks.

Here's two images so you hopefully better understand. I have a hard time describing exactly what's going on haha.
screens



Also, just in case here is the script I am working with if that helps. It's just the configuration script so if you need anything else let me know. I'm not exactly sure what I'm really doing here.
script code
CODE
#================================================================
==============
# ** Animated Battlers - Enhanced ver. 11.0 (09-01-2007)
#
#------------------------------------------------------------------------------
# * (1) Configuration: The Sprite Battler Class (initialize system)
#==============================================================================

#==========================================================================
# **** ARROW CONTROLS **** #
#==========================================================================
# * Just moves the targetting arrow around
#--------------------------------------------------------------------------
MNK_ARROW_X = 14 # The x position for your target cursor
MNK_ARROW_Y = 10 # The y position for your target cursor

#==========================================================================
# **** GENERAL CONTROLS **** #
#==========================================================================

# * Default Battler Style Switches
#--------------------------------------------------------------------------
DEFAULT_ENEMY = false # If true, these switches allows the use
DEFAULT_ACTOR = false # of default battlers for actors/enemies
DEFAULT_ENEMY_ID = [] # Ids of enemies using default battlers
DEFAULT_ACTOR_ID = [] # Ids of actors using default battlers
DEFAULT_COLLAPSE_ACTOR = false # If true, restores the old 'red fade'
DEFAULT_COLLAPSE_ENEMY = false # collapse effect (using spritesheets)


# * Animation Frames and Animation Speed
#--------------------------------------------------------------------------
MNK_SPEED = 4 # Framerate speed of the battlers
MNK_RUSH_SPEED = 1.5 # Melee/Skill/Item motion speed of the battlers
MNK_POSES = 10 # Maximum # of poses (stances) in the template
MNK_FRAMES = 6 # Maximum # of frames in each pose
MNK_FRAMES_STANDARD = 4 # Standard # of frames played in each pose.

# Individual Spritesheet Control Center
MNK_POSES_ENEMY = {} # ID and # of poses for each enemy
MNK_FRAMES_ENEMY = nil # ID and # of frames for each enemy
MNK_POSES_ACTOR = {} # ID and # of poses for each actor
MNK_FRAMES_ACTOR = nil # ID and # of frames for each actor.




# * Wooziness Rates
MNK_LOW_HP_PERCENTAGE = 0 # Health% for WOOZY pose.
MNK_LOW_HP_ACTOR = {} # Ind. health% for actors.
MNK_LOW_HP_ENEMY = {} # Ind. health% for enemies.
MNK_LOW_HP_FLAT = true # If true, flat rate hp




#==========================================================================
# **** POSE CONTROL CENTER **** #
#==========================================================================

# Editable Template (Some people wanted to change their template design)
#--------------------------------------------------------------------------
MNK_POSE1 = 1 # Sets the 'Ready Pose' (MNK_POSE1) #1 in your template
MNK_POSE2 = 2 # Sets the 'Struck Pose' (MNK_POSE2) #2 in your template
MNK_POSE3 = 3 # Sets the 'Woozy Pose' (MNK_POSE3) #3 in your template
MNK_POSE4 = 4 # Sets the 'Block Pose' (MNK_POSE4) #4 in your template
MNK_POSE5 = 5 # Sets the 'Charge Pose' (MNK_POSE5) #5 in your template
MNK_POSE6 = 6 # Sets the 'Retreat Pose'(MNK_POSE6) #6 in your template
MNK_POSE7 = 7 # Sets the 'Attack Pose' (MNK_POSE7) #7 in your template
MNK_POSE8 = 8 # Sets the 'Item Pose' (MNK_POSE8) #8 in your template
MNK_POSE9 = 9 # Sets the 'Skill Pose' (MNK_POSE9) #9 in your template
MNK_POSE10 = 10 # Sets the 'Victory Pose'(MNK_POSE10) #10 in your template
MNK_POSE11 = 11 # Sets the 'Defeat Pose' (MNK_POSE11) #11 in your template

# Editable Template (for Custom Actor Spritesheets)
#--------------------------------------------------------------------------
MNK_APOSE1 = {}
MNK_APOSE2 = {} # Hilda is using a Charset graphic as a battler.
MNK_APOSE3 = {} # The battler was copied into the Battler folder.
MNK_APOSE4 = {} # This setup allows you to use Charactersets for
MNK_APOSE5 = {} # battlers battlers.
MNK_APOSE6 = {}
MNK_APOSE7 = {}
MNK_APOSE8 = {}
MNK_APOSE9 = {}
MNK_APOSE10 = {}
MNK_APOSE11 = {1 => 3}

# Editable Template (for Custom Enemy Spritesheets)
#--------------------------------------------------------------------------
MNK_EPOSE1 = {}
MNK_EPOSE2 = {} # Did the same to the ghosts. Note that enemies have
MNK_EPOSE3 = {} # no victory pose.
MNK_EPOSE4 = {}
MNK_EPOSE5 = {}
MNK_EPOSE6 = {}
MNK_EPOSE7 = {}
MNK_EPOSE8 = {}
MNK_EPOSE9 = {}
MNK_EPOSE11 = {} # Setting the ghost to an invalid pose erases it.


#==========================================================================
# **** RANDOM ATTACK POSE CENTER **** #
#==========================================================================

# Each value can be set to nil so no optional melee attack poses are avail-
# able, or you can enter an array [ ] of poses that can be chosen randomly
# along with your battler's pre-set attack pose.
#--------------------------------------------------------------------------

MNK_RANDOM_ATTACKS = nil # -- no random attacks here --
MNK_RANDOM_ATTACKS_A = {} # Sets the 7th battler to use 8&9 too.
MNK_RANDOM_ATTACKS_E = nil # -- no random attacks here --


#==========================================================================
# **** EXPANDED POSE CONTROL CENTER **** #
#==========================================================================

# Non-Default Poses (can expand beyond the default 11 poses here)
# (New system mimics the revised Template system. Can use 'custom' sheets)
#--------------------------------------------------------------------------
# The first value in each set indicates the index number in a spritesheet.
# This value is overrided by a value in one of the other two accompanying
# arrays... one for actor battlerss, the other for enemy battlers.
#
# To define a pose linked to a specific battler, the syntax is...
# '' hash array '' = { battler.id => pose# }
# Where Aluxes and the Ghost (RTP) would be the 1st battlers (per array),
# and the pose# would be the pose in your spritesheet.
#
# Combinations in the hash arrays are possible, so if the MNK_POSES_DYING_E
# array has {1 => 5, 9 => 2}, then the GHOST (enemy #1) would be using the
# 6th pose (index 5) and the 9th enemy battler would be using the 3rd pose.
#--------------------------------------------------------------------------
MNK_POSES_SETUP = 9 # Choose animation pose for 'preparation'
MNK_POSES_SETUP_A = {}
MNK_POSES_SETUP_E = {}
MNK_POSES_CASTPREP = nil # Set 'casting' pose for skill preparation
MNK_POSES_CASTPREP_A = {}
MNK_POSES_CASTPREP_E = {}
MNK_POSES_DYING = nil # Choose animation pose for dying throws.
MNK_POSES_DYING_a = {}
MNK_POSES_DYING_E = {}
MNK_POSES_ESCAPE = nil # Set 'coward' pose for fleeing monsters)
MNK_POSES_ESCAPE_A = {}
MNK_POSES_ESCAPE_E = {}
MNK_POSES_CRITICAL = nil # Set pose for BIG hits
MNK_POSES_CRIT_A = {}
MNK_POSES_CRIT_E = {}
MNK_POSES_WINNING = nil # Set winning (Victory Dance before pose)
MNK_POSES_WINNING_A = {}
MNK_POSES_WINNING_E = {}

# Looping Poses
#--------------------------------------------------------------------------
# These arrays merely hold the ID of actors or enemies whose poses loop at
# the end of combat. Enemies have no 'winning' animation pose.
MNK_LOOPS_WINNING = [] # Actor IDs if their victory pose loops
MNK_LOOPS_DEFEATED_ACTOR = [] # Actor IDs if their defeat pose loops
MNK_LOOPS_DEFEATED_ENEMY = [] # Enemy IDs if their defeat pose loops

# Non-Default Pose Hashes (poses dependant on .id values)
# (New system mimics the revised Template system.)
#--------------------------------------------------------------------------
# The first hash in each set indicates the id number (be it skill, item or
# otherwise, and the pose it brings up. These mimic the 2nd array type in
# the above Non-Default poses. As such, a hash value of {1 => 10) for the
# MNK_POSES_WEAPONS hash would make the 'Bronze Sword' use the 10th index (or
# 11th spritesheet) pose... aka the 'Defeat' pose.
#
# To define an advanced pose linked to a specific battler, the syntax is...
# = { battler.id => { item/skill.id => pose# } }
# ...so this gets more complicated. But this does allow each battler to
# have his or her own unique pose, regardless of spritesheet type.
#--------------------------------------------------------------------------
MNK_POSES_CASTED = {} # Set a specific skill to use a pose
MNK_POSES_CASTED_A = {}
MNK_POSES_CASTED_E = {}
MNK_POSES_STATUS = {} # Set status values to poses here
MNK_POSES_STAT_A = {}
MNK_POSES_STAT_E = {}
MNK_POSES_SKILLS = {} # Default: #57(Cross Cut) does 'Attack'
MNK_POSES_SKILLS_A = {}
MNK_POSES_SKILLS_E = {}
MNK_POSES_ITEMS = {} # Default: #13(Sharp Stone) does 'Block'
MNK_POSES_ITEMS_A = {}
MNK_POSES_ITEMS_E = {}
MNK_POSES_WEAPONS = {} # Didn't set any weapons to any poses
MNK_POSES_WEAPS_A = {}
MNK_POSES_WEAPS_E = {} # Non-functional (Enemies don't use 'em.)

# Non-Default Pose Hashes (Hits & Critical Hits)
# (Just like above, but pertains to specific hits and critical hits)
#--------------------------------------------------------------------------
MNK_STRUCK_WEAPS = {} # Set a specific 'Struck' to a weapon attack
MNK_STRUCK_WEAPS_A = {}
MNK_STRUCK_WEAPS_E = {}
MNK_STRUCK_SKILLS = {} # Set a specific 'Struck' to a skill
MNK_STRUCK_SKILLS_A = {}
MNK_STRUCK_SKILLS_E = {}
MNK_STRUCK_ITEMS = {} # Set a specific 'Struck' to an item attack
MNK_STRUCK_ITEMS_A = {}
MNK_STRUCK_ITEMS_E = {}
MNK_CRIT_WEAPS = {} # Set a specific 'Critical Hit' to a weapon
MNK_CRIT_WEAPS_A = {}
MNK_CRIT_WEAPS_E = {}
MNK_CRIT_SKILLS = {} # Set a specific 'Critical Hit' to a skill
MNK_CRIT_SKILLS_A = {}
MNK_CRIT_SKILLS_E = {}
MNK_CRIT_ITEMS = {} # Set a specific 'Critical Hit' to an item
MNK_CRIT_ITEMS_A = {}
MNK_CRIT_ITEMS_E = {}


#==========================================================================
# **** FRAME CONTROL CENTER **** #
#==========================================================================

# * Frames Control
#--------------------------------------------------------------------------
MNK_FRAMES_PER_POSE = {} # Set #of frames to pose(by index)

# Advanced Individual Pose/Frame Hashes # Advanced Individual Poses uses
# hashes within hashes. As a demo
MNK_POSES_FR_ACTOR = {} # you can see that enemy #1 has 2
MNK_POSES_FR_ENEMY = {} # sets of controls: index 0 (for
# a ready pose is set to 1 frame,
# while index 3 (block) is set to 'two' frames. Likewise, for the actor's
# hash, Actor #7 (Gloria) has only 1 control hash. It sets index pose '0'
# (the ready pose again) to use four frames of animation (even though I had
# set the ready pose to just use '2' with the MNK_FRAMES_PER_POSE hash earlier.


#==========================================================================
# **** MOVEMENT CONTROL CENTER **** #
#==========================================================================

# * Offset / Battler Overlap System
#--------------------------------------------------------------------------
MNK_OFFSET = 0 # How much additional space between battlers
MNK_OFFSET_ACTOR = {1 => -50}
MNK_OFFSET_ENEMY = nil

# * Forward Step System (Final Fantasy-Style)
#--------------------------------------------------------------------------
MNK_STEP_ATTACK = false # If true, battler steps forward to attack
MNK_STEP_SKILL = true # If true, battler steps forward to use skill
MNK_STEP_ITEM = true # If true, battler steps forward to use item

# * Movement Arrays (Arrays for skill/weapon/item IDs that affect movement)
#--------------------------------------------------------------------------
MNK_MOVING_ITEM = [] # Examples are items that need to be applied.
MNK_MOVING_SKILL = [] # Examples are martial-arts and sneak attacks
MNK_MOVE2CENTER_ATK = [] # Moves battler to center based on weapon id!
MNK_MOVE2CENTER_ITEM = [] # Moves battler to center for a big item atk!
MNK_MOVE2CENTER_SKILL = [] # Moves battler to center for a big skill atk!
#
# * Remember, do not supply Skill or Item ID#'s that have 'None' scopes into
# either the MNK_MOVING_ITEM or MNK_MOVING_SKILL hashes. These skills &
# item attacks have no target and would cause an error when trying to find
# an enemy to move towards.


#==========================================================================
# **** STATIONARY CONTROL CENTER **** #
#==========================================================================

# * Stationary Battlers (simple True/False settings)
#--------------------------------------------------------------------------
MNK_STATIONARY_ENEMIES = false # If the enemies don't move while attacking
MNK_STATIONARY_ACTORS = false # If the actors don't move while attacking

# * Arrays filled with skill/weapon/item IDs that halt movement
#--------------------------------------------------------------------------
MNK_STATIONARY_ENEMY_IDS = [] # Enemies that don't RUN during melee attacks
MNK_STATIONARY_WEAPONS = [] # (examples are bows & guns)
MNK_STATIONARY_SKILLS = [] # (examples are bows & guns)
MNK_STATIONARY_ITEMS = [] # (examples are bows & guns)


#==========================================================================
# **** TRANSPARENCY CONTROL CENTER **** #
#==========================================================================
MNK_TRANSLUCENCY = 255 # Degree of transparency
MNK_TRANSLUCENT_ACTOR = [] # ID of actor at translucency settings
MNK_TRANSLUCENT_ENEMY = [] # ID of enemy at translucency settings
MNK_PHASING = false # If battlers fade in/out while charging
MNK_PHASING_ACTOR = [] # IDs of actors that fade in/out if charging
MNK_PHASING_ENEMY = [] # IDs of enemies that fade in/out if charging

MNK_FADE_IN = true # Battler fades in if replaced or transparent



#==========================================================================
# **** CUSTOM FEATURE CENTER **** #
#==========================================================================

MNK_MIRROR_ENEMIES = true # Enemy battlers use reversed image
MNK_CALC_SPEED = false # System calculates a mean/average speed
MNK_AT_DELAY = true # Pauses battlesystem until animation done.
MNK_ADV_OFF_TURN = 1 # Number of turns before enemies turn around.


Once I get a hang of this I'm onto doing some more scripting for it. Plan on going down to a three man system as well as implementing a party switch system, so if you got any ideas of what I could do for that as well please feel free to give me advice! The more the merrier smile.gif

Hope to see a reply soon. Till then I shall be working on the plot. It's gonna be a spaghetti western and fantasy influenced setting. Maybe even some sci fi like, dare I say, Firefly? biggrin.gif

***EDIT***
So after looking through the script once again, I realized what I did on the first problem. For some reason I had set the frames to 6 instead of the needed 4. Guess I just overlooked it. As far as the second problem goes I could still use some help or at least someone to point me in the right direction.
Night_Runner
From memory, with that script you use the database to change the home positions of the enemies.
Database > Troops > then just move them in the graphical setup smile.gif

As for the home position of the actors... I got the minkoff's animated battlers script from: http://houseslasher.com/index.php?showtopic=173. version 13.3
If you're using the battler formation add-on:
123


At the end of the lines highlighted that start with return, add something like + 150 until it looks good!


If you don't have that add-on enabled
123

same deal as before


and if you're like me and get annoyed at the actors disappearing while they run across the screen, change these two lines:
234
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.