Прокомментировать скрипт я позволю себе.
Минусы опишу:
1. я не смог сразу запустить демо (ерунда, исправил ини, всё заработало)
2. дальше первого тура я не смог продвинуться (смог, оказывается кто-то в углу сидел)
3. чары не убираются после смерти, это обидно
4. поворот реализован не очень хорошо
5. можно атаковать себя (или это глюк?)
6. в конце ХП бары прикрепляются к курсору
Плюсы:
1. красиво
2. ново (ты один из немногих русских, кто реализовал хотя бы часть боёвки и выложил её на обзор)
3. Скрипты, люблю скрипты.
Критика кода: (пожалуй с чего и следовало начать)
1. крайне сложно перенести в свой проект, скрипты боёвки разбросаны по родным скриптам
2. Type unit - бесклассовые методы, знаешь чем это чревато? Хотя может это и оправданно
3.
Спойлер unit_type:
PHP код:
def unit_type (type_number)
  case 
type_number
  when 1 
# Главный герой
    
return [0,       #  0.Unit
            
2,       #  1.State
            
3,       #  2.Max HP
            
3,       #  3.HP
            
3,       #  4.Type move
            
3,       #  5.Step SP Max
            
3,       #  6.Step SP
            
1,       #  7.Shield HP Max
            
1,       #  8.Shield HP
            
0,       #  9.Remount
            
[1,2,3]] # 10.Type attack
  
when 2 # Простой пират
    
return [1,       #  0.Unit
            
2,       #  1.State
            
3,       #  2.Max HP
            
3,       #  3.HP
            
2,       #  4.Type move
            
3,       #  5.Step SP Max
            
3,       #  6.Step SP
            
1,       #  7.Shield HP Max
            
1,       #  8.Shield HP
            
0,       #  9.Remount
            
[1,2,3]] # 10.Type attack
  
when 3 # Главный герой
    
return [0,       #  0.Unit
            
0,       #  1.State
            
10,      #  2.Max HP
            
1,       #  3.HP
            
3,       #  4.Type move
            
3,       #  5.Step SP Max
            
3,       #  6.Step SP
            
1,       #  7.Shield HP Max
            
1,       #  8.Shield HP
            
0,       #  9.Remount
            
[1,2,3]] # 10.Type attack
  
when 4 # Главный герой
    
return [0,       #  0.Unit
            
2,       #  1.State
            
7,       #  2.Max HP
            
7,       #  3.HP
            
3,       #  4.Type move
            
3,       #  5.Step SP Max
            
3,       #  6.Step SP
            
1,       #  7.Shield HP Max
            
1,       #  8.Shield HP
            
0,       #  9.Remount
            
[1,2,3]] # 10.Type attack
  
when 5 # Главный герой
    
return [0,       #  0.Unit
            
1,       #  1.State
            
5,       #  2.Max HP
            
2,       #  3.HP
            
3,       #  4.Type move
            
3,       #  5.Step SP Max
            
3,       #  6.Step SP
            
1,       #  7.Shield HP Max
            
1,       #  8.Shield HP
            
0,       #  9.Remount
            
[1,2,3]] # 10.Type attack
  
when 6 # Главный герой
    
return [0,       #  0.Unit
            
1,       #  1.State
            
10,       #  2.Max HP
            
3,       #  3.HP
            
3,       #  4.Type move
            
3,       #  5.Step SP Max
            
3,       #  6.Step SP
            
1,       #  7.Shield HP Max
            
1,       #  8.Shield HP
            
0,       #  9.Remount
            
[4]]     # 10.Type attack
  
end
end 

можно было так
Спойлер *:
PHP код:
module  CONST_SpTBS
 Unit_Type 
