The line in question
for i in 0...@table.size
In an earlier line, just a few up, is where @table is assigned a value
@table = Skill_Tree::Actor[a]
The error occurs because @table is nil, meaning that Skill_Tree::Actor[a] is returning nil, likely because whoever actor 'a' is, hasn't been given a skill tree, even if that actor 'a' isn't going to get one.
Make sure that you have a Skill Tree set up and defined, or at least an empty table where you don't want one for that character, so that @table has a value (even if it contains nothing relevant).
You can do this by adding an empty array for each actor you have in your game:
Actor[1] = []
Actor[2] = []
Actor[3] = []
# and so on
Thus, when the @table variable is being assigned to, it will be given the value @table = []. Then, at line 457, it will be interpreted as:
for i in 0...0 #where 0 is @table.size
Bear in mind, that I have no idea how this script works, and that my suggestion is based on a cursory glance at what I can see as being relevant. It may or may not work. Give it a try, and let me know how it goes.