A Guide to Yami's 'Battle Symphony'

BeardBro

I think this line's mostly filler.
Veteran
Joined
Mar 20, 2013
Messages
211
Reaction score
85
First Language
English
Primarily Uses
RMMV
A Guide to Battle Symphony


 ​
[SIZE=10pt]Author’s Notes:[/SIZE]

[SIZE=10pt]This is a guide to Yami’s ‘Battle Symphony’ for RPG Maker VX Ace. This battle engine is free to use in non-commercial and commercial projects, so long as the proper credits are given:[/SIZE]

[SIZE=10pt]Yami[/SIZE]

[SIZE=10pt]Yanfly[/SIZE]

[SIZE=10pt]Nessiah & EvilEagles (for their contributions to Symphony)[/SIZE]

[SIZE=10pt]Credits for this guide go to:[/SIZE]

[SIZE=10pt]Yami (for creating the engine and Yami’s Manual to Battle Symphony)[/SIZE]

[SIZE=10pt]Pioneer Valley Games (for the battlesheets and spritesets)[/SIZE]

[SIZE=10pt]Yanfly (for some of the scripts seen in the images)[/SIZE]

[SIZE=10pt]This guide includes one or more sections that reference scripts and/or programs that are unrelated to Symphony and its authors. If these scripts are used in any project, proper credit must be given to the authors and contributors.[/SIZE]

Table of Contents

  1. Introduction
  2. Requirements and Preparation
  3. Battlesheets
  4. Symphony Tags
  5. Basic Commands
  6. Advanced Commands
  7. Wrapping Things Up

  1. Introduction

At first glance, Battle Symphony appears to be a complex script that requires some programming knowledge to use properly. This perception of Battle Symphony is entirely true, so here’s the programming knowledge you’ll need to know in order to proceed:

Programming consists of commands that tell one object how to interact with another object.

Battle Symphony is based on this core principle of programming. The engine features its own programming language, which allows for the creation of complex, beautiful animations that put most of the old Final Fantasy games to shame. With a couple of minutes and a few simple lines of code (and I’m talking simple, there’s nothing in Battle Symphony that will cause your eyes to bleed), you could have visual battlers that are darting across the screen, slashing enemies and using complex skills that would normally take days (or weeks) to animate.

[SIZE=10pt]Omnislash Test[/SIZE][SIZE=10pt] – this simple animation doesn’t event scratch the surface of Symphony’s capabilities. Pretty impressive, wouldn’t you say?[/SIZE]

Using Battle Symphony isn’t an effortless procedure, so let’s dive in and tackle the Requirements and Preparation section of this guide.

*I recommend creating a new Ace gamefile as you follow this guide. You can easily copy/paste everything over to your original project when we’re finished, so don’t fret. As a measure of safety, learning a new program in an expendable gamefile is wise so we can avoid the risk of overwriting an important skill, script, etc.


2.  Requirements and Preparation

To use Battle Symphony, the only true requirement is the Battle Symphony Script. However, to accomplish more advanced animations, we’ll also need to use the Holder’s Battlers Add-on, which will allow for more detailed animations via battlesheets.

Place Battle Symphony’s script in the ‘Materials’ section of the Script Editor. Battle Symphony should go below all of Yanfly’s scripts, but above any custom non-battle, non-Yanfly scripts you may have installed. Holder’s Battlers Add-on should go directly beneath Battle Symphony in the scriptlist. Once you’ve installed Battle Symphony and Holder’s Battler Add-on in the Script Editor, head on over to Yami’s Manual on the Symphoria webpage and bookmark it. His manual can be confusing at first, but it will be more understandable and digestible once you’ve worked through my guide. All of the basic information in Yami’s Manual can be found in my guide, but advanced users may want to reference Yami’s Manual for its comprehensive list of Symphony Tags.

Finally, you’ll need to download three free .zip resource sets from the Pioneer Valley Games website:

Engineer Resources

Barbarian Resources

Frost Dragon Resources

[SIZE=9pt]*I downloaded and tested each .zip file; the .zips were clean and virus-free at 2:13 pm, 11/8/2013.[/SIZE]

Now, let’s take a look at lines 84-128 in the Battle Symphony script, starting with line 84.

Line 84: EMPTY_VIEW = X

Set ‘X’ to ‘true’ or ‘false’. ‘True’ turns off every visual aspect of Symphony, including actors, animations, and items. This feature has its uses, but since we’re learning how to implement animations and visual battlers, set this to ‘false’ so everything remains visible in the battle screen.

Line 88: PARTY_DIRECTION = X

Set ‘X’ to ‘4’, ‘8’, ‘6’, or ‘2’. This adjusts the direction of the actor’s battlers in accordance to the NumPad, so if you set the operand to ‘4’, the party will face left and the enemies will face right. Some laptops don’t have a NumPad, so 4=left, 8=up, 6=right, and 2=down.

Line 95: ACTORS_POSITION: { # Begin.

Line 96:      0 =>  [480, 224],

Line 97:      1 =>  [428, 244],

Line 98:      2 =>  [472, 264],

Line 99:      3 =>  [422, 284],

Line 100:     3 =>  [452, 304],

Line 101: }

