DoubleX RMMV Popularized ATB Core

0 Members and 1 Guest are viewing this topic.

***
Scripter
Rep:
Level 33
Changelog
Code: [Select]
*      v1.03a(GMT 1200 26-8-2017):                                           
 *      1. Added no_prior_actor                                               
 *      v1.02d(GMT 1500 13-8-2017):                                           
 *      1. Increased this plugin's extensibility, modularity and robustness   
 *      v1.02c(GMT 0500 11-8-2017):                                           
 *      1. Fixed the 1st actor becoming inputable not performing the waiting 
 *         pose bug                                                           
 *      v1.02b(GMT 0500 17-9-2016):                                           
 *      1. Fixed max_linked_input_actors not working when there are 3+       
 *         inputable actors at the same time with no one having Action Times +
 *      2. Lets you set max_linked_input_actors as negative to disable it     
 *      v1.02a(GMT 0600 20-8-2016):                                           
 *      1. Added max_linked_input_actors                                     
 *      v1.01f(GMT 1400 12-8-2016):                                           
 *      1. Fixed empty atb_bar_text being converted to 0 bug                 
 *      2. PATB notetags won't be loaded more than once per game execution   
 *      3. Increased this plugin's effectiveness, efficiency and simplicity   
 *      v1.01e(GMT 0500 15-7-2016):                                           
 *      1. Upgraded to support the latest version of PATB Order               
 *      2. Increased this plugin's effectiveness, efficiency and readibility 
 *      v1.01d(GMT 0800 19-6-2016):                                           
 *      1. Fixed maximum atb value being possible to be nonpositive bug       
 *      v1.01c(GMT 1000 5-6-2016):                                           
 *      1. Fixed not updating unmovable battlers' max atb and countdown states
 *      2. Improved this plugin's effectiveness, efficiency and readibility   
 *      v1.01b(GMT 1400 31-5-2016):                                           
 *      1. Fixed the unmovable battlers having nonempty atb bug in start addon
 *      2. Improved this plugin's effectiveness, efficiency and readibility   
