1) Давно уже все :; можно заменить на ; везде, включая if/el/en. С версии 3.0 по факту.
2) Последний параметр складывается с третьим параметром, который может быть переменной.
Чаще всего цикл идёт от 0 до [число объектов] - 1.
Цикл от 0 до 42 - 1 явно даёт понять, что есть 42 отряда на поле боя. Реально здесь лучше константу применить, но просили под древнюю 3.0.5.
Вариант с переменной
UN:U для подсчёта объектов, затем !!re i/0/(numObjects)/1/-1;