This adjusts the position of your actors, so this segment is fairly basic. Line 96, ‘0 => [x,y]’, adjusts the position of the first actor, with ‘x’ and ‘y’ representing the actor’s position based on pixels in the x-y scale (‘x’ is left-right, ‘y’ is up-down). Line 97 adjusts the second actor’s position, and so forth. You shouldn’t need to edit line 100 unless you have a fifth actor, which is not recommended for the purposes of this guide because of the large battlers in Section III - Battlesheets.

Line 107: WEAPON_ICON_NON_CHARSET = X

Set ‘X’ to ‘true’ or ‘false’. This command specifies whether or not weapon icons appear when your actors attack. ‘True’ is absolutely not recommended in this guide, as weapon animations are included in the battlesheets in Section III – Battlesheets. Set this to ‘false’, or else we’ll wind up with this:

[SIZE=9pt]Brutus is currently in therapy because he sees cartoon apparitions on a regular basis.[/SIZE]
 ​
Line 111: DISABLE_AUTO_MOVE_POSE = X

Set ‘X’ to ‘true’ or ‘false’. ‘False’ allows auto-move-posing to be enabled, which automatically poses actors as they move around the battlefield. This feature is useful in certain situations, but it doesn’t work well with Holder’s Battlers, so let’s leave this as ‘true’ for the sake of this guide.

Line 114: BATTLER_SHADOW = X

Set ‘X’ to ‘true’ or ‘false’. Again, this works well in certain situations, but it looks odd with the battlers we’re going to use in this guide. So, let’s set this to ‘false’.

Line 119: ENEMY_ATTACK_ANIMATION = X

Set ‘X’ to the ID of any animation in the database; this sets the default animation for basic enemy attacks.

Your Battle Symphony script should now look like this (the operands in lines 96-100, as well as 119, don’t have to be identical to the example):


Now, let’s move onto the implementation of battlesheets in Battle Symphony.

3.  Battlesheets

By default, Symphony will display the charsets for actors that have been specified in the database in the ‘Actor’ tab. This is suitable in certain situations, but we can take Symphony a step further and use Battlesheets for each character instead of a static charset. To do this, we’ll need the Holder’s Battler Add-on script, which should already be in your scriptlist if you followed the instructions in Section I. Next, you’ll need to extract the 3 .zips you downloaded from Pioneer Valley Games (buy his stuff, it’s awesome). 

Now, find the extracted files, and locate the battlesheet for each individual character. These characters aren’t named, so let’s called the gun-wielding woman the ‘Engineer’, the axe-wielding man the ‘Barbarian’, and the dragon the ‘Azure Dragon’. Change the name of the Engineer’s battlesheet to ‘Engineer Battlesheet’, the Barbarian to ‘Barbarian Battlesheet’, and the dragon to ‘Azure Dragon Battlesheet’.

Next, go into the resource manager in Ace, then import the renamed battlesheets for each of the three characters into the graphics/characters folder. Once you’ve successfully imported the battlesheets into graphics/characters, we’re ready to move onto the next step.


Holder’s Battler Add-on allows us to specify which battlesheets are used for which character during combat via notetags. The notetag looks like this:

<holders battler: X>

‘X’ represents the filename of the battlesheet. So, to keep this simple, let’s go into the database and change the names of Actors 1 and 2. Actor 1 should be ‘Tiara’, the Engineer, and Actor 2 should be ‘Brutus’, the Barbarian; you can even go the extra mile here and import the appropriate faces for each character, but this isn’t a requirement. Now, Tiara is our Engineer, so we need to specify her battlesheet in the notetags. Put the code ‘<holders battler: Engineer Battlesheet>’ into her actor’s notes.  See below:

 ​
Now, go to the ‘Troops’ tab and initiate a battle test with Tiara. Have Tiara ‘Attack’ and take note of the complex animation as she dashes toward the enemy, draws her gun, shoots, then dashes back to her original position. Symphony has default animations for attacking, defending, using items, and using magic, which is great for basic attacks and skills. However, for more advanced animations, we’ll need to do some programming of our own using Symphony Tags. Let’s get started!

4.  Symphony Tags

Battle Symphony utilizes a programming language based on something called ‘Symphony Tags’, which are simple commands that can be combined to create complex and intricate animations. These tags are placed in the ‘notes’ section of skills in the Database. The ‘Attack’ and ‘Defend’ skills already have animations that are specified in the Battle Symphony script, so it’s best to leave those skills untouched.

When Tiara attacked in the battle test, did you notice that she charged forward with a gun? That seems a little odd, so let’s give her a better animation for shooting. We’ll start off by creating a new skill in slot 8 called ‘Shoot’. Instead of trying to explain how to set up the skill, I’ll just have you refer to the image below (do NOT type anything into the ‘Note’ box yet):

 ​