*      v1.01a(GMT 0300 20-2-2016):                                           
 *      1. Lets users set whether actor atb bar will be shown on status window
 *      2. Fixed inactive actor command window not being closed immediately   
 *      3. Fixed not refreshing the inputable actor upon confirming input bug
 *      v1.00d(GMT 0400 7-2-2016):                                           
 *      1. Fixed not updating the status window when executing actions bug   
 *      2. Fixed actor input windows not deactivating upon being uninputable 
 *      3. Fixed forbidden party escape freezing the party command window bug
 *      4. Loosens the coupling between core, charge, cooldown and speed addon
 *      5. Removed some excessive couplings and added some code documentations
 *      v1.00c(GMT 1000 31-1-2016):                                           
 *      1. Fixed not updating the battler atb rate due to changing the battler
 *         agi without changing the base atb rate bug                         
 *      2. Fixed not refreshing actor atb bar upon reset with delay fill mode
 *      3. Fixed not updating the status window when executing actions bug   
 *      v1.00b(GMT 0900 27-1-2016):                                           
 *      1. Fixed active hidden actor command window after closing all windows
 *      2. Fixed not updating status windos and incorrect actor window x     
 *         position in unavailable battle system codes                       
 *      3. Fixed actor not able to execute autobattle/confusion actions with 
 *         max atb value notetag used                                         
 *      4. Fixed actor not able to do anything if becoming autobattle or     
 *         restricted when inputable bug                                     
 *      5. max_atb_val must be at least 10000 times larger than 2 ^ -52       
 *      6. atb gain rate must be at least 2 ^ -52 * max atb value * 100 per   
 *         frame                                                             
 *      7. Confused battlers can execute confused actions ahortly after       
 *         removing confusion                                                 
 *      8. Next/prior command can cause actor selections to appear chaotic   
 *      9. The battle turn clock can be disabled as using an unavailable unit
 *      10. Increased this plugin's compatibility, modularity and readability
 *      v1.00a(GMT 0400 23-1-2016):                                           
 *      1. Outsourced the ctb feature to the CTB addon                       
 *      2. Fixed same name patb_rate for both a property setter and function 
 *      3. Fixed actors added during battles having unitiailized atb statuses
 *      4. Fxied undefined textWidth in draw_actor_patb bug                   
 *      5. Fixed trying to read meta from null equip bug                     
 *      6. Fixed undefined this_ and patb_color due to typo bug               
 *      7. Fixed unitialized max atb value upon battle start bug             
 *      8. Fixed executing next action before finishing the current one bug   
 *      9. Fixed actor window not completely covering status window bug       
 *      10. Actor poses can be chaotic when actor input actions or battle ends
 *      11. Added some missing documentations                                 
 *      12. Incrased this plugin's compactness, modularity and simplicity     
 *      13. 1st completed version of this plugin finished                     
 *      v0.00g(GMT 1400 30-12-2015):                                         
 *      1. Fixed undefined data in Game_Battler.prototype.patb_note_data bug 
 *      2. Fixed used the undefined any instead of some function for Array bug
 *      3. Fixed missed return in Array filter function bug                   
 *      4. Increased this plugin's compactness, modularity and readability   
 *      v0.00f(GMT 1200 9-12-2015):                                           
 *      1. Fixed concat the active flag of the actor command window instead of
 *         the window itself                                                 
 *      2. Fixed not refreshing the actor atb bars upon resetting atb values 
 *      3. Updated some outdated documentations                               
 *      4. Increased this plugin's extensibility, modularity and readability   
 *      v0.00e(GMT 1300 29-11-2015):                                         
 *      1. Fixed not refreshing all input windows upon turn end               
 *      2. Fixed not returning the reevaluated sum of all battlers' agi       
 *      3. Fixed not clearing the sum of all battlers' agi upon battle start 
 *      4. Fixed not raising refresh and update flags upon battler atb reset 
 *      5. Fixed undefined updateEvent due to typo                           
 *      6. Fixed duplicate battle event updates upon turn end                 
 *      7. Fixed resetting atb always clearing the atb values on restrict     
 *      8. Added atb_rate_code abs_agi                                       
 *      9. Updated some outdated documentations                               
 *      10. Increased this plugin's extensibility, modularity and robustness 
 *      v0.00d(GMT 0100 27-11-2015):                                         
 *      1. Exposed more easy, simple and user-friendly plugin calls           
 *      2. Increased this plugin's efficiency and user-friendliness           
 *      v0.00c(GMT 1400 24-11-2015):                                         
 *      1. Fixed database falsely returning database not loaded on game start
 *      2. Fixed BattleManager properties falsely belonging to Game_Battler   
 *      3. Fixed undefined this when raising the battler's refresh flags     
 *      4. Fixed are_patb_battler_changed not referenced by this due to typo 
 *      5. Fixed atb bars not drawing properly due to note passing fill rate 
 *      6. Invalid configuration and/or notetag values will log error messages
 *      7. The param descriptions and plugin help become more helpful to users
 *      8. Increased this plugin's extensibility, readability and robustness 
 *      v0.00b(GMT 0000 24-11-2015):                                         
 *      1. Fixed changing max atb value not rechecking battler actability     
 *      2. Fixed null this when reading <operator max patb val: val> notetag 
 *      3. Fixed update state turns not working in the default battle system 
 *      4. Fixed description, params and help not loading due to typo         
 *      5. Fixed battler atb clock update not triggering due to typo         
 *      6. Fixed action set item passing the null argument due to typo       
 *      7. Fixed undefined function error when updating atb frame due to typo
 *      8. Fixed failed party escape not resetting actors' atb values in delay
 *      9. Fixed passing wrong color argument type when drawing actor atb bars
 *      10. Simplified operator in <operator max patb val: val>               
 *      11. Increased this plugin's efficiency, extensibility and modularity 
 *      v0.00a(GMT 1600 22-11-2015):                                         
 *      1. 1st testing version of this plugin finished                       

Authors
DoubleX

Credits
DoubleX(Optional)

Purpose
To be an easy, simple and user-friendly, yet powerful atb system
Serves as the core plugin implementing all atb system essentials

Patches
PATB Patch(Cinnamon)

Addons
DoubleX RMMV Popularized ATB Bar
DoubleX RMMV Popularized ATB Charge
DoubleX RMMV Popularized ATB Clock
DoubleX RMMV Popularized ATB Cooldown
DoubleX RMMV Popularized ATB CTB
DoubleX RMMV Popularized ATB Countdown
DoubleX RMMV Popularized ATB Delay
DoubleX RMMV Popularized ATB Event
DoubleX RMMV Popularized ATB Force
DoubleX RMMV Populairzed ATB Hotkey
DoubleX RMMV Popularized ATB Order
DoubleX RMMV Popularized ATB Rate
DoubleX RMMV Popularized ATB Reset
DoubleX RMMV Popularized ATB SE
DoubleX RMMV Popularized ATB Start
DoubleX RMMV Popularized ATB Turn

