Save-Point
Ekuipment's Skill Damage ACE - Printable Version

+- Save-Point (https://www.save-point.org)
+-- Forum: Material Development (https://www.save-point.org/forum-8.html)
+--- Forum: Scripts Database (https://www.save-point.org/forum-39.html)
+---- Forum: RPGMaker VX/VXAce (RGSS2/3) Engines (https://www.save-point.org/forum-117.html)
+---- Thread: Ekuipment's Skill Damage ACE (/thread-11518.html)



Ekuipment's Skill Damage ACE - kyonides - 03-14-2025

Ekuipment's Skill Damage ACE
Intended for Custom Damage Formulae

by Kyonides

Introduction

This scriptlet allows you to alter your item's or skill's damage formula in some interesting way, by setting a custom note in the equipment's notebox, and a target statistic that will serve as some item or skill damage modifier.

NOTES:

If the target battler is an enemy, it has to include a given note tag in its notebox or else it will return 0. The note tag could be anything like <has weapon> or <wields sickle> or anything else.
You can pass either a :symbol representing a stat OR a number as the second parameter.

Instructions
  • First you'd have to include this scriptlet in your script editor as a brand new script.
  • Then read the embedded comments in my script. They're right there for a darn good reason! Shocked
  • Finally, you can use the new script call in your damage formulae at will. Winking

Here I'll leave the same example I included in those comments.

Code:
b.atk - b.equip_skill_dmg("<weakened>", :atk)
b.matk - b.equip_skill_dmg("<test>", :mdef, 25)

Here I gotta admit that the first example would always return 0 as your the skill damage for an obvious reason, he, he. Laughing
You may have noticed Look Up that it does not include a third argument like the second example does. What it means is that it gets the default value (100%) instead. Winking

The Script

Code:
# * Ekuipment's Skill Damage ACE
#   - Intended for Custom Damage Formulae
#   Scripter : Kyonides
#   v0.5.0 - 2025-03-14

# This scriptlet allows you to alter your item's or skill's damage formula in
# some interesting way, by setting a custom note in the equipment's notebox
# and a target statistic that will serve as some item or skill damage modifier.

# If the target battler is an enemy, it has to include a given note tag in
# its notebox or else it will return 0. The note tag could be anything like
# <has weapon> or <wields sickle> or anything else.

# * About the Damage Formula Box * #
# a represents an attacker, while b stands for a defender.

# * Damage Formula * #
# b.atk - b.equip_skill_dmg(note, stat)
# b.atk - b.equip_skill_dmg(note, stat, some %)
# - Usage Examples:
# b.atk - b.equip_skill_dmg("<weakened>", :atk)
# b.atk - b.equip_skill_dmg("<weakened>", :matk, 25)

# * Script Calls * #
# - Non-Damage-Formula Use Cases:
# $game_actors[1].equip_skill_dmg("note", :atk)
# $game_party.members[0].equip_skill_dmg("note", :matk, 50)

class Game_Actor
  def equip_skill_dmg(equip_note, stat, percent=100)
    result = equips.compact.any? {|e| e.note[equip_note] }
    result ? send(stat) * percent / 100 : 0
  end
end

class Game_Enemy
  def equip_skill_dmg(equip_note, stat, percent=100)
    @note[equip_note] ? send(stat) * percent / 100 : 0
  end
end

Terms & Conditions

Free for use in ANY VX ACE game. Gamer
Just include my nickname in the credits.
That's it! Tongue sticking out


RE: Ekuipment's Skill Damage ACE - kyonides - 03-15-2025

Script Update!

After reviewing the early versions of this script I noticed that it was a good idea to let the game developer to not just pick a given note in the skill's or item's notebox but also a stat AND a specific percentage of that stat as skill damage.

This allows the skill's or item's damage formula to be quite skill-specific instead of totally equipment-focused so to say.

Keep in mind that VX ACE threats items and skills pretty much the same way, even if they're different Ruby Ruby objects. Shocked