See the stuff written in the Note box? Those are Symphony Tags, which I’ll address in a moment. First, copy and paste ‘Shoot’ into skill slot 9. Rename skill #9 as ‘Throw Bomb’. In order to proceed, we’ll need to go over the Symphony Tags and learn about their many functions and utilities. Let’s get started:

Symphony Tags - Action Categories

Setup Actions

<setup action> </setup action>

These actions are the ‘setup’ for the main bulk of the action. Setup actions happen first, other actions happen later.

Target Actions

<target action> </target action>

Actions specified under the ‘Target Action’ category will happen to an individual, individually. In other words, Target Actions can only be directed at a singular object at any given time. Target Actions are good for animating an individual, while Whole Actions are better for animating groups that are supposed to act simultaneously.

Whole Actions

<whole action> </whole action>

While Target Actions only affect an individual, Whole Actions can affect numerous individuals simultaneously. Whole Actions are best suited for displaying animations on all enemies at the same time, moving the entire party at the same time, etc.

Follow Actions

<follow action> </follow action>

I only recommend Follow Actions to advanced Battle Symphony users. Follow Actions are used for ‘cleaning up’ after a Whole or Target Action. Follow Actions are used to remove flags, initiate common events, etc.

Finish Actions

<finish action> </finish action>

As the name implies, Finish Actions are used to indicate the completion of a chain of commands or animations. Finish Actions can include (but aren’t limited to) moving back to an original position, sheathing a weapon, etc.

Advanced Battle Symphony users will be able to utilize all five Action Categories in a single skill. Even so, Target Actions alone can provide enough customization to satisfy  the majority of users, and these actions are also easier for rookies to learn. When programming animations, I personally prefer to stick to Target Actions and nix the rest. As such, I’m going to focus solely on Target Actions in this guide.

Symphony Tags - Target Typing

 ​
'Target Typing' refers to the commands used when specifying targets for certain actions or animations. When you see a Symphony Tag that says 'refer to Target Typing', that means you can use any of the commands below to specify a target:

user: This will select the active battler.

target, targets: These will select the active targets in question.

actors, party, actors living: These will select all living actors.

all actors: This will select all actors including dead ones.

actors not user: This will select all living actors except for the user.

enemies, troop, enemies living: This will select all living enemies.

all enemies: This will select all enemies, even dead.

enemies not user: This will select all enemies except for the user.

actor x: This will select the actor in slot x.

enemy x: This will select the enemy in slot x.

everything: Selects all living actors and enemies.

everything not user: This will select all living battlers except user.

allies, friends: This will select the battler’s allies.

friends not user: This will select the battler’s allies except itself.

opponents, rivals: This will select the battler’s opponents.

focus: Selects the active battler and its targets.

not focus: Selects everything but the active battler and its targets.

counter subject: This will select the countering battler.

reflect subject: This will select the reflecting battler.

Default Symphony Tags

 ​
After you decide which category of action to use, and which target the action is going to affect, these tags decide the actions the target is going to take. So, if we want Tiara to literally jump when the skill 'Jump' is used, we would first define in Jump's notes that the animation is a 'Target Action'. We would then specify that the user of the skill is going to take an action, and then we use the Default Symphony Tags to tell the user to jump when the skill 'Jump' is used.

Here are the list of Symphony's actions/tags, copied from Yami's Manual:

animation id: tune1, tune2

This will play an animation on the targets. By default, this animation will be played with non-mirror and no waiting.

id: Animation ID in Database.

tune1: Refer to Target Typing.

tune2 (optional):

- wait: Causes the animation to wait until it’s done before going on.

- mirror: Causes the animation to mirror itself.

Example: 'animation 12: user, wait' - plays animation 12 on the skill's user, and other animations/actions will wait until this animation is finished.

attack animation: tune1, tune2

skill animation: tune1, tune2

last animation: tune1, tune2

This will play a normal attack animation or skill animation or last used animation on the targets. By default, this animation will be played with non-mirror and no waiting.

tune1: Refer to Target Typing.

tune2 (optional):

- wait: Causes the animation to wait until it’s done before going on.

- mirror: Causes the animation to mirror itself.

Example: 'attack animation: user, wait' - plays default attack animation on user, and other animations/actions will wait until this animation is finished.

attack effect: tune1, tune2

skill effect: tune1, tune2

This will calculate all attack or skill effect, from damage to effects. You will have to use this tag to make the skill to damage and cause effect on targets.

tune1 (optional):

- clear: This will clear any miss, or evade flags.

- counter check: This will check and calculate counter flags.

- reflect check: This will check and calculate reflect flags.

- dmg: This will damage targets.

- effect: This will cause effects, includes Gain TP.

- whole: This will include these three tunes: calc, dmg, effect.

tune2 (optional):

- calc: This will recalculate miss and evade flags for current step.

- perfect: This will prevent missing or evading.

Example: 'skill effect' - this calculates the damages and effects of the skill that's being used.

auto symphony: tune1

This will play an Actions Set defined by Auto Symphony (Section III).

tune1: Refer to Auto Symphony key (Section III).

Example: no need for an example. There are uses for this, but we don't need to go over them in this guide.

icon create: tune1, tune2, tune3, tune4

