Some Hidden YSA Battle System: Classical ATB Tips and Tricks
This post aims to let YSA Battle System: Classical ATB users knows some features and workarounds that aren't obvious to them, unless they've studied the scripts themselves. Readers are assumed to be familiar with non-scripting RMVXA usage, basic notetags and script calls usage and basic YSA Battle System: Classical ATB usage. Developer side hidden tips and tricks aren't the focus of this post.Level 1(Needing no scripting proficiency)
Spoiler1. Suggested Full Script List Ordering
1. Luna Engine(needed to pull the actor atb bars out of the status window; sample version should do the job):
2. Yanfly Engine Ace - Ace Core Engine(needed to fix the force action bug and ensure DoubleX RMVXA Percentage Addon to YSA Battle System: Classical ATB to work properly):
3. Yanfly Engine Ace - Ace Battle Engine(needed):
4. YSA Battle System: Classical ATB(needed):
4. YSA Battle Add-on: Lunatic CATB Start(optional):
5. YSA Battle Add-on: Lunatic CATB Rate(optional):
6. YSA Battle Add-on: Lunatic CATB Reset(needed if DoubleX RMVXA Reset Addon to YSA Battle Add-on: Lunatic CATB Reset is used):
8. DoubleX RMVXA Bug Fix to YSA Battle System: Classical ATB(needed to fix bugs):
9. Yanfly Engine Ace - Buff & State Manager(needed if DoubleX RMVXA Countdown Addon to YSA Battle System: Classical ATB is used):
10. DoubleX RMVXA Bug Fixes for Yanfly Engine Ace - Buff & State Manager(not needed if DoubleX RMVXA CATB Clear Addon Compatibility Fix is used and Luna Engine isn't used; needed if Luna Engine is used):
11. Yanfly Engine Ace - Skill Cost Manager(not needed but highly recommended if DoubleX RMVXA Action Addon to YSA Battle System: Classical ATB is used to display the action cost):
12. DoubleX RMVXA Compatibility Fix to YSA Battle System: Classical ATB(needed to fix compatibility issues with addressed scripts):
13. DoubleX RMVXA Action Addon to YSA Battle System: Classical ATB(optional):
14. DoubleX RMVXA ATB Addon to YSA Battle System: Classical ATB(optional):
15. DoubleX RMVXA Cancel Addon to YSA Battle System: Classical ATB(optional):
16. DoubleX RMVXA Clear Addon to YSA Battle System: Classical ATB(optional):
17. DoubleX RMVXA CATB Clear Addon Compatibility Fix(optional):
18. DoubleX RMVXA Cooldown Addon to YSA Battle System: Classical ATB(optional):
19. DoubleX RMVXA Charge Addon to YSA Battle System: Classical ATB(optional):
20. DoubleX RMVXA Speed Addon to YSA Battle System: Classical ATB(optional):
21. DoubleX RMVXA Countdown Addon to YSA Battle System: Classical ATB(optional):
22. DoubleX RMVXA Countdown Addon Compatibility Fix(optional):
23. DoubleX RMVXA Escape Addon to YSA Battle System: Classical ATB(optional):
24. DoubleX RMVXA Hotkey Addon to YSA Battle System: Classical ATB(optional):
25. DoubleX RMVXA Input Addon to YSA Battle System: Classical ATB(optional):
26. DoubleX RMVXA Percentage Addon to YSA Battle System: Classical ATB(optional):
27. DoubleX RMVXA Reset Addon to YSA Battle Add-on: Lunatic CATB Reset(optional):
28. DoubleX RMVXA SE Addon to YSA Battle System: Classical ATB(optional):
29. DoubleX RMVXA Tick Addon to YSA Battle System: Classical ATB(optional):
30. DoubleX RMVXA Turn Addon to YSA Battle System: Classical ATB(optional):
31. DoubleX RMVXA Unison Addon to YSA Battle System: Classical ATB(optional):
32. DoubleX RMVXA Update Addon to YSA Battle System: Classical ATB(optional):
33. DoubleX RMVXA Wait Addon to YSA Battle System: Classical ATB(optional):
P.S.: There's also Dhoom Manipulate State as a YSA Battle System: Classical ATB addon, although it isn't compatible with some of those made by mine:
2. Implicit Reverse ATB Feature(Approximate)
Spoilerhttps://www.youtube.com/watch?v=0w6lG5xfebE&index=26&list=PLp-0SJbFnYdw-laxpgITmo88EvluvBg2x
The following are needed:
1. Set DEFAULT_FILL_TIME as an extremely small value. In my case, it's 6.
2. Set the charge rate of every skill as an extremely small value. In my case, the charge rate of Attack is 1%.
3. To stop displaying the atb bar(but not charge nor cooldown bar), DoubleX RMVXA Color Addon to YSA Battle System: Classical ATB is needed. Set ATB_RGBA as true and both ATB_COLOR1 and ATB_COLOR2 as Color.new(0, 0, 0, 0).
3. Some Possibly Uninformed Info
Spoiler1. The maximum atb value is 100000.0
2. $game_system.set_battle_system
system) can be used to change the battle system from catb to any of those supported by Yanfly Engine Ace - Ace Battle Engine. The vice versa can also be done.
3. DoubleX RMVXA Percentage Addon to YSA Battle System: Classical ATB may cause a significant average fps drop on less powerful machines. Mine is i7-3820 + 2 * 2GB DDr3 1333 and the average fps dropped from roughly 119 to roughly 110.
Level 2(Needing little scripting proficiency)
Spoiler1. Some Uninformed Script Calls
1. battler.catb_filled_rate
Returns the battler's atb fill percent.
2. battler.catb_ct_filled_rate
Returns the battler's skill/item charge percent.
If DoubleX RMVXA Bug Fix to YSA Battle System: Classical ATB is used:
1. battler.catb_action_times
Returns the battler's number of action points.
If DoubleX RMVXA Cooldown Addon to YSA Battle System: Classical ATB is used:
1. battler.catb_cd_filled_rate
Returns the battler's cooldown percent.
If DoubleX RMVXA Escape Addon to YSA Battle System: Classical ATB is used:
1. battler.ct_catb_value = val
Sets the battler's skill/item charge percent as val / 100000.0
If DoubleX RMVXA Reset Addon to YSA Battle Add-on: Lunatic CATB Reset is used:
1. battler.reset_value
Returns the battler's atb reset value used when that battler's atb's reset
2. battler.reset_value = val
Sets the battler's atb reset value used when that battler's atb's reset as val
2. Some Uninformed YSA Battle Add-on: Lunatic CATB Rate Usages
Spoiler1. Its notetags can be used on actors' skills as well. If an actor's skill list has skills having the notetags, those notetags will be effective as well.
2. Severe average fps drop can take place if an actor's an extremely long skill list. This can be remedied by not letting those notetags to be applicable to skills:
def lunatic_catb_rate_formula formulas = [] formulas = self.actor.catb_rate + self.class.catb_rate if self.actor? formulas = self.enemy.catb_rate if self.enemy? value = real_gain_catb value_percent = 100 if self.actor? if self.equips self.equips.each { |a| formulas += a.catb_rate if a } end # Delete this part if self.skills self.skills.each { |a| formulas += a.catb_rate if a } end # end states.each { |state| formulas += state.catb_rate } # The rest of the codes
Similarly:
self.actor.catb_rate refers to the notetags in the Actor's notebox
self.class.catb_rate refers to the notetags in the Class's notebox
self.enemy.catb_rate refers to the notetags in the Enemy's notebox
if self.equipsself.equips.each { |a| formulas += a.catb_rate if a } endrefers to the notetags in the Weapon and Armor's notebox
states.each { |state| formulas += state.catb_rate } refers to the notetags in the State's notebox
Level 3(Needing some scripting proficiency)
Spoiler1. Some Extended YSA Battle Add-on: Lunatic CATB Rate Usages
1. Adding new notetag string types(needing basic regular expression knowledge)
For example:
for formula in formulas case formula.upcase # Add this to implement a new notetag string type #---------------------------------------------------------------------- # Custom Notetag String #---------------------------------------------------------------------- when CUSTOM_REGEX does_custom_stuffs # #---------------------------------------------------------------------- # ATB Rate Formula No.1: BOOST PERCENT # - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - # Boost ATB rate by x percents. # # Formula notetag: # <custom catb rate: boost percent x%> #---------------------------------------------------------------------- when /BOOST PERCENT[ ](\d+)([%?])/i value_percent *= 1 + $1.to_i / 100.0 # The rest of the codes
This can also be used on YSA Battle Add-on: Lunatic CATB Reset and YSA Battle Add-on: Lunatic CATB Start.
2. Variable atb gain value per frame
It can be done as the atb gain value per frame is always reevaluated per frame as long as the atb's refilling.
For example, to have a 10% variance from using the <custom catb rate: boost percent x%> notetags
Spoiler#---------------------------------------------------------------------- # ATB Rate Formula No.1: BOOST PERCENT # - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - # Boost ATB rate by x percents. # # Formula notetag: # <custom catb rate: boost percent x%> #---------------------------------------------------------------------- when /BOOST PERCENT[ ](\d+)([%?])/i value_percent += ($1.to_i - 10 + (rand + rand) * 10) / 100.0
3. Doing completely unrelated stuffs
For example:
Spoilerdef lunatic_catb_rate_formula # Add this does_completely_unrelated_stuffs # formulas = [] # The rest of the codes
This can also be used on YSA Battle Add-on: Lunatic CATB Reset and YSA Battle Add-on: Lunatic CATB Start.
2. Some Extended DoubleX RMVXA ATB Addon to YSA Battle System: Classical ATB Usages
Spoiler1. Doing completely unrelated stuffs
For example
Read #3)
http://forums.rpgmakerweb.com/index.php?/topic/29505-doublex-rmvxa-atb-addon-to-ysa-battle-system-classical-atb/
3. Implicit Reverse ATB Feature(Real)
Spoilerhttps://www.youtube.com/watch?v=0w6lG5xfebE&index=26&list=PLp-0SJbFnYdw-laxpgITmo88EvluvBg2x
The following are needed:
1. Set DEFAULT_FILL_TIME as 1.
2. Use DoubleX RMVXA ATB Addon to YSA Battle System: Classical ATB. Set CATB_GAIN_MODIFIER as:
"charge = max_catb_value? && @ct_catb_value < MAX_CATB_VALUE; charge &&= current_action && current_action.item && (!actor? || current_action.confirm) && current_action.item.charge_on; charge ? charge_gain_modifier / original_default_fill_time : 1"
Where charge_gain_modifier is a desirable reverse atb gain rate modifier set by you and original_default_fill_time is a desirable default reverse atb gain rate modifier set by you.
3. To stop displaying the atb bar(but not charge nor cooldown bar), DoubleX RMVXA Color Addon to YSA Battle System: Classical ATB is needed. Set ATB_RGBA as true and both ATB_COLOR1 and ATB_COLOR2 as Color.new(0, 0, 0, 0).
本贴来自国际rpgmaker官方论坛作者:DoubleX处,因国际论坛即将永久关站,为了存档多年珍贵资料,署名转载到本论坛存档,由于官方帖子为英文原帖,需要中文翻译请点击论坛顶部切换语言为中文就可以将帖子翻译成中文浏览,方便大家随时查看,原文地址:https://forums.rpgmakerweb.com/threads/some-hidden-ysa-battle-system-classical-atb-tips-and-tricks.38568/
页:
[1]