Compatibility Fix
DoubleX RMMV Popularized ATB Compatibility

Games using this plugin
None so far

Configurations
Code: [Select]
* @param battle_system_code
 * @desc Sets the code indicating if ATB or the default battle system will be
 *       used as battle_system_code
 *       Available codes for battle_system_code:
 *       atb - ATB will be used
 *       The default battle system will be used if battle_system_code doesn't
 *       return any available code
 *       battle_system_code must not be changed from the available codes to the
 *       unavailable ones during the same battle(the same for the vice versa) or
 *       this plugin will fail extremely badly
 * @default atb
 *
 * @param base_fill_time
 * @desc Sets the base atb fill time from empty to full as base_fill_time
 *       seconds
 *       base_fill_time must return a Number and should return a positive one
 * @default 5
 *
 * @param turn_unit_code
 * @desc Sets the code of the unit of the battle turn clock as turn_unit_code
 *       Available code for the unit of the battle turn clock:
 *       act - Number of executed actions
 *       sec - Seconds
 *       The battle turn clock won't run if turn_unit_code doesn't return an
 *       available code
 * @default sec
 *
 * @param max_turn_unit
 * @desc Sets the maximum battle turn clock unit as max_turn_unit
 *       max_turn_unit must return a Number and should return a positive one
 * @default 5
 *
 * @param wait_cond_code
 * @desc Sets the atb wait condition code as wait_cond_code
 *       Available atb wait condition codes:
 *       full - Wait only when a message's showing or an event's running
 *       act - Wait when an action's executing as well
 *       target - Wait when the target selection window's shown as well
 *       item - Wait when the skill/item selection window's shown as well
 *       "Wait when players can input actions as well" will be used if
 *       wait_cond_code doesn't return any available code
 *       Only 1 battler can execute actions at a time
 *       Only 1 action can be executed at a time
 * @default full
 *
 * @param atb_fill_code
 * @desc Sets the atb fill code as atb_fill_code
 *       Available atb fill code:
 *       delay - Lets battlers input actions when that battler's atb's empty
 *               Refills that battler's atb right after executing actions
 *       If atb_fill_code doesn't return an available atb fill code, "Lets
 *       battlers input and execute actions when the battler's atb's full and
 *       empties the battler's atb right after executing actions" will be used
 *       atb_fill_code should return the same code during the same battle to
 *       ensure proper atb fillings and action executions
 * @default fill
 *
 * @param max_atb_val
 * @desc Sets the minimum atb value regarded as overlay(also the maximum atb
 *       value displayed on the atb bars) with atb fill code delay, and the
 *       maximum atb value with other codes, as max_atb_val
 *       max_atb_val must return a nonzero Number and should return a positive
 *       one
 *       max_atb_val should return the same value during the same battle to
 *       ensure proper atb fillings and action executions
 *       max_atb_val must be at least 10000 times larger than 2 ^ -52
 * @default 100
 *
 * @param atb_rate_code
 * @desc Sets the atb refill rate code as atb_rate_code
 *       Available atb refill rate codes:
 *       abs_agi - agi
 *       agi - agi * max_atb_val / base_fill_time / 60
 *       avg_agi - (formula in agi) / average of all alive battlers' agi
 *       The fps is assumed to be always 60
 *       If atb_rate_code returns an unavailable atb refill rate code, it'll be
 *       the same as avg_agi, except BattleManager.patb_avg_agi will always be
 *       reevalauted when it can change instead of just upon battle start
 *       atb gain rate must be at least 2 ^ -52 * max atb value * 100 per frame
 * @default update_avg_agi
 *
 * @param atb_start_code
 * @desc Sets the starting atb value code as atb_start_code
 *       The starting atb value is always 0 for:
 *       - unmovable battlers with non-delay atb fill code
 *       - actors with non-delay atb fill code and start type as surprise
 *       - enemies with non-delay atb fill code and start type as preemptive
 *       - actors with atb fill code delay and start type as preemptive
 *       - enemies with atb fill code delay and start type as surprise
 *       The starting atb value is always max_atb_val for:
 *       - unmovable battlers with atb fill code delay
 *       - actors with non-delay atb fill code and start type as preemptive
 *       - enemies with non-delay atb fill code and start type as surprise
 *       - actors with atb fill code delay and start type as surprise
 *       - enemies with atb fill code delay and start type as preemptive
 *       Available starting atb value code for normal start:
 *       agi - max_atb_val * agi / max agi in non-delay atb fill code
 *             max_atb_val * (1 - agi / this.paramMax(6)) in atb fill code
 *             delay
 *       The starting atb value will be 0 and max_atb_val in non-delay and
 *       delay atb fill code respectively if atb_start_code doesn't return an
 *       available starting atb value code for normal starts
 * @default agi
 *
 * @param atb_reset_code
 * @desc Sets the code of the reset atb mechanism as atb_reset_code for
 *       additional effects
 *       It'll only be used with non-delay atb_reset_code
 *       The atb refill will always be freezed while not movable
 *       Available code for the atb reset mechanism for additional effects:
 *       clear - The atb will be emptied when becoming unmovable as well
 *       No additional effects will trigger if atb_reset_code doesn't return
 *       an available code
 * @default clear
 *
 * @param max_linked_input_actors
 * @desc Sets the maximum number of inputable actors that can proceed
 *       inputting actions without any of them actually starting to charge
 *       or execute any inputted ones as max_linked_input_actors
 *       max_linked_input_actors should return the same value during the
 *       same battle
 *       Setting max_linked_input_actors as negative will disable this feature
 *       This feature doesn't work well with any inputable actor having Action
 *       Times +
 *       Disabling this feature for available wait_cond_code is recommended
 * @default 0
 *
 * @param no_prior_actor
 * @desc (v1.03a+)Sets the previous command that would go to the previous(in
 *       terms of party member index) inputable actor to go to the party command
 *       window instead
 *       Enabling this feature's recommended only with the hotkey addon
 * @default false
 *
 * @param show_atb_bars
 * @desc Sets the actor atb bars to be shown on the status window if
 *       show_atb_bars is true
 *       show_atb_bars should return the same value during the same battle to
 *       ensure proper status window display
 * @default true
 *
 * @param actor_name_w
 * @desc Sets the maximum width allocated for actor name display on the status
 *       window as actor_name_w
 *       actor_name_w must return a positive Number
 * @default 123
 *
 * @param actor_icon_ox
 * @desc Sets the actor icon display area x offset relative to the actor name
 *       display area on the status window as actor_icon_ox
 *       actor_icon_ox must return a positive Number
 * @default 6
 *
 * @param hp_bar_ox
 * @desc Sets the actor hp bar display area x offset relative to the actor icon
 *       display area on the status window as hp_bar_ox
 *       hp_bar_ox must return a positive Number
 * @default 6
 *
 * @param hp_bar_w
 * @desc Sets the maximum width allocated for actor hp bar display on the status
 *       window as hp_bar_w
 *       hp_bar_w must return a positive Number
 * @default 87
 *
 * @param mp_bar_ox
 * @desc Sets the actor mp bar display area x offset relative to the actor hp
 *       bar display area on the status window as mp_bar_ox
 *       mp_bar_ox must return a positive Number
 * @default 6
 *
 * @param mp_bar_w
 * @desc Sets the maximum width allocated for actor mp bar display on the status
 *       window as mp_bar_w
 *       mp_bar_w must return a positive Number
 * @default 87
 *
 * @param tp_bar_ox
 * @desc Sets the actor tp bar display area x offset relative to the actor mp
 *       bar display area on the status window as tp_bar_ox
 *       tp_bar_ox must return a positive Number
 * @default 6
 *
 * @param tp_bar_w
 * @desc Sets the maximum width allocated for actor tp bar display on the status
 *       window as tp_bar_w
 *       tp_bar_w must return a positive Number
 * @default 87
 *
 * @param atb_bar_ox
 * @desc Sets the actor atb bar display area x offset relative to the actor
 *       mp/tp bar display area on the status window as atb_bar_ox
 *       atb_bar_ox must return a positive Number
 * @default 6
 *
 * @param atb_bar_w
 * @desc Sets the maximum width allocated for actor atb bar display on the
 *       status window as atb_bar_w
 *       atb_bar_w must return a positive Number
 * @default 87
 *
 * @param atb_c1
 * @desc Sets the 1st atb bar color as text color atb_c1
 *       atb_c1 must return a valid text color code
 *       atb_c1 should return the same value during the same battle to ensure
 *       proper atb bar color displays
 * @default 7
 *
 * @param atb_c2
 * @desc Sets the 2nd atb bar color as text color atb_c2
 *       atb_c2 must return a valid text color code
 *       atb_c2 should return the same value during the same battle to ensure
 *       proper atb bar color displays
 * @default 8
 *
 * @param atb_overlay_c1
 * @desc Sets the 1st atb bar overlay color as text color atb_overlay_c1
 *       It'll only be used with atb value above max_atb_val
 *       atb_overlay_c1 must return a valid text color code
 *       atb_overlay_c1 should return the same value during the same battle to
 *       ensure proper atb bar color displays
 * @default 19
 *
 * @param atb_overlay_c2
 * @desc Sets the 2nd atb bar overlay color as text color atb_overlay_c2
 *       It'll only be used with atb value above max_atb_val
 *       atb_overlay_c2 must return a valid text color code
 *       atb_overlay_c2 should return the same value during the same battle to
 *       ensure proper atb bar color displays
 * @default 26
 *
 * @param atb_bar_text
 * @desc Sets the atb bar description text as atb_bar_text
 *       atb_bar_text should return the same value during the same battle to
 *       ensure proper atb bar text displays
 * @default AP