This will create an icon object from IconSet, often use for weapons and items.

tune1: Refer to Target Typing.

tune2: Icon Symbol, use to call effect with tag icon effect. There are default Icon Symbols:

- weapon, weapon1: Create Icon for Weapon 1.

- weapon2: Create Icon for Weapon 2.

- shield: Create Icon for Shield.

- item: Create Icon for Using Item.

tune3 (optional): Icon Attachment, also known as Icon Position

- hand: Create Icon on Character’s Hand.

- shield: Create Icon on Character’s Other Hand.

- item: Create Icon on item position.

- middle: Create Icon on middle body.

- top: Create Icon on top body.

- bottom: Create Icon on bottom body.

tune4 (optional): Icon ID, use when not using Default Icon Symbols.

Example: 'icon create: user, weapon, hand' - creates an icon of the equipped weapon on the user's hand. The weapon won't do anything by itself, but this icon needs to be created in order for it to be animated later on.

icon delete: tune1, tune2

This will delete an icon object created by tag icon create.

tune1: Refer to Target Typing.

tune2: Icon Symbol.

Example: 'icon delete: user, weapon' - deletes the weapon icon we created with icon create.

icon effect: tune1, tune2, tune3, tune4, wait

This will make effect for an icon object created by tag icon create.

tune1: Refer to Target Typing.

tune2: Icon Symbol.

tune3: Icon Effect:

- angle, x: Set Icon angle to x.

- rotate, x: Make Icon rotate to angle x.

- animation x: Start Animation ID x on Icon.

- move_x x: Make Icon move to X-coordinate x.

- move_y y: Make Icon move to Y-coordinate y.

- cur_x x: Make Icon move to X-coordinate: Current X + x.

- cur_y y: Make Icon move to Y-coordinate: Current Y + y.

- fade in: Make Icon fade in.

- fade out: Make Icon fade out.

- float: Make Icon float (Use for Item Using).

- swing: Swing Icon down (Use for Swing Attack).

- upswing: Swing Icon up (Use for Swing Attack).

- stab: Special Move for Spear Attack.

- claw: Special Move for Claw Attack.

tune4 (optional): Total Frames. Use to define effect speed.

wait (optional): Type wait here to wait until effect’s done before going on.

Example: 'icon effect: user, weapon, swing, 30, wait' - this makes the weapon icon move in a swinging arc, and the animation will take 30 frames to be completed. Other actions/animations will wait until this animation is completed.

Is this starting to make sense? Let's take a look at some more Symphony Tags.

icon throw main: tune1, tune2, tune3, tune4, wait

This will throw an object created by tag icon create to target.

main: Object Owner. Refer to Target Typing.

tune1: Target. Refer to Target Typing.

tune2: Icon Symbol.

tune3: Throwing Arc. Negative Integer will make object be thrown downward.

tune4 (optional): Total Frames. Use to define throwing speed.

wait (optional): Type wait here to wait until effect’s done before going on.

if condition

This will check an if condition before doing next actions. End this condition by end.

unless condition

This will check an unless condition before doing next actions. End this condition by end.

jump arc X main: tune1, tune2, wait

This will make main jump to a specific location.

X: Jump Arc. Integer.

main: Jumping Subject. Refer to Target Typing.

tune1: Specific Location

- forward, x: Jump forward for x pixel.

- backward, x: Jump backward for x pixel.

- origin: Jump to original location.

- target, tune3: Jump to target’s location. tune3 is position on target’s body: foot, body, center, head, back

tune2 (optional): Total Frames. Use to define jumping speed.

wait (optional): Type wait here to wait until effect’s done before going on.

message

This will display using skill/item on Battle Log.

move main: tune1, tune2, wait

This will move main to a specific location.

main: Moving Subject. Refer to Target Typing.

tune1: Specific Location

- forward, x: Move forward for x pixel.

- backward, x: Move backward for x pixel.

- origin: Move to original location.

- target, tune3: Move to target’s location. tune3 is position on target’s body: foot, body, center, head, back

tune2 (optional): Total Frames. Use to define moving speed.

wait (optional): Type wait here to wait until effect’s done before going on.

immortal: tune1, tune2

This will change immortal flag for targets, which is useful when making a multi-hit skill. Set flag to false will make targets collapse if fulfill death condition.

tune1: Refer to Target Typing.

tune2: Immortal Flag, set to true or false.

teleport main: tune1, tune2, wait

This will teleport main to specific location. Usage is the same as move main.

wait for animation

This will wait until all animations have done before going on. Often use last in an Actions Sequence.

wait for move

This will wait until all movement is done before going on. Often use last in an Actions Sequence.

wait: x

This will wait for x frames before going on.

Holder’s Battlers Tags

By default, the Holder’s Battler Add-on script will specify Battlesheet poses for use in Battle Symphony commands. Here are the default Symphony Tags for Holder’s Battlers:

stance: tune1, tune2
This will change battler stance when using Holder Battlesheets.
tune1: Refer to Target Typing.
tune2: Refer to Stance Key:
- break: Break and Cancel any being stance.
- idle: Idle/Ready Stance.
- struck: Struck Stance. Use when battler is attacked.
- woozy: Woozy Stance. Use when battler’s HP is low.
- march: March Stance. Use when make battler rush to target.
- victory: Victory Stance. Use when Victory.
- defend: Defend Stance.
- dead: Dead Stance. Use for death battler.
- attack: Attack Stance.
- magic: Magic Stance.
- item: Item Stance.
- skill: Skill Stance.
- forward: Advance Stance. Use when move.
- retreat: Retreat Stance.

Example: ‘stance: user, defend’ – the skill’s user will go into a defensive pose.

Holder’s Battler tags are self-explanatory, so there shouldn’t be a need for further explanation here.

5.  Basic Commands

Now that we’ve gone over the Symphony Tags, we can start programming actions and animations for our battlers! At this point, go back to your ‘Shoot’ skill and copy the Symphony Tags from ‘Note’ section in the image below:

 ​
Make sure your Note box looks exactly like the image above. Since we don’t want the Engineer to move all the way toward the enemy to shoot her gun, the goal of this skill is to create a realistic animation where the Engineer steps forward, raises her gun, and fires at the enemy from a distance. Will our Symphony Tags accomplish that? To find out, make sure the Engineer can use the ‘Shoot’ skill by adding it to her class’s skill list, and then run a battle test. Here’s what we’ll get:

[SIZE=9pt]That looks really, really painful.[/SIZE]
 ​
“Dammit,” you might say, “that didn’t work at all!” You’re right; our ‘Shoot’ skill was a huge failure, and all due to a very simple mistake. In the second line of Shoot’s Note box, see where it says ‘move user: target, wait’? Doh! We don’t want our Engineer to move to her target, so change that line to ‘move user: forward, 6, wait’. Our Engineer will now move forward by 6 pixels before taking her ‘shooting’ action. Save your changes, and then run the battletest again. What happens when we use ‘Shoot’ this time? See below:

[SIZE=9pt]Ye’ gods, behold the range![/SIZE]
 ​
Congratulations, you just wrote the code for a successful animation using Symphony Tags! ‘Shoot’ is a relatively simple skill to animate, so let’s move on to a more complex skill: ‘Throw Bomb’.

6.  Advanced Commands

Earlier, we copied ‘Shoot’, pasted it into Skill Slot 9, and renamed it as ‘Throw Bomb.’ Go to that skill now and put the following code into its Note box:

 ​
Now, in order to make the bomb visible, we used ‘icon create’ to create the bomb’s image. However, we still need to specify what the bomb’s graphic is going to look like. If you’re using the default iconset, you’ll have 527 icons to choose from. Select the skill’s icon changer at the top of the window to bring up the icon selection menu:


When you select an icon in the menu (don’t double click, just click one to highlight it), an indicator appears in the bottom-left corner of the menu that shows the icon’s ID number.


Find an icon graphic that looks like a bomb (or a shoe, whatever floats your boat), and take note of the index number, which will serve as the iconID. Hit ‘cancel’, and go back to the Note box for ‘Throw Bomb’. In the line ‘icon create: user, item, hand, X’, change ‘X’ to the iconID you wish to use for the bomb’s graphic.

Now, we need to test ‘Throw Bomb’ to make sure it works properly. Make sure Tiara can use ‘Throw Bomb’ by putting it in the skill list for her class; when you’re done with that, run a battle test and use the ‘Throw Bomb’ skill.

[SIZE=9pt]“Bawkaaaaaaaawwwww!!!”[/SIZE]
 ​
‘Throw Bomb’ is a success! At this point, you could probably go nuts with Battle Symphony and create all sorts of wacky animations. First, check out the following section for a few more tricks, as well as the closing notes for this guide.

7.  Wrapping Things Up

So far, this guide has focused on animating party members, but not enemies. To use use an animated enemy in battle, find an enemy in the database and put the code <holders battler: X> into the Note box, where ‘X’ is the filename of the desired battlesheet found in the graphics/characters folder. For now, create an enemy in the database called ‘Azure Dragon’. Put the code <holders battler: Azure Dragon Battlesheet> in the Azure Dragon’s Note box. If you imported the Azure Dragon battlesheet in Section III (if not, go back and do so), an animated Azure Dragon will replace the database graphic when battle has been initiated (even though your enemy may be a Slime in the database, it will be the Azure Dragon during combat). Run a battle test with the Azure Dragon and make sure the battlesheet is working properly. Your battle screen should look like this:

[SIZE=9pt]“What is it? Dragons?”[/SIZE]
 ​
You have now completed this guide (whew!), and have taken a crucial first step toward creating beautiful, complex animations using Battle Symphony. Good luck, and thanks for your time!

External Links

Battle Symphony Website

Pioneer Valley Games Website

Yanfly’s Website
 
Last edited by a moderator:

Kes

Veteran
Veteran
Joined
Aug 3, 2012
Messages
22,008
Reaction score
11,345
First Language
English
Primarily Uses
RMVXA
I wanted to use Battle symphony in my current project, but chickened out.  With this tutorial to hand, I'm definitely using it for my next one.

