DoubleX

unison
DoubleX RMVXA Unison Skills/Items

12 posts in this topic

Compatibility Fix

DoubleX RMVXA Unison Item Compatibility Fix

 

Script name

DoubleX RMVXA Unison Skills/Items

 

Author

DoubleX

 

Terms of use

None other than not claiming this script as created by anyone except DoubleX or his alias

 

Introduction

Allows users to create unison skills or items for actors

 

 

#------------------------------------------------------------------------------|
#  * Notetag <unison item: x> for skills and items:                            |
#    x is the list of id of actors needed for the skill or item. For instance: |
#    - <unison item: 1> means actor with id 1 is required to use it            |
#    - <unison item: 4, 2> means actors with id 4 and 2 are needed to use it   |
#    All actors in list x needs to be in the battle, inputable, able to use it |
#    and pay its cost. They'll all pay the cost after using it. Only actors in |
#    list x can select it.                                                     |
#------------------------------------------------------------------------------|
#  * Notetag <unison rule: x> for skills and items:                            |
#    x is the rule of setting parameters used in the damage formula of the     |
#    skill or item. Notetag setting overrides the universal UNISON_PARAM_RULE. |
#    This notetag doesn't work if <unison item: x> is absent or x is nil.      |
#------------------------------------------------------------------------------|
#  * Notetag <unison param: x> for skills and items:                           |
#    x is the list of id of actors needed for the skill or item and stat is    |
#    parameters used in its damage formula. For instance:                      |
#    - <unison atk: 1> means atk in its damage formula uses atk of actor with  |
#      id 1                                                                    |
#    - <unison mat: 4, 2> means mat in its damage formula uses mat of actors   |
#      with id 4 and 2 under unison rule specified in <unison rule: x> notetag |
#    param can be hp, mp, tp, level, mhp, mmp, atk, def, mat, mdf, agi or luk. |
#------------------------------------------------------------------------------|

#==============================================================================|
#  ** You only need to edit this part as it's about what this script does      |
#------------------------------------------------------------------------------|

module DoubleX_RMVXA
  module Unison_Item

#------------------------------------------------------------------------------|
#  * SHOW_UNISON_ACTOR, default = true                                         |
#    The battlelog will show all actors involved in the unison skills or items |
#    instead of only the one invoking them if SHOW_UNISON_ACTOR is true.       |
#------------------------------------------------------------------------------|
  SHOW_UNISON_ACTOR = true

#------------------------------------------------------------------------------|
#  * UNISON_PARAM_RULE, default = 2                                            |
#    Each parameter in the damage formula of the unison skills or items used   |
#    will be altered by one of the rules below if there's no working notetag:  |
#    0 - No changes will take place                                            |
#    1 - Its minimum among all actors involved in the unison skills or items   |
#        used will be used in their damage formulae                            |
#    2 - Its average among all actors involved in the unison skills or items   |
#        used will be used in their damage formulae                            |
#    3 - Its maximum among all actors involved in the unison skills or items   |
#        used will be used in their damage formulae                            |
#------------------------------------------------------------------------------|
  UNISON_PARAM_RULE = 2

  end # Unison_Item
end # DoubleX_RMVXA

#==============================================================================|

 

 

 

Video

http://www.youtube.com/watch?v=mWhN18Fg8og

 

Features

Use of notetags(needs knowledge of notetag usage) to set specific skills or items needing specific actors and using specific parameter rules in their damage formulae in notetags in these skills or items' notebox

 

Instructions

Open the script editor and put this script into an open slot between Materials and Main. Save to take effect.

 

Compatibility

Scripts rewriting or aliasing method:

- load_database under DataManager

- param, inputable? or usable? under Game_BattlerBase

- make_damage_value or use_item under Game_Battler

- clear_actions or next_command under Game_Actor

- enable? under Window_ItemList

- display_use_item under Window_BattleLog

- start, next_command, prior_command or turn_start under Scene_Battle

may have compatibility issues with this script
Place this script above those aliasing any of these methods if possible

 

FAQ

None

 

Changelog

v1.01d(GMT 0300 21-7-2015):

- Increased this script's effectiveness, efficiency and flexibility

v1.01c(GMT 0900 1-6-2014):

- Fixed unison item not invoking common event bug

v1.01b(GMT 0030 13-2-2014):

- Fixed nil @input_actor and @unison_actor bug

v1.01a(GMT 0700 7-2-2014):

