Несколько нерадостных вестей:
1.
Процедуры в NML использовать нельзя, и как написал
Yexo, в ближайшее время расчитывать на их появление в языке не приходится. Выливается это всё в то, что цепочки вызовов придётся разворачивать самостоятельно вручную либо с применением макросов gcc.
2. Использовать чудесную
переменную 61 в
cb 36 нельзя, и как писал по-моему
Michi_cc, это изменено не будет, бо какое-то там зацикливание. Чревато это тем, что для штрафа по скорости придётся очень сильно изгаляться, да и для изменения др. параметров ПС возможности будут сильно урезаны из-за невозможности определить/посмотреть соседей по цепочке.
3. А недавно
Hirundo написал, что он запретит использовать тернарный оператор (?:) "при работе со строками". Хотя какие в Красную Армию в openttd строки? Там по жизни одни числа, и нет бы адаптировать возвращаемое значение к правильному виду, ан також сразу запретить, и вся недолга.
Тратить месяц времени на освоение питона, а потом ещё на освоение алгоритмов и идеологии NML, чтобы затем написать самостоятельно отсутствующий в NML функционал GRF8, мне влом. Печалька.