Super Skill Nerf VX - kyonides - 09-06-2025
Super Skill Nerf VX
by Kyonides
Introduction
Nerf! Nerf! Nerf your favorite super duper skills!
Yes, even up to the point where your heroes can only use them once per battle!
Just add the Skill ID to the ONLY_ONCE_SKILL_IDS array and that's it!
And just in case you want to clear this skill use limit once per call:
Code: $game_party.clear_used_skills!
VX Script
Code: # * Super Skill Nerf VX * #
# Scripter : Kyonides
# v1.0.0 - 2025-09-06
# Nerf! Nerf! Nerf your favorite super duper skills!
# Even up to the point where your heroes can only use them once per battle!
# Mandatory Skill Note Tag: <cast_only_once>
# * Optional Script Call * #
# - Just in case you want to clear this skill use limit once per call:
# $game_party.clear_used_skills!
module RPG
class Skill
ONLY_ONCE_NOTETAG = /<cast_only_once>/i
def cast_only_once?
@note[ONLY_ONCE_NOTETAG] != nil
end
end
end
class Game_Battler
alias :kyon_ssn_gm_btlr_sk_fx :skill_effect
def skill_effect(user, skill)
user.used_skills[skill.id] = true if user.actor?
kyon_ssn_gm_btlr_sk_fx(user, skill)
end
end
class Game_Actor
alias :kyon_ssn_gm_act_stp :setup
alias :kyon_ssn_gm_act_sk_cn_use? :skill_can_use?
def setup(actor_id)
kyon_ssn_gm_act_stp(actor_id)
@used_skills = {}
end
def skill_can_use?(skill)
return false if skill.cast_only_once? and skill_used?(skill.id)
kyon_ssn_gm_act_sk_cn_use?(skill)
end
def skill_used?(skill_id)
@used_skills[skill_id] != nil
end
def clear_used_skills!
@used_skills.clear
end
attr_reader :used_skills
end
class Game_Party
def clear_used_skills!
members.each {|actor| actor.clear_used_skills! }
end
end
class Scene_Battle
alias :kyon_ssn_scn_btl_term :terminate
def terminate
$game_party.clear_used_skills!
kyon_ssn_scn_btl_term
end
end
Terms & Conditions
Free as in  beer for non commercial games. 
Include my nickname in your game credits.
Thank Opozorilo for making the script request. (Optional aka a Joke)
That's it!
|