Thank you.
 

kerbonklin

Hiatus King
Veteran
Joined
Jan 6, 2013
Messages
1,728
Reaction score
282
First Language
English
Primarily Uses
RMMV
I think you should apply a small extra bit of detail on Jump/Throw  Arc X, how it's measured as an integer. (In pixels I believe?)

Also, maybe you can do a bit of detail on using IF and Unless tags. Like for example you can have additional animations play if your character is dual-wielding, using "IF user.weapons[1]".  Or maybe different animations if the actor has a certain state or item. (Would be considered Advanced)

It would be nice if people provided GIFs of some of the complex animations they've done as samples. I would participate.
 

BeardBro

I think this line's mostly filler.
Veteran
Joined
Mar 20, 2013
Messages
211
Reaction score
85
First Language
English
Primarily Uses
RMMV
@Yami: You're welcome! Symphony is the most advanced side-view system that's available for Ace, but I've noticed that a lot of people are intimidated by it at first glance. I hope that this guide will enable more folks to utilize the system and be able to tailor it to their individual needs.

@ksjp17: You're quite welcome. Good luck with your current project and your next project alike!

@kerbonklin: Sure, I can put a short description of the individual commands in the 'Throw Bomb' section. I figured that, if people were curious, they could simply hit ctrl+f and search for the tag listed earlier in the guide, but it might be easier to have that information right there. The same goes for the 'if' and 'unless' commands, but those will require more time so I'll have to tackle them later this evening or tomorrow.

EDIT: I'll edit the OP this evening with more explanations about Throw Bomb. Also, GIFs of complex animations would be extremely helpful, and I'll feature them in the OP along with instructions for each animation.

Thanks for the feedback, folks!
 
Last edited by a moderator:

Hinorashito

Apprentice
Member
Joined
Feb 14, 2013
Messages
130
Reaction score
14
First Language
english
Primarily Uses
Thank God somebody finally made this thing lol. However I already figured out how to script attacks a while ago I was more interested in things like jump arcs and rotating and curving. Like what would I input if i want my actor to run up to the enemy and then do a back flip on them as an animation plays. 

I need help with more complex skills like If i wated a skill where the actor raises the enemy charset above them kinda like the float symphony tag and then tosses them as the enemy graphic rotates hits the ground and then the actor and enemy return to  position. Lol I know what I just wrote might sound complicated But I know there is a way with symphony tags to do this if the creator of this guide can message me some tips or suggest what I should do that would be great. 
 

kerbonklin

Hiatus King
Veteran
Joined
Jan 6, 2013
Messages
1,728
Reaction score
282
First Language
English
Primarily Uses
RMMV
Bumping this with a request.

The original manual (as well as this thread guide) does not mention the possibility for creating custom Icon Symbols (instead of weapon-weapon1/weapon2/shield/item) For example in Yami's multi-frame Bow example on his/her site, it is possible to use things like Bow1, Bow2, Bow3 as new sets of Icon Symbols, which is not even mentioned in the manual.

This usage of custom Icon Symbols is also required when using Tune4's "Different Icon IDs" when creating icons, otherwise it will either draw the same default skill/weapon/item icon, or end up drawing icon index 116 instead of your specified icon index to create.

Please add this into the guide if you can. (and in the meantime others can read this as well)
 
Last edited by a moderator:

Engr. Adiktuzmiko

Chemical Engineer, Game Developer, Using BlinkBoy'
Veteran
Joined
May 15, 2012
Messages
14,696
Reaction score
3,006
First Language
Tagalog
Primarily Uses
RMVXA
I think it was implied when they said that the following are the defaults (and by reading all the succeeding icon tags)... though making it more obvious is good... :)
 
Last edited by a moderator:

whosdat29

Veteran
Veteran
Joined
Feb 18, 2014
Messages
53
Reaction score
0
First Language
english
Primarily Uses
wow! this guide helps me a lot thanks man!!

just a question can you use different sprites for skill animation for one battler?
 

Glyxis

Villager
Member
Joined
Jun 19, 2013
Messages
20
Reaction score
1
First Language
Finnish
Primarily Uses
Hey. I just downloaded the Yami's  Battle Symphony script and i'm just getting used this Symphony Tag system. One thing is unclear to me: How i stop the walking animation while using bow, skill or whatever. It looks quite stupid when actor is walking and shooting the bow xD I really read almost all of this guide, but i can't figure it out.
 

nightmask

Warper
Member
Joined
Mar 6, 2014
Messages
1
Reaction score
0
First Language
Danish
Primarily Uses
I've followed the guide to the letter, but it doesn't seem to work for me. I get to step 3, and the imported Engineer battler (or Barbarian, for that matter) doesn't appear at all.

What makes it even stranger is that I found an old project with Battle Symphony v. 1.14, which works perfectly, but if I try to copy the contents to a new project, they don't work.

Does anyone have an idea about what could be wrong?
 

Candacis