Notetags
Code: [Select]
*    # Actor/Class/Weapon/Armor/Enemy/State Notetags:                       
 *      State notetags take the highest priority, followed by enemy, weapon, 
 *      armor, class and actor                                               
 *      1. <operator max patb val: val>                                       
 *         - Assigns val to the battler's maximum atb value via operator     
 *         - operator can be either =, +, -, *, / or %, meaning set to, add   
 *           by, subtract by, multiply by, divide by or modulo by respectively
 *         - All instances of this notetag will be used sequentially         
 *         - The final max atb_value must be at least 10000 times larger than
 *           2 ^ -52                                                         
 *      2. <patb colors: text color 1, text color 2>                         
 *         - Changes the atb bar color 1 and 2 to text color 1 and 2         
 *           respectively when this notetag's used                           
 *         - The 1st notetag that's being read by the battler will be used   
 *      3. <patb overlay colors: text color 1, text color 2>                 
 *         - Changes the atb overlay color 1 and 2 to text color 1 and 2     
 *           respectively when this notetag's used                           
 *         - The 1st notetag that's being read by the battler will be used   

Plugin Calls
Code: [Select]
*    # Configuration manipulations                                           
 *      1. $gameSystem.patb.param                                             
 *         - Returns the value of param listed in the plugin manager         
 *      2. $gameSystem.patb.param = val                                       
 *         - Sets the value of param listed in the plugin manager as val     
 *         - All $gameSystem.patb.param changes will be saved                 
 *      3. $gameSystem.is_patb()                                             
 *         - Returns if battle_system_code returns an available code         
 *      4. $gameSystem.max_patb_turn_unit(unit)                               
 *         - Returns the maximum global battle turn counter with unit as unit
 *    # Data actor/class/weapon/armor/enemy/state manipulations               
 *      1. meta.max_patb_val                                                 
 *         - Returns the maximum atb value with the operator stored in       
 *           <operator max patb val: val> in the form of [opeartor, val]     
 *      2. meta.max_patb_val = [opeartor, val]                               
 *         - Sets the maximum atb value with the operator stored in           
 *           <operator max patb val: val> as string operator and Number val   
 *         - The final max atb value must be at least 10000 times larger than
 *           2 ^ -52                                                         
 *         - All meta.max_patb_val changes can be saved if                   
 *           DoubleX RMMV Dynamic Data is used                               
 *      3. meta.patb_colors                                                   
 *         - Returns the text colors stored in                               
 *           <patb colors: text color 1, text color 2> in the form of         
 *           [text color 1, text color 2]                                     
 *      4. meta.patb_colors = [text color 1, text color 2]                   
 *         - Sets the text colors stored in                                   
 *           <patb colors: text color 1, text color 2> as text color 1 and 2 
 *         - All meta.patb_colors changes can be saved if                     
 *           DoubleX RMMV Dynamic Data is used                               
 *      5. meta.patb_overlay_colors                                           
 *         - Returns the text colors stored in                               
 *           <patb overlay colors: text color 1, text color 2> in the form of
 *           [text color 1, text color 2]                                     
 *      6. meta.patb_overlay_colors = [text color 1, text color 2]           
 *         - Sets the text colors stored in                                   
 *           <patb overlay colors: text color 1, text color 2> as text color 1
 *           and 2                                                           
 *         - All meta.patb_overlay_colors changes can be saved if             
 *           DoubleX RMMV Dynamic Data is used                               
 *    # Battler manipulations                                                 
 *      1. max_patb_val                                                       
 *         - Returns the battler's maximum atb value for all atb types       
 *      2. max_patb_val = val                                                 
 *         - Sets the battler's maximum atb value for all atb types as val   
 *         - It'll be reevaluated if it can be changed without plugin calls   
 *      3. patb_val.atb                                                       
 *         - Returns the battler's atb value                                 
 *      4. patb_val.atb = val                                                 
 *         - Set the battler's atb value as val                               
 *      5. patb_rate.atb                                                     
 *         - Returns the battler's atb rate                                   
 *      6. patb_rate.atb = rate                                               
 *         - Set the battler's atb rate as rate                               
 *         - It'll be reevaluated if it can be changed without plugin calls   
 *      7. patb_val_change.atb = true                                         
 *         - Notifies that the atb value's changed                           
 *         - It must be used right after the atb bar length changed           
 *      8. patb_note_change.note = true                                       
 *         - Notifies that the values of at least 1 notetag instance of       
 *           notetag note or the corresponding configuration value has changed
 *         - Note can be max_atb_val, atb_color or atb_overlay_color,         
 *           referring to <operator max patb val: val>,                       
 *           <patb colors: text color 1, text color 2>, and                   
 *           <patb overlay colors: text color 1, text color 2> respectively   
 *      9. clear_patb()                                                     
 *          - Same as calling reset_patb_val() and reset_patb()               
 *      10. reset_patb_val()                                                   
 *          - Resets the battler's atb value to the maximum atb value in delay
 *            fill mode and 0 if otherwise                                   
 *      11. reset_patb()                                                     
 *          - Clears all battler's actions                                   
 *      12. patb_type()                                                       
 *          - Returns the current atb type, which can be either atb, charge or
 *            cooldown                                                       
 *          - charge and cooldown will be available when corresponding addons
 *            are used as well                                               
 *      13. patb_colors(type)                                                 
 *          - Returns the text colors of the atb bars of type type, which can
 *            be either atb, charge or cooldown                               
 *          - The overlay colors will be returned instead if the atb value of
 *            type type is greater than max_atb_val                           
 *          - charge and cooldown will be available when corresponding addons
 *            are used as well                                               
 *    # Battle manipulations                                                 
 *      1. BattleManager.patb_turn_clock                                     
 *         - Returns the current global battle turn clock with both second and
 *           action units in the form of { act: act, sec: sec }               
 *         - sec is stored with the number of frames as the unit             
 *         - The fps is assumed to be always 60                               
 *      2. BattleManager.patb_turn_clock.act = act                           
 *         - Sets the current global battle turn clock with action unit as act
 *      3. BattleManager.patb_turn_clock.sec = sec                           
 *         - Sets the current global battle turn clock with second unit as sec
 *         - sec is stored with the number of frames as the unit             
 *         - The fps is assumed to be always 60                               
 *      4. BattleManager.patb_base                                           
 *         - Returns the global base atb rate                                 
 *      5. BattleManager.need_patb_refresh = true                             
 *         - Indicates that at least 1 battler has refreshed                 
 *         - All windows will be refreshed and the sum of all battler's agi   
 *           will be reevaluated                                             

