Град - это симулятор государств. В Граде вся карта поделена на города(отсюда и название). Если город столица он красится штрихами, если провинция то закрашивается сплошным цветом. Все города добывают некоторое кол-во ресурсов.(У всех разное). На них город может : 1. Построить крепость 2. Нанять войска. 3. Напасть на соседнюю провинцию, если она принадлежит другому гос-ву, вюющему с нашим. Всё, больше города ничего не могут. Изначально каждый город является столицей некоего государства. В каждом государстве есть налоги. Налоги определяют, какая часть доходов пойдет из провинций в столицу. Налоги так же влияют на стоимость войск и крепостей. Чем больше налоги, тем всё дешевле. Однако, налоги повышают шанс восстания(см. ниже). Каждое государство имеет размер. Чем больше размер, тем больше ресурсов добывается в провинциях и столице. Но при этом повышаются цены на крепости, и шансы на восстание(см. ниже). В государстве может произойти восстание. Главный фактор здесь налоги, но важен и размер. При восстании одна из провинцей становится столицей нового государства. Часть провинцей переходит под её контроль. Если захватывается столица, то в большинстве случаев все провинции присоеденяются к захватчику. Однако в некоторых случаях они могут продолжить сопротивлятся. Тогда провинции, либо станут анархистами, либо войдут в союз с кем-нибудь. Анархисты это гос-во без столицы. Они платят налоги случайному городу (не обязательно своему) и могут капитулировать в любой момент. Град сделан для того, что бы люди писали свои скрипты для государств. Град v0.56 поддерживает "Скриптовый язык v0.1". Град v0.6 и v0.61 поддерживает "Скриптовый язык v0.2". Град v0.61b поддерживает "Cкриптовый язык v0.22" В скриптовом языке v0.1 есть команды: 1. atakа#x#y# - команда атаки на соседнею клетку. ~ х - озаначает какую клетку атаковать.(1 - верхнюю, 2 - правую, 3 - нижнюю, 4 - на левую, * - атака случайной клетки) ~ y - определяет какой процент войск из города, останется в городе.(от 0 до 99, * - случайный процент от 0 до 15 ) 2. zamok# - команда постройки крепости. Если она не может быть выполнена, выполняется команда "nanat#$#". 3. nanat#x# - команда создания войск. Будет нанято до x (целое число) воинов (если не хватит ресурсов будет нанято меньше). Если написать $, вместо х, то будет нанято максимальное кол-во войск. 4. gdath# - команда для накопления ресурсов. 5. sravn#x#<=>#y# - команда сравнивает х и у. Если сравнение верно то выполняет следующую строку, если нет пропускает её. В качестве х и у могут буть как целые числа, так и слова "vsk" и "zmk". ~ vsk возврощает количество войск в провинции. ~ zmk возврощает уровень крепости. (примеры: sravn#vsk#>#300# - это означает что, если войск в провинции больше 300 человек, то следующая строка будет выполнена. sravn#vsk#<#300# - это означает что, если войск в провинции меньше 300 человек, то следующая строка будет выполнена. sravn#vsk#=#zmk# - это означает что, если количество войск в провинции ровно уровню крепости, то следующая строка будет выполнена. ) В "Cкриптовом языке v0.2" все команды заимствованы из "Cкриптового языкa v0.1", и добавлена команда: zapis#x#nlg# - которая изменяет налоги на х (x от 0 до 100); Так же, добавлены параметры к команде sravn#x#<=>#y#. Теперь х и у могут быть: ~ nlg - возвращает текущии налоги гос-ва в процентах (от 0 до 100). ~ kvi - возвращает размер гос-ва в процентах (от 0 до 100). ~ mpz - возвращает -1, если нет ресурсов для постройки крепости, и 1, если есть. ~ * - случайное число от 1 до 100; ++++++В "Скриптовом языке v0.22" все операторы заимствованы из предыдущих версий. НО! ОПЕРАТОРЫ РАЗДЕЛЕНИЯ ЗАМЕНЕНЫ НА ПРОБЕЛЫ. Это значит теперь вместо # надо писать пробелы. Так же, добавлены параметры к команде sravn x <=> y . Теперь х и у могут быть: ~ zp1 - возвращает замок в провинции выше. ~ zp2 - возвращает замок в провинции правее. ~ zp3 - возвращает замок в провинции ниже. ~ zp4 - возвращает замок в провинции левее. ++++++ !!!!!!Внимание!!!!!! Во всех версиях скриптового языка после оператора сравнения ОБЯЗАТЕЛЬНО должну быть ДВЕ КОМАНДЫ. Писать: "sravn#vsk#>#300# ataka#*#*# @ " !!!НЕЛЬЗЯ.!!! ......Спасибо...... В скриптовых языках от v0.1 до v0.22 весь скрипт должен выглядеть, так: Имя гос-ва команды @ Все команды в скриптовом языке v0.1 и v0.2 заканчиваються '#'. Все команды в скриптовом языке v0.22 заканчиваються ';'. Скрипт должен заканчиваться символом '@'. Скрипт должен иметь расширение "*.grad". Поскольку в скриптовых языках от v0.1 до v0.22 нет циклов, то зацикливается весь файл. Град c v0.56 до v0.61b не поддерживает никаких названий скриптов кроме "ERUNDA".(То бишь скрипты надо писать только в файл "ERUNDA.grad".) В Граде v0.56 государство контролируемое скриптом ВСЕГДА создаётся в верхнем левом углу.