Опции BM:   A B C D E F G H I J K L M N O P Q R S T U V W X Y Z

Ресивер BM (параметры существ в бою)


!!BM#:XXXX; - установить/проверить/получить некоторые параметры стека монстров.
# - номер стека (0..41). Используются номера 0..20 для первого (0) игрока и 21..41 для второго (1) игрока.


A$
Атака (параметр) монстра


B$
Кол-во монстров в стеке (в начале битвы)
Пример (показать)


C#1/#2/#3/#4/#5
Колдовать заклинание:
         #1 – номер заклинания
         #2 – позиция для заклинания
         #3 – уровень заклинания (0..3): это как уровень навыка (нет/баз/продв/эксп)
         #4 – сила заклинания (сила/длительность): это как Колдовская Сила героя
         #5 – проверка на существование монстра (0 - не выполнять, 1 - выполнить)
Комментарий (показать)

5ый параметр должен быть равен 1, чтобы не вызвать ошибки при выполнении, но большая часть заклинаний работает и с 0.
Существует баг, что нельзя наложить таким методом Воскрешение (игра выходит в тёмный экран).


D$
Защита (параметр) существа


E$
Кол-во заклинаний (для существ-колдунов)
Комментарий (показать)

Это кол-во заклинаний, которое может наложить существо за одну битву.
Например, у Архангелов это значение равно 1. После того, как они кого-либо воскрешат, значение выставляется в 0.
Для триггера !?BG: значение изменяется после триггера наложения заклинания.


F$
Флаги монстров
Комментарий (показать)

Для проверки этих бит используйте BM:F, затем VR:& со значением соответствующего бита, интересующего вас. Помните, что флаги 32-битны.
Пример: Однако, стоит добавить, что в данном примере флаг ожидания возвращает "истину", пока нет всеобщей фазы ожидания в бою (когда все отряды уже получали возможность совершить действие). А уже эту всеобщую фазу можно определить через: Таким образом, чтобы узнать, в ожидании отряд или нет, когда настала всеобщая фаза ожидания, надо сделать проверку на саму фазу, сделать проверку на спец.флаги 26 (стек походил) и 27 (стек в защите).


G#/$1/$2
Установить/проверить/получить параметры активных заклинаний
         # – номер заклинания
         $1 – установить/проверить/получить продолжительность
         $2 – установить/проверить/получить силу заклинания
При установке длительности заклинания на 0 картинка по-прежнему остаётся, а действие заклинания исчезает.
Дополнительно (показать)

BM:G – это "неаккуратно" сделанная функция, и позволяет менять сотни характеристик существа, а не только наложенные заклинания.

Вызов: !!BMx:G#/$/d;, где:
    # - некий числовой параметр (см. таблицу ниже), используя который, можно изменять любую информацию о монстре как доступную (атака, здоровье и др.), так и недоступную (например, звуки, анимацию).
    $ - значение для параметра #.
Во избежание ошибок, "/d" в конце команды обязательно.

Таблица известных значений для BM:G:

Красным выделены строковые параметры - для изменения вам потребуются функции для работы со строками на низком уровне.
Серым выделено то, что менять проблемно - можно только посоветовать прочитать данные у одного монстра и поставить их другому.