Video
https://www.youtube.com/watch?v=6KTV1k6ohfE

Prerequisites
Abilities:
1. Nothing special for most ordinary use cases
2. Little Javascript coding proficiency to fully utilize this plugin

Terms Of Use
You shall keep this plugin's Plugin Info part's contents intact
You shalln't claim that this plugin's written by anyone other than DoubleX or his aliases
None of the above applies to DoubleX or his/her aliases

Instructions
Code: [Select]
* The default plugin file name is DoubleX RMMV Popularized ATB Core v103a
 * If you want to change that, you must edit the value of
 * DoubleX_RMMV.PATB_Core_File, which must be done via opening this plugin js
 * file directly

Author Notes
Code: [Select]
*      1. DoubleX RMMV Popularized ATB uses the core addon approach with this
 *         plugin as its core and all addons needing this plugin to work     
 *      2. DoubleX RMMV Popularized ATB also serves as a learning tool for   
 *         plugin developers to learn how an atb system plugin can be written
 *      3. State's Auto-removal Timing as Action End becomes right after the 
 *         state owner executed all the actions to conform with the defaults 
« Last Edit: August 26, 2017, 02:35:15 PM by DoubleX »

***
Scripter
Rep:
Level 33
Updates
Code: [Select]
*      v0.00c(GMT 1400 24-11-2015):                                         
 *      1. Fixed database falsely returning database not loaded on game start
 *      2. Fixed BattleManager properties falsely belonging to Game_Battler   
 *      3. Fixed undefined this when raising the battler's refresh flags     
 *      4. Fixed are_patb_battler_changed not referenced by this due to typo 
 *      5. Fixed atb bars not drawing properly due to note passing fill rate 
 *      6. Invalid configuration and/or notetag values will log error messages
 *      7. The param descriptions and plugin help become more helpful to users
 *      8. Increased this plugin's extensibility, readability and robustness 
 *      v0.00b(GMT 0000 24-11-2015):                                         
 *      1. Fixed changing max atb value not rechecking battler actability     
 *      2. Fixed null this when reading <operator max patb val: val> notetag 
 *      3. Fixed update state turns not working in the default battle system 
 *      4. Fixed description, params and help not loading due to typo         
 *      5. Fixed battler atb clock update not triggering due to typo         
 *      6. Fixed action set item passing the null argument due to typo       
 *      7. Fixed undefined function error when updating atb frame due to typo
 *      8. Fixed failed party escape not resetting actors' atb values in delay
 *      9. Fixed passing wrong color argument type when drawing actor atb bars
 *      10. Simplified operator in <operator max patb val: val>               
 *      11. Increased this plugin's efficiency, extensibility and modularity 
