设为首页收藏本站同能贴吧 切换语言 繁体中文
开启辅助访问 切换到窄版
扫描二维码关注官方公众号
返回列表
+ 发新帖
查看: 78|回复: 0

[制作教程] A Guide to Yami's 'Battle Symphony'

[复制链接]
累计送礼:
0 个
累计收礼:
1 个
  • TA的每日心情
    开心
    前天 04:10
  • 签到天数: 209 天

    连续签到: 2 天

    [LV.7]常住居民III

    4471

    主题

    864

    回帖

    2万

    积分

    管理员

    Rank: 9Rank: 9Rank: 9

    VIP
    7
    卡币
    22949
    OK点
    16
    推广点
    0
    同能卷
    50
    积分
    28314

    灌水之王

    发表于 前天 13:40 | 显示全部楼层 |阅读模式
    A Guide to Battle Symphony



     ​

    Author’s Notes:[/SIZE]

    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]

    Yami[/SIZE]

    Yanfly[/SIZE]

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

    Credits for this guide go to:[/SIZE]

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

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

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

    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



    • Introduction
    • Requirements and Preparation
    • Battlesheets
    • Symphony Tags
    • Basic Commands
    • Advanced Commands
    • Wrapping Things Up


    • 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.

    Omnislash Test[/SIZE] – 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

    *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:




    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: 'animation12: 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:




    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:




    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.




    “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:




    “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


    本贴来自国际rpgmaker官方论坛作者:BeardBro处,因国际论坛即将永久关站,为了存档多年珍贵资料,署名转载到本论坛存档,由于官方帖子为英文原帖,需要中文翻译请点击论坛顶部切换语言为中文就可以将帖子翻译成中文浏览,方便大家随时查看,原文地址:https://forums.rpgmakerweb.com/threads/a-guide-to-yamis-battle-symphony.19884/

    本帖子中包含更多资源

    您需要 登录 才可以下载或查看,没有账号?立即注册

    x
    天天去同能,天天有童年!
    回复 送礼论坛版权

    使用道具 举报

    文明发言,和谐互动
    文明发言,和谐互动
    高级模式
    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    简体中文
    繁體中文
    English(英语)
    日本語(日语)
    Deutsch(德语)
    Русский язык(俄语)
    بالعربية(阿拉伯语)
    Türkçe(土耳其语)
    Português(葡萄牙语)
    ภาษาไทย(泰国语)
    한어(朝鲜语/韩语)
    Français(法语)
    关闭

    幸运抽奖

    社区每日抽奖来袭,快来试试你是欧皇还是非酋~

    立即查看

    聊天机器人
    Loading...

    QQ|Archiver|手机版|小黑屋|同能RPG制作大师 ( 沪ICP备12027754号-3 )

    GMT+8, 2026-7-14 17:58 , Processed in 0.079329 second(s), 56 queries .

    Powered by Discuz! X3.4

    Copyright © 2001-2020, Tencent Cloud.

    快速回复 返回顶部 返回列表