- Added <unison param: x> notetag

v1.00e(GMT 0300 26-1-2014):

- Fixed nil, non-skill and non-item item bug

v1.00d(GMT 0500 24-1-2014):
- Fixed Action Times+ Bug

v1.00c (GMT 0900 16-1-2014):

- Unison skills and items can only be selected by their unison actors

v1.00b (GMT 1300 15-1-2014):

- Fixed $game_actors[actor_id] with actor_id equals nil bug

v1.00a (GMT 0600 15-1-2014):

- 1st version of this script finished

 

(DoubleX)Unison Item v1.01d.txt

Edited by DoubleX

Share this post


Link to post
Share on other sites

By the gods, someone finally did it!  A non-Victor Unison Skill script.  If I wasn't so tired right now I'd do more tests and dance for joy at the successes!  Good job!

 

Edit: I couldn't resist, and I managed to break it.  Got the following error, tho I'm not sure if it'll help much.

script 'Game_Actors' line 19: TypeError occurred.

no implicit conversion from nil to integer.

 

Easiest way to get it would be to have to actors, get to the 2nd actor's turn to choose actions, and go back and it'll crash just before the Fight/Escape Party Command.  Or on your 2nd turn as a solo actor, go back to the Party command and you get the same error.

Edited by Selchar

Share this post


Link to post
Share on other sites

Updates

v1.00b (GMT 1300 15-1-2014):

- Fixed $game_actors[actor_id] with actor_id equals nil bug

 

Bug Causes:

 

 

It's merely due to my complete misunderstanding to the meaning of nil?(I thought an empty array.nil was true but in fact it's false). This just clearly shows how utterly incompetent I'm :) (I'm just a nub pretending to be a pro XD)

 

 

Edited by DoubleX

Share this post


Link to post
Share on other sites

Thanks DoubleX for doing my request. Looking forward to more of your work.

Gona test it with my project and see what else needs to be done because I use YEA and Symphony (and a few others too!)

 

Edit- Went to use a potion in battle and it errored or line 191?

Edited by ShinGamix

Share this post


Link to post
Share on other sites

Updates

v1.00c (GMT 0900 16-1-2014):

- Unison skills and items can only be selected by their unison actors

 

Thanks DoubleX for doing my request. Looking forward to more of your work.

Gona test it with my project and see what else needs to be done because I use YEA and Symphony (and a few others too!)

 

Edit- Went to use a potion in battle and it errored or line 191?

It seems that I didn't have this error on a project that doesn't have any other custom scripts. Do you have any other custom scripts when you had this error? May you list them all with the ordering in your projects if any? May you also describe the error more elaborately?

 

About compatibility with YES, I don't know if the below video has what you want:

http://www.youtube.com/watch?v=1DnyR4SZUa4&feature=youtu.be

Put DoubleX RMVXA Unison Skills/Items below all other scripts but above Main in Yami Engine Symphony v1.15 Demo.
Useful term in symphony tags: $game_actors[x], actor with id x.

Symphony tags of Quad-Destruction in the video:

 

 

<whole action>
immortal: targets, true
move $game_actors[1]: forward, wait
move $game_actors[2]: forward, wait
pose: $game_actors[1], cast
pose: $game_actors[2], cast
stance: $game_actors[1], cast
stance: $game_actors[2], cast
animation 81: $game_actors[1], wait
animation 81: $game_actors[2], wait
icon create: $game_actors[1], weapon
icon create: $game_actors[2], weapon
</whole action>

<target action>
pose: $game_actors[1], 2h swing
pose: $game_actors[2], 2h swing
stance: $game_actors[1], attack
stance: $game_actors[2], attack
icon: $game_actors[1], weapon, swing
icon: $game_actors[2], weapon, swing
animation 65: target
ani wait: 3
skill effect: dmg
wait for animation
</target action>

<follow action>
animation 81: $game_actors[1], wait
animation 81: $game_actors[2], wait
pose: $game_actors[1], 2h swing
pose: $game_actors[2], 2h swing
stance: $game_actors[1], attack
stance: $game_actors[2], attack
icon: $game_actors[1], weapon, swing
icon: $game_actors[2], weapon, swing
animation 68: targets
ani wait: 2
skill effect: whole
ani wait: 2
skill effect: whole
ani wait: 2
skill effect: whole
ani wait: 2
skill effect: whole
immortal: targets, false
</follow action>

 

 

Edited by DoubleX

Share this post