« Last Edit: November 24, 2015, 02:09:49 PM by DoubleX »

***
Scripter
Rep:
Level 33
Updates
Code: [Select]
*      v0.00d(GMT 0100 27-11-2015):                                         
 *      1. Exposed more easy, simple and user-friendly plugin calls           
 *      2. Increased this plugin's efficiency and user-friendliness           

***
Scripter
Rep:
Level 33
Updates
Code: [Select]
*      v0.00e(GMT 1300 29-11-2015):                                         
 *      1. Fixed not refreshing all input windows upon turn end               
 *      2. Fixed not returning the reevaluated sum of all battlers' agi       
 *      3. Fixed not clearing the sum of all battlers' agi upon battle start 
 *      4. Fixed not raising refresh and update flags upon battler atb reset 
 *      5. Fixed undefined updateEvent due to typo                           
 *      6. Fixed duplicate battle event updates upon turn end                 
 *      7. Fixed resetting atb always clearing the atb values on restrict     
 *      8. Added atb_rate_code abs_agi                                       
 *      9. Updated some outdated documentations                               
 *      10. Increased this plugin's extensibility, modularity and robustness 

***
Scripter
Rep:
Level 33
Updates
Code: [Select]
*      v0.00f(GMT 1200 9-12-2015):                                           
 *      1. Fixed concat the active flag of the actor command window instead of
 *         the window itself                                                 
 *      2. Fixed not refreshing the actor atb bars upon resetting atb values 
 *      3. Updated some outdated documentations                               
 *      4. Increased this plugin's extensibility, modularity and readability 