Pixel Pusher
Restaff
Joined
May 2, 2012
Messages
1,495
Reaction score
2,099
First Language
German
Primarily Uses
The battle symphony side appears to be down or did they move it to somewhere else?
 

kerbonklin

Hiatus King
Veteran
Joined
Jan 6, 2013
Messages
1,728
Reaction score
282
First Language
English
Primarily Uses
RMMV
The battle symphony side appears to be down or did they move it to somewhere else?
Yami lost access to her blog so the most recent version is in the Ace Script thread for Symphony.
 

waywei66

Warper
Member
Joined
Mar 28, 2014
Messages
1
Reaction score
0
First Language
english
Primarily Uses
i use yami's battle symphony and holders battler but my guard pose don't works

how to fix this?
 

XPhater

Veteran
Veteran
Joined
Apr 27, 2014
Messages
129
Reaction score
32
First Language
english
Primarily Uses
Bumping this with a request.

The original manual (as well as this thread guide) does not mention the possibility for creating custom Icon Symbols (instead of weapon-weapon1/weapon2/shield/item) For example in Yami's multi-frame Bow example on his/her site, it is possible to use things like Bow1, Bow2, Bow3 as new sets of Icon Symbols, which is not even mentioned in the manual.

This usage of custom Icon Symbols is also required when using Tune4's "Different Icon IDs" when creating icons, otherwise it will either draw the same default skill/weapon/item icon, or end up drawing icon index 116 instead of your specified icon index to create.

Please add this into the guide if you can. (and in the meantime others can read this as well)
This is the problem I'm having, but I can't figure out how you're solving it.

icon create: user, item, bottom, 173

I'm trying to add a kick to a multihit attack, and put a boot into the animation cycle.  I even have a custom boot at ID 563, but none of the IDs work, no matter which number I input.  I've tried calling it weapon, weapon1, weapon2, shield, item.  All I get are the default skill icons, or weapon icons, or no icons at all.  Custom ID simply doesn't work for me, and I can't figure out why.

UPDATE! Strangly enough, on a whim I decided to call it "boot" and now it works, although he kicks him in the face and stabs him in the balls.  I would have preferred it to be the other way around but I'm gonna quit while I'm ahead here.

BRB changing my name to VXAhater
 
Last edited by a moderator:

Skygrinder

Villager
Member
Joined
Apr 30, 2014
Messages
5
Reaction score
0
First Language
English
Primarily Uses
Hello, I've run into a problem when I was creating a "Throw Bomb" skill.

This is what I typed in

<target action>

move user: forward, 10, wait

stance: user, item

icon create: user, item, hand, 187

icon throw user: target, 20, 60, wait

icon delete: user, item

animation 79: target, wait

skill effect: dmg, calc

move user: origin

stance: user, idle

 

However, the icon is not created, or thrown (moved) to the specified location. I should note that I'm using version 1.16c, rather than 1.15 used in this tutorial, in case that matters, I thought something could've been changed in the newer version that could maybe cause this. Anyway, I simply can't figure out where I'm making a mistake. Do you know what could be causing this?

 

Every other line works, but creation and movement of icon is completely ignored.
 
Last edited by a moderator:

XPhater

Veteran
Veteran
Joined
Apr 27, 2014
Messages
129
Reaction score
32
First Language
english
Primarily Uses
Hello, I've run into a problem when I was creating a "Throw Bomb" skill.

This is what I typed in

<target action>

move user: forward, 10, wait

stance: user, item

icon create: user, item, hand, 187

icon throw user: target, 20, 60, wait

icon delete: user, item

animation 79: target, wait

skill effect: dmg, calc

move user: origin

stance: user, idle

However, the icon is not created, or thrown (moved) to the specified location. I should note that I'm using version 1.16c, rather than 1.15 used in this tutorial, in case that matters, I thought something could've been changed in the newer version that could maybe cause this. Anyway, I simply can't figure out where I'm making a mistake. Do you know what could be causing this?

Every other line works, but creation and movement of icon is completely ignored.
just call it "bomb" instead of "item". there's no limit to the keywords you can use for icon designations.

icon create: user, bomb, hand, 187

then just refer to it as bomb in subsequent lines

icon throw user: target, 20, 60, wait

you need to make it say

icon throw user: target, bomb, 20, 60, wait
 
Last edited by a moderator:

Skygrinder

Villager
Member
Joined
Apr 30, 2014
Messages
5
Reaction score
0
First Language
English
Primarily Uses
Oh, I see. Thank you, that made it work.
 

XPhater

Veteran
Veteran
Joined
Apr 27, 2014
Messages
129
Reaction score
32
First Language
english
Primarily Uses
Hey, you guys know what? If you kill an enemy with a counterattack, your character doesn't return to origin. I tried putting follow actions for this in all the enemy noteboxes and it still doesn't happen. It's funny when you have a character that has a counterattack+ skill and gets 2 or 3 counters in a row, but it'd be nice to resolve this.

UPDATE!  I fixed this by adding