Link to post
Share on other sites

Updates

v1.01b(GMT 0030 13-2-2014):

- Fixed nil @input_actor and @unison_actor bug

v1.01a(GMT 0700 7-2-2014):

- Added <unison param: x> notetag

v1.00e(GMT 0300 26-1-2014):

- Fixed nil, non-skill and non-item item bug

v1.00d(GMT 0500 24-1-2014):
- Fixed Action Times+ Bug

Edited by DoubleX

Share this post


Link to post
Share on other sites

Thanks for this great script! Like others have said, great job on doing something that was sorely needed!

 

I am trying to use your script with Symphony. I am working in the 1.15 demo to test it and I cannot get the $game_actors[x] term to work correctly at all. Is that a valid term? I don't know, I have tried your script below and above Symphony and YEA. To see it for yourself, make a four actor party and set up a custom unison skill between actor 1 and 4, for example, and see what happens when it's run. Specific actors can't do skills with each other, unfortunately, in Symphony.

 

Is this fixable? I am wondering if anyone else has had this problem or found a solution.

Share this post


Link to post
Share on other sites

Thanks for this great script! Like others have said, great job on doing something that was sorely needed!

 

I am trying to use your script with Symphony. I am working in the 1.15 demo to test it and I cannot get the $game_actors[x] term to work correctly at all. Is that a valid term? I don't know, I have tried your script below and above Symphony and YEA. To see it for yourself, make a four actor party and set up a custom unison skill between actor 1 and 4, for example, and see what happens when it's run. Specific actors can't do skills with each other, unfortunately, in Symphony.

 

Is this fixable? I am wondering if anyone else has had this problem or found a solution.

You're right, Symphony 1.15 doesn't support $game_actors[x] and that script will read it as actors. This again shows how utterly incompetent I'm XD

I've updated DoubleX RMVXA Unison Skills/Items Compatibility Fix to fix this, so DoubleX RMVXA Unison Skills/Items now requires that script to be compatible with Symphony 1.15:

http://www.rpgmakervxace.net/topic/21267-doublex-rmvxa-unison-skillsitems-compatibility-fix/?p=146950

Added a new symphony tag in Yami Engine Symphony - Battle Symphony: unison x, game actor with id x(i.e., $game_actors[x])

Or you can use DoubleX RMVXA Tag Addon to Yami Engine Symphony - Battle Symphony if you know how to play with symphony tags:

http://www.rpgmakervxace.net/topic/22409-doublex-rmvxa-tag-addon-to-yami-engine-symphony-battle-symphony/

Edited by DoubleX
Venetian Gondolier likes this

Share this post


Link to post
Share on other sites

Haha, thank you very much. Your fix works correctly! A solid fix for an incompetent scripter. :P At first I was confused by your instructions and I won't pretend to know what to do with your add-on yet, but it is working for me now.  I still need to play around with it awhile.

 

I've cleaned your earlier symphony tag demonstration up, too. It's a bit rough but it shows the right term use. (Don't quote me on it.)

 

 

 

<whole action>
immortal: targets, true
move unison 1: forward, wait
move unison 2: forward, wait
pose: unison 1, cast
pose: unison 2, cast
stance: unison 1, cast
stance: unison 2, cast
animation 81: unison 1, wait
animation 81: unison 2, wait
icon create: unison 1, weapon
icon create: unison 2, weapon
</whole action>

<target action>
pose: unison 1, 2h swing
pose: unison 2, 2h swing
stance: unison 1, attack
stance: unison 2, attack
icon: unison 1, weapon, swing
icon: unison 2, weapon, swing
animation 65: target
ani wait: 3
skill effect: dmg
wait for animation
</target action>

<follow action>
animation 81: unison 1, wait
animation 81: unison 2, wait
pose: unison 1, 2h swing
pose: unison 2, 2h swing
stance: unison 1, attack
stance: unison 2, attack
icon: unison 1, weapon, swing
icon: unison 2, weapon, swing
animation 68: targets
ani wait: 2
skill effect: whole
ani wait: 2
skill effect: whole
ani wait: 2
skill effect: whole
ani wait: 2
skill effect: whole
immortal: targets, false
</follow action>

 

 

 

Thanks for tackling this project again, DoubleX. Kudos and credit well earned and deserved!

 

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!


Register a new account

Sign in

Already have an account? Sign in here.


Sign In Now

  • Recently Browsing   0 members

    No registered users viewing this page.