***
Scripter
Rep:
Level 33
Updates
Code: [Select]
*      v0.00g(GMT 1400 30-12-2015):                                         
 *      1. Fixed undefined data in Game_Battler.prototype.patb_note_data bug 
 *      2. Fixed used the undefined any instead of some function for Array bug
 *      3. Fixed missed return in Array filter function bug                   
 *      4. Increased this plugin's compactness, modularity and readability   

***
Scripter
Rep:
Level 33
Updates
Added this video:
https://www.youtube.com/watch?v=6KTV1k6ohfE
Code: [Select]
*      v1.00a(GMT 0400 23-1-2016):                                           
 *      1. Outsourced the ctb feature to the CTB addon                       
 *      2. Fixed same name patb_rate for both a property setter and function 
 *      3. Fixed actors added during battles having unitiailized atb statuses
 *      4. Fxied undefined textWidth in draw_actor_patb bug                   
 *      5. Fixed trying to read meta from null equip bug                     
 *      6. Fixed undefined this_ and patb_color due to typo bug               
 *      7. Fixed unitialized max atb value upon battle start bug             
 *      8. Fixed executing next action before finishing the current one bug   
 *      9. Fixed actor window not completely covering status window bug       
 *      10. Actor poses can be chaotic when actor input actions or battle ends
 *      11. Added some missing documentations                                 
 *      12. Incrased this plugin's compactness, modularity and simplicity     
 *      13. 1st completed version of this plugin finished                     

***
Scripter
Rep:
Level 33
Updates
Code: [Select]
*      v1.00b(GMT 0900 27-1-2016):                                           
 *      1. Fixed active hidden actor command window after closing all windows
 *      2. Fixed not updating status windos and incorrect actor window x     
 *         position in unavailable battle system codes                       
 *      3. Fixed actor not able to execute autobattle/confusion actions with 
 *         max atb value notetag used                                         
 *      4. Fixed actor not able to do anything if becoming autobattle or     
 *         restricted when inputable bug                                     
 *      5. max_atb_val must be at least 10000 times larger than 2 ^ -52       
 *      6. atb gain rate must be at least 2 ^ -52 * max atb value * 100 per   
 *         frame                                                             
 *      7. Confused battlers can execute confused actions ahortly after       
 *         removing confusion                                                 
 *      8. Next/prior command can cause actor selections to appear chaotic   
 *      9. The battle turn clock can be disabled as using an unavailable unit
 *      10. Increased this plugin's compatibility, modularity and readability