["AUTO SYMPHONY", ["RETURN ORIGIN"]],at the end of the stuff at line 291 in Battle Symphony.  I think Counter is hitting enemies twice, but it was doing that right from the start, and is another issue altogether.  I found a really big thread with Yami in it and several mentions of counter bugs, but apparently the first hit is very weak.  I set some skeletons to 600 HP and it took 2 separate counterhits at 350 each to kill them, so I can live with it I suppose.  Every other thread I found would get like 2 replies from people who didn't know what they were replying about, and then drop dead.
And another issue I just ran into, using holder battlers for animated enemies. They show up even when they are supposed to be hidden. "Appear Halfway" is set but holder battlers don't care.

That much, at least, is workaroundable by having the halfway guys set to a secondary invisible (aka non holder) image, then changing to the holder image just before they are supposed to appear.  Of course, this means that the imageless battlers in the Troops window are not only invisible, but 2x2 pixels big, and you have to click with a fine toothed comb mouse in order to move them around.

And the ones that appear halfway are facing the wrong direction until the next turn.  At least they're only Slimes, so it doesn't really matter which way they're facing.

UPDATE!  Well today I've been having lots of fun making holder sheets for one of my characters, but there will come points in time where she has a particular sword, or a particular outfit, and I'm wondering if it's possible to change which holder sheet a given character uses after the game has started?  Otherwise I'm looking at taking a variable to save her level and having different characters allocated for different holder sheets, but that would still rip you off of xp and be a pain in my ass.

UPDATE 2!  Ahh, found that particular addon to this particular addon here:

http://forums.rpgmakerweb.com/index.php?/topic/21511-symphony-change-holder/

UPDATE 3!  New issue!  When using a non-sprite battle (aka holder-ish battler instead), "stab" and "claw" no longer function.  I mean you can even set 10 swings with a stab halfway through and it will simply skip the stab altogether.  I quickly discovered that these two attack commands are only broken on characters that I have made holder battlesheets for.  Reverting those characters to their generic sprites was an instant fix to stab and claw.

GOOD NEWS, EVERYONE!  I went in and hashtagged everything that had to do with Stab, and began piecing together a new bit of coding inspired by the code above it for swing.

#when "STAB", "THRUST" #total_frames = 8 #direction = Direction.direction(target.pose) #direction = Direction.opposite(direction) if target.sprite.mirror #case direction #when 8 # icon_direction = 8 # icon.set_angle(-45) #when 4 # icon_direction = 4 # icon.set_angle(45) #when 6 # icon_direction = 6 # icon.set_angle(-135) #when 2 # icon_direction = 2 # icon.set_angle(135) #end #icon.create_move_direction(Direction.opposite(icon_direction), 40, 1) #icon.update #icon.create_move_direction(icon_direction, 32, total_frames)That all was the original code, but I made it green so it no longer counts.  Also these forums are colorblind.  This is what I replaced it with:
Code:
when "STAB"        total_frames = 8        direction = Direction.direction(target.pose)        direction = Direction.opposite(direction) if target.sprite.mirror        icon_direction = 4        icon.set_angle(45)      icon.create_move_direction(Direction.opposite(icon_direction), 40, 1)      icon.update      icon.create_move_direction(icon_direction, 32, total_frames)
So essentially, taking out the bit about determining which direction the actors are facing, fixes Stab (and presumably Claw also).  I guess this will be fine until I need an enemy to stab a player character.  Perhaps I will make claw be the enemy stab. However claw would be really useful if I ever decide to add Terry Bogard to my game.

i use yami's battle symphony and holders battler but my guard pose don't works

how to fix this?
 If you put

<setup action>stance: user, defend</setup action>in the Guard ability, it will work.  It doesn't seem to work with any other action tags.
Hopefully someday someone will benefit from all of my pain and suffering that I chronicle here.
 
Last edited by a moderator:

BaratSImpson

Warper
Member
Joined
May 4, 2014
Messages
4
Reaction score
0
First Language
English
Primarily Uses
Hello there. FIrst of all thank you for this wonderful script. I have been looking for a battle system to use for my game and I believe this is the best free one that I found. Noob question though, read through this and through the document manual but I can't seem to figure how to make ranged weapon attack properly. Right now whenever I have a bow equipped my actor will still hit the enemy in melee range so it's like he is using a melee weapon but with the crossbow icon.

PS. I am not using Holder animation. So part of the question is if it is possible without using holder add on/
 
Last edited by a moderator:

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

Latest Threads

Latest Profile Posts

Karen: Hi, I have a condition that prevents me from wearing a mask. :)

Employee: Can you tell me what it is?

Karen: >:(
Feeling a little overwhelmed... There are so many things to do.
- Building a simple website for portfolio
- Setup *******
- Manage social media
There are so many things inside of these tasks :(
Meet the cute little ghost, FhooFhoo. :kaopride:
If anyone here is looking for another high-potential RPGMaker game--besides She Dreams Elsewhere--be sure to follow Lawmage Academy. Good social media presence will take that game far.
Lol, I was about to write a small tutorial and realized it would belong to the MZ section ....that does not exist yet.

Forum statistics

Threads
99,575
Messages
966,825
Members
131,231
Latest member
Bektos
Top