-100: Видимость существа (4 - виден, 8 - не виден)
Отряды теряют невидимость при любом действии на поле боя. Но её можно восстановить в триггере !?BG1.
-90: Есть ли цифры кол-ва существ? (0 = есть, 1 = нет)
Отряд не имеет обозначения кол-ва существ, пока не походит. При этом на него можно колдовать магию и бить. Кол-во показывается при щелчке в нижнем правом углу картинки (где обычно, в общем).
-89: Тип существа
Параметры отряда становятся как у существа, номер которого установлен, но сразу же снижаются до стандартных параметров существа, которое меняют. Имя отряда в меню при щелчке по существу меняется; когда его бьют - имя остаётся изменённым. Когда битва окончена - на картинке будет показан настроенный отряд, а не старый. Если изменить тип существа, битву становится невозможно выиграть (логика игры требует убить того, на кого нападал, и изменения типа существ равнозначно вызову другого существа, без уничтожения старого (по логике опять же игры)). Эта проблема делает параметр практически бесполезным.
-88: Позиция существа
Если сменить, на старом месте останется стоять копия. Копия не может ходить и быть атакованной, занимает место.
-87: Номер анимации
При значение 2,6,9… (много ещё где) игра выдаёт чёрный экран. Кадры берутся в том порядке, как и при создании.
-86: Номер кадра в анимации
Анимация возвращается к нормальной, если навести мышкой
-83: Кол-во существ (реальное)
-82: Кол-во существ для отображения
Может не совпадать с кол-вом. В этом случае написано будет одно, а реально другое. По умолчанию равно -1 – значит "полностью совпадает с реальным".
После того, как любое существо попадет под атаку, данному значению станет равно кол-во реальное; в итогах битвы показывается реальное кол-во убитых; при атаке изменённого существа фантомные монстры не учитываются (т.е. если изменить 10 монстров на 100 этой командой и атаковать, то урон будет нанесен именно этими 10). Но его можно восстановить в триггере !?BG1.
-81: Безвозвратные потери.
Кол-во существ после выигранной битвы (или после откупа) равно "текущее кол-во существ" минус "безвозвратные потери". Потери могут быть записаны в безвозвратные при использовании, например, после Воскрешения без навыка Магия Земли или с ней, но на базовом уровне.
-80: Разница между текущим здоровьем и полным.
Если 0 значит стек здоров.
-79: Номер слота героя (0..6), -1 – будет удалён после битвы
-78: Кол-во существ в начале боя
-73: Город-владелец (существа)
-69: Флаги существа
-68: Название существа
-67: Название существа (множественное число)
-66: Строка состояния (например, "Нет штрафа рукопашной")

-54: Здоровье (полное)
-53: Скорость
-52: Атака
-51: Защита
-50: Мин. урон
-49: Макс. урон
-48: Боезапас
-41: Владелец (не вполне корректно работает)
-40: Номер стека (0..21)
-38: Смещение существа по Y
-37: Смещение существа по X
От того места, где существо должно быть. В пикселях.
-19: Смещение по оси OX прямоугольника с кол-вом существ.
-17: Частота проигрывания случайной анимации.
Чем меньше, тем чаще. Так, значение 200 даст беспрерывную анимацию.
-13: Анимация существа
-12: Анимация снаряда (см. таблицу)
-10: Звук перемещения
-9: Звук атаки
-8: Звук урона
-7: Звук выстрела
-6: Звук смерти
-5: Звук защиты

-1: Кол-во активных заклинаний (для отображения цвета кол-ва существ).
[0..65]: работа с заклинаниями (нормальное функционирование команды BM:G)
173: Кол-во активных заклинаний (для отображения при щелчке ).
212: Мораль существа
213: Удача существа
Мораль и удача пересчитывается при передаче хода другому существу. Поэтому полезно только для получения или проверки. Если очень нужно менять, то можно делать это или перед атакой, или каждый ход.


H$
Максимальное здоровье существа


I$
Принадлежность герою $:
         0 – левому
         1 – правому


J?$
Получить или проверить кол-во активных заклинаний


K#
Нанести # урона существу
При данном действии триггер !?MF не срабатывает


L$
Кол-во потерянного здоровья монстра в стеке
Комментарий (показать)

Например, если у Арбалетчика 10 здоровья, и ему нанесли 4 ед. урона, то значение команды будет равно 4.
Если нанесли 10 ед. урона, то Арбалетчик погибает, а следующий Арбалетчик будет иметь значение этой команды 0.


M#1/#2/#3
Наложить заклинание на монстра
         #1 – номер заклинания
         #2 – продолжительность
         #3 – уровень навыка (0 – нет, 1 – базовый, 2 – продвинутый, 3 – эксперт)
Если вы накладываете заклинание, которое монстр уже имеет, это будет игнорироваться. Но вы можете использовать «Снятие заклинания» :)
Дополнительно (показать)