***
Scripter
Rep:
Level 33
Updates
Code: [Select]
*      v1.00c(GMT 1000 31-1-2016):                                           
 *      1. Fixed not updating the battler atb rate due to changing the battler
 *         agi without changing the base atb rate bug                         
 *      2. Fixed not refreshing actor atb bar upon reset with delay fill mode
 *      3. Fixed not updating the status window when executing actions bug   

***
Scripter
Rep:
Level 33
Updates
Code: [Select]
*      v1.00d(GMT 0400 7-2-2016):                                           
 *      1. Fixed not updating the status window when executing actions bug   
 *      2. Fixed actor input windows not deactivating upon being uninputable 
 *      3. Fixed forbidden party escape freezing the party command window bug
 *      4. Loosens the coupling between core, charge, cooldown and speed addon
 *      5. Removed some excessive couplings and added some code documentations

***
Scripter
Rep:
Level 33
Updates
Code: [Select]
*      v1.01a(GMT 0300 20-2-2016):                                           
 *      1. Lets users set whether actor atb bar will be shown on status window
 *      2. Fixed inactive actor command window not being closed immediately   
 *      3. Fixed not refreshing the inputable actor upon confirming input bug

***
Scripter
Rep:
Level 33
Updates
Code: [Select]
*      v1.01b(GMT 1400 31-5-2016):                                           
 *      1. Fixed the unmovable battlers having nonempty atb bug in start addon
 *      2. Improved this plugin's effectiveness, efficiency and readibility   

***
Scripter
Rep:
Level 33
Updates
Code: [Select]
*      v1.01c(GMT 1000 5-6-2016):                                           
 *      1. Fixed not updating unmovable battlers' max atb and countdown states
 *      2. Improved this plugin's effectiveness, efficiency and readibility   

***
Scripter
Rep:
Level 33
Updates
Code: [Select]
*      v1.01d(GMT 0800 19-6-2016):                                           
 *      1. Fixed maximum atb value being possible to be nonpositive bug       

***
Scripter
Rep:
Level 33
Updates
Code: [Select]
*      v1.01e(GMT 0500 15-7-2016):                                           
 *      1. Upgraded to support the latest version of PATB Order               
 *      2. Increased this plugin's effectiveness, efficiency and readibility 

***
Scripter
Rep:
Level 33
Updates
Code: [Select]
*      v1.01f(GMT 1400 12-8-2016):                                           
 *      1. Fixed empty atb_bar_text being converted to 0 bug                 
 *      2. PATB notetags won't be loaded more than once per game execution   
 *      3. Increased this plugin's effectiveness, efficiency and simplicity   

***
Scripter
Rep:
Level 33
Updates
Code: [Select]
*      v1.02a(GMT 0600 20-8-2016):                                           
 *      1. Added max_linked_input_actors                                     

***
Scripter
Rep:
Level 33
Updates
Code: [Select]
*      v1.02b(GMT 0500 17-9-2016):                                           
 *      1. Fixed max_linked_input_actors not working when there are 3+       
 *         inputable actors at the same time with no one having Action Times +
 *      2. Lets you set max_linked_input_actors as negative to disable it     
P.S.: max_linked_input_actors won't work well with any inputable actor having Action Times+, which can only be fixed by rewriting the entire PATB system, so I don't think I'll go for that extra mile :)

*
? ? ? ? ? ? ? ? ? The nice kind of alien~
Rep:
Level 91
Martian - Occasionally kind
Good job in keeping your topics updated at the various forums you have them on. It does take some time.

***
Scripter
Rep:
Level 33
Updates
Code: [Select]
*      v1.02c(GMT 0500 11-8-2017):                                           
 *      1. Fixed the 1st actor becoming inputable not performing the waiting 
 *         pose bug                                                           

***
Scripter
Rep:
Level 33

***
Scripter
Rep:
Level 33
Updates
Code: [Select]
*      v1.02d(GMT 1500 13-8-2017):                                           
 *      1. Increased this plugin's extensibility, modularity and robustness   

***
Scripter
Rep:
Level 33
Updates
Code: [Select]
*      v1.03a(GMT 1200 26-8-2017):                                           
 *      1. Added no_prior_actor