1. Есть ли вызов которым можно определить героем управляет игрок или ИИ? (например для многопользовательских карт, чтобы если играем против компа возможным было бы дополнительно инструктировать поведение героев ИИ скриптами).
Только в 3.1 с помощью IsAIPlayer( playerId ); (узнаёт, является ли игрок человеком или компом)
2. Может кто нибудь навести пример (краткий) как можно с помощью скриптов менять "количество" прироста существ в постройках (не городских)?
Менять прирост скриптами? Не пробовал. Модом -- пожалуйста.
3. Можно ли как нибудь выразить функцию через скрипт, чтобы происходило следующее: игрок вступает в бой за замок, отбирает его и если некие n-ые условия выполнены то тут же получает рандомного героя "рассы города". Такое возможно?
Возможно. В бесконечном цикле проверяете принадлежность замка, если он принадлежит нужному игроку, выдаёте ему героя и выходите из цикла. Рандомного будет тяжело, но конкретного -- пожалуйста.