Также вы можете наложить специальные заклинания:
70. Окаменение
71. Яд
72. Корни
73. Болезнь
74. Паралич
75. Старость
Вы можете установить эти 6 заклинаний без проблем, разве что Привязанное существо никогда не сможет двинуться (продолжительность игнорируется), и отравленное существо не получит урона в первом раунде битвы. И, конечно, нет графики наложения заклинаний, хотя внутри существа всё отображается корректно - окаменевшее существо выглядит как камень и не получает хода, и.т.д.
Вы можете установить любое другое заклинание данной командой, даже то, которое не имеет значения в битве - например, вы можете дать существу "Вызов корабля" на 3 раунда.
Графика будет показана при правом клике на существе, и будет выглядеть как "вызов корабля". Существо будет иметь зелёный показатель кол-ва (т.е. положительное заклинание), за исключением заклинаний, показываемых красным цветом (Волшебная стрела, Взрыв). Дополнительные заклинания с номера 76, кажется, использовались для способностей существ, имеющих картинку и эффект, но не действующий на стек постоянно (т.е. не показывается при правом клике на существо). Вы можете установить эти заклинания на существо этой командой, но не будет показано никакой картинки (но, всё же, показывается название при наведении на пустой квадрат) либо последует вылет из игры (и это не последовательно - иногда следует вылет, иногда вы видите пустой квадрат).
И если вы используете BG:C, чтобы попытаться "наколдовать" одно из этих заклинаний, либо ничего не происходит, либо - вылет.
76. Облако смерти
77. Удар молнии
78. Снятие полезных заклинаний
79. Смертельный взгляд
80. Кислотное дыхание


N$
Кол-во монстров в стеке (текущее)


O$
Номер слота существа в армии героя (0..6, -1)
Если $  = -1, стек не принадлежит армии героя (вызван)
Замечание: стеки 20 и 41 всегда имеют значение 0.


P$
Позиция на поле боя
Можно использовать как телепорт


Q#1/#2/#3
Поместить участок Зыбучего песка или мину в позицию
         #1 – тип (0 – песок, 1 – мины)
         #2 – позиция
         #3 – обновить (1 – да, 0 – нет)
Комментарий (показать)

Данная команда автоматически проверяет, можете ли вы поместить мину или песок. Вы можете использовать стек номер 0 для левого героя и 21 для правого, чтобы быть в уверенности помещения препятствия (стек может быть мёртв - всё, что нужно, это номер стороны (т.е. можете использовать 0-20 для левого героя и 21-41 для правого)


R$
Кол-во ответов на атаки (проверка для Королевских грифонов)
Комментарий (показать)

Это кол-во ответов стека, оставшихся до конца раунда. Оно каждый раунд равно одному и после ответа равен 0. Королевские грифоны каждый раунд имеют 5000 ответов.


S$
Скорость существа.
Комментарий: полученное значение не включает магические эффекты влияния на скорость.

См. также: команда BM:U6


T$
Тип монстра


U#/$
Изменить параметры монстров
         # = 1 – установить/проверить/получить минимальный урон в $
         # = 2 – установить/проверить/получить максимальный урон в $
         # = 3 – установить/проверить/получить кол-во выстрелов в $
         # = 4 – изменить заклинание существа на $
         # = 5 - клон стека. Если клонов стека не существует, $ = -1, иначе равен 0..41 - номер стека-клона искомого стека (искомый – это # в !!BM#:U5/$;). Если существо погибает, его клоны умирают тоже.
Комментарии (показать)

Вы можете изменить заклинание существа только на родственное. Например, если существо колдует заклинание на союзных существ (скажем, Огры-Шаманы - Жажду крови), вы можете изменить заклинание на любое одинарное положительное заклинание (например, Радость или Ускорение), но не атакующее (Волшебная стрела или Замедление), иначе ИИ никогда не будет использовать его. Однако, если вам нужно, чтобы такая особенность была только у игроков-людей, вы можете настроить почти любое заклинание без проблем.
Данный пример подтверждён Командирами, они колдуют заклинание как Огры-шаманы.
Также помните, что данная команда не действует на существ, колдующих случайное заклинание (например, Сказочный дракон и Мастер-Джинн)


U6/?$
Получить реальную скорость стека (учитываются все бонусы/штрафы).

См. также: команда BM:S.


V#
Показать анимацию # для стека.


Z?$
Команда возвращает адрес памяти структуры указанного стека.
Пример (показать)