= [nil,
 
#  0.Unit #  1.State #  2.Max HP #  3.HP  #  4.Type move #  5.Step SP Max #  6.Step SP #  7.Shield HP Max  #  8.Shield HP #  9.Remount # 10.Type attack
[0,2,3,3,3,3,3,1,1,0,[1,2,3]] # Главный герой
[1,2,3,3,2,3,3,1,1,0,[1,2,3]] # Простой пират
[0,2,3,3,3,3,3,1,1,0,[1,2,3]]# Главный герой
# дальше в твоём стиле, хоть и занимает много места, зато читабельность хорошая.
  # Простой пират
     
[1,       #  0.Unit
            
2,       #  1.State
            
3,       #  2.Max HP
            
3,       #  3.HP
            
2,       #  4.Type move
            
3,       #  5.Step SP Max
            
3,       #  6.Step SP
            
1,       #  7.Shield HP Max
            
1,       #  8.Shield HP
            
0,       #  9.Remount
            
[1,2,3]] # 10.Type attack
   # Главный герой
     
[0,       #  0.Unit
            
0,       #  1.State
            
10,      #  2.Max HP
            
1,       #  3.HP
            
3,       #  4.Type move
            
3,       #  5.Step SP Max
            
3,       #  6.Step SP
            
1,       #  7.Shield HP Max
            
1,       #  8.Shield HP
            
0,       #  9.Remount
            
[1,2,3]] # 10.Type attack
   # Главный герой
    
[0,       #  0.Unit
            
2,       #  1.State
            
7,       #  2.Max HP
            
7,       #  3.HP
            
3,       #  4.Type move
            
3,       #  5.Step SP Max
            
3,       #  6.Step SP
            
1,       #  7.Shield HP Max
            
1,       #  8.Shield HP
            
0,       #  9.Remount
            
[1,2,3]] # 10.Type attack
   # Главный герой
     
[0,       #  0.Unit
            
1,       #  1.State
            
5,       #  2.Max HP
            
2,       #  3.HP
            
3,       #  4.Type move
            
3,       #  5.Step SP Max
            
3,       #  6.Step SP
            
1,       #  7.Shield HP Max
            
1,       #  8.Shield HP
            
0,       #  9.Remount
            
[1,2,3]] # 10.Type attack
   # Главный герой
   
[0,       #  0.Unit
            
1,       #  1.State
            
10,       #  2.Max HP
            
3,       #  3.HP
            
3,       #  4.Type move
            
3,       #  5.Step SP Max
            
3,       #  6.Step SP
            
1,       #  7.Shield HP Max
            
1,       #  8.Shield HP
            
0,       #  9.Remount
            
[4]]     # 10.Type attack
]
  
end 
вызывать так
CONST_SpTBS::Unit_Type[type_number]


С остальными методами, где идёт простое case - when бинарное дерево проделать то же самое. Это конечно будет несколько медленние бинарного дерева (того что было изначально), но RGSS и так медленная штука.

4.
PHP код:
  if $game_variables[1] == 0
    nulling
(ev_arr)
  
end 
заменить на постусловие
PHP код:
  nulling(ev_arr)  if $game_variables[1] == 
5.
PHP код:
 for i in 0..ev_arr.size-1
    
if $dead_actors.include? (ev_arr[$num_step][0])
        
$ksd true
    end
  end 
на
PHP код:
 for i in 0...ev_arr.size # считаем точки
       
$ksd true if $dead_actors.include? (ev_arr[$num_step][0])
  
end 
Хотя смысл сий действия мне не ясно.
6.
PHP код:
if $ksd == false 
Забываем паскаль! В Руби истина всё, что существует и не ложно, т.е. если объект есть, то он вернёт истину при проверки (если объект не false)
PHP код:
if !$ksd 
7.
PHP код:
$coord_move = Array.new 
или
PHP код:
$coord_move =[] 
чисто дело стиля.

В целом, мне понравилось, скрипт с коментами, со структурой. Надеюсь мой комент не повлияет на самооценку автора и он продолжит разрабатывать сий скрипт.