2 hours ago
FIRST... its 2am and I just cobbled this together.
Designed so you just add the ID of your skills that should get past evasion. Examination of the script, one should see how melee weapons and items could be added for the same.
Second, the system is designed so enemies themselves are subject to not being able to evade (stats like fumble, clumsy, etc)... not the actors themselves.
CODE IN GAME_BATTLER:
The above code (which my above script aliases) checks if the victim/self is subject to any status ailment that prevents them from evading.
The skill_effect method asks for the skill ID and the user/caster of the skill. As it can check the ID of a 'skill', it might be possible to check the status effect of the 'user'. Just needs a bit more code as there is no flagged status effect so an attack is evasion-proof.
But I gotta hit the sack. And I got writing tomorrow (joy).
Code:
module NoEvade
# Just list the Skill IDs here
SKILL_IDS = [1]
end
#==============================================================================
# ** Game_Battler
#------------------------------------------------------------------------------
# This class deals with battlers. It's used as a superclass for the Game_Actor
# and Game_Enemy classes.
#==============================================================================
class Game_Battler
#--------------------------------------------------------------------------
# * Determine [Can't Evade] States
#--------------------------------------------------------------------------
alias acev_derv_gbattler_noevade_cant_evade? cant_evade?
alias acev_derv_gbattler_noevade_skill_effect skill_effect
#--------------------------------------------------------------------------
# * Determine [Can't Evade] States
#--------------------------------------------------------------------------
def cant_evade?
#
# True if a skill in use is set to prevent evasion
return true if @evadable_skill == true
# Return with the original state based result
return acev_derv_gbattler_noevade_cant_evade?
#
end
#--------------------------------------------------------------------------
# * Apply Skill Effects
# user : the one using skills (battler)
# skill : skill
#--------------------------------------------------------------------------
def skill_effect(user, skill)
#
# Test the skill to see if it prevents evasion
skill_evadable?(skill)
# Perform the original call
effective = acev_derv_gbattler_noevade_skill_effect(user, skill)
# Exit with the skill's effectiveness
return effective
#
end
#--------------------------------------------------------------------------
# * Get if Skill prevents evasion
# skill : skill
#--------------------------------------------------------------------------
def skill_evadable?(skill)
#
# Set the flag indicating no evasion by default
@evadable_skill = false
# Get the skill's ID
id = Skill.id
# Set the flag true if the skill used prevents evasion
@evadable_skill = true if NoEvade::SKILL_IDS.include?(id)
#
end
endSecond, the system is designed so enemies themselves are subject to not being able to evade (stats like fumble, clumsy, etc)... not the actors themselves.
CODE IN GAME_BATTLER:
Code:
def cant_evade?
for i in @states
if $data_states[i].cant_evade
return true
end
end
return false
endThe skill_effect method asks for the skill ID and the user/caster of the skill. As it can check the ID of a 'skill', it might be possible to check the status effect of the 'user'. Just needs a bit more code as there is no flagged status effect so an attack is evasion-proof.
But I gotta hit the sack. And I got writing tomorrow (joy).

![[Image: QrnbKlx.jpg]](https://i.imgur.com/QrnbKlx.jpg)
![[Image: sGz1ErF.png]](https://i.imgur.com/sGz1ErF.png)
![[Image: liM4ikn.png]](https://i.imgur.com/liM4ikn.png)
![[Image: fdzKgZA.png]](https://i.imgur.com/fdzKgZA.png)
![[Image: sj0H81z.png]](https://i.imgur.com/sj0H81z.png)
![[Image: QL7oRau.png]](https://i.imgur.com/QL7oRau.png)
![[Image: uSqjY09.png]](https://i.imgur.com/uSqjY09.png)
![[Image: GAA3qE9.png]](https://i.imgur.com/GAA3qE9.png)
![[Image: 2Hmnx1G.png]](https://i.imgur.com/2Hmnx1G.png)
![[Image: BwtNdKw.png%5B]](https://i.imgur.com/BwtNdKw.png%5B)