05-11-2019, 12:50 PM
That's correct, the first status ailment on the database is Death/KO. Worth nothing that removing the element alignment from the skill solves the issue.
I think the only script that touches &data_states is Bearcat's Absorb, Null, and Weak Armors, specifically the System script.
Thinking about it, pretty sure I had a similar problem with another script that came into conflict with Game_Actor, hence why the default characters are still on the database of my project.
I think the only script that touches &data_states is Bearcat's Absorb, Null, and Weak Armors, specifically the System script.
Code:
=begin
#=============================================================================
# Absorb, Null, and Weak Armors
#=============================================================================
# Bearcat
# Version 1.01
# 8.16.07
#=============================================================================
This script allows you to make armors and states that absorb, nullify, or
make the wearer weak to elemental damage. To set up an an armor or state,
put the armor id and the element id in the appropriate hash in Absorb_Setup.
There is no need to modify anything other than the hashes in Absorb_Setup.
Free use, modification, and distribution permitted (commercial projects
included) so long as credit is given to me, Bearcat.
==============================================================================
=end
module Absorb_Setup
#--------------------------------------------------------------------------
# * Absorb Armors
# syntax armor_id => [element1, element2...]
#--------------------------------------------------------------------------
Absorb_Armors = {
103 => [1], 106 => [2], 109 => [3], 112 => [4], 115 => [5], 118 => [6], 121 => [7], 124 => [8], 127 => [1, 2, 3, 4, 5, 6, 7, 8], 153 => [1], 156 => [2], 159 => [3], 162 => [4], 165 => [5], 168 => [6], 171 => [7], 174 => [8], 177 => [1, 2, 3, 4, 5, 6, 7, 8], 366 => [3], 260 =>[8], 347 => [1, 2, 3, 4, 5, 6, 7, 8], 389 => [2, 6]
}
#--------------------------------------------------------------------------
# * Null Armors
# syntax armor_id => [element1, element2...]
#--------------------------------------------------------------------------
Null_Armors = {
102 => [1], 105 => [2], 108 => [3], 111 => [4], 114 => [5], 117 => [6], 120 => [7], 123 => [8], 126 => [1, 2, 3, 4 ,5 ,6 ,7 ,8], 152 => [1], 155 => [2], 158 => [3], 161 => [4], 164 => [5], 167 => [6], 170 => [7], 173 => [8], 176 => [1, 2, 3, 4, 5, 6, 7, 8], 369 => [5], 378 => [1,2,3], 388 => [9], 389 => [1, 5]
}
#--------------------------------------------------------------------------
# * Weak Armors
# syntax armor_id => [element1, element2...]
#--------------------------------------------------------------------------
Weak_Armors = {
366 => [4], 259 => [10], 260 => [7], 385 => [3, 4]
}
#--------------------------------------------------------------------------
# * Absorb States
# syntax state_id => [element1, element2...]
#--------------------------------------------------------------------------
Absorb_States = {
1 => [1]
}
#--------------------------------------------------------------------------
# * Null States
# syntax state_id => [element1, element2...]
#--------------------------------------------------------------------------
Null_States = {
21 => [10]
}
#--------------------------------------------------------------------------
# * Weak States
# syntax state_id => [element1, element2...]
#--------------------------------------------------------------------------
Weak_States = {
73 => [1], 74 => [2], 75 => [3], 76 => [4], 77 => [5], 78 => [6], 79 => [7], 80 => [8]
}
#--------------------------------------------------------------------------
# * Defaults DO NOT CHANGE
#--------------------------------------------------------------------------
Absorb_Armors.default = []
Null_Armors.default = []
Weak_Armors.default = []
Absorb_States.default = []
Null_States.default = []
Weak_States.default = []
end
Code:
class Game_Actor
def element_rate(element_id)
absorb_flag = false
# Get values corresponding to element effectiveness
table = [0,200,150,100,50,0,-100]
result = table[$data_classes[@class_id].element_ranks[element_id]]
# Run Armor Stuff
for i in [@armor1_id, @armor2_id, @armor3_id, @armor4_id]
armor = $data_armors[i]
# Halve damage if element is protected
if armor != nil and armor.guard_element_set.include?(element_id)
result /= 2
end
# Damage = 0 if element is nulled
if armor != nil and armor.null_element_set.include?(element_id)
result = 0
end
# Set flag to true if element is absorbed
if armor != nil and armor.absorb_element_set.include?(element_id)
absorb_flag = true
end
# Multiply damage if armor is weak to element
if armor != nil and armor.weak_element_set.include?(element_id)
result *= 2
end
end
# Run State Stuff
for i in @states
# Halve damage if element is protected
if $data_states[i].guard_element_set.include?(element_id)
result /= 2
end
# Damage = 0 if element is nulled
if $data_states[i].null_element_set.include?(element_id)
result = 0
end
# Set flag to true if element is absorbed
if $data_states[i].absorb_element_set.include?(element_id)
absorb_flag = true
end
# Multiply damage if state is weak to element
if $data_states[i].weak_element_set.include?(element_id)
result *= 2
end
end
# If absorb_flag = true, multiply by -1
if absorb_flag
result *= -1
end
# End Method
return result
end
end
class Game_Enemy
def element_rate(element_id)
# Get a numerical value corresponding to element effectiveness
table = [0,200,150,100,50,0,-100]
result = table[$data_enemies[@enemy_id].element_ranks[element_id]]
for i in @states
# Halve damage if element is protected
if $data_states[i].guard_element_set.include?(element_id)
result /= 2
end
# Damage = 0 if element is nulled
if $data_states[i].null_element_set.include?(element_id)
result = 0
end
# Set flag to true if element is absorbed
if $data_states[i].absorb_element_set.include?(element_id)
absorb_flag = true
end
# Multiply damage if state is weak to element
if $data_states[i].weak_element_set.include?(element_id)
result *= 2
end
end
# If absorb_flag = true, multiply by -1
if absorb_flag
result *= -1
end
# End Method
return result
end
end
Thinking about it, pretty sure I had a similar problem with another script that came into conflict with Game_Actor, hence why the default characters are still on the database of my project.